broke out basemodules
This commit is contained in:
24
flake.nix
24
flake.nix
@@ -22,34 +22,30 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Define the base modules list once
|
||||||
|
baseLxcModules = [
|
||||||
|
(inputs.nixpkgs + "/nixos/modules/virtualisation/proxmox-lxc.nix")
|
||||||
|
inputs.vscode-server.nixosModules.default
|
||||||
|
baseLxcModule
|
||||||
|
];
|
||||||
|
|
||||||
# Function to create LXC systems with custom modules
|
# Function to create LXC systems with custom modules
|
||||||
mkLxcSystem = { system ? "x86_64-linux", extraModules ? [], extraPackages ? [] }: nixosSystem {
|
mkLxcSystem = { system ? "x86_64-linux", extraModules ? [], extraPackages ? [] }: nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = baseLxcModules ++ extraModules ++ [
|
||||||
(inputs.nixpkgs + "/nixos/modules/virtualisation/proxmox-lxc.nix")
|
|
||||||
inputs.vscode-server.nixosModules.default
|
|
||||||
baseLxcModule
|
|
||||||
# Add extra packages to the base configuration
|
# Add extra packages to the base configuration
|
||||||
({ pkgs, ... }: {
|
({ pkgs, ... }: {
|
||||||
environment.systemPackages = extraPackages;
|
environment.systemPackages = extraPackages;
|
||||||
})
|
})
|
||||||
] ++ extraModules;
|
];
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
# Export the function and modules for reuse
|
# Export the function and modules for reuse
|
||||||
lib = {
|
lib = { inherit mkLxcSystem baseLxcModules; };
|
||||||
inherit mkLxcSystem baseLxcModule;
|
|
||||||
# Helper to get the base modules list
|
|
||||||
baseLxcModules = [
|
|
||||||
(inputs.nixpkgs + "/nixos/modules/virtualisation/proxmox-lxc.nix")
|
|
||||||
inputs.vscode-server.nixosModules.default
|
|
||||||
baseLxcModule
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
# Re-export inputs for downstream flakes
|
# Re-export inputs for downstream flakes
|
||||||
inherit (inputs) inputs;
|
inherit (inputs) inputs;
|
||||||
|
|||||||
Reference in New Issue
Block a user