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
92 { imports = builtins.attrValues nixosModules; }
93 ];
94 };
95
96 buer = nixpkgs.lib.nixosSystem {
97 system = "x86_64-linux";
98 specialArgs = {
99 inherit inputs;
100 system = "x86_64-linux";
101 };
102 modules = [
103 ./hosts/buer
104
105 agenix.nixosModules.default
106 ];
107 };
108
109 morax = nixpkgs.lib.nixosSystem {
110 system = "aarch64-linux";
111 specialArgs = {
112 inherit inputs;
113 system = "aarch64-linux";
114 };
115 modules = [
116 ./hosts/morax
117 nixos-hardware.nixosModules.raspberry-pi-4
118
119 agenix.nixosModules.default
120 ];
121 };
122
123
124 # Easy to add more hosts
125 /*
126 server2 = nixpkgs.lib.nixosSystem {
127 system = "x86_64-linux";
128 modules = [
129 ./hosts/server2
130 agenix.nixosModules.default
131 # different services for server2
132 ];
133 };
134 */
135 };
136 };
137}