authorgravatar for nmarks413@gmail.comNatalie Marks <nmarks413@gmail.com> 2025-04-19 21:57:56-07:00
committergravatar for nmarks413@gmail.comNatalie Marks <nmarks413@gmail.com> 2025-04-19 21:57:56-07:00
logb7f96a14ae0b9aeccca31fd52e916a3e894077cb
tree54057e7a8b50c979402c33aa2753e9fbdd0b7517
parent9178ae96bef7dee6cc50bb6d62b44efbdd08f0a8
signature Commit is signed but in an unrecognized format.

added defaults that r good


7 files changed, 155 insertions(+), 119 deletions(-)

hosts/desktop/configuration.nix+30
...@@ -64,7 +64,37 @@...@@ -64,7 +64,37 @@
64 flake = "/home/nmarks/.dotfiles";64 flake = "/home/nmarks/.dotfiles";
65 };65 };
6666
67 i18n = {
68 # Select internationalisation properties.
69 defaultLocale = "en_US.UTF-8";
70
71 supportedLocales = ["all"];
72
73 extraLocaleSettings = {
74 LC_ADDRESS = "en_US.UTF-8";
75 LC_IDENTIFICATION = "en_US.UTF-8";
76 LC_MEASUREMENT = "en_US.UTF-8";
77 LC_MONETARY = "en_US.UTF-8";
78 LC_NAME = "en_US.UTF-8";
79 LC_NUMERIC = "en_US.UTF-8";
80 LC_PAPER = "en_US.UTF-8";
81 LC_TELEPHONE = "en_US.UTF-8";
82 LC_TIME = "en_US.UTF-8";
83 };
6784
85 inputMethod = {
86 type = "fcitx5";
87 enable = true;
88 fcitx5.waylandFrontend = true;
89 fcitx5.addons = with pkgs; [
90 # fcitx5-gtk
91 # kdePackages.fcitx5-qt
92 rime-data
93 fcitx5-rime
94 fcitx5-rose-pine
95 ];
96 };
97 };
68 ### Cosmic stuff98 ### Cosmic stuff
6999
70 environment.sessionVariables.COSMIC_DATA_CONTROL_ENABLED = 1;100 environment.sessionVariables.COSMIC_DATA_CONTROL_ENABLED = 1;
hosts/laptop/configuration.nix+76-87
...@@ -6,7 +6,8 @@...@@ -6,7 +6,8 @@
6 ...6 ...
7}: {7}: {
8 imports = [8 imports = [
9 ./modules/icons.nix9 # ../../modules/macos/icons.nix
10 ../../modules/macos/homebrew.nix
10 ];11 ];
1112
12 environment.systemPackages = with pkgs; [13 environment.systemPackages = with pkgs; [
...@@ -14,15 +15,15 @@...@@ -14,15 +15,15 @@
14 pinentry_mac15 pinentry_mac
15 ];16 ];
1617
17 environment.customIcons = {18 # environment.customIcons = {
18 enable = true;19 # enable = true;
19 icons = [20 # icons = [
20 {21 # {
21 path = "/Applications/Zen.app";22 # path = "/Applications/Zen.app";
22 icon = "/Users/nmarks/.dotfiles/icons/Zen_icons/firefox.icns";23 # icon = "/Users/nmarks/.dotfiles/icons/Zen_icons/firefox.icns";
23 }24 # }
24 ];25 # ];
25 };26 # };
2627
27 # Use a custom configuration.nix location.28 # Use a custom configuration.nix location.
28 #environment.darwinConfig = "$HOME/.dotfiles/hosts/laptop";29 #environment.darwinConfig = "$HOME/.dotfiles/hosts/laptop";
...@@ -43,52 +44,6 @@...@@ -43,52 +44,6 @@
43 '';44 '';
44 };45 };
4546
46 # Used for backwards compatibility, please read the changelog before changing.
47 # $ darwin-rebuild changelog
48 system.stateVersion = 6;
49
50 # Install fonts
51 fonts.packages = [
52 pkgs.iosevka
53 pkgs.nerd-fonts.symbols-only
54 pkgs.nerd-fonts.iosevka
55 ];
56
57 services.tailscale.enable = true;
58
59 # Use homebrew to install casks and Mac App Store apps
60 homebrew = {
61 enable = true;
62
63 onActivation = {
64 autoUpdate = true;
65 cleanup = "none";
66 upgrade = true;
67 };
68
69 # taps = [
70 # "legcord/legcord"
71 # ];
72
73 brews = [
74 "imagemagick"
75 "opam"
76 ];
77
78 casks = [
79 "battle-net"
80 "stremio"
81 "alt-tab"
82 "legcord"
83 "zulip"
84 "zen-browser"
85 ];
86
87 masApps = {
88 "wireguard" = 1451685025;
89 };
90 };
91
92 security.pam.services.sudo_local = {47 security.pam.services.sudo_local = {
93 enable = true;48 enable = true;
94 reattach = true;49 reattach = true;
...@@ -96,39 +51,73 @@...@@ -96,39 +51,73 @@
96 };51 };
9752
98 # set some OSX preferences that I always end up hunting down and changing.53 # set some OSX preferences that I always end up hunting down and changing.
99 system.defaults = {54 system = {
100 # minimal dock55 # Used for backwards compatibility, please read the changelog before changing.
101 dock = {56 # $ darwin-rebuild changelog
102 autohide = false;57 stateVersion = 6;
103 show-process-indicators = true;58
104 show-recents = true;59 defaults = {
105 static-only = true;60 LaunchServices = {
106 };61 LSQuarantine = false;
107 # a finder that tells me what I want to know and lets me work62 };
108 finder = {63
109 AppleShowAllExtensions = true;64 NSGlobalDomain = {
110 ShowPathbar = true;65 AppleShowAllExtensions = true;
111 FXEnableExtensionChangeWarning = false;66 ApplePressAndHoldEnabled = false;
112 };67
68 # 120, 90, 60, 30, 12, 6, 2
69 KeyRepeat = 2;
70
71 # 120, 94, 68, 35, 25, 15
72 InitialKeyRepeat = 15;
73
74 "com.apple.mouse.tapBehavior" = 1;
75 "com.apple.sound.beep.volume" = 0.0;
76 "com.apple.sound.beep.feedback" = 0;
77
78 #Ew.
79 NSAutomaticCapitalizationEnabled = false;
80 NSAutomaticDashSubstitutionEnabled = false;
81 NSAutomaticInlinePredictionEnabled = false;
82 NSAutomaticPeriodSubstitutionEnabled = false;
83 NSAutomaticQuoteSubstitutionEnabled = false;
84 NSAutomaticSpellingCorrectionEnabled = false;
85 NSDisableAutomaticTermination = true;
86 NSDocumentSaveNewDocumentsToCloud = false;
87 AppleICUForce24HourTime = true;
88 };
89 # minimal dock
90 dock = {
91 autohide = true;
92 autohide-time-modifier = 0;
93 show-process-indicators = true;
11394
114 CustomUserPreferences = {95 expose-group-apps = true;
115 launchd.user.agents.UserKeyMapping.serviceConfig = {96
116 ProgramArguments = [97 show-recents = true;
117 "/usr/bin/hidutil"98 static-only = true;
118 "property"99
119 "--match"100 mineffect = "scale";
120 "{&quot;ProductID&quot;:0x0,&quot;VendorID&quot;:0x0,&quot;Product&quot;:&quot;Apple Internal Keyboard / Trackpad&quot;}"101
121 "--set"102 orientation = "bottom";
122 (
123 let
124 # https://developer.apple.com/library/archive/technotes/tn2450/_index.html
125 caps_lock = "0x700000039";
126 escape = "0x700000029";
127 in "{&quot;UserKeyMapping&quot;:[{&quot;HIDKeyboardModifierMappingDst&quot;:${escape},&quot;HIDKeyboardModifierMappingSrc&quot;:${caps_lock}},{&quot;HIDKeyboardModifierMappingDst&quot;:${caps_lock},&quot;HIDKeyboardModifierMappingSrc&quot;:${escape}}]}"
128 )
129 ];
130 RunAtLoad = true;
131 };103 };
104 # a finder that tells me what I want to know and lets me work
105 finder = {
106 _FXShowPosixPathInTitle = true;
107 FXDefaultSearchScope = "SCcf";
108 AppleShowAllExtensions = true;
109 ShowPathbar = true;
110 FXEnableExtensionChangeWarning = false;
111 };
112 CustomSystemPreferences = {
113 "com.apple.universalaccess" = {
114 closeViewTrackpadGestureZoomEnabled = 1;
115 };
116 };
117 };
118 keyboard = {
119 enableKeyMapping = true;
120 remapCapsLockToEscape = true;
132 };121 };
133 };122 };
134}123}
hosts/laptop/home.nix+1
...@@ -11,6 +11,7 @@...@@ -11,6 +11,7 @@
11 home = {11 home = {
12 username = user;12 username = user;
13 homeDirectory = "/Users/nmarks/";13 homeDirectory = "/Users/nmarks/";
14 shell = pkgs.fish;
14 # Home Manager needs a bit of information about you and the paths it should15 # Home Manager needs a bit of information about you and the paths it should
15 # manage.16 # manage.
16 # This value determines the Home Manager release that your configuration is17 # This value determines the Home Manager release that your configuration is
lib/mkSystem.nix+2-1
...@@ -54,7 +54,8 @@ in...@@ -54,7 +54,8 @@ in
54 # Enable caching for nix-index so we dont have to rebuild it54 # Enable caching for nix-index so we dont have to rebuild it
5555
56 #shared modules56 #shared modules
57 ../modules/shared57 ../modules/shared/extras.nix
58 ../modules/shared/nix.nix
5859
59 hostConfig60 hostConfig
60 nixindex61 nixindex
modules/macos/homebrew.nix created+40
...@@ -0,0 +1,40 @@
1{
2 inputs,
3 config,
4 lib,
5 pkgs,
6 ...
7}: {
8 # Use homebrew to install casks and Mac App Store apps
9 homebrew = {
10 enable = true;
11
12 onActivation = {
13 autoUpdate = true;
14 cleanup = "none";
15 upgrade = true;
16 };
17
18 # taps = [
19 # "legcord/legcord"
20 # ];
21
22 brews = [
23 "imagemagick"
24 "opam"
25 ];
26
27 casks = [
28 "battle-net"
29 "stremio"
30 "alt-tab"
31 "legcord"
32 "zulip"
33 "zen-browser"
34 ];
35
36 masApps = {
37 "wireguard" = 1451685025;
38 };
39 };
40}
modules/nixos/services.nix+1
...@@ -26,6 +26,7 @@...@@ -26,6 +26,7 @@
26 };26 };
27 };27 };
2828
29
29 desktopManager.cosmic.enable = true;30 desktopManager.cosmic.enable = true;
30 displayManager.cosmic-greeter.enable = true;31 displayManager.cosmic-greeter.enable = true;
3132
modules/shared/extras.nix+5-31
...@@ -4,45 +4,19 @@...@@ -4,45 +4,19 @@
4 inputs,4 inputs,
5 ...5 ...
6}: {6}: {
7 services.tailscale.enable = true;
8
7 networking = {9 networking = {
8 };10 };
9 fonts.packages = with pkgs; [11 fonts.packages = with pkgs; [
10 # alibaba-fonts12 # alibaba-fonts
11 nerd-fonts.fira-code13 nerd-fonts.fira-code
12 nerd-fonts.iosevka14 nerd-fonts.iosevka
15 iosevka
16 nerd-fonts.symbols-only
17 nerd-fonts.iosevka
13 ];18 ];
1419
15 # Set your time zone.20 # Set your time zone.
16 time.timeZone = "America/Los_Angeles";21 time.timeZone = "America/Los_Angeles";
17 i18n = {
18 # Select internationalisation properties.
19 defaultLocale = "en_US.UTF-8";
20
21 supportedLocales = ["all"];
22
23 extraLocaleSettings = {
24 LC_ADDRESS = "en_US.UTF-8";
25 LC_IDENTIFICATION = "en_US.UTF-8";
26 LC_MEASUREMENT = "en_US.UTF-8";
27 LC_MONETARY = "en_US.UTF-8";
28 LC_NAME = "en_US.UTF-8";
29 LC_NUMERIC = "en_US.UTF-8";
30 LC_PAPER = "en_US.UTF-8";
31 LC_TELEPHONE = "en_US.UTF-8";
32 LC_TIME = "en_US.UTF-8";
33 };
34
35 inputMethod = {
36 type = "fcitx5";
37 enable = true;
38 fcitx5.waylandFrontend = true;
39 fcitx5.addons = with pkgs; [
40 # fcitx5-gtk
41 # kdePackages.fcitx5-qt
42 rime-data
43 fcitx5-rime
44 fcitx5-rose-pine
45 ];
46 };
47 };
48}22}