| author | |
| committer | |
| log | bbeb43787285dcb0d8d5222f6f26b0e101b1dc6f |
| tree | 6e9e0e89b9b121bcc6412c79e82443d83abeae19 |
| parent | 63d08c5d308557c29f23b7e3158288cc8d83b59d |
7 files changed, 76 insertions(+), 24 deletions(-)
modules/macos/default.nix+3-3| ... | @@ -13,8 +13,8 @@ | ... | @@ -13,8 +13,8 @@ |
| 13 | ]; | 13 | ]; |
| 14 | # make 'shared.linux' not an error to define. | 14 | # make 'shared.linux' not an error to define. |
| 15 | options.shared.linux = lib.mkOption { | 15 | options.shared.linux = lib.mkOption { |
| 16 | type = lib.types.anything; | 16 | type = lib.types.anything; |
| 17 | default = {}; | 17 | default = {}; |
| 18 | description = "no-op on darwin"; | 18 | description = "no-op on darwin"; |
| 19 | }; | 19 | }; |
| 20 | } | 20 | } |
modules/nixos/default.nix+8-4| ... | @@ -1,4 +1,8 @@ | ... | @@ -1,4 +1,8 @@ |
| 1 | { lib, pkgs, ... }: { | 1 | { |
| 2 | lib, | ||
| 3 | pkgs, | ||
| 4 | ... | ||
| 5 | }: { | ||
| 2 | imports = [ | 6 | imports = [ |
| 3 | ./boot.nix | 7 | ./boot.nix |
| 4 | ./ld.nix | 8 | ./ld.nix |
| ... | @@ -7,8 +11,8 @@ | ... | @@ -7,8 +11,8 @@ |
| 7 | ]; | 11 | ]; |
| 8 | # make 'shared.darwin' not an error to define. | 12 | # make 'shared.darwin' not an error to define. |
| 9 | options.shared.darwin = lib.mkOption { | 13 | options.shared.darwin = lib.mkOption { |
| 10 | type = lib.types.anything; | 14 | type = lib.types.anything; |
| 11 | default = {}; | 15 | default = {}; |
| 12 | description = "no-op on linux"; | 16 | description = "no-op on linux"; |
| 13 | }; | 17 | }; |
| 14 | } | 18 | } |
users/chloe/configuration.nix+1-1| ... | @@ -1,5 +1,5 @@ | ... | @@ -1,5 +1,5 @@ |
| 1 | # Configuration applied to all of chloe's machines | 1 | # Configuration applied to all of chloe's machines |
| 2 | { pkgs, ... }: { | 2 | {pkgs, ...}: { |
| 3 | # packages for all machines | 3 | # packages for all machines |
| 4 | environment.systemPackages = with pkgs; [ | 4 | environment.systemPackages = with pkgs; [ |
| 5 | neovim | 5 | neovim |
users/chloe/home.nix+50-6| ... | @@ -2,23 +2,67 @@ | ... | @@ -2,23 +2,67 @@ |
| 2 | inputs, | 2 | inputs, |
| 3 | pkgs, | 3 | pkgs, |
| 4 | lib, | 4 | lib, |
| 5 | host, | ||
| 5 | ... | 6 | ... |
| 6 | }: { | 7 | }: let |
| 8 | hostServer = false; | ||
| 9 | in { | ||
| 7 | home = { | 10 | home = { |
| 8 | stateVersion = "23.05"; # Please read the comment before changing. | 11 | stateVersion = "23.05"; # Please read the comment before changing. |
| 9 | packages = [ | 12 | packages = with pkgs; let |
| 10 | pkgs.neovim | 13 | # packages to always install |
| 11 | pkgs.nh | 14 | all = [ |
| 12 | pkgs.ffmpeg | 15 | ffmpeg |
| 13 | ]; | 16 | ripgrep |
| 17 | ]; | ||
| 18 | # packages to install for desktop environments (non-server) | ||
| 19 | desktop = [ | ||
| 20 | ]; | ||
| 21 | # packages to install on all servers | ||
| 22 | server = []; | ||
| 23 | # packages to install on macOS desktops | ||
| 24 | darwin = [ | ||
| 25 | raycast | ||
| 26 | ]; | ||
| 27 | # packages to install on linux desktops | ||
| 28 | linux = [ | ||
| 29 | reaper # TODO: why does this break on macOS | ||
| 30 | ]; | ||
| 31 | in | ||
| 32 | all | ||
| 33 | ++ ( | ||
| 34 | if host.darwin | ||
| 35 | then darwin | ||
| 36 | else linux | ||
| 37 | ) | ||
| 38 | ++ ( | ||
| 39 | if hostServer | ||
| 40 | then server | ||
| 41 | else desktop | ||
| 42 | ); | ||
| 14 | }; | 43 | }; |
| 15 | programs = { | 44 | programs = { |
| 16 | # sort-lines:start | 45 | # sort-lines:start |
| 46 | bat.enable = true; | ||
| 47 | btop.enable = true; | ||
| 48 | fd.enable = true; | ||
| 17 | hyfetch.enable = true; | 49 | hyfetch.enable = true; |
| 18 | zsh.enable = true; | 50 | zsh.enable = true; |
| 19 | # sort-lines:end | 51 | # sort-lines:end |
| 20 | 52 | ||
| 21 | # use a git-specific email | 53 | # use a git-specific email |
| 22 | git.userEmail = "git@paperclover.net"; | 54 | git.userEmail = "git@paperclover.net"; |
| 55 | |||
| 56 | ssh = { | ||
| 57 | enable = true; | ||
| 58 | matchBlocks = rec { | ||
| 59 | zenith = { | ||
| 60 | hostname = "192.168.86.50"; | ||
| 61 | user = "clo"; | ||
| 62 | port = 222; | ||
| 63 | }; | ||
| 64 | "nas.paperclover.net" = zenith; | ||
| 65 | }; | ||
| 66 | }; | ||
| 23 | }; | 67 | }; |
| 24 | } | 68 | } |
users/chloe/paperback/configuration.nix deleted-5| ... | @@ -1,5 +0,0 @@ | ||
| 1 | {pkgs, ...}: { | ||
| 2 | environment.systemPackages = with pkgs; [ | ||
| 3 | reaper | ||
| 4 | ]; | ||
| 5 | } | ||
users/chloe/paperback/home.nix created+14| ... | @@ -0,0 +1,14 @@ | ||
| 1 | {pkgs, ...}: { | ||
| 2 | # these programs are not globally installed to reduce distractions. | ||
| 3 | # most of these are needed for my work environment. | ||
| 4 | programs.bun.enable = true; | ||
| 5 | programs.zed-editor.enable = true; | ||
| 6 | home.packages = with pkgs; [ | ||
| 7 | doppler | ||
| 8 | nodejs_22 | ||
| 9 | rustup | ||
| 10 | typescript | ||
| 11 | pm2 | ||
| 12 | pnpm | ||
| 13 | ]; | ||
| 14 | } | ||
users/chloe/sandwich/configuration.nix-5| ... | @@ -1,9 +1,4 @@ | ... | @@ -1,9 +1,4 @@ |
| 1 | {pkgs, ...}: { | 1 | {pkgs, ...}: { |
| 2 | environment.systemPackages = with pkgs; [ | ||
| 3 | ffmpeg | ||
| 4 | ripgrep | ||
| 5 | reaper | ||
| 6 | ]; | ||
| 7 | shared.darwin = { | 2 | shared.darwin = { |
| 8 | macAppStoreApps = [ | 3 | macAppStoreApps = [ |
| 9 | "final-cut-pro" | 4 | "final-cut-pro" |