install.fairie/home/.chezmoiscripts/universal/run_onchange_before_14-ensure-minimal-vms-passwordless.sh.tmpl
2023-11-05 03:56:58 +00:00

25 lines
1.3 KiB
Cheetah

{{- if (eq .host.distro.id "qubes") -}}
#!/usr/bin/env bash
# @file Qubes Passwordless Templates
# @brief Ensures the minimal templates defined in `.qubes.templates` in the `home/.chezmoidata.yaml` file are configured to be passwordless
# @description
# This script runs in dom0 and ensures the templates defined in the `.qubes.templates` data key of `home/.chezmoidata.yaml` all have
# the `qubes-core-agent-passwordless-root` package installed so that they can be provisioned headlessly.
{{ includeTemplate "universal/profile-before" }}
{{ includeTemplate "universal/logg-before" }}
### Ensure Qubes minimal templates have passwordless sudo
for TEMPLATE of {{ .qubes.templates | toString | replace "[" "" | replace "]" "" }}; do
if [[ "$TEMPLATE" == *'-minimal' ]]; then
if [[ "$TEMPLATE" == 'debian'* ]] || [[ "$TEMPLATE" == 'ubuntu'* ]]; then
logg info "Installing qubes-core-agent-passwordless-root on $TEMPLATE"
qvm-run -u root "$TEMPLATE" apt-get update
qvm-run -u root "$TEMPLATE" apt-get install -y qubes-core-agent-passwordless-root
elif [[ "$TEMPLATE" == 'fedora'* ]]; then
logg info "Installing qubes-core-agent-passwordless-root on $TEMPLATE"
qvm-run -u root "$TEMPLATE" dnf install -y qubes-core-agent-passwordless-root
fi
fi
done
{{ end -}}