From e33f53ff2e227fbba9256f1fd695e7071a64fef4 Mon Sep 17 00:00:00 2001 From: Timothy DeHerrera Date: Mon, 11 Jan 2021 13:15:55 -0700 Subject: [PATCH] shell: add `flk up` command Automatically generate a configuration for your current system using nixos-generate-config, placed in the `up` directory. A file is added in hosts/up-$(hostname).nix importing said configuration. --- README.md | 9 +++------ shell.nix | 9 ++++++++- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 5cfd37a..4ab0ed2 100644 --- a/README.md +++ b/README.md @@ -104,12 +104,9 @@ for ease of use. Once inside: # This will setup nix-command and pull in the needed tools nix-shell # or `direnv allow` if you prefer -# quick way to setup your fileSystems (assuming they are partioned): -sudo mount /dev/ /mnt -nixos-generate-config --root /mnt --show-hardware-config > hosts/yourConfig.nix - -# Edit your config to add a bootloader -$EDITOR hosts/yourConfig.nix +# use nixos-generate-config to generate a basic config for your system +# edit hosts/up-$(hostname).nix to modify. +flk up # The following should work fine for EFI systems. # boot.loader.systemd-boot.enable = true; diff --git a/shell.nix b/shell.nix index dd7e309..3b23540 100644 --- a/shell.nix +++ b/shell.nix @@ -17,7 +17,14 @@ let flk = pkgs.writeShellScriptBin "flk" '' if [[ -z "$1" ]]; then - echo "Usage: $(basename "$0") [ iso | install {host} | {host} [switch|boot|test] ]" + echo "Usage: $(basename "$0") [ iso | up | install {host} | {host} [switch|boot|test] ]" + elif [[ "$1" == "up" ]]; then + mkdir -p up + nixos-generate-config --dir up + echo \ + "{ + imports = [ ../up/configuration.nix ]; + }" > hosts/up-$(hostname).nix elif [[ "$1" == "iso" ]]; then nix build ${configs}.niximg.${build}.isoImage elif [[ "$1" == "install" ]]; then