darwin.builder: auto-login as the builder user (#208772)

… as suggested by @NiklasGollenstede in:

https://github.com/NixOS/nixpkgs/pull/206951#issuecomment-1369020601

This simplifies the user experience for logging into and
debugging the machine and also simplifies the instructions for
shutting down the machine gracefully.
This commit is contained in:
Gabriella Gonzalez 2023-01-03 21:12:56 -08:00 committed by GitHub
parent d067c8aa5f
commit 6d89aa8f1d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 8 deletions

View file

@ -28,19 +28,21 @@ Password:
```
… so that it can install a private key used to `ssh` into the build server.
After that the script will launch the virtual machine:
After that the script will launch the virtual machine and automatically log you
in as the `builder` user:
```
<<< Welcome to NixOS 22.11.20220901.1bd8d11 (aarch64) - ttyAMA0 >>>
Run 'nixos-help' for the NixOS manual.
nixos login:
nixos login: builder (automatic login)
[builder@nixos:~]$
```
> Note: When you need to stop the VM, type `Ctrl`-`a` + `c` to open the `qemu`
> prompt and then type `system_powerdown` followed by `Enter`, or run `shutdown now`
> as the `builder` user (e.g. `ssh -i keys/builder_ed25519 builder@localhost shutdown now`)
> Note: When you need to stop the VM, run `shutdown now` as the `builder` user.
To delegate builds to the remote builder, add the following options to your
`nix.conf` file:

View file

@ -59,10 +59,14 @@ in
trusted-users = [ "root" user ];
};
services.openssh = {
enable = true;
services = {
getty.autologinUser = user;
authorizedKeysFiles = [ "${keysDirectory}/%u_${keyType}.pub" ];
openssh = {
enable = true;
authorizedKeysFiles = [ "${keysDirectory}/%u_${keyType}.pub" ];
};
};
system.build.macos-builder-installer =