Sortix volatile manual
This manual documents Sortix volatile, a development build that has not been officially released. You can instead view this document in the latest official manual.
AUTOUPGRADE.CONF(5) | File Formats Manual | AUTOUPGRADE.CONF(5) |
NAME
autoupgrade.conf
—
automatic upgrade configuration
SYNOPSIS
/etc/autoupgrade.conf |
DESCRIPTION
autoupgrade.conf
configures
sysupgrade(8) to do an
automatic operating system
upgrade(7).
The system administrator can automate operating system upgrades by following release-iso-modification(7) to embed the /etc/autoupgrade.conf file into the release cdrom filesystem. New installations can similarly be automatically installed using autoinstall.conf(5).
Each line is formatted as question=answer which provides an answer to a question asked during upgrading. Alternatively question+=answer appends to an existing answer (if any) separated by a space, and question++=answer appends another line to an existing answer (if any). Empty lines and lines starting with ‘#’ are comments and are ignored. Otherwise whitespace is significant. The empty answer accepts the default answer (if any) and is different from no answer, which makes sysupgrade(8) ask the question normally. Upgrades can be made fully non-interactive using accept_defaults.
Each question has a counterpart question suffixed with ‘!’ which contains a sh(1) script that is executed before the question is asked. If the original question isn't answered, then the script's standard output is used as the answer to the original question. The upgrade aborts if the script exits unsuccessfully. These scripts are useful to customize the upgrades with arbitrary code.
The questions in chronological order are as follows:
- accept_defaults=[no | yes] (default no)
- Accept the default answer (if any) to questions that were not configured
in
autoupgrade.conf
? This feature makes upgrades entirely automated even if unexpected questions are asked, although the essential questions must be answered. - countdown=seconds
(default
10
) - Count down for this many seconds with a warning that an automated upgrade is about to happen? The countdown happens if accept_defaults=yes or if the ready and confirm_upgrrade questions are answered.
- ignore_missing_programs=[no | yes] (default no)
- Ignore if the upgrader environment does not have the needed ports installed? This situation ordinarily does not happen.
- ready=affirmation
- Are you ready to begin the upgrade process? This is a human readable
positive affirmation of your choice that you're ready to upgrade, useful
for fully automated upgrades. Not answering this question is useful for
semi-automated upgrades where one would acknowledge the upgrades before
it's begun. It also provides the opportunity to escape to a shell before
upgrading.
The ready! question is convenient for running shell commands before the upgrade begins.
- kblayout=[default | layout] (default default)
- Switch to this keyboard layout using chkblayout(1)?
- videomode=[no | yes | WIDTHxHEIGHTxBPP] (default yes)
- Interactively select a graphics resolution using
chvideomode(1) or
non-interactively set it to the specified resolution?
If the upgrade is non-interactive with accept_defaults=true, then the default is instead no.
- run_installer_instead=[no | yes] (default yes)
- Run the sysinstall(8)
installer instead if no installations were found?
This answer is useful combined with autoinstall.conf(5) to either install or upgrade the operating system, regardless of what is already installed on the machine.
- which_installaton=block-device
- The name of the block-device containing the root filesystem to upgrade? This question is only asked if multiple installations were found.
- switch_architecture=[no | yes] (default no)
- Switch the installation to another architecture?
Such upgrades are not supported and may corrupt the installation.
- downgrade_release=[no | yes] (default no)
- Downgrade the installation to an earlier release?
Such upgrades are not supported and may corrupt the installation.
- skip_release=[no | yes] (default no)
- Skip upgrading to a release that ordinarily must be upgraded to first?
Such upgrades are not supported and may corrupt the installation.
- downgrade_abi=[no | yes] (default no)
- Downgrade the installation to an earlier ABI?
Such upgrades are not supported and may corrupt the installation.
- cancel_pending_sysmerge=[no | yes] (default yes)
- Cancel an existing pending sysmerge(8) upgrade?
- confirm_upgrade=[no | yes | exit | poweroff | reboot | halt] (default yes)
- Upgrade the operating system or abort the upgrade? This is the final
confirmation before the operating system is upgraded.
The confirm_upgrade! question is convenient for running shell commands before the upgrade step. The working directory is the root filesystem of the installation with all filesystems mounted. Note how chroot(8) command may not work as intended at this point since the ABI may have incompatibly changed.
- finally=[exit | poweroff | reboot | halt | boot] (default boot)
- What action should be taken when the upgrade is finished?
The finally! question is convenient for running shell commands once the upgrade is complete to customize the upgraded installation. The working directory is the root filesystem of the installation with all filesystems mounted. The
chroot -d .
command is useful to chroot(8) into the root filesystem to run commands with the /dev filesystem mounted.
FILES
- /etc/autoupgrade.conf
- Automatic upgrade configuration.
EXAMPLES
Fully automated upgrade
To perform a fully automated upgrade with, create autoupgrade.conf:
accept_defaults=yes
Then follow release-iso-modification(7) to configure the upgrade medium:
tix-iso-liveconfig --autoupgrade=autoupgrade.conf liveconfig tix-iso-bootconfig \ --liveconfig=liveconfig --default=1 --random-seed \ bootconfig tix-iso-add sortix.iso bootconfig -o autosortix.iso
The resulting autosortix.iso image will then automatically upgrade the operating system on whatever machine it is booted on.
SEE ALSO
autoinstall.conf(5), upgrade.conf(5), release-iso-modification(7), upgrade(7), sysupgrade(8), tix(8)
April 23, 2023 | Sortix 1.1.0-dev |