forked from
lass.pds.lassul.us/superconfig
This repository has no description
4.0 kB
135 lines
1{ pkgs, self, ... }:
2
3{
4 imports = [
5 # ./rosetta.nix
6 self.inputs.nix-index-database.darwinModules.nix-index
7 ];
8 programs.nix-index-database.comma.enable = true;
9
10 nixpkgs.hostPlatform = "aarch64-darwin";
11 environment.systemPackages = [
12 self.packages.${pkgs.system}.nvim
13 self.packages.${pkgs.system}.pass
14 self.packages.${pkgs.system}.passmenu
15
16 # zsh dependencies
17 pkgs.fzf
18 pkgs.atuin
19
20 pkgs.gnupg
21 pkgs.lazygit
22 pkgs.sshuttle
23 pkgs.git
24 pkgs.element-desktop
25 pkgs.iterm2
26 (pkgs.firefox-devedition-bin-unwrapped.overrideAttrs (o: {
27 meta = o.meta // {
28 license = pkgs.lib.licenses.free;
29 };
30 }))
31 pkgs.ripgrep
32 pkgs.alt-tab-macos
33 pkgs.zed-editor
34 pkgs.nixd
35 pkgs.nil
36 ];
37
38 # Use a custom configuration.nix location.
39 # $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix
40 # environment.darwinConfig = "$HOME/.config/nixpkgs/darwin/configuration.nix";
41
42 nix = {
43 package = pkgs.nix;
44 settings = {
45 extra-experimental-features = [
46 "nix-command"
47 "flakes"
48 ];
49 };
50 };
51
52 # homebrew = {
53 # enable = true;
54 # casks = [
55 # "gpg-suite"
56 # ];
57 # };
58
59 # keyboard settings
60 system.keyboard = {
61 enableKeyMapping = true;
62 };
63
64 # Add skhd for keyboard shortcuts
65 services.skhd = {
66 enable = true;
67 skhdConfig = ''
68 # Open passmenu with Hyper-P
69 ctrl + shift + alt + cmd - p : /run/current-system/sw/bin/passmenu
70 '';
71 };
72
73 system.defaults = {
74 # minimal dock
75 dock = {
76 autohide = true;
77 orientation = "left";
78 show-process-indicators = false;
79 show-recents = false;
80 static-only = true;
81 };
82 # a finder that tells me what I want to know and lets me work
83 finder = {
84 AppleShowAllExtensions = true;
85 ShowPathbar = true;
86 FXEnableExtensionChangeWarning = false;
87 };
88 # Tab between form controls and F-row that behaves as F1-F12
89 NSGlobalDomain = {
90 AppleKeyboardUIMode = 3;
91 "com.apple.keyboard.fnState" = true;
92 };
93 };
94
95 nix.linux-builder.enable = true;
96 nix.linux-builder.supportedFeatures = [
97 "benchmark"
98 "big-parallel"
99 "kvm"
100 "nixos-test"
101 "uid-range"
102 ];
103 nix.linux-builder.config = {
104 imports = [
105 ../../2configs/container-tests.nix
106 ];
107 };
108
109 # Create /etc/zshrc that loads the nix-darwin environment.
110 programs.zsh.enable = true; # default shell on catalina
111 programs.zsh.shellInit = self.packages.${pkgs.system}.zsh.zshrc;
112
113 # enable sudo touch
114 security.pam.services.sudo_local.touchIdAuth = true;
115
116 # disable natural scrolling
117 system.defaults.NSGlobalDomain."com.apple.swipescrolldirection" = false;
118 programs.direnv.enable = true;
119 programs.nix-index.enable = true;
120 programs.gnupg.agent = {
121 enable = true;
122 enableSSHSupport = true;
123 };
124
125 # Used for backwards compatibility, please read the changelog before changing.
126 # $ darwin-rebuild changelog
127 system.stateVersion = 6;
128
129 system.primaryUser = "lassulus";
130 # enable ssh in the macos system settings:
131 # apple -> system settings -> general -> sharing -> remote login
132 users.users.lassulus.openssh.authorizedKeys.keys = [
133 "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIb3uuMqE/xSJ7WL/XpJ6QOj4aSmh0Ga+GtmJl3CDvljGuIeGCKh7YAoqZAi051k5j6ZWowDrcWYHIOU+h0eZCesgCf+CvunlXeUz6XShVMjyZo87f2JPs2Hpb+u/ieLx4wGQvo/Zw89pOly/vqpaX9ZwyIR+U81IAVrHIhqmrTitp+2FwggtaY4FtD6WIyf1hPtrrDecX8iDhnHHuGhATr8etMLwdwQ2kIBx5BBgCoiuW7wXnLUBBVYeO3II957XP/yU82c+DjSVJtejODmRAM/3rk+B7pdF5ShRVVFyB6JJR+Qd1g8iSH+2QXLUy3NM2LN5u5p2oTjUOzoEPWZo7lykZzmIWd/5hjTW9YiHC+A8xsCxQqs87D9HK9hLA6udZ6CGkq4hG/6wFwNjSMnv30IcHZzx6IBihNGbrisrJhLxEiKWpMKYgeemhIirefXA6UxVfiwHg3gJ8BlEBsj0tl/HVARifR2y336YINEn8AsHGhwrPTBFOnBTmfA/VnP1NlWHzXCfVimP6YVvdoGCCnAwvFuJ+ZuxmZ3UzBb2TenZZOzwzV0sUzZk0D1CaSBFJUU3oZNOkDIM6z5lIZgzsyKwb38S8Vs3HYE+Dqpkfsl4yeU5ldc6DwrlVwuSIa4vVus4eWD3gDGFrx98yaqOx17pc4CC9KXk/2TjtJY5xmQ== lass@yubikey"
134 ];
135}