From d13041d6f0d680248d07e8328acb9d7b133c4116 Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Fri, 28 Nov 2025 09:39:00 -0600 Subject: [PATCH] tests/gtk4: add test for stateversion change Ensure default behavior with new state version works properly. Signed-off-by: Austin Horstman --- tests/modules/misc/gtk/default.nix | 1 + ...eversion-no-theme-inheritance-expected.ini | 2 ++ ...gtk4-stateversion-no-theme-inheritance.nix | 28 +++++++++++++++++++ 3 files changed, 31 insertions(+) create mode 100644 tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance-expected.ini create mode 100644 tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance.nix diff --git a/tests/modules/misc/gtk/default.nix b/tests/modules/misc/gtk/default.nix index 7d28a4f9d..69a772424 100644 --- a/tests/modules/misc/gtk/default.nix +++ b/tests/modules/misc/gtk/default.nix @@ -17,4 +17,5 @@ gtk4-basic-settings = ./gtk4/gtk4-basic-settings.nix; gtk4-theme-css-injection = ./gtk4/gtk4-theme-css-injection.nix; gtk4-no-theme-css-injection = ./gtk4/gtk4-no-theme-css-injection.nix; + gtk4-stateversion-no-theme-inheritance = ./gtk4/gtk4-stateversion-no-theme-inheritance.nix; } diff --git a/tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance-expected.ini b/tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance-expected.ini new file mode 100644 index 000000000..68a5ef90b --- /dev/null +++ b/tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance-expected.ini @@ -0,0 +1,2 @@ +[Settings] +gtk-icon-theme-name=Adwaita diff --git a/tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance.nix b/tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance.nix new file mode 100644 index 000000000..c6ca6ef91 --- /dev/null +++ b/tests/modules/misc/gtk/gtk4/gtk4-stateversion-no-theme-inheritance.nix @@ -0,0 +1,28 @@ +{ pkgs, ... }: +{ + # Test that GTK4 theme does NOT inherit from global theme with stateVersion 26.05 + # This shows the new default behavior where gtk4.theme defaults to null + home.stateVersion = "26.05"; + + gtk = { + enable = true; + theme = { + name = "Adwaita-dark"; + package = pkgs.gnome-themes-extra; + }; + iconTheme = { + name = "Adwaita"; + package = pkgs.adwaita-icon-theme; + }; + }; + + nmt.script = '' + # GTK4 settings should exist but WITHOUT theme (icon theme still inherits) + assertFileExists home-files/.config/gtk-4.0/settings.ini + assertFileContent home-files/.config/gtk-4.0/settings.ini \ + ${./gtk4-stateversion-no-theme-inheritance-expected.ini} + + # GTK4 CSS should NOT exist since no theme is configured + assertPathNotExists home-files/.config/gtk-4.0/gtk.css + ''; +}