summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorLucas Mendes Loureiro <mendes.lucas9498@gmail.com>2024-11-10 23:12:44 +0000
committerLucas Mendes Loureiro <mendes.lucas9498@gmail.com>2024-11-12 09:48:21 +0000
commitd71aa30b41bac3b2e38bd4b8f49e12811cd27ec1 (patch)
treeb8182bd3c36586e9d1882cf6c7b6fcd0e0a175a0 /modules
parent5c74ab862c8070cbf6400128a1b56abb213656da (diff)
feat(defaults): adding support to control center
Diffstat (limited to 'modules')
-rw-r--r--modules/module-list.nix1
-rw-r--r--modules/system/defaults-write.nix3
-rw-r--r--modules/system/defaults/controlcenter.nix100
3 files changed, 104 insertions, 0 deletions
diff --git a/modules/module-list.nix b/modules/module-list.nix
index 3725c7e..aa190c7 100644
--- a/modules/module-list.nix
+++ b/modules/module-list.nix
@@ -14,6 +14,7 @@
./system/activation-scripts.nix
./system/applications.nix
./system/defaults-write.nix
+ ./system/defaults/controlcenter.nix
./system/defaults/LaunchServices.nix
./system/defaults/NSGlobalDomain.nix
./system/defaults/GlobalPreferences.nix
diff --git a/modules/system/defaults-write.nix b/modules/system/defaults-write.nix
index 7af972d..4249af9 100644
--- a/modules/system/defaults-write.nix
+++ b/modules/system/defaults-write.nix
@@ -17,6 +17,7 @@ let
SoftwareUpdate = defaultsToList "/Library/Preferences/com.apple.SoftwareUpdate" cfg.SoftwareUpdate;
# userDefaults
+ controlcenter = defaultsToList "~/Library/Preferences/ByHost/com.apple.controlcenter" cfg.controlcenter;
GlobalPreferences = defaultsToList ".GlobalPreferences" cfg.".GlobalPreferences";
LaunchServices = defaultsToList "com.apple.LaunchServices" cfg.LaunchServices;
NSGlobalDomain = defaultsToList "-g" cfg.NSGlobalDomain;
@@ -71,6 +72,7 @@ in
system.activationScripts.userDefaults.text = mkIfAttrs
[
+ controlcenter
GlobalPreferences
LaunchServices
NSGlobalDomain
@@ -113,6 +115,7 @@ in
${concatStringsSep "\n" ActivityMonitor}
${concatStringsSep "\n" CustomUserPreferences}
${concatStringsSep "\n" WindowManager}
+ ${concatStringsSep "\n" controlcenter}
${optionalString (length dock > 0) ''
# Only restart Dock if current user is logged in
diff --git a/modules/system/defaults/controlcenter.nix b/modules/system/defaults/controlcenter.nix
new file mode 100644
index 0000000..91532fa
--- /dev/null
+++ b/modules/system/defaults/controlcenter.nix
@@ -0,0 +1,100 @@
+{ config, lib, ... }:
+
+{
+ options = {
+
+ system.defaults.controlcenter.BatteryShowPercentage = lib.mkOption {
+ type = lib.types.nullOr lib.types.bool;
+ default = null;
+ description = ''
+ Apple menu > System Preferences > Control Center > Battery
+
+ Show a battery percentage in menu bar. Default is null.
+ '';
+ };
+
+ system.defaults.controlcenter.Sound = lib.mkOption {
+ type = lib.types.nullOr lib.types.bool;
+ apply = v: if v == null then null else if v == true then 18 else 24;
+ default = null;
+ description = ''
+ Apple menu > System Preferences > Control Center > Sound
+
+ Show a sound control in menu bar . Default is null.
+
+ 18 = Display icon in menu bar
+ 24 = Hide icon in menu bar
+ '';
+ };
+
+ system.defaults.controlcenter.Bluetooth = lib.mkOption {
+ type = lib.types.nullOr lib.types.bool;
+ apply = v: if v == null then null else if v == true then 18 else 24;
+ default = null;
+ description = ''
+ Apple menu > System Preferences > Control Center > Bluetooth
+
+ Show a bluetooth control in menu bar. Default is null.
+
+ 18 = Display icon in menu bar
+ 24 = Hide icon in menu bar
+ '';
+ };
+
+ system.defaults.controlcenter.AirDrop = lib.mkOption {
+ type = lib.types.nullOr lib.types.bool;
+ apply = v: if v == null then null else if v == true then 18 else 24;
+ default = null;
+ description = ''
+ Apple menu > System Preferences > Control Center > AirDrop
+
+ Show a AirDrop control in menu bar. Default is null.
+
+ 18 = Display icon in menu bar
+ 24 = Hide icon in menu bar
+ '';
+ };
+
+ system.defaults.controlcenter.Display = lib.mkOption {
+ type = lib.types.nullOr lib.types.bool;
+ apply = v: if v == null then null else if v == true then 18 else 24;
+ default = null;
+ description = ''
+ Apple menu > System Preferences > Control Center > Display
+
+ Show a Screen Brightness control in menu bar. Default is null.
+
+ 18 = Display icon in menu bar
+ 24 = Hide icon in menu bar
+ '';
+ };
+
+ system.defaults.controlcenter.FocusModes = lib.mkOption {
+ type = lib.types.nullOr lib.types.bool;
+ apply = v: if v == null then null else if v == true then 18 else 24;
+ default = null;
+ description = ''
+ Apple menu > System Preferences > Control Center > Focus
+
+ Show a Focus control in menu bar. Default is null.
+
+ 18 = Display icon in menu bar
+ 24 = Hide icon in menu bar
+ '';
+ };
+
+ system.defaults.controlcenter.NowPlaying = lib.mkOption {
+ type = lib.types.nullOr lib.types.bool;
+ apply = v: if v == null then null else if v == true then 18 else 24;
+ default = null;
+ description = ''
+ Apple menu > System Preferences > Control Center > Now Playing
+
+ Show a Now Playing control in menu bar. Default is null.
+
+ 18 = Display icon in menu bar
+ 24 = Hide icon in menu bar
+ '';
+ };
+ };
+}