my nix configs for my servers and desktop
1# flake.nix
2{
3 inputs = {
4 nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
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 disko.url = "github:nix-community/disko/v1.11.0";
22
23 catppuccin.url = "github:catppuccin/nix";
24 home-manager = {
25 url = "github:nix-community/home-manager";
26 inputs.nixpkgs.follows = "nixpkgs";
27 };
28 };
29
30 outputs =
31 { self, ... }@inputs:
32 with inputs;
33 let
34 nixosModules = builtins.listToAttrs (
35 map (module: {
36 name = module;
37 value = import (./modules + "/${module}");
38 }) (builtins.attrNames (builtins.readDir ./modules))
39 );
40 in
41 {
42 nixosConfigurations = {
43 focalor = nixpkgs.lib.nixosSystem {
44 system = "x86_64-linux";
45 specialArgs = {
46 inherit inputs;
47 system = "x86_64-linux";
48 };
49 modules = [
50 agenix.nixosModules.default
51
52 ./hosts/focalor
53 lix-module.nixosModules.default
54 vscode-server.nixosModules.default
55 catppuccin.nixosModules.catppuccin
56 home-manager.nixosModules.home-manager
57 {
58 home-manager.useGlobalPkgs = true;
59 home-manager.backupFileExtension = "HMBackup";
60 home-manager.users.regent.imports = [
61 ./home/regent/home.nix
62 catppuccin.homeModules.catppuccin
63 ];
64 home-manager.extraSpecialArgs = {
65 inherit inputs;
66 system = "x86_64-linux";
67 };
68 }
69
70 { imports = builtins.attrValues nixosModules; }
71 ];
72 };
73
74 valefar = nixpkgs.lib.nixosSystem {
75 system = "x86_64-linux";
76 specialArgs = {
77 inherit inputs;
78 system = "x86_64-linux";
79 };
80 modules = [
81 agenix.nixosModules.default
82
83 ./hosts/valefar
84 lix-module.nixosModules.default
85 vscode-server.nixosModules.default
86 microvm.nixosModules.host
87
88 { imports = builtins.attrValues nixosModules; }
89 ];
90 };
91
92 buer = nixpkgs.lib.nixosSystem {
93 system = "x86_64-linux";
94 specialArgs = {
95 inherit inputs;
96 system = "x86_64-linux";
97 };
98 modules = [
99 ./hosts/buer
100
101 agenix.nixosModules.default
102
103 { imports = builtins.attrValues nixosModules; }
104 ];
105 };
106
107 baal = nixpkgs.lib.nixosSystem {
108 system = "aarch64-linux";
109 specialArgs = {
110 inherit inputs;
111 system = "aarch64-linux";
112 };
113 modules = [
114 ./hosts/baal
115
116 agenix.nixosModules.default
117 disko.nixosModules.disko
118
119 { imports = builtins.attrValues nixosModules; }
120
121 ];
122 };
123 };
124 };
125}