2022-10-02 16:49:43 +02:00
|
|
|
{
|
|
|
|
inputs = {
|
|
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
2023-06-30 23:31:13 +02:00
|
|
|
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
2024-04-08 08:41:05 +02:00
|
|
|
bij = {
|
|
|
|
url = "git+https://git.clerie.de/clerie/bij.git";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2023-06-13 17:53:45 +02:00
|
|
|
chaosevents = {
|
|
|
|
url = "git+https://git.clerie.de/clerie/chaosevents.git";
|
2024-04-15 19:11:07 +02:00
|
|
|
#inputs.nixpkgs.follows = "nixpkgs";
|
2023-06-13 17:53:45 +02:00
|
|
|
};
|
2023-05-04 14:35:30 +02:00
|
|
|
fernglas = {
|
|
|
|
url = "github:wobcom/fernglas";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2024-05-22 17:17:14 +02:00
|
|
|
harmonia = {
|
|
|
|
url = "github:clerie/harmonia/clerie/multiple-signing-keys";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2023-06-20 18:58:55 +02:00
|
|
|
fieldpoc.url = "git+https://git.clerie.de/clerie/fieldpoc.git";
|
2023-01-02 19:10:33 +01:00
|
|
|
nixos-exporter = {
|
|
|
|
url = "git+https://git.clerie.de/clerie/nixos-exporter.git";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2023-02-06 13:38:16 +01:00
|
|
|
solid-xmpp-alarm = {
|
|
|
|
url = "git+https://git.clerie.de/clerie/solid-xmpp-alarm.git";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2024-04-20 23:20:14 +02:00
|
|
|
sops-nix = {
|
|
|
|
url = "github:Mic92/sops-nix";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
|
|
|
ssh-to-age = {
|
|
|
|
url = "github:Mic92/ssh-to-age";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2022-10-02 16:49:43 +02:00
|
|
|
};
|
2024-05-10 16:23:41 +02:00
|
|
|
outputs = { self, nixpkgs, nixos-hardware, chaosevents, fernglas, nixos-exporter, solid-xmpp-alarm, ssh-to-age, ... }@inputs: let
|
2023-12-10 18:27:55 +01:00
|
|
|
lib = import ./lib inputs;
|
|
|
|
helper = lib.flake-helper;
|
2024-05-13 16:05:48 +02:00
|
|
|
localNixpkgs = import ./flake/nixpkgs.nix inputs;
|
2022-10-02 20:38:02 +02:00
|
|
|
in {
|
2023-04-16 16:37:11 +02:00
|
|
|
clerie.hosts = {
|
2023-04-21 23:03:11 +02:00
|
|
|
aluminium = {
|
|
|
|
group = "event";
|
|
|
|
};
|
2023-05-20 17:34:02 +02:00
|
|
|
astatine = {
|
|
|
|
group = "event";
|
2023-10-29 20:06:30 +01:00
|
|
|
modules = [
|
|
|
|
./users/criese-nethinks
|
2023-12-07 20:21:44 +01:00
|
|
|
./users/isa
|
2023-10-29 20:06:30 +01:00
|
|
|
];
|
2023-05-20 17:34:02 +02:00
|
|
|
};
|
2024-05-23 13:51:06 +02:00
|
|
|
backup-4 = {};
|
2023-04-21 23:03:11 +02:00
|
|
|
beryllium = {
|
|
|
|
group = "event";
|
|
|
|
};
|
2024-05-23 13:51:06 +02:00
|
|
|
carbon = {};
|
|
|
|
clerie-backup = {};
|
|
|
|
dn42-il-gw1 = {};
|
|
|
|
dn42-il-gw5 = {};
|
|
|
|
dn42-il-gw6 = {};
|
|
|
|
dn42-ildix-clerie = {};
|
|
|
|
dn42-ildix-service = {};
|
|
|
|
gatekeeper = {};
|
|
|
|
hydra-1 = {};
|
|
|
|
hydra-2 = {};
|
2023-06-30 23:31:13 +02:00
|
|
|
krypton = {
|
|
|
|
modules = [
|
|
|
|
nixos-hardware.nixosModules.lenovo-thinkpad-x270
|
|
|
|
];
|
|
|
|
};
|
2024-05-23 13:51:06 +02:00
|
|
|
mail-2 = {};
|
|
|
|
minecraft-2 = {};
|
|
|
|
monitoring-3 = {};
|
|
|
|
nonat = {};
|
|
|
|
osmium = {};
|
|
|
|
palladium = {};
|
|
|
|
porter = {};
|
|
|
|
storage-2 = {};
|
|
|
|
web-2 = {};
|
2024-02-07 17:36:30 +01:00
|
|
|
zinc = {
|
|
|
|
modules = [
|
|
|
|
nixos-hardware.nixosModules.common-cpu-intel
|
|
|
|
];
|
|
|
|
};
|
2023-10-22 22:35:36 +02:00
|
|
|
# nixfiles-auto-install: add new host above
|
2024-05-23 13:51:06 +02:00
|
|
|
_iso = {};
|
2022-10-03 15:26:15 +02:00
|
|
|
};
|
|
|
|
|
2024-05-13 17:39:54 +02:00
|
|
|
nixosConfigurations = import ./flake/nixosConfigurations.nix inputs;
|
2023-04-16 16:37:11 +02:00
|
|
|
|
2024-05-13 16:33:20 +02:00
|
|
|
nixosModules = {
|
2024-05-13 16:44:21 +02:00
|
|
|
nixfilesInputs = import ./flake/modules.nix inputs;
|
2024-05-13 16:33:20 +02:00
|
|
|
clerie = import ./modules;
|
|
|
|
default = self.nixosModules.clerie;
|
|
|
|
};
|
|
|
|
|
2023-12-08 09:06:43 +01:00
|
|
|
overlays = {
|
2024-05-13 16:05:48 +02:00
|
|
|
nixfilesInputs = import ./flake/overlay.nix inputs;
|
2023-12-08 09:06:43 +01:00
|
|
|
clerie = import ./pkgs/overlay.nix;
|
|
|
|
default = self.overlays.clerie;
|
|
|
|
};
|
|
|
|
|
2023-10-25 18:28:37 +02:00
|
|
|
packages = nixpkgs.lib.genAttrs [ "x86_64-linux" "aarch64-linux" ] (system: let
|
2024-05-13 16:05:48 +02:00
|
|
|
pkgs = localNixpkgs.${system};
|
2023-03-23 16:45:30 +01:00
|
|
|
in {
|
2022-10-02 20:38:02 +02:00
|
|
|
inherit (pkgs)
|
2024-04-16 22:28:26 +02:00
|
|
|
clerie-keys
|
2024-03-17 15:50:49 +01:00
|
|
|
clerie-system-upgrade
|
2024-03-19 17:31:18 +01:00
|
|
|
clerie-merge-nixfiles-update
|
2024-03-17 16:14:54 +01:00
|
|
|
clerie-update-nixfiles
|
2024-04-20 23:20:14 +02:00
|
|
|
clerie-sops
|
|
|
|
clerie-sops-config
|
2024-05-01 17:11:36 +02:00
|
|
|
clerie-sops-edit
|
2024-03-17 14:24:06 +01:00
|
|
|
chromium-incognito
|
2022-10-02 20:38:02 +02:00
|
|
|
iot-data
|
2024-03-17 15:14:12 +01:00
|
|
|
nix-remove-result-links
|
2023-10-20 23:45:43 +02:00
|
|
|
nixfiles-auto-install
|
2023-10-20 22:57:33 +02:00
|
|
|
nixfiles-generate-config
|
2024-05-12 14:51:54 +02:00
|
|
|
nixfiles-generate-backup-secrets
|
2023-09-01 17:23:53 +02:00
|
|
|
nixfiles-update-ssh-host-keys
|
2024-03-19 17:51:59 +01:00
|
|
|
print-afra
|
2024-04-14 17:57:56 +02:00
|
|
|
ssh-gpg
|
2023-09-02 21:47:45 +02:00
|
|
|
update-from-hydra
|
2024-03-14 20:27:20 +01:00
|
|
|
uptimestatus;
|
2023-10-25 18:28:37 +02:00
|
|
|
});
|
2022-10-02 20:38:02 +02:00
|
|
|
|
2024-04-20 14:34:42 +02:00
|
|
|
inherit lib self;
|
|
|
|
|
2024-05-13 16:21:47 +02:00
|
|
|
hydraJobs = import ./flake/hydraJobs.nix inputs;
|
2023-07-01 16:59:24 +02:00
|
|
|
|
|
|
|
nixConfig = {
|
|
|
|
extra-substituters = [
|
|
|
|
"https://nix-cache.clerie.de"
|
|
|
|
];
|
|
|
|
extra-trusted-public-keys = [
|
|
|
|
"nix-cache.clerie.de:bAt1GJTS9BOTcXFWj3nURrSlcjqikCev9yDvqArMP5g="
|
|
|
|
];
|
|
|
|
};
|
2022-10-02 16:49:43 +02:00
|
|
|
};
|
|
|
|
}
|