snapper: increase snapshot lifetime, except for lappy
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./fs.nix
|
./fs.nix
|
||||||
@@ -30,18 +30,10 @@
|
|||||||
# 1024 solves *most* crackles, but still noticable under heavier loads.
|
# 1024 solves *most* crackles, but still noticable under heavier loads.
|
||||||
sane.programs.pipewire.config.min-quantum = 2048;
|
sane.programs.pipewire.config.min-quantum = 2048;
|
||||||
|
|
||||||
# TODO: enable snapper (need to make `/nix` or `/nix/persist` a subvolume, somehow).
|
# limit how many snapshots we keep, due to extremely limited disk space (TODO: remove this override after upgrading lappy hard drive)
|
||||||
# default config: https://man.archlinux.org/man/snapper-configs.5
|
services.snapper.configs.root.TIMELINE_LIMIT_HOURLY = lib.mkForce 2;
|
||||||
# defaults to something like:
|
services.snapper.configs.root.TIMELINE_LIMIT_DAILY = lib.mkForce 2;
|
||||||
# - hourly snapshots
|
services.snapper.configs.root.TIMELINE_LIMIT_WEEKLY = lib.mkForce 0;
|
||||||
# - auto cleanup; keep the last 10 hourlies, last 10 daylies, last 10 monthlys.
|
services.snapper.configs.root.TIMELINE_LIMIT_MONTHLY = lib.mkForce 0;
|
||||||
# to list snapshots: `sudo snapper --config nix list`
|
services.snapper.configs.root.TIMELINE_LIMIT_YEARLY = lib.mkForce 0;
|
||||||
# to take a snapshot: `sudo snapper --config nix create`
|
|
||||||
# services.snapper.configs.nix = {
|
|
||||||
# # TODO: for the impermanent setup, we'd prefer to just do /nix/persist,
|
|
||||||
# # but that also requires setting up the persist dir as a subvol
|
|
||||||
# SUBVOLUME = "/nix";
|
|
||||||
# # TODO: ALLOW_USERS doesn't seem to work. still need `sudo snapper -c nix list`
|
|
||||||
# ALLOW_USERS = [ "colin" ];
|
|
||||||
# };
|
|
||||||
}
|
}
|
||||||
|
@@ -21,18 +21,11 @@
|
|||||||
TIMELINE_CLEANUP = true; # remove old snapshots every 24h
|
TIMELINE_CLEANUP = true; # remove old snapshots every 24h
|
||||||
TIMELINE_CREATE = true; # take a snapshot every hour
|
TIMELINE_CREATE = true; # take a snapshot every hour
|
||||||
|
|
||||||
TIMELINE_LIMIT_HOURLY = 2;
|
TIMELINE_LIMIT_HOURLY = 12;
|
||||||
TIMELINE_LIMIT_DAILY = 2;
|
TIMELINE_LIMIT_DAILY = 7; # keep snapshots for 1d ago, 2d ago, ... 7day ago
|
||||||
TIMELINE_LIMIT_WEEKLY = 0;
|
TIMELINE_LIMIT_WEEKLY = 4; # keep snapshots for 7d ago, 14d ago, 21d ago, 28d ago
|
||||||
TIMELINE_LIMIT_MONTHLY = 0;
|
TIMELINE_LIMIT_MONTHLY = 0;
|
||||||
TIMELINE_LIMIT_YEARLY = 0;
|
TIMELINE_LIMIT_YEARLY = 0;
|
||||||
|
|
||||||
# TODO: enable these better settings, but i need higher capacity drives first!
|
|
||||||
# TIMELINE_LIMIT_HOURLY = 12;
|
|
||||||
# TIMELINE_LIMIT_DAILY = 7; # keep snapshots for 1d ago, 2d ago, ... 7day ago
|
|
||||||
# TIMELINE_LIMIT_WEEKLY = 4; # keep snapshots for 7d ago, 14d ago, 21d ago, 28d ago
|
|
||||||
# TIMELINE_LIMIT_MONTHLY = 0;
|
|
||||||
# TIMELINE_LIMIT_YEARLY = 0;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.snapper.cleanupInterval = "2h"; # how frequently to gc snapshots no longer covered by the above policy (default: daily)
|
services.snapper.cleanupInterval = "2h"; # how frequently to gc snapshots no longer covered by the above policy (default: daily)
|
||||||
|
Reference in New Issue
Block a user