yep, more dotfiles
1flake-lib: pkgs:
2
3let
4 keys = import ./secrets/keys.nix;
5in
6{
7 nixosConfigurations = with flake-lib.nixos; {
8 # Desktops
9 "neo-wiro-laptop" = createSystem pkgs [
10 (system "neo-wiro-laptop" "laptop")
11 (managedDiskLayout "luks-btrfs" { device = "nvme0n1"; swapSize = 12; })
12 (user "milomoisson" { description = "Milo Moisson"; profile = "desktop"; keys = keys.users; })
13 ];
14
15 "archaic-wiro-laptop" = createSystem pkgs [
16 (system "archaic-wiro-laptop" "laptop")
17 (user "milomoisson" { description = "Milo Moisson"; profile = "desktop"; keys = keys.users; })
18 ];
19
20 # Servers
21 "weird-row-server" = createSystem pkgs [
22 (system "weird-row-server" "server")
23 (managedDiskLayout "ext4-hetzner" { device = "sda"; swapSize = 2; })
24 (user "milomoisson" { description = "Milo Moisson"; profile = "server"; keys = keys.users; })
25 ];
26 };
27
28 # I bundle my Home Manager config via the NixOS modules which create system generations and give free rollbacks.
29 # However, in non-NixOS contexts, you can still use Home Manager to manage dotfiles using this template.
30 homeConfigurations = with flake-lib.home-manager; {
31 "epita" = createHome pkgs [
32 (home "milo.moisson" "/home/milo.moisson" "lightweight")
33 ];
34 };
35
36 darwinConfigurations = with flake-lib.darwin; {
37 "apple-wiro-laptop" = createSystem pkgs [
38 (system "apple-wiro-laptop" "macintosh")
39 (user "milomoisson" { description = "Milo Moisson"; profile = "macintosh"; keys = keys.users; })
40 ];
41 };
42}