shell.nix: basic command to build nixos
`nixos-rebuild` has unstable flake support. By adding a simple rebuild command to the shell, we don't need to reply on it to switch configurations anymore. At least until it stablizes.
This commit is contained in:
parent
92f78f3d93
commit
ed94fa013d
18
shell.nix
18
shell.nix
|
@ -1,6 +1,24 @@
|
|||
{ pkgs ? import <nixpkgs> {} }:
|
||||
let
|
||||
configs = "${toString ./.}#nixosConfigurations";
|
||||
hostname = pkgs.lib.fileContents /etc/hostname;
|
||||
build = "config.system.build";
|
||||
|
||||
rebuild = pkgs.writeShellScriptBin "rebuild" ''
|
||||
if [[ -z $1 ]]; then
|
||||
echo "Usage: $0 [host] {switch|boot|test|iso}"
|
||||
elif [[ $1 == "iso" ]]; then
|
||||
nix build ${configs}.niximg.${build}.isoImage
|
||||
elif [[ -z $2 ]]; then
|
||||
nix run -vv ${configs}.${hostname}.${build}.toplevel -c switch-to-configuration $1
|
||||
else
|
||||
nix run -vv ${configs}.$1.${build}.toplevel -c switch-to-configuration $2
|
||||
fi
|
||||
'';
|
||||
in
|
||||
pkgs.mkShell {
|
||||
nativeBuildInputs = with pkgs; [
|
||||
rebuild
|
||||
nixFlakes
|
||||
];
|
||||
|
||||
|
|
Loading…
Reference in a new issue