unlock-host
This commit is contained in:
@@ -12,6 +12,23 @@ let
|
||||
cryptrootUnlockWrapper = pkgs.writeShellScriptBin "cryptroot-unlock" ''
|
||||
exec /run/current-system/sw/bin/systemd-tty-ask-password-agent --query --watch "$@"
|
||||
'';
|
||||
unlockHost = pkgs.writeShellScriptBin "unlock-host" ''
|
||||
set -euo pipefail
|
||||
|
||||
usage() {
|
||||
echo "Usage: unlock-host <host> [ssh-options...]"
|
||||
echo "Unlocks a remote host waiting for a LUKS passphrase during boot."
|
||||
exit 1
|
||||
}
|
||||
|
||||
[[ $# -lt 1 ]] && usage
|
||||
[[ "$1" == "-h" || "$1" == "--help" ]] && usage
|
||||
|
||||
HOST="$1"
|
||||
shift
|
||||
|
||||
ssh -tt "$@" "$HOST" systemd-tty-ask-password-agent --query
|
||||
'';
|
||||
in
|
||||
{
|
||||
options.my.binBashWrapper.enable = lib.mkEnableOption "create a /bin/bash wrapper";
|
||||
@@ -20,6 +37,7 @@ in
|
||||
systemd.tmpfiles.rules = [
|
||||
"L+ /bin/bash - - - - ${bashWrapper}/bin/bash"
|
||||
"L+ /bin/cryptroot-unlock - - - - ${cryptrootUnlockWrapper}/bin/cryptroot-unlock"
|
||||
"L+ /bin/unlock-host - - - - ${unlockHost}/bin/unlock-host"
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user