blob: 7dbe5232429883a9db0adf273f0beb8d19716125 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
disko.url = "github:nix-community/disko/latest";
disko.inputs.nixpkgs.follows = "nixpkgs";
impermanence.url = "github:nix-community/impermanence";
agenix.url = "github:ryantm/agenix";
agenix.inputs.nixpkgs.follows = "nixpkgs";
agenix.inputs.darwin.follows = "";
};
outputs =
inputs@{
nixpkgs,
disko,
impermanence,
agenix,
...
}:
let
forAllSystems =
f:
nixpkgs.lib.genAttrs
[
"x86_64-linux"
"aarch64-linux"
]
(
system:
f (
import nixpkgs {
inherit system;
config.allowUnfree = true;
overlays = [
agenix.overlays.default
];
}
)
);
in
{
nixosConfigurations.oden = nixpkgs.lib.nixosSystem {
modules = [
./configuration.nix
disko.nixosModules.disko
impermanence.nixosModules.impermanence
agenix.nixosModules.default
];
specialArgs = {
inherit inputs;
};
};
devShells = forAllSystems (pkgs: {
default = pkgs.mkShellNoCC {
packages = [ pkgs.agenix ];
};
});
};
}
|