diff --git a/modules/system/defaults/NSGlobalDomain.nix b/modules/system/defaults/NSGlobalDomain.nix index 0f77d89..da8dd88 100644 --- a/modules/system/defaults/NSGlobalDomain.nix +++ b/modules/system/defaults/NSGlobalDomain.nix @@ -52,6 +52,19 @@ in { ''; }; + system.defaults.NSGlobalDomain.AppleIconAppearanceTheme = mkOption { + type = types.nullOr (types.enum [ "DarkRegular" "DarkAutomatic" "ClearLight" "Clear Dark" "Clear Automatic" "TintedLight" "TintedDark" "TintedAutomatic" ]); + default = null; + description = '' + Set icon and widget style + + To set to default mode, set this to `null` and you'll need to manually run + {command}`defaults delete -g AppleIconAppearanceTheme`. + + This option requires logging out and logging back in to apply. + ''; + }; + system.defaults.NSGlobalDomain.AppleInterfaceStyleSwitchesAutomatically = mkOption { type = types.nullOr types.bool; default = null; diff --git a/tests/fixtures/system-defaults-write/user.txt b/tests/fixtures/system-defaults-write/user.txt index ca7334f..9041542 100644 --- a/tests/fixtures/system-defaults-write/user.txt +++ b/tests/fixtures/system-defaults-write/user.txt @@ -18,6 +18,11 @@ launchctl asuser "$(id -u -- test-defaults-user)" sudo --user=test-defaults-user ' +launchctl asuser "$(id -u -- test-defaults-user)" sudo --user=test-defaults-user -- defaults write -g AppleIconAppearanceTheme ' + + +DarkRegular +' launchctl asuser "$(id -u -- test-defaults-user)" sudo --user=test-defaults-user -- defaults write -g AppleKeyboardUIMode ' diff --git a/tests/system-defaults-write.nix b/tests/system-defaults-write.nix index 6f67338..4af5512 100644 --- a/tests/system-defaults-write.nix +++ b/tests/system-defaults-write.nix @@ -26,6 +26,7 @@ system.defaults.NSGlobalDomain.AppleEnableMouseSwipeNavigateWithScrolls = false; system.defaults.NSGlobalDomain.AppleEnableSwipeNavigateWithScrolls = false; system.defaults.NSGlobalDomain.AppleFontSmoothing = 1; + system.defaults.NSGlobalDomain.AppleIconAppearanceTheme = "DarkRegular"; system.defaults.NSGlobalDomain.AppleICUForce24HourTime = true; system.defaults.NSGlobalDomain.AppleKeyboardUIMode = 3; system.defaults.NSGlobalDomain.ApplePressAndHoldEnabled = true;