diff options
author | tdback <tyler@tdback.net> | 2024-12-21 15:32:13 -0500 |
---|---|---|
committer | tdback <tyler@tdback.net> | 2024-12-21 15:32:13 -0500 |
commit | 0a5754541bb01e96021ca7ee74f1256a8ee68bc4 (patch) | |
tree | 2d0b8089e98239963a1e240cff676b1515fc8431 /flake.nix |
initial commit to self-hosted git
Diffstat (limited to 'flake.nix')
-rw-r--r-- | flake.nix | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..30d31b3 --- /dev/null +++ b/flake.nix @@ -0,0 +1,78 @@ +{ + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11"; + nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; + home-manager = { + url = "github:nix-community/home-manager/release-24.11"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + agenix = { + url = "github:ryantm/agenix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + + outputs = { ... }@inputs: + let + helpers = import ./modules { inherit inputs; }; + inherit (helpers) mergeSets makeSystem; + in + { + nixosConfigurations = mergeSets [ + (makeSystem "woodpecker" inputs.nixpkgs [ + { + type = "profiles"; + modules = [ "common" "fstrim" "libvirtd" "nvidia" "pipewire" "security" "steam" "wireshark" "x11" ]; + } + ]) + (makeSystem "sparrow" inputs.nixpkgs [ + { + type = "profiles"; + modules = [ "common" "pipewire" "security" "vpn" "x11" ]; + } + ]) + (makeSystem "raindog" inputs.nixpkgs [ + { + type = "profiles"; + modules = [ "common" "security" "upgrade" ]; + } + { type = "scripts"; modules = [ "motd" "pushover" ]; } + { type = "services"; modules = [ "blocky" "searx" "ssh" ]; } + ]) + (makeSystem "oasis" inputs.nixpkgs [ + { + type = "profiles"; + modules = [ "common" "podman" "security" "upgrade" "wireguard" "zfs" ]; + } + { type = "scripts"; modules = [ "motd" "pushover" ]; } + { + type = "services"; + modules = [ "cgit" "proxy" "sftpgo" "ssh" ]; + } + ]) + (makeSystem "hive" inputs.nixpkgs [ + { + type = "profiles"; + modules = [ "common" "security" "upgrade" "wireguard" ]; + } + { type = "scripts"; modules = [ "motd" "pushover" ]; } + { + type = "services"; + modules = [ "fediverse" "proxy" "ssh" "web" ]; + } + ]) + (makeSystem "eden" inputs.nixpkgs [ + { + type = "containers"; + modules = [ "freshrss" "jellyfin" "pinchflat" "vaultwarden" "watchtower" ]; + } + { + type = "profiles"; + modules = [ "common" "podman" "security" "share" "upgrade" "wireguard" "zfs" ]; + } + { type = "scripts"; modules = [ "motd" "pushover" ]; } + { type = "services"; modules = [ "immich" "proxy" "ssh" ]; } + ]) + ]; + }; +} |