my nix configs for my servers and desktop
1# flake.nix
2{
3 inputs = {
4 nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
5 nixos-hardware.url = "github:nixos/nixos-hardware/master";
6
7 lix-module = {
8 url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.0.tar.gz";
9 inputs.nixpkgs.follows = "nixpkgs";
10 };
11
12 vscode-server.url = "github:nix-community/nixos-vscode-server";
13 agenix.url = "github:ryantm/agenix";
14 zen-browser = {
15 url = "github:0xc000022070/zen-browser-flake";
16 inputs.nixpkgs.follows = "nixpkgs";
17 };
18 microvm.url = "github:astro/microvm.nix";
19 microvm.inputs.nixpkgs.follows = "nixpkgs";
20
21 catppuccin.url = "github:catppuccin/nix";
22 home-manager = {
23 url = "github:nix-community/home-manager";
24 inputs.nixpkgs.follows = "nixpkgs";
25 };
26 };
27
28 outputs =
29 { self, ... }@inputs:
30 with inputs;
31 let
32 nixosModules = builtins.listToAttrs (
33 map (module: {
34 name = module;
35 value = import (./modules + "/${module}");
36 }) (builtins.attrNames (builtins.readDir ./modules))
37 );
38 in
39 {
40 nixosConfigurations = {
41 focalor = nixpkgs.lib.nixosSystem {
42 system = "x86_64-linux";
43 specialArgs = {
44 inherit inputs;
45 system = "x86_64-linux";
46 };
47 modules = [
48 ./hosts/focalor
49 lix-module.nixosModules.default
50
51 /*microvm.nixosModules.host
52 {
53 microvm.autostart = [
54 "windows"
55 ];
56 }*/
57
58 vscode-server.nixosModules.default
59 agenix.nixosModules.default
60
61 catppuccin.nixosModules.catppuccin
62
63 home-manager.nixosModules.home-manager
64 {
65 home-manager.useGlobalPkgs = true;
66 home-manager.backupFileExtension = "HMBackup";
67 home-manager.users.regent.imports = [
68 ./home/regent/home.nix
69 catppuccin.homeModules.catppuccin
70 ];
71 home-manager.extraSpecialArgs = {
72 inherit inputs;
73 system = "x86_64-linux";
74 };
75 }
76 ];
77 };
78
79 valefar = nixpkgs.lib.nixosSystem {
80 system = "x86_64-linux";
81 specialArgs = {
82 inherit inputs;
83 system = "x86_64-linux";
84 };
85 modules = [
86 ./hosts/valefar
87 lix-module.nixosModules.default
88
89 vscode-server.nixosModules.default
90 agenix.nixosModules.default
91 microvm.nixosModules.host
92
93 { imports = builtins.attrValues nixosModules; }
94 ];
95 };
96
97 buer = nixpkgs.lib.nixosSystem {
98 system = "x86_64-linux";
99 specialArgs = {
100 inherit inputs;
101 system = "x86_64-linux";
102 };
103 modules = [
104 ./hosts/buer
105
106 agenix.nixosModules.default
107 ];
108 };
109
110 morax = nixpkgs.lib.nixosSystem {
111 system = "aarch64-linux";
112 specialArgs = {
113 inherit inputs;
114 system = "aarch64-linux";
115 };
116 modules = [
117 ./hosts/morax
118 nixos-hardware.nixosModules.raspberry-pi-4
119
120 agenix.nixosModules.default
121 { imports = builtins.attrValues nixosModules; }
122 ];
123 };
124
125
126 # Easy to add more hosts
127 /*
128 server2 = nixpkgs.lib.nixosSystem {
129 system = "x86_64-linux";
130 modules = [
131 ./hosts/server2
132 agenix.nixosModules.default
133 # different services for server2
134 ];
135 };
136 */
137 };
138 };
139}