test-vpsadminos-configuration/lib/vpsadminos/local.nix
2018-08-02 12:52:11 +02:00

27 lines
843 B
Nix

let
nixpkgsPath = "/home/aither/workspace/vpsadmin/nixpkgs";
vpsadminosPath = "/home/aither/workspace/vpsadmin/vpsadminos";
in
{
vpsadminos = {configuration, modules ? []}:
let
# this is fed into scopedImport so vpsadminos sees correct <nixpkgs> everywhere
overrides = {
__nixPath = [
{ prefix = "nixpkgs"; path = nixpkgsPath; }
{ prefix = "vpsadminos"; path = vpsadminosPath; }
] ++ builtins.nixPath;
import = fn: scopedImport overrides fn;
scopedImport = attrs: fn: scopedImport (overrides // attrs) fn;
builtins = builtins // overrides;
};
in
builtins.scopedImport overrides (vpsadminosPath + "/os/") {
nixpkgs = nixpkgsPath;
system = "x86_64-linux";
extraModules = modules;
inherit configuration;
};
}