diff --git a/README.md b/README.md index 11715bc0..7dd77022 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ philosophy. Try a live demo of this dark theme by running: ```console -nix run github:nix-community/stylix#testbed:gnome:default:dark:image:scheme:cursor +nix run github:nix-community/stylix#testbed:gnome:dark ``` ### KDE Plasma 5 diff --git a/doc/src/testbeds.md b/doc/src/testbeds.md index 285c41d9..127a0ed1 100644 --- a/doc/src/testbeds.md +++ b/doc/src/testbeds.md @@ -70,25 +70,25 @@ github:nix-community/stylix └───x86_64-linux ├───docs: package 'stylix-book' ├───palette-generator: package 'palette-generator' - ├───"testbed:gnome:default:dark:image:scheme:cursor": package 'testbed-gnome-default-dark-image-scheme-cursor' - ├───"testbed:gnome:default:dark:image:scheme:cursorless": package 'testbed-gnome-default-dark-image-scheme-cursorless' - ├───"testbed:gnome:default:dark:image:schemeless:cursorless": package 'testbed-gnome-default-dark-image-schemeless-cursorless' - ├───"testbed:gnome:default:dark:imageless:scheme:cursorless": package 'testbed-gnome-default-dark-imageless-scheme-cursorless' - ├───"testbed:gnome:default:light:image:scheme:cursorless": package 'testbed-gnome-default-light-image-scheme-cursorless' - ├───"testbed:kde:default:dark:image:scheme:cursor": package 'testbed-kde-default-dark-image-scheme-cursor' - ├───"testbed:kde:default:dark:image:scheme:cursorless": package 'testbed-kde-default-dark-image-scheme-cursorless' - ├───"testbed:kde:default:dark:image:schemeless:cursorless": package 'testbed-kde-default-dark-image-schemeless-cursorless' - ├───"testbed:kde:default:dark:imageless:scheme:cursorless": package 'testbed-kde-default-dark-imageless-scheme-cursorless' - └───"testbed:kde:default:light:image:scheme:cursorless": package 'testbed-kde-default-light-image-scheme-cursorless' + ├───"testbed:gnome:cursorless": package 'testbed-gnome-cursorless' + ├───"testbed:gnome:dark": package 'testbed-gnome-dark' + ├───"testbed:gnome:imageless": package 'testbed-gnome-imageless' + ├───"testbed:gnome:light": package 'testbed-gnome-light' + ├───"testbed:gnome:schemeless": package 'testbed-gnome-schemeless' + ├───"testbed:kde:cursorless": package 'testbed-kde-cursorless' + ├───"testbed:kde:dark": package 'testbed-kde-dark' + ├───"testbed:kde:imageless": package 'testbed-kde-imageless' + ├───"testbed:kde:light": package 'testbed-kde-light' + └───"testbed:kde:schemeless": package 'testbed-kde-schemeless' ``` (This has been edited down to only the relevant parts.) To start a testbed, each of which is named in the format -`testbed:«module»:«testbed»:«polarity»`, run the following command: +`testbed:«module»:«testcase»`, run the following command: ```console -user@host:~$ nix run .#testbed:«module»:«testbed»:«polarity»:«image»:«scheme»:«cursor» +user@host:~$ nix run .#testbed:«module»:«testcase» ``` Any package with a name not fitting the given format is not a testbed, and may diff --git a/modules/alacritty/testbeds/default.nix b/modules/alacritty/testbeds/alacritty.nix similarity index 100% rename from modules/alacritty/testbeds/default.nix rename to modules/alacritty/testbeds/alacritty.nix diff --git a/modules/bat/testbeds/default.nix b/modules/bat/testbeds/bat.nix similarity index 100% rename from modules/bat/testbeds/default.nix rename to modules/bat/testbeds/bat.nix diff --git a/modules/bspwm/testbeds/default.nix b/modules/bspwm/testbeds/bspwm.nix similarity index 100% rename from modules/bspwm/testbeds/default.nix rename to modules/bspwm/testbeds/bspwm.nix diff --git a/modules/btop/testbeds/default.nix b/modules/btop/testbeds/btop.nix similarity index 100% rename from modules/btop/testbeds/default.nix rename to modules/btop/testbeds/btop.nix diff --git a/modules/cavalier/testbeds/default.nix b/modules/cavalier/testbeds/cavalier.nix similarity index 100% rename from modules/cavalier/testbeds/default.nix rename to modules/cavalier/testbeds/cavalier.nix diff --git a/modules/chromium/testbeds/default.nix b/modules/chromium/testbeds/chromium.nix similarity index 100% rename from modules/chromium/testbeds/default.nix rename to modules/chromium/testbeds/chromium.nix diff --git a/modules/emacs/testbeds/default.nix b/modules/emacs/testbeds/emacs.nix similarity index 100% rename from modules/emacs/testbeds/default.nix rename to modules/emacs/testbeds/emacs.nix diff --git a/modules/eog/testbeds/default.nix b/modules/eog/testbeds/eog.nix similarity index 100% rename from modules/eog/testbeds/default.nix rename to modules/eog/testbeds/eog.nix diff --git a/modules/firefox/testbeds/gnome-theme.nix b/modules/firefox/testbeds/firefox-gnome-theme.nix similarity index 100% rename from modules/firefox/testbeds/gnome-theme.nix rename to modules/firefox/testbeds/firefox-gnome-theme.nix diff --git a/modules/firefox/testbeds/default.nix b/modules/firefox/testbeds/firefox.nix similarity index 100% rename from modules/firefox/testbeds/default.nix rename to modules/firefox/testbeds/firefox.nix diff --git a/modules/foliate/testbeds/default.nix b/modules/foliate/testbeds/foliate.nix similarity index 100% rename from modules/foliate/testbeds/default.nix rename to modules/foliate/testbeds/foliate.nix diff --git a/modules/foot/testbeds/default.nix b/modules/foot/testbeds/foot.nix similarity index 100% rename from modules/foot/testbeds/default.nix rename to modules/foot/testbeds/foot.nix diff --git a/modules/fzf/testbeds/default.nix b/modules/fzf/testbeds/fzf.nix similarity index 100% rename from modules/fzf/testbeds/default.nix rename to modules/fzf/testbeds/fzf.nix diff --git a/modules/gedit/testbeds/default.nix b/modules/gedit/testbeds/gedit.nix similarity index 100% rename from modules/gedit/testbeds/default.nix rename to modules/gedit/testbeds/gedit.nix diff --git a/modules/ghostty/testbeds/default.nix b/modules/ghostty/testbeds/ghostty.nix similarity index 100% rename from modules/ghostty/testbeds/default.nix rename to modules/ghostty/testbeds/ghostty.nix diff --git a/modules/glance/testbeds/hm.nix b/modules/glance/testbeds/glance-hm.nix similarity index 100% rename from modules/glance/testbeds/hm.nix rename to modules/glance/testbeds/glance-hm.nix diff --git a/modules/glance/testbeds/nixos.nix b/modules/glance/testbeds/glance-nixos.nix similarity index 100% rename from modules/glance/testbeds/nixos.nix rename to modules/glance/testbeds/glance-nixos.nix diff --git a/modules/gnome-text-editor/testbeds/default.nix b/modules/gnome-text-editor/testbeds/gnome-text-editor.nix similarity index 100% rename from modules/gnome-text-editor/testbeds/default.nix rename to modules/gnome-text-editor/testbeds/gnome-text-editor.nix diff --git a/modules/gnome/testbeds/default.nix b/modules/gnome/testbeds/gnome.nix similarity index 100% rename from modules/gnome/testbeds/default.nix rename to modules/gnome/testbeds/gnome.nix diff --git a/modules/halloy/testbeds/default.nix b/modules/halloy/testbeds/halloy.nix similarity index 100% rename from modules/halloy/testbeds/default.nix rename to modules/halloy/testbeds/halloy.nix diff --git a/modules/hyprland/testbeds/default.nix b/modules/hyprland/testbeds/hyprland.nix similarity index 100% rename from modules/hyprland/testbeds/default.nix rename to modules/hyprland/testbeds/hyprland.nix diff --git a/modules/kde/testbeds/default.nix b/modules/kde/testbeds/kde.nix similarity index 100% rename from modules/kde/testbeds/default.nix rename to modules/kde/testbeds/kde.nix diff --git a/modules/kitty/testbeds/default.nix b/modules/kitty/testbeds/kitty.nix similarity index 100% rename from modules/kitty/testbeds/default.nix rename to modules/kitty/testbeds/kitty.nix diff --git a/modules/lazygit/testbeds/default.nix b/modules/lazygit/testbeds/lazygit.nix similarity index 100% rename from modules/lazygit/testbeds/default.nix rename to modules/lazygit/testbeds/lazygit.nix diff --git a/modules/mpv/testbeds/modernz.nix b/modules/mpv/testbeds/mpv-modernz.nix similarity index 100% rename from modules/mpv/testbeds/modernz.nix rename to modules/mpv/testbeds/mpv-modernz.nix diff --git a/modules/mpv/testbeds/uosc.nix b/modules/mpv/testbeds/mpv-uosc.nix similarity index 100% rename from modules/mpv/testbeds/uosc.nix rename to modules/mpv/testbeds/mpv-uosc.nix diff --git a/modules/mpv/testbeds/default.nix b/modules/mpv/testbeds/mpv.nix similarity index 100% rename from modules/mpv/testbeds/default.nix rename to modules/mpv/testbeds/mpv.nix diff --git a/modules/qutebrowser/testbeds/default.nix b/modules/qutebrowser/testbeds/qutebrowser.nix similarity index 100% rename from modules/qutebrowser/testbeds/default.nix rename to modules/qutebrowser/testbeds/qutebrowser.nix diff --git a/modules/starship/testbeds/default.nix b/modules/starship/testbeds/starship.nix similarity index 100% rename from modules/starship/testbeds/default.nix rename to modules/starship/testbeds/starship.nix diff --git a/modules/sxiv/testbeds/default.nix b/modules/sxiv/testbeds/sxiv.nix similarity index 100% rename from modules/sxiv/testbeds/default.nix rename to modules/sxiv/testbeds/sxiv.nix diff --git a/modules/vscode/testbeds/default.nix b/modules/vscode/testbeds/vscode.nix similarity index 100% rename from modules/vscode/testbeds/default.nix rename to modules/vscode/testbeds/vscode.nix diff --git a/modules/wezterm/testbeds/default.nix b/modules/wezterm/testbeds/wezterm.nix similarity index 100% rename from modules/wezterm/testbeds/default.nix rename to modules/wezterm/testbeds/wezterm.nix diff --git a/modules/wofi/testbeds/default.nix b/modules/wofi/testbeds/wofi.nix similarity index 100% rename from modules/wofi/testbeds/default.nix rename to modules/wofi/testbeds/wofi.nix diff --git a/modules/yazi/testbeds/default.nix b/modules/yazi/testbeds/yazi.nix similarity index 100% rename from modules/yazi/testbeds/default.nix rename to modules/yazi/testbeds/yazi.nix diff --git a/modules/zathura/testbeds/default.nix b/modules/zathura/testbeds/zathura.nix similarity index 100% rename from modules/zathura/testbeds/default.nix rename to modules/zathura/testbeds/zathura.nix diff --git a/stylix/testbed.nix b/stylix/testbed.nix index 5b2e84aa..47b5ff00 100644 --- a/stylix/testbed.nix +++ b/stylix/testbed.nix @@ -242,7 +242,7 @@ let ]; makeTestbed = - testbed: stylix: + testbed: testcase: stylix: let name = lib.concatMapStringsSep testbedFieldSeparator @@ -254,12 +254,8 @@ let ) [ "testbed" - testbed.module testbed.name - stylix.polarity - "image${lib.optionalString (stylix.image or null == null) "less"}" - "scheme${lib.optionalString (stylix.base16Scheme or null == null) "less"}" - "cursor${lib.optionalString (stylix.cursor or null == null) "less"}" + testcase ]; system = lib.nixosSystem { @@ -321,30 +317,19 @@ let }; in testbed: - map (makeTestbed testbed) [ - { + lib.mapAttrsToList (makeTestbed testbed) { + light = { enable = true; image = images.light; base16Scheme = "${inputs.tinted-schemes}/base16/catppuccin-latte.yaml"; polarity = "light"; - } - { - enable = true; - image = images.dark; - base16Scheme = "${inputs.tinted-schemes}/base16/catppuccin-macchiato.yaml"; - polarity = "dark"; - } - { - enable = true; - base16Scheme = "${inputs.tinted-schemes}/base16/catppuccin-macchiato.yaml"; - polarity = "dark"; - } - { - enable = true; - image = images.dark; - polarity = "dark"; - } - { + cursor = { + name = "Vanilla-DMZ"; + package = pkgs.vanilla-dmz; + size = 32; + }; + }; + dark = { enable = true; image = images.dark; base16Scheme = "${inputs.tinted-schemes}/base16/catppuccin-macchiato.yaml"; @@ -354,8 +339,34 @@ let package = pkgs.vanilla-dmz; size = 32; }; - } - ]; + }; + imageless = { + enable = true; + base16Scheme = "${inputs.tinted-schemes}/base16/catppuccin-macchiato.yaml"; + polarity = "dark"; + cursor = { + name = "Vanilla-DMZ"; + package = pkgs.vanilla-dmz; + size = 32; + }; + }; + schemeless = { + enable = true; + image = images.dark; + polarity = "dark"; + cursor = { + name = "Vanilla-DMZ"; + package = pkgs.vanilla-dmz; + size = 32; + }; + }; + cursorless = { + enable = true; + image = images.dark; + base16Scheme = "${inputs.tinted-schemes}/base16/catppuccin-macchiato.yaml"; + polarity = "dark"; + }; + }; in # Testbeds are merged using lib.attrsets.unionOfDisjoint to throw an error if