about summary refs log tree commit diff
path: root/modules/darwin/profiles
diff options
context:
space:
mode:
authorAzat Bahawi <azat@bahawi.net>2022-12-17 16:39:09 +0300
committerAzat Bahawi <azat@bahawi.net>2022-12-17 16:39:09 +0300
commit8f137c28230623259a964484adcf31fe00756594 (patch)
tree82bce6a13fda125087cf6d9dc80aa91d9230d6c4 /modules/darwin/profiles
parent2022-11-20 (diff)
2022-12-17
Diffstat (limited to 'modules/darwin/profiles')
-rw-r--r--modules/darwin/profiles/default.nix93
-rw-r--r--modules/darwin/profiles/headful.nix19
2 files changed, 112 insertions, 0 deletions
diff --git a/modules/darwin/profiles/default.nix b/modules/darwin/profiles/default.nix
new file mode 100644
index 0000000..f42647a
--- /dev/null
+++ b/modules/darwin/profiles/default.nix
@@ -0,0 +1,93 @@
+{
+  config,
+  lib,
+  pkgs,
+  this,
+  ...
+}:
+with lib; let
+  cfg = config.nixfiles.modules.profiles.default;
+in {
+  imports = [
+    ./headful.nix
+  ];
+
+  config = mkIf cfg.enable {
+    hm.home.packages = with pkgs; [m-cli];
+
+    system = {
+      defaults = {
+        CustomUserPreferences = {};
+
+        ActivityMonitor = {};
+
+        NSGlobalDomain = {
+          AppleEnableMouseSwipeNavigateWithScrolls = true;
+          AppleEnableSwipeNavigateWithScrolls = true;
+
+          AppleInterfaceStyle = "Dark";
+
+          AppleShowAllExtensions = true;
+          AppleShowAllFiles = true;
+
+          InitialKeyRepeat = 15;
+          KeyRepeat = 2;
+
+          NSAutomaticCapitalizationEnabled = false;
+          NSAutomaticDashSubstitutionEnabled = false;
+          NSAutomaticPeriodSubstitutionEnabled = false;
+          NSAutomaticQuoteSubstitutionEnabled = false;
+          NSAutomaticSpellingCorrectionEnabled = false;
+
+          # Make function keys to work as they should.
+          "com.apple.keyboard.fnState" = true;
+
+          # Disable the absolutely retarded "natural" scrolling.
+          "com.apple.swipescrolldirection" = false;
+        };
+
+        dock = {
+          orientation = "bottom";
+          tilesize = 18;
+
+          show-recents = false;
+          static-only = false;
+
+          # Disable hot corners.
+          wvous-bl-corner = 1;
+          wvous-br-corner = 1;
+          wvous-tl-corner = 1;
+          wvous-tr-corner = 1;
+        };
+
+        finder = {
+          AppleShowAllExtensions = true;
+          AppleShowAllFiles = true;
+
+          CreateDesktop = true;
+
+          FXDefaultSearchScope = "SCcf";
+          FXEnableExtensionChangeWarning = false;
+          FXPreferredViewStyle = "clmv";
+
+          ShowStatusBar = false;
+          ShowPathbar = true;
+          _FXShowPosixPathInTitle = true;
+        };
+
+        trackpad = {
+          Clicking = true;
+          Dragging = false;
+        };
+      };
+
+      keyboard = {
+        enableKeyMapping = true;
+        nonUS.remapTilde = true;
+        remapCapsLockToControl = false;
+        remapCapsLockToEscape = true;
+        swapLeftCommandAndLeftAlt = false;
+      };
+    };
+  };
+}
diff --git a/modules/darwin/profiles/headful.nix b/modules/darwin/profiles/headful.nix
new file mode 100644
index 0000000..44695f6
--- /dev/null
+++ b/modules/darwin/profiles/headful.nix
@@ -0,0 +1,19 @@
+{
+  config,
+  lib,
+  pkgs,
+  this,
+  ...
+}:
+with lib; let
+  cfg = config.nixfiles.modules.profiles.headful;
+in {
+  config = mkIf cfg.enable {
+    nixfiles.modules.homebrew.enable = true;
+
+    homebrew.casks = [
+      {name = "firefox";}
+      {name = "telegram-desktop";}
+    ];
+  };
+}

Consider giving Nix/NixOS a try! <3