### Install Vim Plugins Source: https://home-manager-options.extranix.com/ Example of how to specify Vim plugins to be installed by Home Manager. Note that string values for plugins are deprecated. ```nix plugins = [ vimPlugins.vim-commentary ]; ``` -------------------------------- ### Install Floorp Add-on Packages Source: https://home-manager-options.extranix.com/ Specify a list of add-on package names to install for a Floorp profile. To list available add-ons, use `nix-env -f '' -qaP -A nur.repos.rycee.firefox-addons`. Extensions must be manually enabled after installation. To auto-enable, add `"extensions.autoDisableScopes" = 0;` to `programs.floorp.profiles..settings`. ```nix programs.floorp.profiles..extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [ ublock-origin bitwarden ]; ``` -------------------------------- ### Configure Emacs Service Startup Source: https://home-manager-options.extranix.com/ Control when the Emacs service starts. Set to `true` to start with `default.target`, or to `"graphical"` to start with `graphical-session.target`. ```nix services.emacs.startWithUserSession = "graphical"; ``` -------------------------------- ### Grobi Configuration Source: https://home-manager-options.extranix.com/ Configure the grobi display setup daemon, including execution commands and matching rules. ```APIDOC ## services.grobi.* ### Description Configuration options for the grobi display setup daemon. ### Method N/A (Configuration Options) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **enable** (boolean) - Optional - Whether to enable the grobi display setup daemon. - **executeAfter** (list of string) - Optional - Commands to be run after an output configuration was changed. The Nix value declared here will be translated to JSON and written to the {option}`execute_after` key in {file}`$XDG_CONFIG_HOME/grobi.conf`. - **package** (package) - Optional - The grobi package to use. - **rules** (list of attribute set of (string or boolean or signed integer or list of string)) - Optional - These are the rules grobi tries to match to the current output configuration. The rules are evaluated top to bottom, the first matching rule is applied and processing stops. See for more information. The Nix value declared here will be translated to JSON and written to the {option}`rules` key in {file}`$XDG_CONFIG_HOME/grobi.conf`. ### Request Example ```nix services.grobi.enable = true; services.grobi.executeAfter = [ "xrandr --output DP-1 --mode 1920x1080" ]; services.grobi.rules = [ { output = "DP-1"; primary = true; } ]; ``` ### Response #### Success Response (200) N/A (Configuration Options) #### Response Example N/A ``` -------------------------------- ### Configure Haskell IDE Engine Overlay Source: https://home-manager-options.extranix.com/ Example overlay configuration for adding hie-nix to the Nixpkgs set. ```nix nixpkgs.overlays = [ (self: super: { hie-nix = import ~/src/hie-nix {}; }) ] ``` -------------------------------- ### Configure gemini-cli context file names Source: https://home-manager-options.extranix.com/ Example of setting custom context file names for the gemini-cli program. ```nix settings = { context.fileName = ["AGENTS.md", "CONTEXT.md", "GEMINI.md"]; }; ``` -------------------------------- ### Install LibreWolf Extensions Source: https://home-manager-options.extranix.com/ Specify add-on packages to install for a LibreWolf profile. Note that extensions must be manually enabled after installation unless `extensions.autoDisableScopes` is set to 0 in `programs.librewolf.profiles..settings`. ```nix programs.librewolf.profiles..extensions.packages = [ nur.repos.rycee.firefox-addons.ublock-origin ]; ``` -------------------------------- ### List available Firefox add-ons via NUR Source: https://home-manager-options.extranix.com/ Use this command to list available add-ons from the Nix User Repository after installation. ```console $ nix-env -f '' -qaP -A nur.repos.rycee.firefox-addons ``` -------------------------------- ### Configure zplug plugins Source: https://home-manager-options.extranix.com/ Define a list of zplug plugins to be installed and managed by zplug. Each plugin can have a name and tags. ```nix programs.zsh.zplug.plugins = [ { name = "zsh-syntax-highlighting"; tags = [ "atload" ]; } ]; ``` -------------------------------- ### Configure Nixpkgs with a Custom Config File Source: https://home-manager-options.extranix.com/ Use this snippet to apply a custom Nixpkgs configuration file within your Home Manager setup. Ensure the specified config file exists and is correctly referenced. ```nix nixpkgs.config = import ./nixpkgs-config.nix; xdg.configFile."nixpkgs/config.nix".source = ./nixpkgs-config.nix; ``` -------------------------------- ### Configure Vicinae Extensions Source: https://home-manager-options.extranix.com/ Example of how to define Vicinae extensions using Nix. This includes both standard extensions and RayCast extensions, specifying their source and revision. ```nix [ (config.lib.vicinae.mkExtension { name = "test-extension"; src = pkgs.fetchFromGitHub { owner = "schromp"; repo = "vicinae-extensions"; rev = "f8be5c89393a336f773d679d22faf82d59631991"; sha256 = "sha256-zk7WIJ19ITzRFnqGSMtX35SgPGq0Z+M+f7hJRbyQugw="; } + "/test-extension"; }) (config.lib.vicinae.mkRayCastExtension { name = "gif-search"; sha256 = "sha256-G7il8T1L+P/2mXWJsb68n4BCbVKcrrtK8GnBNxzt73Q="; rev = "4d417c2dfd86a5b2bea202d4a7b48d8eb3dbaeb1"; }) ] ``` -------------------------------- ### Configure Qt style name Source: https://home-manager-options.extranix.com/ Set the style name for Qt5/Qt6 applications. Case-insensitive. Examples include `adwaita`, `breeze`, `kvantum`, and styles from `qtstyleplugins`. ```nix qt.style.name = "adwaita-dark"; ``` -------------------------------- ### Startup Configuration Source: https://home-manager-options.extranix.com/ Configure commands to be executed at startup. ```APIDOC ## xsession.windowManager.i3.config.startup ### Description Commands that should be executed at startup. See . ### Type list of (submodule) ### Submodule Options - **always** (boolean) - Whether to run command on each i3 restart. - **command** (string) - Command that will be executed on startup. - **notification** (boolean) - Whether to enable startup-notification support for the command. See {option}`--no-startup-id` option description in the i3 user guide. - **workspace** (null or string) - Launch application on a particular workspace. DEPRECATED: Use [](#opt-xsession.windowManager.i3.config.assigns) instead. See . ``` -------------------------------- ### Kickoff Configuration Options Source: https://home-manager-options.extranix.com/ Options for configuring the kickoff application launcher. ```APIDOC ## Kickoff Configuration ### Description Configuration options for the kickoff application launcher. ### Options - **programs.kickoff.enable** (boolean) - Whether to enable kickoff. - **programs.kickoff.package** (null or package) - The kickoff package to use. - **programs.kickoff.settings** (TOML value) - Configuration settings for kickoff. All the available options can be found here: . ``` -------------------------------- ### Set Floorp Container Name Source: https://home-manager-options.extranix.com/ Define a string name for a Floorp container, for example, 'shopping'. ```nix programs.floorp.profiles..containers..name = "shopping"; ``` -------------------------------- ### Configure htop Settings Source: https://home-manager-options.extranix.com/ Add custom configuration options to htop's configuration file. ```nix programs.htop.settings = { "hide_userland_threads" = true; "show_program_path" = "both"; }; ``` -------------------------------- ### Enable and Configure Easyeffects Source: https://home-manager-options.extranix.com/ Enable the Easyeffects daemon. Requires `programs.dconf.enable = true;` in your system configuration. You can also specify extra presets and a default preset. ```nix services.easyeffects.enable = true; programs.dconf.enable = true; services.easyeffects.extraPresets = { input = { "My Preset" = { "plugin" = "audio_plugin"; "settings" = { "key" = "value"; }; }; }; }; services.easyeffects.preset = "My Preset"; ``` -------------------------------- ### Configure Qt style package Source: https://home-manager-options.extranix.com/ Specify the theme package(s) to be used for Qt5/Qt6 applications. Auto-detected from `qt.style.name` if possible. See documentation for available options. ```nix qt.style.package = [ pkgs.kvantum pkgs.qtstyleplugins ]; ``` -------------------------------- ### Configure qt6ct settings Source: https://home-manager-options.extranix.com/ Configure settings for `qt6ct`, which writes to `qt6ct/qt6ct.conf`. Lists are translated to comma-separated strings, and fonts must be quoted. ```nix qt.qt6ctSettings = { "Appearance"."Fonts" = "'Noto Sans', 10"; "qtct"."IcoTheme" = "breeze"; }; ``` -------------------------------- ### Nushell Settings Conversion Source: https://home-manager-options.extranix.com/ Nushell settings in Nix format are flattened and assigned to `$env.config`. This example shows the conversion from Nix to Nushell syntax. ```nix { show_banner = false; completions.external = { enable = true; max_results = 200; }; } ``` ```nushell $env.config.completions.external.enable = true $env.config.completions.external.max_results = 200 $env.config.show_banner = false ``` -------------------------------- ### Launcher and Modes Configuration Source: https://home-manager-options.extranix.com/ Configure the default launcher and binding modes. ```APIDOC ## xsession.windowManager.i3.config.menu ### Description Default launcher to use. ### Type string ``` ```APIDOC ## xsession.windowManager.i3.config.modes ### Description An attribute set that defines binding modes and keybindings inside them. Only basic keybinding is supported (bindsym keycomb action), for more advanced setup use 'i3.extraConfig'. ### Type attribute set of attribute set of string ``` -------------------------------- ### Configure Emacs Socket Activation Source: https://home-manager-options.extranix.com/ Enable systemd socket activation for the Emacs service. This allows Emacs to start on demand when connections are made to its socket. ```nix services.emacs.socketActivation.enable = true; ``` -------------------------------- ### Configure qt5ct settings Source: https://home-manager-options.extranix.com/ Configure settings for `qt5ct`, which writes to `qt5ct/qt5ct.conf`. Lists are translated to comma-separated strings, and fonts must be quoted. ```nix qt.qt5ctSettings = { "Appearance"."Fonts" = "'Noto Sans', 10"; "qtct"."IcoTheme" = "breeze"; }; ``` -------------------------------- ### Enable Qt 5 and 6 configuration Source: https://home-manager-options.extranix.com/ Enable configuration for Qt 5 and 6 applications. This option is a boolean flag. ```nix qt.enable = true; ``` -------------------------------- ### Enable htop Process Viewer Source: https://home-manager-options.extranix.com/ Set to 'true' to enable the htop interactive process viewer. ```nix programs.htop.enable = true; ``` -------------------------------- ### X Session General Options Source: https://home-manager-options.extranix.com/ General settings for enabling and initializing the X session. ```APIDOC ## X Session General Options ### Description Configuration options for the X session. ### Parameters #### Path Parameters - **xsession.enable** (boolean) - Required - Whether to enable X Session. - **xsession.initExtra** (strings concatenated with "\n") - Required - Extra shell commands to run during initialization. - **xsession.numlock.enable** (boolean) - Required - Whether to enable Num Lock. - **xsession.preferStatusNotifierItems** (boolean) - Required - Whether tray applets should prefer using the Status Notifier Items (SNI) protocol. - **xsession.profileExtra** (strings concatenated with "\n") - Required - Extra shell commands to run before session start. - **xsession.profilePath** (string) - Required - Path, relative to {env}`HOME`, where Home Manager should write the X profile script. - **xsession.scriptPath** (string) - Required - Path, relative to {env}`HOME`, where Home Manager should write the X session script. ``` -------------------------------- ### Configure Polybar settings using Nix attributes Source: https://home-manager-options.extranix.com/ Demonstrates how to define Polybar modules using a Nix attribute set, which is automatically converted into the required INI-style format. ```nix "module/volume" = { type = "internal/pulseaudio"; format.volume = " "; label.muted.text = "🔇"; label.muted.foreground = "#666"; ramp.volume = ["🔈" "🔉" "🔊"]; click.right = "pavucontrol &"; } ``` ```ini [module/volume] type=internal/pulseaudio format-volume= label-muted=🔇 label-muted-foreground=#666 ramp-volume-0=🔈 ramp-volume-1=🔉 ramp-volume-2=🔊 click-right=pavucontrol & ``` -------------------------------- ### Configure Floorp Search Engine Source: https://home-manager-options.extranix.com/ Set up declarative search engine configurations for a Floorp profile. ```nix programs.floorp.profiles..search.default = "google"; ``` -------------------------------- ### Swww Configuration Source: https://home-manager-options.extranix.com/ Configure the swww wallpaper utility. ```APIDOC ## Swww Configuration ### Description Configure the swww wallpaper utility. ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.swww.enable ### Description Whether to enable swww, a Solution to your Wayland Wallpaper Woes. ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.swww.extraArgs ### Description Options given to swww-daemon when the service is run. See `swww-daemon --help` for more information. ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.swww.package ### Description The swww package to use. ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ``` -------------------------------- ### Bun Configuration Source: https://home-manager-options.extranix.com/ Enable and configure Bun, a fast JavaScript runtime, including Git integration and settings. ```APIDOC ## Bun Configuration ### Description Enable and configure Bun, a fast JavaScript runtime, including Git integration and settings. ### Endpoints - `programs.bun.enable` - `programs.bun.enableGitIntegration` - `programs.bun.package` - `programs.bun.settings` ### Parameters #### `programs.bun.enable` - **Type**: boolean - **Description**: Whether to enable Bun JavaScript runtime. #### `programs.bun.enableGitIntegration` - **Type**: boolean - **Description**: Whether to enable Git integration. #### `programs.bun.package` - **Type**: null or package - **Description**: The bun package to use. #### `programs.bun.settings` - **Type**: TOML value - **Description**: Configuration written to {file}`$XDG_CONFIG_HOME/.bunfig.toml`. See for the full list of options. ``` -------------------------------- ### programs.quickshell Source: https://home-manager-options.extranix.com/ Configuration for quickshell, a QtQuick-based desktop shell toolkit. ```APIDOC ## programs.quickshell.activeConfig ### Description The name of the config to use. If `null`, quickshell will attempt to use a config located in `$XDG_CONFIG_HOME/quickshell` instead of one of the named sub-directories. ### Method SET ### Endpoint /programs/quickshell/activeConfig ### Parameters #### Request Body - **activeConfig** (null or string) - Required - The active configuration name for quickshell. ``` ```APIDOC ## programs.quickshell.configs ### Description A set of configs to include in the quickshell config directory. The key is the name of the config. The configuration that quickshell should use can be specified with the `activeConfig` option. ### Method SET ### Endpoint /programs/quickshell/configs ### Parameters #### Request Body - **configs** (attribute set of absolute path) - Required - A set of configurations for quickshell. ``` ```APIDOC ## programs.quickshell.enable ### Description Whether to enable quickshell, a flexbile QtQuick-based desktop shell toolkit. ### Method SET ### Endpoint /programs/quickshell/enable ### Parameters #### Request Body - **enable** (boolean) - Required - Whether to enable quickshell. ``` ```APIDOC ## programs.quickshell.package ### Description The quickshell package to use. ### Method SET ### Endpoint /programs/quickshell/package ### Parameters #### Request Body - **package** (null or package) - Required - The quickshell package to use. ``` ```APIDOC ## programs.quickshell.systemd.enable ### Description Whether to enable quickshell systemd service. ### Method SET ### Endpoint /programs/quickshell/systemd/enable ### Parameters #### Request Body - **enable** (boolean) - Required - Whether to enable the quickshell systemd service. ``` ```APIDOC ## programs.quickshell.systemd.target ### Description The systemd target that will automatically start quickshell. If you set this to a WM-specific target, make sure that systemd integration for that WM is enabled (e.g. `wayland.windowManager.hyprland.systemd.enable`). **This is typically true by default**. ### Method SET ### Endpoint /programs/quickshell/systemd/target ### Parameters #### Request Body - **target** (string) - Required - The systemd target for quickshell. ``` -------------------------------- ### nixGL Configuration Options Source: https://home-manager-options.extranix.com/ Configuration options for managing OpenGL and Vulkan wrappers on non-NixOS systems. ```APIDOC ## nixGL Configuration ### Description Options for configuring nixGL to provide GPU library wrappers for applications. ### Parameters - **targets.genericLinux.nixGL.defaultWrapper** (string) - Optional - Default wrapper function (mesa, mesaPrime, nvidia, nvidiaPrime). - **targets.genericLinux.nixGL.installScripts** (list) - Optional - List of wrappers to install as scripts in the environment. - **targets.genericLinux.nixGL.offloadWrapper** (string) - Optional - Wrapper function for secondary GPU offloading. - **targets.genericLinux.nixGL.packages** (attribute set) - Optional - Package set containing GPU library wrappers. - **targets.genericLinux.nixGL.prime.card** (string) - Optional - Graphics card selection for PRIME offloading. - **targets.genericLinux.nixGL.prime.installScript** (string) - Optional - Installs prime-offload script (mesa or nvidia). - **targets.genericLinux.nixGL.prime.nvidiaProvider** (string) - Optional - Overrides offload provider for Nvidia PRIME. - **targets.genericLinux.nixGL.vulkan.enable** (boolean) - Optional - Enables Vulkan support in wrappers. ``` -------------------------------- ### Program Enablement and Settings Source: https://home-manager-options.extranix.com/ Standard configuration pattern for enabling and configuring various system utilities like bemenu, bluetuith, bottom, and boxxy. ```APIDOC ## Program Configuration ### Description Common pattern for enabling programs and providing configuration settings via Home Manager. ### Parameters #### Request Body - **programs.bemenu.enable** (boolean) - Optional - Whether to enable bemenu. - **programs.bluetuith.settings** (JSON value) - Optional - Configuration written to $XDG_CONFIG_HOME/bluetuith/bluetuith.conf. - **programs.bottom.settings** (TOML value) - Optional - Configuration written to $XDG_CONFIG_HOME/bottom/bottom.toml. - **programs.boxxy.rules** (list of submodule) - Optional - List of boxxy rules. ``` -------------------------------- ### Prezto Configuration Source: https://home-manager-options.extranix.com/ Configure the Prezto framework, including enabling it, setting case sensitivity, colors, and various module options. ```APIDOC ## Prezto Configuration ### Description Options to configure prezto. ### Options - **programs.zsh.prezto.autosuggestions.color** (null or string) - Set the query found color. - **programs.zsh.prezto.caseSensitive** (null or boolean) - Set case-sensitivity for completion, history lookup, etc. - **programs.zsh.prezto.color** (null or boolean) - Color output (automatically set to `false` on dumb terminals). - **programs.zsh.prezto.completions.ignoredHosts** (list of string) - Set the entries to ignore in static {file}`/etc/hosts` for host completion. - **programs.zsh.prezto.editor.dotExpansion** (null or boolean) - Automatically convert `....` to `../..`. - **programs.zsh.prezto.editor.keymap** (null or one of "emacs", "vi") - Set the key mapping style to `emacs` or `vi`. - **programs.zsh.prezto.editor.promptContext** (null or boolean) - Allow the Zsh prompt context to be shown. - **programs.zsh.prezto.enable** (boolean) - Whether to enable prezto. - **programs.zsh.prezto.extraConfig** (strings concatenated with "\n") - Additional configuration to add to {file}`.zpreztorc`. - **programs.zsh.prezto.extraFunctions** (list of string) - Set the Zsh functions to load ({manpage}`zshcontrib(1)`). - **programs.zsh.prezto.extraModules** (list of string) - Set the Zsh modules to load ({manpage}`zshmodules(1)`). - **programs.zsh.prezto.git.submoduleIgnore** (null or one of "dirty", "untracked", "all", "none") - Ignore submodules when they are `dirty`, `untracked`, `all`, or `none`. - **programs.zsh.prezto.gnuUtility.prefix** (null or string) - Set the command prefix on non-GNU systems. ``` -------------------------------- ### OBS Studio Configuration Source: https://home-manager-options.extranix.com/ Configure OBS Studio, including enabling it, specifying the package, and adding plugins. ```APIDOC ## programs.obs-studio.enable ### Description Whether to enable obs-studio. ### Type boolean ## programs.obs-studio.package ### Description The obs-studio package to use. ### Type package ## programs.obs-studio.plugins ### Description Optional OBS plugins. ### Type list of package ``` -------------------------------- ### Configure Qt KDE settings with kwriteconfig6 Source: https://home-manager-options.extranix.com/ Set Qt KDE settings by defining values to be modified by `kwriteconfig6`. Null values will delete the corresponding entry. ```nix qt.kde.settings = { "AC.HandleButtonEvents.lidAction" = 32; }; ``` -------------------------------- ### Program Configuration Options Source: https://home-manager-options.extranix.com/ Documentation for various program modules available in Home Manager. ```APIDOC ## Configuration Options ### oh-my-posh - **programs.oh-my-posh.package** (package) - The oh-my-posh package to use. - **programs.oh-my-posh.settings** (JSON value) - Configuration written to $XDG_CONFIG_HOME/oh-my-posh/config.json. - **programs.oh-my-posh.useTheme** (null or string) - Use one of the official themes. ### onagre - **programs.onagre.enable** (boolean) - Whether to enable onagre. - **programs.onagre.package** (null or package) - The onagre package to use. - **programs.onagre.style** (string) - Configuration file for theme.scss. ### onedrive - **programs.onedrive.enable** (boolean) - Whether to enable onedrive. - **programs.onedrive.package** (null or package) - The onedrive package to use. - **programs.onedrive.settings** (attribute set of string) - Configuration settings for Onedrive. ### onlyoffice - **programs.onlyoffice.enable** (boolean) - Whether to enable onlyoffice. - **programs.onlyoffice.package** (null or package) - The onlyoffice-desktopeditors package to use. - **programs.onlyoffice.settings** (attribute set) - Configuration settings for Onlyoffice. ### opam - **programs.opam.enable** (boolean) - Whether to enable Opam. - **programs.opam.enableBashIntegration** (boolean) - Whether to enable Bash integration. - **programs.opam.enableFishIntegration** (boolean) - Whether to enable Fish integration. - **programs.opam.enableZshIntegration** (boolean) - Whether to enable Zsh integration. - **programs.opam.package** (package) - The opam package to use. ### opencode - **programs.opencode.agents** (attribute set) - Custom agents for opencode. - **programs.opencode.commands** (attribute set) - Custom commands for opencode. - **programs.opencode.enable** (boolean) - Whether to enable opencode. - **programs.opencode.enableMcpIntegration** (boolean) - Whether to integrate MCP servers config. - **programs.opencode.package** (null or package) - The opencode package to use. - **programs.opencode.rules** (string) - Global custom instructions. - **programs.opencode.settings** (JSON value) - Configuration written to $XDG_CONFIG_HOME/opencode/config.json. - **programs.opencode.themes** (attribute set) - Custom themes for opencode. ### openstackclient - **programs.openstackclient.clouds** (submodule) - Configuration for clouds.yaml. - **programs.openstackclient.enable** (boolean) - Whether to enable OpenStack command-line client. - **programs.openstackclient.package** (null or package) - The openstackclient package to use. ``` -------------------------------- ### Configure ActivityWatch extra options Source: https://home-manager-options.extranix.com/ Provide additional arguments to be passed to the ActivityWatch server. This option expects a list of strings. ```nix services.activitywatch.extraOptions = [ "--log-level" "debug" ]; ``` -------------------------------- ### Enable Blueman Service Source: https://home-manager-options.extranix.com/ System-wide service configuration required for the Blueman applet. ```nix services.blueman.enable = true; ``` -------------------------------- ### Map XML Configuration to Nix Source: https://home-manager-options.extranix.com/ Demonstrates how to translate XML configuration elements into the equivalent Nix attribute set structure used by the Syncthing JSON REST API. ```xml default 1 ``` ```nix { options = { listenAddresses = [ "default" ]; minHomeDiskFree = { unit = "%"; value = 1; }; }; } ``` -------------------------------- ### i3 General Configuration Source: https://home-manager-options.extranix.com/ Configure general i3 window manager settings, including default workspace and focus behavior. ```APIDOC ## i3 General Configuration ### Description This section covers general configuration options for the i3 window manager, including the default workspace upon launch and focus-related settings. ### Options - **xsession.windowManager.i3.config.defaultWorkspace** (null or string) - The default workspace to show when i3 is launched. This must to correspond to the value of the keybinding of the default workspace. - **xsession.windowManager.i3.config.focus** (submodule) - Focus related settings. - **xsession.windowManager.i3.config.focus.followMouse** (boolean) - Whether focus should follow the mouse. ``` -------------------------------- ### Configure Qt platform theme Source: https://home-manager-options.extranix.com/ Set the platform theme for Qt applications. Deprecated, use `qt.platformTheme.name` instead. Accepts specific string values or a submodule. ```nix qt.platformTheme = "gtk"; ``` -------------------------------- ### Configure ActivityWatch settings Source: https://home-manager-options.extranix.com/ Configure the `aw-server-rust` settings, which will be generated at `$XDG_CONFIG_HOME/activitywatch/aw-server-rust/config.toml`. ```nix services.activitywatch.settings = { "server" = { "host" = "127.0.0.1"; "port" = 59600; }; }; ``` -------------------------------- ### Configure Hyprlock Settings Source: https://home-manager-options.extranix.com/ Define Hyprlock's configuration using Nix. Entries with the same key should be lists, and variable/color names must be quoted. ```nix programs.hyprlock.settings = { "general" = { "disable_hyprland_logo" = true; "no_fade_in" = true; }; "background" = { "path" = "/usr/share/backgrounds/default.png"; }; "input-field" { "monitor" = "DP-1"; "size" = "200x10"; "dotsize" = "10"; "comp" = "dots"; }; }; ``` -------------------------------- ### Tint2 Panel Configuration Source: https://home-manager-options.extranix.com/ Enable and configure Tint2, a panel for Xorg, including extra configuration commands and the package to use. ```APIDOC ## programs.tint2.enable ### Description Whether to enable tint2, a simple, unobtrusive and light panel for Xorg. ### Method SET ### Endpoint programs.tint2.enable ### Parameters #### Request Body - **value** (boolean) - Required - Whether to enable Tint2. ## programs.tint2.extraConfig ### Description Commands for tint2 that will be add to the {file}`tint2rc` file. ### Method SET ### Endpoint programs.tint2.extraConfig ### Parameters #### Request Body - **value** (strings concatenated with "\n") - Required - Additional commands for tint2rc. ## programs.tint2.package ### Description The tint2 package to use. ### Method SET ### Endpoint programs.tint2.package ### Parameters #### Request Body - **value** (package) - Required - The Tint2 package to use. ``` -------------------------------- ### Keybindings Configuration Source: https://home-manager-options.extranix.com/ Configure keybindings for i3. ```APIDOC ## xsession.windowManager.i3.config.keybindings ### Description An attribute set that assigns a key press to an action using a key symbol. See . Consider to use `lib.mkOptionDefault` function to extend or override default keybindings instead of specifying all of them from scratch. ### Type attribute set of (null or string) ``` ```APIDOC ## xsession.windowManager.i3.config.keycodebindings ### Description An attribute set that assigns keypress to an action using key code. See . ### Type attribute set of (null or string) ``` -------------------------------- ### i18n.inputMethod Configuration Source: https://home-manager-options.extranix.com/ Configuration options for setting up input methods like fcitx5, kime, and uim. ```APIDOC ## i18n.inputMethod ### Description Select and configure the enabled input method for the system. ### Parameters #### Request Body - **type** (string) - Optional - One of "fcitx", "fcitx5", "nabi", "uim", "hime", "kime" - **fcitx5.settings.globalOptions** (attribute set) - Optional - Global options in config file in ini format - **fcitx5.settings.inputMethod** (attribute set) - Optional - Input method configure in profile file in ini format - **kime.extraConfig** (string) - Optional - Kime configuration strings - **uim.toolbar** (string) - Optional - One of "gtk", "gtk3", "gtk-systray", "gtk3-systray", "qt4" ``` -------------------------------- ### Configure HyprPanel Settings Source: https://home-manager-options.extranix.com/ Set HyprPanel's configuration, which is written to `$XDG_CONFIG_HOME/hyprpanel/config.json`. ```nix programs.hyprpanel.settings = { "position" = "top"; "height" = 30; "modules" = ["clock" "cpu" "memory"]; }; ``` -------------------------------- ### Awesome Window Manager Configuration Source: https://home-manager-options.extranix.com/ Options for enabling and configuring the Awesome window manager. ```APIDOC ## Awesome Window Manager Configuration ### Description Configuration options for the Awesome window manager. ### Parameters #### Path Parameters - **xsession.windowManager.awesome.enable** (boolean) - Required - Whether to enable Awesome window manager. - **xsession.windowManager.awesome.luaModules** (list of package) - Required - List of lua packages available for being used in the Awesome configuration. - **xsession.windowManager.awesome.noArgb** (boolean) - Required - Disable client transparency support. - **xsession.windowManager.awesome.package** (package) - Required - The awesome package to use for running the Awesome WM. ``` -------------------------------- ### Configure LibreWolf Containers Source: https://home-manager-options.extranix.com/ Set up multi-account containers for a LibreWolf profile, specifying color, icon, ID, and name for each container. Use `containersForce` to replace existing configurations. ```nix programs.librewolf.profiles..containers..color = "blue"; programs.librewolf.profiles..containers..icon = "briefcase"; programs.librewolf.profiles..containers..id = 1; programs.librewolf.profiles..containers..name = "work"; ``` -------------------------------- ### Enable HyprPanel Systemd Integration Source: https://home-manager-options.extranix.com/ Set to 'true' to enable systemd integration for HyprPanel. ```nix programs.hyprpanel.systemd.enable = true; ``` -------------------------------- ### Configure LibreWolf Bookmarks Source: https://home-manager-options.extranix.com/ Define custom bookmarks for a LibreWolf profile. Supports nested directories and separators. Use `force` to override existing bookmarks. ```nix programs.librewolf.profiles..bookmarks.settings = { } ; ``` -------------------------------- ### Rofi Configuration Options Source: https://home-manager-options.extranix.com/ Configure Rofi, a window switcher, application launcher, and dmenu replacement. ```APIDOC ## Rofi Configuration ### Description Configuration options for Rofi. ### Programs #### `programs.rofi.enable` - **Type**: boolean - **Description**: Whether to enable Rofi: A window switcher, application launcher and dmenu replacement. #### `programs.rofi.package` - **Type**: package - **Description**: The rofi package to use. #### `programs.rofi.configPath` - **Type**: string - **Description**: Path where to put generated configuration file. #### `programs.rofi.cycle` - **Type**: null or boolean - **Description**: Whether to cycle through the results list. #### `programs.rofi.extraConfig` - **Type**: (attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string - **Description**: Additional configuration to add. #### `programs.rofi.finalPackage` - **Type**: package - **Description**: Resulting customized rofi package. #### `programs.rofi.font` - **Type**: null or string - **Description**: Font to use. #### `programs.rofi.location` - **Type**: one of "bottom", "bottom-left", "bottom-right", "center", "left", "right", "top", "top-left", "top-right" - **Description**: The location rofi appears on the screen. #### `programs.rofi.modes` - **Type**: list of (string or (submodule)) - **Description**: Modes to enable. For custom modes see `man 5 rofi-script`. #### `programs.rofi.pass.enable` - **Type**: boolean - **Description**: Whether to enable rofi integration with password-store. ``` -------------------------------- ### Add Pre-Configuration Floorp Preferences Source: https://home-manager-options.extranix.com/ Concatenate extra preferences to the `user.js` file for a Floorp profile, before settings defined in `programs.floorp.profiles..settings`. Use `programs.floorp.profiles..extraConfig` unless overwriting is intended. ```nix programs.floorp.profiles..preConfig = "user_pref(\"browser.download.dir\", \"~/Downloads\");"; ``` -------------------------------- ### Enable HyprPanel Source: https://home-manager-options.extranix.com/ Set to 'true' to enable HyprPanel, a panel for Hyprland. ```nix programs.hyprpanel.enable = true; ``` -------------------------------- ### Enable Home Manager Source: https://home-manager-options.extranix.com/ Set to 'true' to enable the Home Manager itself. This is typically used for bootstrapping or managing Home Manager configurations. ```nix programs.home-manager.enable = true; ``` -------------------------------- ### System Utility Services Source: https://home-manager-options.extranix.com/ Configuration for GNOME Polkit agent and Poweralertd. ```APIDOC ## System Utility Services ### Description Configuration for auxiliary system services like the GNOME Policykit Agent and Upower-powered power alert daemon. ### Parameters - **services.polkit-gnome.enable** (boolean) - Whether to enable GNOME Policykit Agent. - **services.poweralertd.enable** (boolean) - Whether to enable the Upower-powered power alertd. ``` -------------------------------- ### Standard I/O Path Configuration Source: https://home-manager-options.extranix.com/ Configure the standard input, output, and error file paths for a launchd agent. ```APIDOC ## launchd.agents..config.StandardPaths ### Description Configure the standard input, output, and error file paths for a launchd agent. ### Parameters #### Path Parameters - **name** (string) - Required - The name of the agent to configure. #### Request Body - **StandardErrorPath** (null or absolute path) - Optional - Specifies the file for stderr data. - **StandardInPath** (null or absolute path) - Optional - Specifies the file for stdin data. - **StandardOutPath** (null or absolute path) - Optional - Specifies the file for stdout data. ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example { "status": "success" } ``` -------------------------------- ### Configure Floorp Extension Exhaustive Permissions Source: https://home-manager-options.extranix.com/ When enabled, users must authorize requested permissions for all extensions listed in `programs.floorp.profiles..extensions.packages` within `programs.floorp.profiles..extensions.settings..permissions`. ```nix programs.floorp.profiles..extensions.exhaustivePermissions = true; ``` -------------------------------- ### Sxhkd Configuration Source: https://home-manager-options.extranix.com/ Configure the sxhkd hotkey daemon. ```APIDOC ## Sxhkd Configuration ### Description Configure the sxhkd hotkey daemon. ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.sxhkd.enable ### Description Whether to enable simple X hotkey daemon. ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.sxhkd.extraConfig ### Description Additional configuration to add. ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.sxhkd.extraOptions ### Description Command line arguments to invoke {command}`sxhkd` with. ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.sxhkd.keybindings ### Description An attribute set that assigns hotkeys to commands. ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ## services.sxhkd.package ### Description The sxhkd package to use. containing the sxhkd executable ### Method N/A (Configuration Option) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ``` -------------------------------- ### Nix Configuration Schema Source: https://home-manager-options.extranix.com/ Overview of the available Nix configuration options including build machines, garbage collection, and registry settings. ```APIDOC ## Nix Configuration Options ### Description This section defines the configuration structure for the Nix package manager within the home-manager environment. ### Parameters - **nix.buildMachines.*.sshKey** (null or string) - The path to the SSH private key for build machine authentication. - **nix.buildMachines.*.sshUser** (null or string) - The username to log in as on the remote host. - **nix.buildMachines.*.supportedFeatures** (list of string) - Features supported by the builder. - **nix.buildMachines.*.systems** (list of string) - System types the build machine can execute. - **nix.channels** (attribute set of package) - Declarative alternative to Nix channels. - **nix.checkConfig** (boolean) - Whether to check for data type mismatches and parse errors. - **nix.distributedBuilds** (boolean) - Whether to distribute builds to configured machines. - **nix.extraOptions** (string) - Additional text appended to nix.conf. - **nix.gc.automatic** (boolean) - Automatically run the garbage collector. - **nix.gc.dates** (string or list of string) - Schedule for the garbage collector. - **nix.gc.options** (null or string) - Options for nix-collect-garbage. - **nix.gc.persistent** (boolean) - Whether to persist trigger times on disk. - **nix.gc.randomizedDelaySec** (string) - Randomized delay before garbage collection. - **nix.keepOldNixPath** (boolean) - Whether to keep previous NIX_PATH values. - **nix.nixPath** (list of string) - Directories added to the Nix expression search path. - **nix.package** (null or package) - The nix package to use. - **nix.registry** (attribute set) - User level flake registry. - **nix.settings** (submodule) - Configuration translated directly to nix.conf key-value pairs. ``` -------------------------------- ### services.gammastep Configuration Source: https://home-manager-options.extranix.com/ Configuration options for Gammastep screen temperature adjustment. ```APIDOC ## services.gammastep ### Description Configuration for Gammastep, which adjusts screen color temperature based on location. ### Parameters - **enable** (boolean) - Whether to enable Gammastep. - **provider** (string) - Location provider: "manual" or "geoclue2". - **latitude** (float/string) - Latitude between -90.0 and 90.0. - **longitude** (float/string) - Longitude between -180.0 and 180.0. - **temperature.day** (integer) - Day temperature (1000-25000 K). - **temperature.night** (integer) - Night temperature (1000-25000 K). - **tray** (boolean) - Start the tray applet. ``` -------------------------------- ### SM64EX Build Options Source: https://home-manager-options.extranix.com/ Configuration for the sm64ex build system, including base ROM path, compile flags, and region settings. ```APIDOC ## programs.sm64ex ### Description Configuration for the sm64ex build system. ### Parameters #### Request Body - **baserom** (null or absolute path) - The path to the Super Mario 64 baserom to extract assets from. - **enable** (boolean) - Whether to enable sm64ex. - **extraCompileFlags** (null or (list of string)) - Extra flags to pass to the compiler. See for more information. - **package** (null or package) - The sm64ex package to use. - **region** (null or one of "us", "eu", "jp") - Your baserom's region. Note that only "us", "eu", and "jp" are supported. - **settings** (null or (attribute set of (string or signed integer or boolean or list of string))) - Settings for sm64ex's {file}`$XDG_DATA_HOME/sm64pc/sm64config.txt` file. ``` -------------------------------- ### GNOME Keyring Configuration Source: https://home-manager-options.extranix.com/ Configure GNOME Keyring components, enable/disable the service, and specify packages. ```APIDOC ## services.gnome-keyring.* ### Description Configuration options for the GNOME Keyring service. ### Method N/A (Configuration Options) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **components** (list of one of "pkcs11", "secrets", "ssh") - Optional - The GNOME keyring components to start. If empty, the default set of components will be started. - **enable** (boolean) - Optional - Whether to enable GNOME Keyring. - **package** (package) - Optional - The gnome-keyring package to use. ### Request Example ```nix services.gnome-keyring.enable = true; services.gnome-keyring.components = [ "secrets" ]; ``` ### Response #### Success Response (200) N/A (Configuration Options) #### Response Example N/A ``` -------------------------------- ### Configure Floorp Extension Permissions Source: https://home-manager-options.extranix.com/ When enabled, `programs.floorp.profiles..extensions.settings..permissions` must specify the exact set of permissions the extension requests. If authorized permissions are broader, the assertion fails. ```nix programs.floorp.profiles..extensions.exactPermissions = true; ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.