nix-config/flake.nix

106 lines
2.4 KiB
Nix
Raw Normal View History

{
description = "the silliest NixOS config!";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
2024-08-16 16:42:55 +02:00
sops-nix.url = "github:Mic92/sops-nix";
2024-08-20 10:24:09 +02:00
alejandra.url = "github:kamadorueda/alejandra/3.0.0";
alejandra.inputs.nixpkgs.follows = "nixpkgs";
2024-08-24 10:59:32 +02:00
2024-08-25 12:20:43 +02:00
nix-secrets = {
2024-09-08 11:41:01 +02:00
url = "git+https://git.hypervirtual.world/harry123/nix-secrets.git"; # replace with your own repo
2024-08-25 12:20:43 +02:00
flake = false;
};
2024-09-08 11:41:01 +02:00
nixos-generators = {
url = "github:nix-community/nixos-generators";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs =
{
2024-08-16 16:42:55 +02:00
self,
nixpkgs,
sops-nix,
2024-10-12 20:27:46 +02:00
nixos-generators,
2024-08-16 16:42:55 +02:00
...
}@inputs:
let
username = "harry123";
2024-08-25 12:44:14 +02:00
secrets = builtins.toString inputs.nix-secrets;
2024-08-16 16:42:55 +02:00
specialArgs = {
inherit username;
2024-08-25 12:44:14 +02:00
inherit secrets;
2024-08-16 16:42:55 +02:00
};
in
{
nixosConfigurations = {
sisyphe = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
2024-08-25 12:44:14 +02:00
specialArgs = specialArgs;
2024-08-16 16:42:55 +02:00
modules = [
./hosts/sisyphe/configuration.nix
sops-nix.nixosModules.sops
];
};
2024-09-08 11:41:01 +02:00
# athena = nixpkgs.lib.nixosSystem {}:
2024-08-16 16:42:55 +02:00
labouse = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./hosts/labouse/configuration.nix
];
};
2024-09-08 10:52:16 +02:00
2024-09-08 11:41:01 +02:00
goober = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = specialArgs;
modules = [
./hosts/goober/configuration.nix
];
};
};
isos = {
2024-09-08 10:52:16 +02:00
goober = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./features/isos/goober.nix
];
};
};
2024-09-08 10:52:16 +02:00
2024-09-08 11:41:01 +02:00
proxmox = {
sisyphe = nixos-generators.nixosGenerate {
system = "x86_64-linux";
specialArgs = {
diskSize = 600 * 1024;
inherit specialArgs;
};
modules = [
./hosts/sisyphe/configuration.nix
sops-nix.nixosModules.sops
];
format = "proxmox";
};
2024-10-12 20:27:46 +02:00
dionysos = nixos-generators.nixosGenerate {
system = "x86_64-linux";
specialArgs = {
diskSize = 20 * 1024;
inherit specialArgs;
};
modules = [
./hosts/dionysos/configuration.nix
];
format = "proxmox";
};
2024-09-08 11:41:01 +02:00
};
};
}