Flake for my NixOS devices
1{
2 lib,
3 outputs,
4 ...
5}: {
6 system = "x86_64-linux";
7
8 modules =
9 (builtins.attrValues outputs.nixosModules)
10 ++ [
11 (
12 {
13 modulesPath,
14 pkgs,
15 ...
16 }: {
17 imports = [
18 "${modulesPath}/installer/cd-dvd/installation-cd-minimal.nix"
19 ];
20
21 services.kmscon = {
22 enable = true;
23 autologinUser = "root";
24 fonts = [
25 {
26 name = "SauceCodePro Nerd Font Mono";
27 package = pkgs.nerd-fonts.sauce-code-pro;
28 }
29 ];
30 };
31
32 boot = let
33 supportedFilesystems = {
34 btrfs = true;
35 reiserfs = lib.mkForce false;
36 vfat = true;
37 f2fs = true;
38 xfs = true;
39 ntfs = true;
40 cifs = true;
41 zfs = lib.mkForce false;
42 };
43 in {
44 initrd.systemd.enable = false;
45 inherit supportedFilesystems;
46 initrd = {
47 inherit supportedFilesystems;
48 };
49 };
50
51 system.extraDependencies = [
52 outputs.nixosConfigurations.aperture.config.system.build.toplevel
53 outputs.nixosConfigurations.black-mesa.config.system.build.toplevel
54 ];
55
56 environment.systemPackages = with pkgs; [
57 disko
58 sbctl
59 ];
60 }
61 )
62 (
63 {pkgs, ...}: {
64 system.stateVersion = "25.05";
65 networking.hostName = "cow-installer";
66
67 networking.networkmanager.enable = lib.mkForce false;
68
69 isoImage.squashfsCompression = "xz -Xdict-size 100%";
70
71 users.users.root = {
72 shell = pkgs.nushell;
73 };
74
75 home-manager.users.root.home.stateVersion = "25.05";
76 home-manager.users.root.cow = {
77 nushell = {
78 enable = true;
79 commandNotFound = true;
80 };
81 neovim.enable = true;
82 htop.enable = true;
83 starship.enable = true;
84 yazi.enable = true;
85 dev.enable = false;
86 comma.enable = true;
87 cat.enable = true;
88 };
89
90 cow = {
91 base.enable = true;
92 network = {
93 enable = true;
94 wireless = true;
95 };
96 hm.enable = true;
97 cat.enable = true;
98 };
99 }
100 )
101 ];
102}