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 @@
6464 flake = "/home/nmarks/.dotfiles";
6565 };
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 };
6898 ### Cosmic stuff
6999
70100 environment.sessionVariables.COSMIC_DATA_CONTROL_ENABLED = 1;
hosts/laptop/configuration.nix+76-87
......@@ -6,7 +6,8 @@
66 ...
77}: {
88 imports = [
9 ./modules/icons.nix
9 # ../../modules/macos/icons.nix
10 ../../modules/macos/homebrew.nix
1011 ];
1112
1213 environment.systemPackages = with pkgs; [
......@@ -14,15 +15,15 @@
1415 pinentry_mac
1516 ];
1617
17 environment.customIcons = {
18 enable = true;
19 icons = [
20 {
21 path = "/Applications/Zen.app";
22 icon = "/Users/nmarks/.dotfiles/icons/Zen_icons/firefox.icns";
23 }
24 ];
25 };
18 # environment.customIcons = {
19 # enable = true;
20 # icons = [
21 # {
22 # path = "/Applications/Zen.app";
23 # icon = "/Users/nmarks/.dotfiles/icons/Zen_icons/firefox.icns";
24 # }
25 # ];
26 # };
2627
2728 # Use a custom configuration.nix location.
2829 #environment.darwinConfig = "$HOME/.dotfiles/hosts/laptop";
......@@ -43,52 +44,6 @@
4344 '';
4445 };
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
9247 security.pam.services.sudo_local = {
9348 enable = true;
9449 reattach = true;
......@@ -96,39 +51,73 @@
9651 };
9752
9853 # set some OSX preferences that I always end up hunting down and changing.
99 system.defaults = {
100 # minimal dock
101 dock = {
102 autohide = false;
103 show-process-indicators = true;
104 show-recents = true;
105 static-only = true;
106 };
107 # a finder that tells me what I want to know and lets me work
108 finder = {
109 AppleShowAllExtensions = true;
110 ShowPathbar = true;
111 FXEnableExtensionChangeWarning = false;
112 };
54 system = {
55 # Used for backwards compatibility, please read the changelog before changing.
56 # $ darwin-rebuild changelog
57 stateVersion = 6;
58
59 defaults = {
60 LaunchServices = {
61 LSQuarantine = false;
62 };
63
64 NSGlobalDomain = {
65 AppleShowAllExtensions = true;
66 ApplePressAndHoldEnabled = false;
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 = {
115 launchd.user.agents.UserKeyMapping.serviceConfig = {
116 ProgramArguments = [
117 "/usr/bin/hidutil"
118 "property"
119 "--match"
120 "{&quot;ProductID&quot;:0x0,&quot;VendorID&quot;:0x0,&quot;Product&quot;:&quot;Apple Internal Keyboard / Trackpad&quot;}"
121 "--set"
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;
95 expose-group-apps = true;
96
97 show-recents = true;
98 static-only = true;
99
100 mineffect = "scale";
101
102 orientation = "bottom";
131103 };
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;
132121 };
133122 };
134123}
hosts/laptop/home.nix+1
......@@ -11,6 +11,7 @@
1111 home = {
1212 username = user;
1313 homeDirectory = "/Users/nmarks/";
14 shell = pkgs.fish;
1415 # Home Manager needs a bit of information about you and the paths it should
1516 # manage.
1617 # This value determines the Home Manager release that your configuration is
lib/mkSystem.nix+2-1
......@@ -54,7 +54,8 @@ in
5454 # Enable caching for nix-index so we dont have to rebuild it
5555
5656 #shared modules
57 ../modules/shared
57 ../modules/shared/extras.nix
58 ../modules/shared/nix.nix
5859
5960 hostConfig
6061 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 @@
2626 };
2727 };
2828
29
2930 desktopManager.cosmic.enable = true;
3031 displayManager.cosmic-greeter.enable = true;
3132
modules/shared/extras.nix+5-31
......@@ -4,45 +4,19 @@
44 inputs,
55 ...
66}: {
7 services.tailscale.enable = true;
8
79 networking = {
810 };
911 fonts.packages = with pkgs; [
1012 # alibaba-fonts
1113 nerd-fonts.fira-code
1214 nerd-fonts.iosevka
15 iosevka
16 nerd-fonts.symbols-only
17 nerd-fonts.iosevka
1318 ];
1419
1520 # Set your time zone.
1621 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 };
4822}