nixos/shared/modules/services/theme_switcher/EXAMPLE_CONFIG.nix
2026-01-23 13:44:07 -07:00

75 lines
2.5 KiB
Nix

# Example configuration for enabling the theme switcher module
# Add this to your host's desktop-configuration.nix or similar file
{
# Import the module (if not already in your imports list)
imports = [
../../shared/modules/services/theme_switcher
];
# Enable and configure the theme switcher
services.themeSwitcher = {
enable = true;
user = "nate"; # Change to your username
# Theme generation settings
backend = "haishoku"; # Recommended color extraction backend
lightTime = "06:00:00"; # Switch to light theme at 6 AM
darkTime = "18:00:00"; # Switch to dark theme at 6 PM
enableAutoSwitch = true; # Enable automatic time-based switching
# Palette generation strategy
paletteGeneration = "continuous"; # Options: continuous, light-dark
# Wallpaper rotation settings
rotation = {
interval = "5m"; # Rotate wallpaper every 5 minutes
sorting = "random"; # Currently only random is supported
};
# Wpaperd wallpaper daemon settings
wpaperd = {
enable = true;
mode = "center"; # Options: center, fit, fit-border-color, stretch, tile
transition = {
effect = "fade"; # Transition effect (fade, simple, etc.)
duration = 300; # Transition duration in milliseconds
};
};
};
# IMPORTANT: Disable the old wallpaper-rotator module if you were using it
# services.wallpaperRotator.enable = false; # Comment out or remove
# Note: You may want to comment out or remove static theme configurations
# when enabling the dynamic theme switcher. For example:
# BEFORE (static theme) - COMMENT THESE OUT:
# home-manager.users.nate = {
# gtk.theme = {
# name = "catppuccin-macchiato-lavender-compact+rimless";
# package = pkgs.catppuccin-gtk.override { ... };
# };
#
# xdg.configFile."Kvantum/kvantum.kvconfig".source = ...;
# };
# AFTER (dynamic theme):
# The theme switcher module handles GTK/Qt theming automatically
# You can still keep icon and cursor themes:
# home-manager.users.nate = {
# gtk.iconTheme = {
# name = "Papirus-Dark";
# package = pkgs.catppuccin-papirus-folders;
# };
# gtk.cursorTheme = {
# name = "Bibata-Modern-Classic";
# package = pkgs.bibata-cursors;
# };
# };
}
# For manual testing before enabling auto-switch:
# services.themeSwitcher.enableAutoSwitch = false;
# Then use: ~/.local/bin/apply-theme.sh --light (or --dark)