79078aa143
- /home/.chezmoiscripts/archlinux/run_onchange_before_10-install-archlinux-dependencies.tmpl - /home/.chezmoiscripts/centos/run_onchange_before_05-upgrade.tmpl - /home/.chezmoiscripts/centos/run_onchange_before_10-install-centos-dependencies.tmpl - /home/.chezmoiscripts/opensuse/run_onchange_before_11-install-opensuse-software.tmpl - /home/.chezmoiscripts/fedora/run_onchange_before_10-install-fedora-dependencies.tmpl - /home/.chezmoiscripts/fedora/run_onchange_before_5-upgrade.tmpl - /home/.chezmoiscripts/freebsd/run_onchange_before_11-install-freebsd-packages.tmpl - /home/.chezmoiscripts/debian/run_onchange_before_10-install-debian-dependencies.tmpl - /home/.chezmoiscripts/debian/run_onchange_before_14-warp.tmpl - /home/.chezmoiscripts/ubuntu/run_onchange_before_10-install-ubuntu-dependencies.tmpl - /home/.chezmoiscripts/ubuntu/run_onchange_before_14-warp.tmpl - /home/.chezmoiscripts/_universal/run_before_01-add-temporary-includes.tmpl - /home/.chezmoiscripts/_universal/run_onchange_before_05-install-homebrew.tmpl - /home/.chezmoiscripts/linux/run_onchange_before_10-system-tweaks.tmpl - /home/.chezmoiscripts/linux/run_onchange_before_11-configure-swap.tmpl - /home/.chezmoiscripts/darwin/run_onchange_after_10-configure-macos.tmpl - /home/.chezmoiscripts/darwin/run_onchange_after_20-ensure-zsh-macos.tmpl - /home/.chezmoiscripts/darwin/run_onchange_after_21-set-wallpaper.tmpl - /home/.chezmoiscripts/darwin/run_onchange_before_10-install-darwin-dependencies.tmpl - /home/.chezmoiscripts/darwin/run_onchange_before_20-ensure-user-group.tmpl - /home/.chezmoiscripts/windows/run_onchange_after_14-cleanup-windows - /home/.chezmoiscripts/windows/run_onchange_before_10-install-windows-dependencies.tmpl - /home/.chezmoiscripts/windows/run_onchange_before_11-install-windows-packages.tmpl - /home/.chezmoiscripts/qubes/run_onchange_after_11-set-wallpaper.tmpl - /home/.chezmoiscripts/qubes/run_onchange_before_11-update-timezone.tmpl - /home/.chezmoiscripts/qubes/run_onchange_before_12-update-dom0.tmpl - /home/.chezmoiscripts/qubes/run_onchange_before_13-install-official-templates.tmpl - /home/.chezmoiscripts/qubes/run_onchange_before_14-ensure-minimal-vms-passwordless.tmpl - /home/.chezmoiscripts/_universal/run_before_01-add-temporary-includes.sh.tmpl - /home/.chezmoiscripts/_universal/run_onchange_before_05-install-homebrew.sh.tmpl - /home/.chezmoiscripts/linux/run_onchange_before_01-requirements.sh.tmpl - /home/.chezmoiscripts/linux/run_onchange_before_10-system-tweaks.sh.tmpl - /home/.chezmoiscripts/linux/run_onchange_before_11-configure-swap.sh.tmpl - /home/.chezmoiscripts/linux/run_onchange_before_14-warp.sh.tmpl - /home/.chezmoiscripts/darwin/run_onchange_after_10-configure-macos.sh.tmpl - /home/.chezmoiscripts/darwin/run_onchange_after_20-ensure-zsh-macos.sh.tmpl - /home/.chezmoiscripts/darwin/run_onchange_after_21-set-wallpaper.sh.tmpl - /home/.chezmoiscripts/darwin/run_onchange_before_10-install-darwin-dependencies.sh.tmpl - /home/.chezmoiscripts/darwin/run_onchange_before_20-ensure-user-group.sh.tmpl - /home/.chezmoiscripts/windows/run_onchange_after_14-cleanup-windows.ps1 - /home/.chezmoiscripts/qubes/run_onchange_after_11-set-wallpaper.sh.tmpl - /home/.chezmoiscripts/qubes/run_onchange_before_12-update-dom0.sh.tmpl - /home/.chezmoiscripts/qubes/run_onchange_before_13-install-official-templates.sh.tmpl - /home/.chezmoiscripts/qubes/run_onchange_before_14-ensure-minimal-vms-passwordless.sh.tmpl
37 lines
1.9 KiB
Bash
37 lines
1.9 KiB
Bash
#!/usr/bin/env bash
|
|
# @file Qubes Update dom0
|
|
# @brief Ensures Qubes dom0 is up-to-date, includes all the Qubes repository definitions, and that `sys-whonix` is running
|
|
# @description
|
|
# This script begins with ensuring Qubes dom0 is up-to-date by including developer-channel Qubes repository definitions are available.
|
|
# It then ensures Qubes dom0 is up-to-date using a combination of several methods including the recommended Salt-based
|
|
# update script. After dom0 is updated, it installs the packages defined in `.qubes.dom0Packages` which is defined in the
|
|
# `home/.chezmoidata.yaml` file. It also ensures `sys-whonix` is running if it is not already running.
|
|
|
|
# qubes-templates.repo hash: {{ include (joinPath .chezmoi.homeDir ".config" "qubes" "qubes-templates.repo") | sha256sum }}
|
|
# qubes-dom0.repo hash: {{ include (joinPath .chezmoi.homeDir ".config" "qubes" "qubes-dom0.repo") | sha256sum }}
|
|
# qubes packages: {{ .qubes.dom0Packages | toString | replace "[" "" | replace "]" "" }}
|
|
|
|
### Configure dom0 repos
|
|
logg info 'Updating dom0 repos to include auxilary branches'
|
|
sudo cp -f "${XDG_CONFIG_HOME:-$HOME/.config}/qubes/qubes-templates.repo" /etc/qubes/repo-templates/qubes-templates.repo
|
|
sudo cp -f "${XDG_CONFIG_HOME:-$HOME/.config}/qubes/qubes-dom0.repo" /etc/yum.repos.d/qubes-dom0.repo
|
|
|
|
### Update dom0
|
|
logg info 'Updating dom0 via `qubesctl`'
|
|
sudo qubesctl --show-output state.sls update.qubes-dom0
|
|
logg info 'Updating dom0 via `qubes-dom0-update`'
|
|
sudo qubes-dom0-update --clean -y
|
|
|
|
### Install qubes-repo-contrib
|
|
logg info "Installing qubes-repo-contrib"
|
|
sudo qubes-dom0-update -y qubes-repo-contrib
|
|
|
|
### Install dependencies
|
|
for PACKAGE of {{ .qubes.dom0Packages | toString | replace "[" "" | replace "]" "" }}; do
|
|
logg info "Installing $PACKAGE"
|
|
sudo qubes-dom0-update -y "$PACKAGE" || true
|
|
done
|
|
|
|
### Ensure sys-whonix is running
|
|
logg info 'Ensuring `sys-whonix` is running'
|
|
qvm-start sys-whonix --skip-if-running
|