41 lines
1.2 KiB
Nix
41 lines
1.2 KiB
Nix
{
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
|
|
nix-minecraft.url = "github:Infinidoge/nix-minecraft";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, ... }@inputs:
|
|
let
|
|
system = "x86_64-linux";
|
|
nixos-vma = path: nixpkgs.lib.nixosSystem {
|
|
specialArgs = { inherit system inputs; };
|
|
modules = [
|
|
"${nixpkgs}/nixos/modules/virtualisation/proxmox-image.nix"
|
|
{ nixpkgs.hostPlatform = "${system}"; }
|
|
path
|
|
];
|
|
};
|
|
nixos-lxc = path: nixpkgs.lib.nixosSystem {
|
|
specialArgs = { inherit system inputs; };
|
|
modules = [
|
|
"${nixpkgs}/nixos/modules/virtualisation/proxmox-lxc.nix"
|
|
{ nixpkgs.hostPlatform = "${system}"; }
|
|
path
|
|
];
|
|
};
|
|
image = name: self.nixosConfigurations.${name}.config.system.build.VMA;
|
|
lxc = name: self.nixosConfigurations.${name}.config.system.build.tarball;
|
|
in {
|
|
nixosConfigurations = {
|
|
majcraft = nixos-vma ./vm-majcraft.nix;
|
|
homelab = nixos-vma ./vm-homelab.nix;
|
|
metrics = nixos-lxc ./lxc-metrics.nix;
|
|
};
|
|
|
|
packages.${system} = {
|
|
majcraft = image "majcraft";
|
|
homelab = image "homelab";
|
|
metrics = lxc "metrics";
|
|
};
|
|
};
|
|
}
|