nixos/nixos-container: use custom path if specified by --nixos-path
This commit is contained in:
parent
93943acbc5
commit
31bbcc21d3
@ -43,6 +43,7 @@ Usage: nixos-container list
|
|||||||
[--config <string>]
|
[--config <string>]
|
||||||
[--config-file <path>]
|
[--config-file <path>]
|
||||||
[--flake <flakeref>]
|
[--flake <flakeref>]
|
||||||
|
[--nixos-path <path>]
|
||||||
nixos-container login <container-name>
|
nixos-container login <container-name>
|
||||||
nixos-container root-login <container-name>
|
nixos-container root-login <container-name>
|
||||||
nixos-container run <container-name> -- args...
|
nixos-container run <container-name> -- args...
|
||||||
@ -386,6 +387,7 @@ elsif ($action eq "update") {
|
|||||||
system("nix-env", "-p", "$profileDir/system", "--set", $systemPath) == 0
|
system("nix-env", "-p", "$profileDir/system", "--set", $systemPath) == 0
|
||||||
or die "$0: failed to set container configuration\n";
|
or die "$0: failed to set container configuration\n";
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
my $nixosConfigFile = "$root/etc/nixos/configuration.nix";
|
my $nixosConfigFile = "$root/etc/nixos/configuration.nix";
|
||||||
|
|
||||||
# FIXME: may want to be more careful about clobbering the existing
|
# FIXME: may want to be more careful about clobbering the existing
|
||||||
@ -395,8 +397,9 @@ elsif ($action eq "update") {
|
|||||||
writeNixOSConfig $nixosConfigFile;
|
writeNixOSConfig $nixosConfigFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
my $nixenvF = $nixosPath // "<nixpkgs/nixos>";
|
||||||
system("nix-env", "-p", "$profileDir/system",
|
system("nix-env", "-p", "$profileDir/system",
|
||||||
"-I", "nixos-config=$nixosConfigFile", "-f", "<nixpkgs/nixos>",
|
"-I", "nixos-config=$nixosConfigFile", "-f", $nixenvF,
|
||||||
"--set", "-A", "system") == 0
|
"--set", "-A", "system") == 0
|
||||||
or die "$0: failed to build container configuration\n";
|
or die "$0: failed to build container configuration\n";
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user