### Quick Install HyDE on Arch Linux using Pacman and Git Source: https://hydeproject.pages.dev/en/getting-started/introduction This snippet provides the necessary commands to quickly install the HyDE environment on Arch Linux. It first ensures essential packages like git and base-devel are installed using pacman, then clones the HyDE repository from GitHub, and finally executes the install script. After completion, a reboot is recommended to sign into the HyDE environment. ```bash pacman -S --needed git base-devel git clone --depth 1 https://github.com/HyDE-Project/HyDE ~/HyDE cd ~/HyDE/Scripts ./install.sh ``` -------------------------------- ### Install HyDE Theme Source: https://hydeproject.pages.dev/en/theming/making-themes The `just install` command installs your theme, making it available for use and testing within the HyDE environment. This typically involves placing theme files in the correct system locations. ```bash just install ``` -------------------------------- ### Hyprland Theme Configuration Example Source: https://hydeproject.pages.dev/en/theming/making-themes An example of the 'hypr.theme' file, which defines Hyprland-specific theme settings. It includes variables for GTK themes, icon themes, color schemes, cursor themes, and cursor sizes, along with commands to execute for theme application. ```bash $HOME/.config/hypr/themes/theme.conf|> $HOME/.config/hypr/themes/colors.conf # ~/.config/hypr/theme/theme.conf is an auto-generated file. Do not edit. $GTK_THEME=Bad-Blood # folder name inside `Source/arcs/Gtk_.tar.* $ICON_THEME=besgnulinux-mono-red # folder name inside `Source/arcs/Icon_.tar.* $COLOR_SCHEME=prefer-dark # prefer-dark, prefer-light, or auto $CURSOR_THEME=Night-Diamond-Red # folder name inside `Source/arcs/Cursor_.tar.* $CURSOR_SIZE=30 # cursor size in pixels ``` -------------------------------- ### Sample PSV File Entries for Launcher Configuration Source: https://hydeproject.pages.dev/en/resources/restore Sample PSV entries for configuring application launchers like rofi and wlogout. These examples use the 'S' flag to sync their respective configuration directories. ```text S|${HOME}/.config|rofi|rofi S|${HOME}/.config|wlogout|wlogout ``` -------------------------------- ### Configure Keyboard Layout for Hyprland Source: https://hydeproject.pages.dev/en/help/faq This example demonstrates how to set keyboard layouts in Hyprland using the 'userprefs.conf' file. It configures multiple layouts (e.g., US and DE) and mentions a keybinding ('SUPER' + 'K') to switch between them. ```shell input { kb_layout = us,de } ``` -------------------------------- ### Sample PSV File Entries for Input Configuration Source: https://hydeproject.pages.dev/en/resources/restore A PSV entry for configuring input gestures using libinput-gestures. This example uses the 'P' flag to populate the configuration file if it doesn't exist. ```text P|${HOME}/.config|libinput-gestures.conf|libinput-gestures ``` -------------------------------- ### Waybar Style Sheet Examples Source: https://hydeproject.pages.dev/en/configuring/waybar The styles directory, located at ~/.config/waybar/styles/, contains CSS files that correspond to the layout configurations. For example, 'khing.jsonc' layout will use 'khing.css' style. Explicit `--config` and `--style` options are also supported for custom styling. ```tree └── 📂 styles/ └── 📂 groups/ ├── 📄 layout-1.css ├── 📄 layout-2.css ├── 📄 khing.css ├── 📄 macos.css └── 📄 ...*.css ``` -------------------------------- ### Sample PSV File Entries for Gaming Configuration Source: https://hydeproject.pages.dev/en/resources/restore A PSV entry for configuring MangoHud, an overlay for monitoring games. This example uses the 'S' flag to sync the MangoHud configuration. ```text S|${HOME}/.config|MangoHud|mangohud ``` -------------------------------- ### HyDE Shell Usage Examples Source: https://hydeproject.pages.dev/en/man-pages/hyde-shell Illustrates various ways to use the hyde-shell, including running scripts with flags, executing built-in commands, and passing arguments to the underlying scripts. ```bash hyde-shell waybar --help # Run waybar.py with help flag hyde-shell theme.import # Run theme.import.py hyde-shell wallpaper # Run wallpaper.sh hyde-shell wallbash # Execute wallbash scripts in ~/.config/hyde/wallbash/scripts/ hyde-shell reload # Reload HyDE environment hyde-shell waybar --set layout-1 # Pass arguments to waybar.py ``` -------------------------------- ### Sample PSV File Entries for Hyde Core Source: https://hydeproject.pages.dev/en/resources/restore Example entries in a PSV file demonstrating how to manage the restoration of Hyde core configuration files. It showcases the use of flags like 'P' (Populate/Preserved) and 'S' (Sync) to control file operations based on existing states. ```text P|${HOME}/.config/hyde|config.toml|hyprland P|${HOME}/.config/hypr|hyde.conf animations.conf windowrules.conf keybindings.conf userprefs.conf monitors.conf|hyprland P|${HOME}/.config/hypr|nvidia.conf|hyprland nvidia-utils P|${HOME}/.config/hypr/themes|theme.conf wallbash.conf colors.conf|hyprland P|${HOME}/.local/state|hyde|hyprland S|${HOME}/.config/hypr|hyprland.conf|hyprland S|${HOME}/.local|bin|hyprland S|${HOME}/.config|gtk-3.0|nwg-look S|${HOME}/.config|nwg-look|nwg-look S|${HOME}/.config|xsettingsd|nwg-look S|${HOME}|.gtkrc-2.0|nwg-look S|${HOME}/.config|Kvantum|kvantum S|${HOME}/.config|qt5ct|qt5ct S|${HOME}/.config|qt6ct|qt6ct S|${HOME}/.config/hyde|wallbash|hyprland S|${HOME}/.config/hypr|animations|hyprland ``` -------------------------------- ### Sample PSV File Entries for Idle Daemon Configuration Source: https://hydeproject.pages.dev/en/resources/restore A PSV entry for configuring the hypridle daemon, which manages idle behavior. This example uses the 'P' flag to populate its configuration file. ```text P|${HOME}/.config/hypr|hypridle.conf|hypridle ``` -------------------------------- ### Waybar Module Configuration Example Source: https://hydeproject.pages.dev/en/configuring/waybar The modules directory, located at ~/.config/waybar/modules/, stores individual module configuration files (e.g., backlight.jsonc, clock.jsonc, cpu.jsonc). These files are recursively added to includes/includes.jsonc and follow a parent-child naming convention for CSS class names. ```tree └── 📂 modules/ ├── 📄 backlight.jsonc ├── 📄 clock.jsonc ├── 📄 cpu.jsonc ├── 📄 custom-cpuinfo.jsonc ├── 📄 hyprland-language.jsonc ├── 📄 idle_inhibitor.jsonc ├── 📄 pulseaudio#microphone.jsonc ├── 📄 pulseaudio.jsonc ├── 📄 tray.jsonc ├── 📄 wlr-taskbar#windows.jsonc └── 📄 wlr-taskbar.jsonc ``` -------------------------------- ### Process Management Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands for managing Waybar processes, including starting in watch mode, controlling visibility, and killing processes. ```APIDOC ## Process Management ### Description Controls the execution and visibility of Waybar processes, including starting with monitoring, hiding/showing the bar, and terminating running instances. ### Method Command-line arguments ### Endpoint `waybar.py` ### Parameters #### Command-line Arguments - `--watch` (None) - Starts Waybar in watch mode, automatically reloading on changes. - `--hide <0|1|toggle>` (String) - Controls Waybar visibility. `1` hides, `0` shows, `toggle` switches state. - `--kill` (None) - Kills all running `waybar.py` processes, including watch mode. ### Request Example ```bash waybar.py --watch waybar.py --hide 1 waybar.py --hide toggle waybar.py --kill ``` ### Response #### Success Response Waybar process is started, controlled, or terminated. #### Response Example (No direct response body, affects Waybar process state) ``` -------------------------------- ### Sample PSV File Entries for Notifications Configuration Source: https://hydeproject.pages.dev/en/resources/restore A PSV entry for configuring the dunst notification daemon. This example uses the 'S' flag to sync the dunst configuration directory. ```text S|${HOME}/.config|dunst|dunst ``` -------------------------------- ### Dynamic Border-Radius CSS Example Source: https://hydeproject.pages.dev/en/configuring/waybar The 'border-radius.css' file in the includes directory allows for dynamic border-radius adjustments, demonstrated with examples for 'No Rounding', 'Squircle' (10 rounding), and 'Circle' (100 rounding) in Hyprland. ```css /* Example for Squircle rounding */ .hyprland-window { border-radius: 10px; } /* Example for Circle rounding */ .hyprland-window.circle { border-radius: 100px; } ``` -------------------------------- ### Waybar.py: Process Management Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands for managing the Waybar process. This includes starting Waybar in watch mode, controlling its visibility (hide, show, toggle), and killing all running waybar.py processes. ```bash waybar.py --watch waybar.py --hide 1 # Hide Waybar waybar.py --hide 0 # Show Waybar waybar.py --hide toggle # Toggle visibility waybar.py --kill ``` -------------------------------- ### Update HyDE Dotfiles using Scripts Source: https://hydeproject.pages.dev/en/help/faq This snippet shows how to update your HyDE dotfiles to the latest version using the provided installation script. It involves navigating to the scripts directory, pulling the latest changes, and running the install script with the '-r' flag for restoration. ```shell cd ~/HyDE/Scripts git pull ./install.sh -r ``` -------------------------------- ### Add Waybar Group to Layout in JSONC Source: https://hydeproject.pages.dev/en/configuring/waybar This example demonstrates how to integrate a defined module group into the Waybar layout by assigning it to a positioning option like 'modules-center'. It shows how to reference the group and its variants. ```jsonc { "modules-center": [ "group/pill", "group/pill#tag1", "group/pill-in" ] } ``` -------------------------------- ### Clone HyDE Theme Starter Repository Source: https://hydeproject.pages.dev/en/theming/making-themes This command clones the HyDE theme starter repository to your local machine. Ensure the `~/MyTheme` path is adjusted if your desired theme name is different. This is the initial step for creating a new theme. ```bash git clone https://github.com/richen604/hyde-theme-starter ~/MyTheme ``` -------------------------------- ### Sample PSV File Entries for Waybar Configuration Source: https://hydeproject.pages.dev/en/resources/restore Sample PSV entries demonstrating the configuration of Waybar, a status bar for Wayland. It includes entries for populating the main configuration and syncing module configurations. ```text P|${HOME}/.config/waybar|config.ctl|waybar S|${HOME}/.config/waybar|modules config.jsonc theme.css style.css|waybar ``` -------------------------------- ### Sample PSV File Entries for Terminal Configuration Source: https://hydeproject.pages.dev/en/resources/restore This demonstrates how to configure terminal-related dotfiles using the PSV format. It includes entries for populating configurations for tools like lsd and kitty, and syncing configurations for fastfetch. ```text P|${HOME}/.config|lsd|lsd S|${HOME}/.config|fastfetch|fastfetch S|${HOME}/.config/kitty|hyde.conf theme.conf|kitty P|${HOME}/.config/kitty|kitty.conf|kitty ``` -------------------------------- ### Initialize Theme Directory Structure Source: https://hydeproject.pages.dev/en/theming/making-themes The `just init` command generates the essential directory structure for your HyDE theme. This includes configuration, source, and reference directories, setting up the project for further development. ```bash just init ``` -------------------------------- ### Initialize Git Repository for Theme Source: https://hydeproject.pages.dev/en/theming/making-themes Initializes a Git repository for the theme, stages all files, and creates the initial commit. This is a prerequisite for pushing the theme to a remote repository. ```bash git init && git branch -M main && git add . && git commit -m "My first HyDE theme" ``` -------------------------------- ### Manage Wallpapers using HyDE CLI Source: https://hydeproject.pages.dev/en/theming/gallery Commands for managing wallpapers with HyDE. 'hydectl wallpaper select' allows interactive selection, 'hydectl wallpaper set' sets a specific wallpaper from a given path, and 'hydectl wallpaper list' displays available wallpapers. ```bash hydectl wallpaper select ``` ```bash hydectl wallpaper set /path/to/wallpaper.jpg ``` ```bash hydectl wallpaper list ``` -------------------------------- ### Configure Global Wallpapers in Hyde Project (TOML) Source: https://hydeproject.pages.dev/en/help/faq This snippet demonstrates how to configure global wallpapers in the Hyde Project by adding wallpaper search paths to the `config.toml` file. It specifies the TOML structure required to include custom wallpaper directories. No external dependencies are needed beyond the Hyde Project configuration system. ```toml [wallpaper] custom_paths = [ "$XDG_PICTURES_DIR", "/path/to/pretty/wallpapers", ] # List of paths to search for wallpapers ``` -------------------------------- ### Sample PSV File Entries for Lock Screen Configuration Source: https://hydeproject.pages.dev/en/resources/restore Sample PSV entries for configuring lock screen tools like swaylock and hyprlock. It shows syncing swaylock configurations and populating hyprlock configurations. ```text S|${HOME}/.config|swaylock|swaylock-effects P|${HOME}/.config/hypr|hyprlock.conf|hyprlock S|${HOME}/.config/hypr|hyprlock|hyprlock ``` -------------------------------- ### Waybar CSS Class Naming Convention Source: https://hydeproject.pages.dev/en/configuring/waybar Modules under a specific tree in the modules directory follow a parent-child convention. For example, a module named 'custom/cpuinfo' is converted to 'custom-cpuinfo', which is then used as the class name in CSS for styling. ```css .custom-cpuinfo { padding: 1em; } ``` -------------------------------- ### Basic Layout Management Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands for interactively selecting, setting, and cycling through Waybar layouts. ```APIDOC ## Basic Layout Management ### Description Manages Waybar layouts, allowing for interactive selection, setting a specific layout, or cycling through available layouts. ### Method Command-line arguments ### Endpoint `waybar.py` ### Parameters #### Command-line Arguments - `--select` (None) - Opens rofi layout selector for interactive selection. - `--set ` (String) - Sets the specified layout. - `--next` (None) - Cycles to the next layout in the sequence. - `--prev` (None) - Cycles to the previous layout in the sequence. ### Request Example ```bash waybar.py --select waybar.py --set khing waybar.py --next waybar.py --prev ``` ### Response #### Success Response Layout is applied or selection menu is displayed. #### Response Example (No direct response body, affects Waybar display) ``` -------------------------------- ### Style Waybar Module Group using CSS Source: https://hydeproject.pages.dev/en/configuring/waybar This CSS snippet illustrates how to style a Waybar module group using its class name. The example targets '.pill' and '.pill-in' selectors to apply custom styles, leveraging Waybar's convention for shared class names. ```css #pill, #pill-in { /* Your styles here */ } ``` -------------------------------- ### Sample PSV File Entries for Shell Configuration Source: https://hydeproject.pages.dev/en/resources/restore Sample PSV file entries for managing shell configurations, including Zsh and related plugins like Powerlevel10k. It shows how to populate Zsh configuration files and sync specific Zsh-related files. ```text P|${HOME}/.config|fish|fish P|${HOME}|.zshrc .hyde.zshrc .p10k.zsh|zsh zsh-theme-powerlevel10k pokego-bin S|${HOME}|.zshenv|zsh zsh-theme-powerlevel10k ``` -------------------------------- ### Troubleshoot SDDM Login Issues with Bad Username Source: https://hydeproject.pages.dev/en/help/faq This guide provides steps to resolve SDDM login failures when the username contains capitalization or special characters. It involves accessing a TTY, editing the theme configuration file to set 'AllowBadUsername' to true, and rebooting. An alternative of setting 'AllowEmptyPassword' is also mentioned. ```shell nano usr/share/sddm/themes/[theme name]/theme.conf ``` -------------------------------- ### Sample PSV File Entries for Editor Configuration Source: https://hydeproject.pages.dev/en/resources/restore This section provides sample PSV file entries for managing configuration files related to code editors like VS Code, VSCodium, and Code - OSS. It primarily uses the 'P' flag to ensure these configurations are populated if they don't exist. ```text P|${HOME}/.config/Code - OSS/User|settings.json|code P|${HOME}/.config/Code/User|settings.json|visual-studio-code-bin P|${HOME}/.config/VSCodium/User|settings.json|vscodium-bin ``` -------------------------------- ### Sample PSV File Entries for File Explorer Configuration Source: https://hydeproject.pages.dev/en/resources/restore This section shows PSV entries for configuring file explorers like Dolphin. It includes populating state files and syncing various configuration files and directories related to Dolphin and its components. ```text P|${HOME}/.local/state|dolphinstaterc|dolphin P|${HOME}/.config|baloofilerc|dolphin S|${HOME}/.config/menus|applications.menu|dolphin S|${HOME}/.config|dolphinrc|dolphin S|${HOME}/.config|kdeglobals|dolphin S|${HOME}/.local/share/kio/servicemenus|hydewallpaper.desktop|dolphin S|${HOME}/.local/share/kxmlgui5|dolphin|dolphin S|${HOME}/.local/share|dolphin|dolphin ``` -------------------------------- ### Launch Gamebar with Hyprland Scripts Source: https://hydeproject.pages.dev/en/help/faq This code snippet illustrates how to launch the gamebar feature in Hyprland using a shell script. It requires Steam or Lutris libraries and takes an argument 'n' (1-4) to select the display style. ```shell ~/.config/hypr/scripts/gamelauncher.sh ``` -------------------------------- ### Select and Set Themes using HyDE CLI Source: https://hydeproject.pages.dev/en/theming/gallery Commands for selecting and setting themes within HyDE. 'hydectl theme select' allows interactive selection, while 'hydectl theme set "Theme Name"' sets a specific theme directly. ```bash hydectl theme select ``` ```bash hydectl theme set "Theme Name" ``` -------------------------------- ### Waybar.py: Basic Layout Management Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands for interactively selecting, setting, and cycling through Waybar layouts. Uses rofi for interactive selection and supports next/previous layout cycling. ```bash waybar.py --select # Opens rofi layout selector waybar.py --set khing waybar.py --next # Next layout waybar.py --prev # Previous layout ``` -------------------------------- ### HyDE Shell Command Synopsis Source: https://hydeproject.pages.dev/en/man-pages/hyde-shell Provides the basic command-line syntax for using the hyde-shell, including general command execution, help options, and environment reloading. ```bash hyde-shell [command] [arguments...] hyde-shell [--help | help | -h] hyde-shell [-r | reload] ``` -------------------------------- ### Sample PSV File Entries for Wayland Configuration Source: https://hydeproject.pages.dev/en/resources/restore Sample PSV entries for configuring Wayland-related applications such as Spotify, code editors, and Electron. It primarily uses the 'P' flag to populate specific flag configuration files. ```text P|${HOME}/.config|spotify-flags.conf|spotify P|${HOME}/.config|code-flags.conf|code P|${HOME}/.config|code-flags.conf|visual-studio-code-bin P|${HOME}/.config|vscodium-flags.conf|vscodium-bin P|${HOME}/.config|electron-flags.conf|electron ``` -------------------------------- ### Generate Wallbash Theme Files Source: https://hydeproject.pages.dev/en/theming/making-themes Commands to generate all necessary theme reference files using wallbash. These commands create files for GTK4, Kvantum, Hyprland, Kitty, Rofi, and Waybar, among others, in the theme's refs directory. ```bash just gen-all just set-wall ``` -------------------------------- ### Applying Custom Waybar Configuration Source: https://hydeproject.pages.dev/en/configuring/waybar Provides two methods for applying the custom Waybar configuration: using 'hyde-shell waybar -S' for selection via rofi, or directly specifying the configuration file with 'waybar -c'. ```shell # Navigate to your layouts using rofi hyde-shell waybar -S # Or apply directly waybar -c ~/.config/waybar/layouts/my_config.jsonc ``` -------------------------------- ### Import Themes using HyDE CLI Source: https://hydeproject.pages.dev/en/theming/gallery Commands for importing themes from the HyDE gallery. The first command imports themes interactively. The second command allows importing a specific theme by providing its name and URL. ```bash hydectl theme import ``` ```bash hydectl theme import --name "Theme Name" --url "https://github.com/User/Repository" ``` -------------------------------- ### Copy Theme Reference Files Source: https://hydeproject.pages.dev/en/theming/making-themes Copies the generated reference theme files from the 'refs' directory to the user's Hyde theme configuration directory. This step ensures that the generated theme files are placed where Hyde can access them. ```bash cp -r ./refs/* ./Config/.config/hyde/themes/MyTheme ``` -------------------------------- ### Custom Configuration Paths Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Allows users to specify custom paths for configuration and style files. ```APIDOC ## Custom Configuration Paths ### Description Enables the use of custom configuration files for Waybar, overriding the default locations. ### Method Command-line arguments ### Endpoint `waybar.py` ### Parameters #### Command-line Arguments - `--config ` (String) - Path to a custom Waybar configuration file (e.g., `.jsonc`). - `--style ` (String) - Path to a custom Waybar CSS style file (e.g., `.css`). ### Request Example ```bash waybar.py --config /path/to/custom-config.jsonc --style /path/to/custom-style.css ``` ### Response #### Success Response Waybar loads with the specified custom configuration and style. #### Response Example (No direct response body, affects Waybar loading behavior) ``` -------------------------------- ### Update Themes using HyDE CLI Source: https://hydeproject.pages.dev/en/theming/gallery Commands for updating themes in HyDE. '--fetch all' updates all local themes, while '--fetch "Theme Name"' updates a specific theme. ```bash hydectl theme import --fetch all ``` ```bash hydectl theme import --fetch "Theme Name" ``` -------------------------------- ### Waybar Layout Configuration Files Source: https://hydeproject.pages.dev/en/configuring/waybar The layouts directory, located at ~/.config/waybar/layouts/, contains ready-to-use configuration files for different Waybar layouts (e.g., layout-1.jsonc, macos.jsonc). These layouts can be navigated using the 'hyde-shell waybar' script. ```tree └── 📂 layouts/ ├── 📄 layout-1.jsonc ├── 📄 layout-2.jsonc ├── 📄 khing.jsonc ├── 📄 macos.jsonc └── 📄 ....jsonc ``` -------------------------------- ### Add Remote Origin and Push Theme Source: https://hydeproject.pages.dev/en/theming/making-themes Adds the GitHub repository as the remote origin and pushes the initial theme commit to the main branch. This step uploads the theme to a remote repository for hosting. ```bash git remote add origin git push -u origin main ``` -------------------------------- ### Generate Theme Readme Source: https://hydeproject.pages.dev/en/theming/making-themes Generates a README file for the theme using a Python script. This is a required step for adding themes to the Hyde-Gallery. ```python python3 generate_readme.py ``` -------------------------------- ### Copy Wallpapers to Theme Directory Source: https://hydeproject.pages.dev/en/theming/making-themes This command copies your collection of wallpapers into the theme's configuration directory. These wallpapers will be used by Wallbash to generate color schemes for your theme. ```bash cp -r ~/wallpapers ~/MyTheme/Config/.config/hyde/themes/MyTheme/wallpapers ``` -------------------------------- ### Waybar.py: Information Gathering Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands to gather information about Waybar layouts and configurations. Supports interactive layout selection via rofi and outputting layout information in JSON format for scripting. ```bash waybar.py --select # Opens rofi menu for layout selection waybar.py --json # JSON format for scripting ``` -------------------------------- ### Waybar Includes Directory Structure Source: https://hydeproject.pages.dev/en/configuring/waybar The includes directory, located at ~/.config/waybar/includes/, contains files like 'includes.jsonc' which aggregates module configurations, and CSS files such as 'border-radius.css' for dynamic styling and 'global.css' for font properties. ```tree └── 📂 includes/ ├── 📄 includes.jsonc ├── 📄 border-radius.css └── 📄 global.css ``` -------------------------------- ### Hyprland Configuration Tree Structure Source: https://hydeproject.pages.dev/en/configuring/hyprland Illustrates the hierarchical structure of Hyprland configuration files within the ~/.config/hypr directory and related HyDE directories. This helps users understand where different configuration files are located and how they are organized. ```text . 📂 ~/.config/hypr └── 📂 animations/ ├── 📄 animations.conf ├── 📄 hyde.conf ├── 📄 hypridle.conf ├── 📄 hyprland.conf └── 📂 hyprlock/ ├── 📄 hyprlock.conf ├── 📄 keybindings.conf ├── 📄 monitors.conf ├── 📄 nvidia.conf └── 📂 themes/ │ ├── 📄 colors.conf │ ├── 📄 theme.conf │ ├── 📄 wallbash.conf ├── 📄 userprefs.conf └── 📄 windowrules.conf ├── . 📂 ~/.local/share/hyde │ ├── 📄 hyprland.conf ``` -------------------------------- ### Waybar Global Configuration Options Source: https://hydeproject.pages.dev/en/configuring/waybar Defines essential global settings for Waybar, including the display layer, target monitors, bar position, and whether to reload the style automatically on file changes. ```json { "layer": "top", // Position layer: "top" or "bottom" "output": ["*"], // Apply to all monitors (* means all outputs) "position": "top", // Bar position: top, bottom, left, right "reload_style_on_change": true, // Auto-reload when style file changes ``` -------------------------------- ### Waybar Global and Module Inclusion Configuration Source: https://hydeproject.pages.dev/en/configuring/waybar This JSONC snippet defines global Waybar settings such as layer, output, position, and reload behavior. It also demonstrates how to include external configuration files, specifically '$XDG_CONFIG_HOME/waybar/includes/includes.json', which is auto-generated by a Python script to manage modules. ```jsonc { "layer": "top", "output": ["*"], "position": "top", "reload_style_on_change": true, "include": ["$XDG_CONFIG_HOME/waybar/includes/includes.json"] } ``` -------------------------------- ### Copying Waybar Layout Configuration Source: https://hydeproject.pages.dev/en/configuring/waybar This command copies an existing Waybar layout file to a new location for customization. It's the first step in creating a personalized Waybar configuration. ```shell cp ~/.local/share/waybar/layouts/layout-1.jsonc ~/.config/waybar/layouts/my_config.jsonc ``` -------------------------------- ### Restore Dotfiles using restore_cfg.sh (Bash) Source: https://hydeproject.pages.dev/en/getting-started/update This command manually updates dotfiles by restoring them from a specified configuration file. It takes the path to a .psv configuration file as input and an optional path to the HyDE clone directory. The 'restore' action refers to applying dotfiles from the repository to your $HOME directory. ```bash ./restore_cfg.sh <\/path\/to\/file.psv> ``` ```bash cd ~/HyDE/Scripts ./restore_cfg.sh ./restore_cfg.psv ``` -------------------------------- ### Information Gathering Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands for retrieving information about Waybar, such as listing available layouts in JSON format. ```APIDOC ## Information Gathering ### Description Provides commands to gather information from Waybar, including an interactive layout selector and a JSON output for scripting purposes. ### Method Command-line arguments ### Endpoint `waybar.py` ### Parameters #### Command-line Arguments - `--select` (None) - Opens rofi menu for layout selection. - `--json` (None) - Lists available layouts in JSON format, suitable for scripting. ### Request Example ```bash waybar.py --select waybar.py --json ``` ### Response #### Success Response (200) - **layouts** (Array of Strings) - List of available layout names. #### Response Example ```json { "layouts": ["default", "khing", "another_layout"] } ``` ``` -------------------------------- ### Waybar.py: Custom Configuration Paths Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Specifies how to use custom configuration and style files for Waybar. Allows overriding default file locations using command-line arguments. ```bash waybar.py --config /path/to/custom-config.jsonc --style /path/to/custom-style.css ``` -------------------------------- ### Cava Visualizer Configuration Source: https://hydeproject.pages.dev/en/configuring/config_toml Configuration for the Cava audio visualizer. This includes settings for audio channels, bar sensitivity, spectrum reversal, and width. Specific configurations are provided for Hyprlock, standard output (stdout), and Waybar. ```toml [cava] channels = "stereo" range = 8 reverse = 1 [cava.hyprlock] bar = " ▂▃▄▅▆▇█" bar_array = [" ", "▂", "▃", "▄", "▅", "▆", "▇", "█"] range = 7 standby = "🎶" width = 20 [cava.stdout] bar = " ▂▃▄▅▆▇█" bar_array = ["░", "▒", "▓", "█"] range = 7 standby = "🎶" width = 20 [cava.waybar] bar = " ▂▃▄▅▆▇█" bar_array = ["◜", "◝", "◞", "◟", "◠", "◡", "◢", "◣"] range = 7 standby = "🎶" width = 20 ``` -------------------------------- ### Copy GTK4 Theme Files to Theme Directory Source: https://hydeproject.pages.dev/en/theming/making-themes Copies the generated GTK4 reference theme files from the 'refs/gtk-4.0' directory to the user's theme configuration. This ensures that GTK4 applications correctly inherit the theme's appearance. ```bash mkdir -p ./Config/.config/hyde/themes/MyTheme/gtk-4.0 cp -r ./refs/gtk-4.0/* ./Config/.config/hyde/themes/MyTheme/gtk-4.0/ ``` -------------------------------- ### Hyprland Desktop Environment Configuration Source: https://hydeproject.pages.dev/en/configuring/config_toml Configuration settings for the Hyprland window manager. This section allows customization of various aspects of the desktop environment, including background paths, default applications (browser, editor, terminal), fonts, themes, and lock screen settings. ```toml [hyprland] background_path = "" bar = "waybar" browser = "firefox" button_layout = "" color_scheme = "prefer-dark" cursor_size = 24 cursor_theme = "Bibata-Modern-Ice" document_font_size = 10 editor = "code" explorer = "dolphin" font = "Canterell" font_antialiasing = "rgba" font_hinting = "full" font_size = 10 gtk_theme = "Wallbash-Gtk" icon_theme = "Tela-circle-dracula" idle = "hypridle" lockscreen = "lockscreen.sh" monospace_font = "CaskaydiaCove Nerd Font Mono" monospace_font_size = 9 quickapps = "kitty" terminal = "kitty" ``` -------------------------------- ### Configuration Updates Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands for updating Waybar configurations, including all components, specific elements like icon size or border radius, and regenerating include files. ```APIDOC ## Configuration Updates ### Description Provides options to update various aspects of the Waybar configuration, from global settings to specific visual elements and generated files. ### Method Command-line arguments ### Endpoint `waybar.py` ### Parameters #### Command-line Arguments - `--update` (None) - Updates all Waybar configurations. - `--update-icon-size` (None) - Updates only the icon sizes. - `--update-border-radius` (None) - Updates only the border radius. - `--generate-includes` (None) - Regenerates the `includes.json` file. ### Request Example ```bash waybar.py --update waybar.py --update-icon-size waybar.py --generate-includes ``` ### Response #### Success Response Configurations are updated or includes are regenerated. #### Response Example (No direct response body, affects Waybar configuration) ``` -------------------------------- ### Shell Script for Configuration Restore Source: https://hydeproject.pages.dev/en/resources/restore This shell script is used to restore configuration files from a repository to the user's home directory. It takes a Pipe Separated Values (PSV) file as input and optionally a path to a Hyde clone directory. The script parses the PSV file to determine which dotfiles to restore and how to handle existing files. ```shell ./restore_cfg.sh ``` -------------------------------- ### Including HyDE Module Definitions in Waybar Source: https://hydeproject.pages.dev/en/configuring/waybar This directive tells Waybar to load all modules and configurations automatically generated by HyDE's `hyde-shell waybar` script. It ensures modules from `./waybar/modules/` and dynamic configurations are included. ```json "include": ["$XDG_CONFIG_HOME/waybar/includes/includes.json"], ``` -------------------------------- ### Waybar.py: Configuration Updates Source: https://hydeproject.pages.dev/en/man-pages/waybarpy Commands to update Waybar configurations. This includes updating all configurations, specific components like icon sizes and border radius, and regenerating include files. ```bash waybar.py --update waybar.py --update-icon-size # Update icon sizes only waybar.py --update-border-radius # Update border radius only waybar.py --generate-includes # Regenerate includes.json ``` -------------------------------- ### Generate GTK4 Theme Files Source: https://hydeproject.pages.dev/en/theming/making-themes Command to generate GTK4 theme files if the current theme does not include them. This is important for applications like pavucontrol that rely on GTK4 theming. ```bash just gen-gtk4 ``` -------------------------------- ### PSV File Structure for Configuration Source: https://hydeproject.pages.dev/en/resources/restore The Pipe Separated Values (PSV) file format defines the structure for configuration files to be restored. Each line represents a configuration entry with four columns: flag, path, target, and dependency. This format allows for specifying file operations and dependencies for managing dotfiles. ```text flag|path|target|dependency ```