From 97e023ee468d7a0a9498d6ddc1e38d64a975617c Mon Sep 17 00:00:00 2001 From: hygienic-books Date: Wed, 16 Sep 2026 09:05:24 +0200 Subject: [PATCH] build(conf): add snapshot runtime defaults Provide a deployable configuration with the default retention limits, important package expression, dataset selection behavior, and snapshot name formatting parameters. Expose explicit recursive roots for installations such as bpool and rpool, while retaining property-based selection as the default behavior. Document operation suffixes for installs, removals, upgrades, downgrades, and mixed APT callbacks through configuration values. --- apt-zfs-snapshot.conf | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 apt-zfs-snapshot.conf diff --git a/apt-zfs-snapshot.conf b/apt-zfs-snapshot.conf new file mode 100644 index 0000000..900afe4 --- /dev/null +++ b/apt-zfs-snapshot.conf @@ -0,0 +1,34 @@ +# Set true to print planned snapshots without creating or destroying anything. +dry_run='false' + +# Exact package-name regular expression (without the surrounding ^ and $) for +# packages whose snapshots use the important retention chain. +important_names='linux-image(-.*)?|linux-headers(-.*)?|systemd|zfs-(dkms|utils)' + +# Number of snapshots retained in each chain. +snapshots_trivial_keep='25' +snapshots_important_keep='10' +trivial_suffix='trv' +important_suffix='imp' + +# Maximum number of package-list characters in a snapshot name. A package list +# is shortened by dropping complete names from the end first, then truncating +# the final remaining name and adding ... when at least four characters fit. +packages_max_length='30' + +# When true, only mounted ZFS datasets are selected. Set snapshot_roots to an +# explicit space-separated list to bypass property discovery and mount checks. +snap_only_local_datasets='true' +snapshot_roots='' + +# Snapshot name formatting. +field_separator='_' +package_separator=':' +snapshot_prefix='apt' +date_format='%F-%H%M' +timezone='Etc/UTC' +install_suffix='inst' +remove_suffix='rmvl' +upgrade_suffix='upgr' +downgrade_suffix='down' +mixed_suffix='mixd'