zfs-pacman-hook/pacman-zfs-snapshot.conf

58 lines
2.6 KiB
Plaintext
Raw Normal View History

# Set to 'true' to do nothing and just print messages during pacman
# operations. Helpful to get a feel for what these hooks do. This defaults
# to 'false' so if you set this to an empty string or remove or uncomment it
# in this conf file it'll equal 'false'.
do_dry_run='false'
# Pipe-separated list of package names we consider important. Will be
# matched against regular expression ^(this_var_here)$. Snapshots taken
# before a pacman transaction on an important package have a separate
# retention from snapshots for trivial packages. Lends itself to keeping
# high-risk updates separate from everything else.
important_names='linux(-zen)?(-headers)?|systemd|zfs-(linux(-zen)?|dkms|utils)'
2023-03-05 08:15:16 +01:00
# Number snapshots to keep
snaps_trivial_keep='25'
snaps_important_keep='10'
2023-03-05 08:15:16 +01:00
# Which suffix to use in snapshot names to identify snapshots before a
# trivial pacman operation and before important pacman operations.
2023-03-05 08:15:16 +01:00
snaps_trivial_suffix='trv'
snaps_important_suffix='imp'
# Snapshot name will contain list of affected packages trimmed to this many
# max characters.
pkgs_list_max_length='30'
# Hook will by default snapshot all datasets that have the property
# 'space.quico:auto-snapshot=true' set, even the ones that are not currently
# mounted and may belong to unrelated operating systems. Set
# snap_only_local_datasets='true' to limit snapshots to only those datasets
# that have aforementioned property and at the same time are currently
# mounted in your running OS. Currently mounted is defined as:
# findmnt --json --list --output 'fstype,source,target' | \
# jq --raw-output '.[][] | select(.fstype=="zfs") | .source'
snap_only_local_datasets='true'
# Which characters do we want to use to separate snapshot name fields
snap_field_separator='_'
# Prefix all our snapshots with this string to keep them separate from
# snapshots done by any other means
snap_name_prefix='pacman'
# We do "$(date +<whatever>)" to put a timestamp into snapshot names.
# Defaults to "$(date +'%F-%H%M')" which returns '2023-03-07-0050'.
2023-03-06 03:02:02 +01:00
snap_date_format='%F-%H%M'
# The tzdata-formatted timezone name used to add timestamps to snapshot
# names. Check for example 'timedatectl list-timezones' to get a list of
# valid names on your system. Format looks like 'America/Fortaleza',
# 'Asia/Magadan' or 'Australia/Sydney'. Defaults to 'Etc/UTC'. Can also be
# the empty string (as in snap_timezone='') in which case we'll use your
# system's timezone setting.
snap_timezone='Etc/UTC'
# Which strings do we want to diffferentiate pacman operations Install,
# Remove, Upgrade
snap_op_installation_suffix='inst'
snap_op_remove_suffix='rmvl'
snap_op_upgrade_suffix='upgr'