Home Manager options
The following options can only be set in a Home Manager configuration.
If you combined Home Manager with your NixOS configuration, write these options within a Home Manager section, either for all users:
home-manager.sharedModules = [{
stylix.targets.xyz.enable = false;
}];
Or for a specific user:
home-manager.users.«name» = {
stylix.targets.xyz.enable = false;
};
Read more about per-user themes.
stylix.enable
Whether to enable Stylix.
When this is false
, all theming is disabled and all other options
are ignored.
Type: boolean
Default:
false
Example:
true
stylix.autoEnable
Whether to enable targets by default.
When this is false
, all targets are disabled unless explicitly enabled.
When this is true
, most targets are enabled by default. A small number
remain off by default, because they require further manual setup, or
they are only applicable in specific circumstances which cannot be
detected automatically.
Type: boolean
Default:
true
Example:
false
stylix.base16Scheme
A scheme following the base16 standard.
This can be a path to a file, a string of YAML, or an attribute set.
Type: path or strings concatenated with “\n” or (attribute set)
Default: The colors used in the theming.
Those are automatically selected from the background image by default, but could be overridden manually.
stylix.cursor.package
Package providing the cursor theme.
Type: package
Default:
<derivation vanilla-dmz-0.4.5>
stylix.cursor.name
The cursor name within the package.
Type: string
Default:
"Vanilla-DMZ"
stylix.cursor.size
The cursor size.
Type: signed integer
Default:
32
stylix.fonts.packages
A list of all the font packages that will be installed.
Type: list of package (read only)
stylix.fonts.emoji
Emoji font.
Type: submodule
Default:
{
name = "Noto Color Emoji";
package = <derivation noto-fonts-color-emoji-2.047>;
}
stylix.fonts.emoji.package
Package providing the font.
Type: package
stylix.fonts.emoji.name
Name of the font within the package.
Type: string
stylix.fonts.monospace
Monospace font.
Type: submodule
Default:
{
name = "DejaVu Sans Mono";
package = <derivation dejavu-fonts-2.37>;
}
stylix.fonts.monospace.package
Package providing the font.
Type: package
stylix.fonts.monospace.name
Name of the font within the package.
Type: string
stylix.fonts.sansSerif
Sans-serif font.
Type: submodule
Default:
{
name = "DejaVu Sans";
package = <derivation dejavu-fonts-2.37>;
}
stylix.fonts.sansSerif.package
Package providing the font.
Type: package
stylix.fonts.sansSerif.name
Name of the font within the package.
Type: string
stylix.fonts.serif
Serif font.
Type: submodule
Default:
{
name = "DejaVu Serif";
package = <derivation dejavu-fonts-2.37>;
}
stylix.fonts.serif.package
Package providing the font.
Type: package
stylix.fonts.serif.name
Name of the font within the package.
Type: string
stylix.fonts.sizes.applications
The font size used for applications.
This is measured in points. In a computing context, there should be 72 points per inch.
The CSS specification says there should be 96 reference pixels per inch. This means CSS uses a fixed ratio of 3 points to every 4 pixels, which is sometimes useful. However, reference pixels might not correspond to physical pixels, so this conversion may be invalid for other applications.
The measurements given in inches are likely to be incorrect unless you’ve manually set your DPI.
Type: unsigned integer, meaning >=0, or floating point number
Default:
12
stylix.fonts.sizes.desktop
The font size used for window titles, status bars, and other general elements of the desktop.
This is measured in points. In a computing context, there should be 72 points per inch.
The CSS specification says there should be 96 reference pixels per inch. This means CSS uses a fixed ratio of 3 points to every 4 pixels, which is sometimes useful. However, reference pixels might not correspond to physical pixels, so this conversion may be invalid for other applications.
The measurements given in inches are likely to be incorrect unless you’ve manually set your DPI.
Type: unsigned integer, meaning >=0, or floating point number
Default:
10
stylix.fonts.sizes.popups
The font size used for notifications, popups, and other overlay elements of the desktop.
This is measured in points. In a computing context, there should be 72 points per inch.
The CSS specification says there should be 96 reference pixels per inch. This means CSS uses a fixed ratio of 3 points to every 4 pixels, which is sometimes useful. However, reference pixels might not correspond to physical pixels, so this conversion may be invalid for other applications.
The measurements given in inches are likely to be incorrect unless you’ve manually set your DPI.
Type: unsigned integer, meaning >=0, or floating point number
Default:
10
stylix.fonts.sizes.terminal
The font size used for terminals and text editors.
This is measured in points. In a computing context, there should be 72 points per inch.
The CSS specification says there should be 96 reference pixels per inch. This means CSS uses a fixed ratio of 3 points to every 4 pixels, which is sometimes useful. However, reference pixels might not correspond to physical pixels, so this conversion may be invalid for other applications.
The measurements given in inches are likely to be incorrect unless you’ve manually set your DPI.
Type: unsigned integer, meaning >=0, or floating point number
Default:
12
stylix.iconTheme.enable
enable/disable icon theming.
Type: boolean
Default:
false
stylix.iconTheme.package
Package providing the icon theme.
Type: null or package
Default:
null
stylix.iconTheme.dark
Dark icon theme name.
Type: null or string
Default:
null
stylix.iconTheme.light
Light icon theme name.
Type: null or string
Default:
null
stylix.image
Wallpaper image.
This is set as the background of your desktop environment, if possible, and used to generate a colour scheme if you don’t set one manually.
Type: path or package convertible to it
stylix.imageScalingMode
Scaling mode for the wallpaper image.
-
stretch
Stretch the image to cover the screen.
-
fill
Scale the image to fill the screen, potentially cropping it.
-
fit
Scale the image to fit the screen without being cropped.
-
center
Center the image without resizing it.
-
tile
Tile the image to cover the screen.
Type: one of “stretch”, “fill”, “fit”, “center”, “tile”
Default:
"fill"
stylix.opacity.applications
The opacity of the windows of applications, the amount of applications supported is currently limited
Type: floating point number
Default:
1.0
stylix.opacity.desktop
The opacity of the windows of bars/widgets, the amount of applications supported is currently limited
Type: floating point number
Default:
1.0
stylix.opacity.popups
The opacity of the windows of notifications/popups, the amount of applications supported is currently limited
Type: floating point number
Default:
1.0
stylix.opacity.terminal
The opacity of the windows of terminals, this works across all terminals supported by stylix
Type: floating point number
Default:
1.0
stylix.override
An override that will be applied to stylix.base16Scheme when generating config.lib.stylix.colors.
Takes anything that a scheme generated by base16nix can take as argument to override.
Type: attribute set
Default:
{ }
stylix.polarity
Use this option to force a light or dark theme.
By default we will select whichever is ranked better by the genetic algorithm. This aims to get good contrast between the foreground and background, as well as some variety in the highlight colours.
Type: one of “either”, “light”, “dark”
Default:
"either"
stylix.targets.alacritty.enable
Whether to enable theming for Alacritty.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.avizo.enable
Whether to enable theming for Avizo.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.bat.enable
Whether to enable theming for Bat.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.bemenu.enable
Whether to enable theming for bemenu.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.bemenu.alternate
Whether to use alternating colours.
Type: boolean
Default:
false
stylix.targets.bemenu.fontSize
Font size used for bemenu.
Type: null or signed integer
Default:
10
stylix.targets.bspwm.enable
Whether to enable theming for bspwm.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.btop.enable
Whether to enable theming for btop.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.cava.enable
Whether to enable theming for CAVA.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.cava.rainbow.enable
Whether to enable theming for rainbow gradient theming.
Type: boolean
Default:
false
Example:
true
stylix.targets.cavalier.enable
Whether to enable theming for Cavalier.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.dunst.enable
Whether to enable theming for Dunst.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.emacs.enable
Whether to enable theming for Emacs.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.eog.enable
Whether to enable theming for Eye of GNOME Image Viewer.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.fcitx5.enable
Whether to enable theming for fcitx5.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.feh.enable
Whether to enable theming for the desktop background using Feh.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.firefox.enable
Whether to enable theming for Firefox.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.firefox.firefoxGnomeTheme.enable
Whether to enable theming for Firefox GNOME theme .
Type: boolean
Default:
false
Example:
true
stylix.targets.firefox.profileNames
The Firefox profile names to apply styling on.
Type: list of string
Default:
[ ]
stylix.targets.fish.enable
Whether to enable theming for Fish.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.floorp.enable
Whether to enable theming for Floorp.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.floorp.firefoxGnomeTheme.enable
Whether to enable theming for Firefox GNOME theme .
Type: boolean
Default:
false
Example:
true
stylix.targets.floorp.profileNames
The Floorp profile names to apply styling on.
Type: list of string
Default:
[ ]
stylix.targets.foot.enable
Whether to enable theming for Foot.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.forge.enable
Whether to enable theming for Forge.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.fuzzel.enable
Whether to enable theming for Fuzzel.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.fzf.enable
Whether to enable theming for Fzf.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.gedit.enable
Whether to enable theming for GEdit.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.ghostty.enable
Whether to enable theming for Ghostty.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.gitui.enable
Whether to enable theming for GitUI.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.gnome.enable
Whether to enable theming for GNOME.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.gnome-text-editor.enable
Whether to enable theming for GNOME Text Editor.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.gtk.enable
Whether to enable theming for all GTK3, GTK4 and Libadwaita apps.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.gtk.extraCss
Extra code added to gtk-3.0/gtk.css
and gtk-4.0/gtk.css
.
Type: strings concatenated with “\n”
Default:
""
Example:
''
// Remove rounded corners
window.background { border-radius: 0; }
''
stylix.targets.gtk.flatpakSupport.enable
Whether to enable theming for support for theming Flatpak apps.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.helix.enable
Whether to enable theming for Helix.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.hyprland.enable
Whether to enable theming for Hyprland.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.hyprland.hyprpaper.enable
Whether to enable theming for Hyprpaper.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.hyprlock.enable
Whether to enable theming for Hyprlock.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.hyprpaper.enable
Whether to enable theming for Hyprpaper.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.i3.enable
Whether to enable theming for i3.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.k9s.enable
Whether to enable theming for k9s.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.kde.enable
Whether to enable theming for KDE.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.kde.decorations
The library for the window decorations theme.
Decorations other than default org.kde.breeze
may not be compatible
with stylix.
To list all available decorations, see the library
key in the
org.kde.kdecoration2
section of $HOME/.config/kwinrc
after
imperatively applying the window decoration via the System Settings app.
Type: string
Default:
"org.kde.breeze"
stylix.targets.kitty.enable
Whether to enable theming for Kitty.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.kitty.variant256Colors
Whether to use the 256-color variant rather than the default combination of colors.
Type: boolean
Default:
false
stylix.targets.kubecolor.enable
Whether to enable theming for kubecolor.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.lazygit.enable
Whether to enable theming for lazygit.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.librewolf.enable
Whether to enable theming for LibreWolf.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.librewolf.firefoxGnomeTheme.enable
Whether to enable theming for Firefox GNOME theme .
Type: boolean
Default:
false
Example:
true
stylix.targets.librewolf.profileNames
The LibreWolf profile names to apply styling on.
Type: list of string
Default:
[ ]
stylix.targets.mako.enable
Whether to enable theming for Mako.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.mangohud.enable
Whether to enable theming for mangohud.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.micro.enable
Whether to enable theming for micro.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.ncspot.enable
Whether to enable theming for Ncspot.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.neovim.enable
Whether to enable theming for Neovim.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.neovim.plugin
Plugin used for the colorscheme
Type: one of “base16-nvim”, “mini.base16”
Default:
"mini.base16"
stylix.targets.neovim.transparentBackground.main
Whether to enable background transparency for the main Neovim window.
Type: boolean
Default:
false
Example:
true
stylix.targets.neovim.transparentBackground.signColumn
Whether to enable background transparency for the Neovim sign column.
Type: boolean
Default:
false
Example:
true
stylix.targets.nixcord.enable
Whether to enable theming for Nixcord.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.nixvim.enable
Whether to enable theming for nixvim.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.nixvim.plugin
Plugin used for the colorscheme
Type: one of “base16-nvim”, “mini.base16”
Default:
"mini.base16"
stylix.targets.nixvim.transparentBackground.main
Whether to enable background transparency for the main NeoVim window.
Type: boolean
Default:
false
Example:
true
stylix.targets.nixvim.transparentBackground.signColumn
Whether to enable background transparency for the NeoVim sign column.
Type: boolean
Default:
false
Example:
true
stylix.targets.nushell.enable
Whether to enable theming for Nushell.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.qt.enable
Whether to enable theming for QT.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.qt.platform
Selects the platform theme to use for Qt applications.
Defaults to the standard platform theme used in the configured DE in NixOS when
stylix.homeManagerIntegration.followSystem = true
.
Type: string
Default:
"qtct"
stylix.targets.qutebrowser.enable
Whether to enable theming for Qutebrowser.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.river.enable
Whether to enable theming for River.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.rofi.enable
Whether to enable theming for Rofi.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.spicetify.enable
Whether to enable theming for Spicetify.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.sway.enable
Whether to enable theming for Sway.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.swaylock.enable
Whether to enable theming for Swaylock.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.swaylock.useImage
Whether to use your wallpaper image for the Swaylock background. If this is disabled, a plain color will be used instead.
Type: boolean
Default:
true
stylix.targets.swaync.enable
Whether to enable theming for SwayNC.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.sxiv.enable
Whether to enable theming for Sxiv.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.tmux.enable
Whether to enable theming for Tmux.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.tofi.enable
Whether to enable theming for Tofi.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.vencord.enable
Whether to enable theming for Vencord.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.vesktop.enable
Whether to enable theming for Vesktop.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.vim.enable
Whether to enable theming for Vim.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.vscode.enable
Whether to enable theming for VSCode.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.waybar.enable
Whether to enable theming for Waybar.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.waybar.enableCenterBackColors
enables background colors on the center of the bar
Type: boolean
Default:
false
stylix.targets.waybar.enableLeftBackColors
enables background colors on the left side of the bar
Type: boolean
Default:
false
stylix.targets.waybar.enableRightBackColors
enables background colors on the right side of the bar
Type: boolean
Default:
false
stylix.targets.waybar.addCss
adds fully functional css (otherwise just adds colors and fonts)
Type: boolean
Default:
true
stylix.targets.wezterm.enable
Whether to enable theming for wezterm.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.wob.enable
Whether to enable theming for wob.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.wofi.enable
Whether to enable theming for wofi.
Type: boolean
Default:
false
Example:
true
stylix.targets.wpaperd.enable
Whether to enable theming for wpaperd.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.xfce.enable
Whether to enable theming for Xfce.
Type: boolean
Default:
false
Example:
true
stylix.targets.xresources.enable
Whether to enable theming for Xresources.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.yazi.enable
Whether to enable theming for Yazi.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.zathura.enable
Whether to enable theming for Zathura.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.zed.enable
Whether to enable theming for zed.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false
stylix.targets.zellij.enable
Whether to enable theming for zellij.
Type: boolean
Default:
same as stylix.autoEnable
Example:
false