add switch_remote.sh script and update docs accordingly

This commit is contained in:
lilly 2025-02-10 17:49:45 +01:00
parent ce97b624e0
commit fcb5b203c7
Signed by: lilly
SSH key fingerprint: SHA256:y9T5GFw2A20WVklhetIxG1+kcg/Ce0shnQmbu1LQ37g
2 changed files with 24 additions and 1 deletions

View file

@ -78,5 +78,14 @@ See [sops-nix](https://github.com/Mic92/sops-nix)
## VM Configuration
**TODO**
Any NixOS VM can be reconfigured remotely by calling:
```bash
./switch_remote.sh <action> <machine>`
```
- `<action>` can be any of the [standard nixos-rebuild actions](https://wiki.nixos.org/wiki/Nixos-rebuild), e.g. `boot`, `switch`, etc.
- `<macine>` should be the FQDN of the machine config to apply.
The script uses this argument to know how to reach the machine in addition to choosing a nixos configuration from this flake as system source (see [systems/](./systems/)).
This also means that you should have a config entry in you SSH config resolving the system name to an IP address (during the event, we will probably have an internal DNS server which also resolves the hostname).

14
switch_remote.sh Executable file
View file

@ -0,0 +1,14 @@
#/usr/bin/env bash
# a small script for calling nixos-rebuild switch on a remote host but with less repitition
set -euo pipefail
ACTION=$1
HOST=$2
exec nixos-rebuild $ACTION \
--use-substitutes \
--no-build-nix \
--use-remote-sudo \
--build-host "$HOST" \
--target-host "$HOST" \
--flake ".#$HOST" \