0xda157's home-manager and nixos config
1{
2 inputs,
3 lib,
4 self,
5 ...
6}:
7{
8 flake = {
9 homeConfigurations = { };
10 nixosConfigurations =
11 (name: {
12 ${name} = inputs.nixpkgs.lib.nixosSystem {
13 modules = [
14 # keep-sorted start block=yes prefix_order=inputs,self,./,{
15 inputs.disko.nixosModules.disko
16 inputs.home-manager.nixosModules.home-manager
17 inputs.sops-nix.nixosModules.sops
18 inputs.stylix.nixosModules.stylix
19 self.nixosModules.default
20 self.nixosModules.homelab
21 ./nixos/${name}
22 {
23 home-manager = {
24 sharedModules = [
25 inputs.sops-nix.homeManagerModules.sops
26 inputs.vicinae.homeManagerModules.default
27 inputs.zen-browser.homeModules.beta
28 self.homeModules.default
29 ];
30 users.da157 = {
31 imports = [ self.homeModules.da157 ];
32 l.secrets.enable = true;
33 };
34 };
35 }
36 # keep-sorted end
37 ];
38 specialArgs = {
39 inherit
40 inputs
41 lib
42 name
43 self
44 ;
45 };
46 };
47 })
48 |> lib.forEach (
49 builtins.readDir ./nixos
50 |> lib.mapAttrsToList (name: kind: lib.optional (kind == "directory") name)
51 |> builtins.concatLists
52 )
53 |> lib.mergeAttrsList;
54 };
55}