This repository has no description
3.6 kB
116 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
27 pkgs.ripgrep
28 pkgs.alt-tab-macos
29 ];
30
31 # Use a custom configuration.nix location.
32 # $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix
33 # environment.darwinConfig = "$HOME/.config/nixpkgs/darwin/configuration.nix";
34
35 nix = {
36 package = pkgs.nix;
37 settings = {
38 extra-experimental-features = [
39 "nix-command"
40 "flakes"
41 ];
42 };
43 };
44
45 # homebrew = {
46 # enable = true;
47 # casks = [
48 # "gpg-suite"
49 # ];
50 # };
51
52 # keyboard settings
53 system.keyboard = {
54 enableKeyMapping = true;
55 };
56
57 # Add skhd for keyboard shortcuts
58 services.skhd = {
59 enable = true;
60 skhdConfig = ''
61 # Open passmenu with Hyper-P
62 ctrl + shift + alt + cmd - p : /run/current-system/sw/bin/passmenu
63 '';
64 };
65
66 system.defaults = {
67 # minimal dock
68 dock = {
69 autohide = true;
70 orientation = "left";
71 show-process-indicators = false;
72 show-recents = false;
73 static-only = true;
74 };
75 # a finder that tells me what I want to know and lets me work
76 finder = {
77 AppleShowAllExtensions = true;
78 ShowPathbar = true;
79 FXEnableExtensionChangeWarning = false;
80 };
81 # Tab between form controls and F-row that behaves as F1-F12
82 NSGlobalDomain = {
83 AppleKeyboardUIMode = 3;
84 "com.apple.keyboard.fnState" = true;
85 };
86 };
87
88 nix.linux-builder.enable = true;
89
90 # Create /etc/zshrc that loads the nix-darwin environment.
91 programs.zsh.enable = true; # default shell on catalina
92 programs.zsh.shellInit = self.packages.${pkgs.system}.zsh.zshrc;
93
94 # enable sudo touch
95 security.pam.services.sudo_local.touchIdAuth = true;
96
97 # disable natural scrolling
98 system.defaults.NSGlobalDomain."com.apple.swipescrolldirection" = false;
99 programs.direnv.enable = true;
100 programs.nix-index.enable = true;
101 programs.gnupg.agent = {
102 enable = true;
103 enableSSHSupport = true;
104 };
105
106 # Used for backwards compatibility, please read the changelog before changing.
107 # $ darwin-rebuild changelog
108 system.stateVersion = 6;
109
110 system.primaryUser = "lassulus";
111 # enable ssh in the macos system settings:
112 # apple -> system settings -> general -> sharing -> remote login
113 users.users.lassulus.openssh.authorizedKeys.keys = [
114 "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"
115 ];
116}