From 29d46eac376b0bae76a6a2593aca1495b1e7baf9 Mon Sep 17 00:00:00 2001 From: zzzsyyy Date: Sun, 19 May 2024 23:09:20 +0800 Subject: [PATCH 1/4] linux_xanmod: 6.6.30 -> 6.6.31 (cherry picked from commit 1d3e6733771b05b8e0c65fa8d107b04c6ec8d414) --- pkgs/os-specific/linux/kernel/xanmod-kernels.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix index de33ff75d82f..ee2dfda8f8f1 100644 --- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix +++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix @@ -6,8 +6,8 @@ let # NOTE: When updating these, please also take a look at the changes done to # kernel config in the xanmod version commit ltsVariant = { - version = "6.6.30"; - hash = "sha256-fQATjYekxV/+24mqyel3bYfgUMN4NhOHR9yyL6L5bl0="; + version = "6.6.31"; + hash = "sha256-Hs2DjNG7mj4qb1P0u7XAgrNizx8oqs1ot563IvRKnhU="; variant = "lts"; }; From da0cee73c5f1bb9081eb9743ea45efe167dcbbe3 Mon Sep 17 00:00:00 2001 From: zzzsyyy Date: Sun, 19 May 2024 23:20:07 +0800 Subject: [PATCH 2/4] linux_xanmod_latest: 6.8.9 -> 6.8.10 (cherry picked from commit dd1fc0955d0b69246d9b6aa5b22b7cfffd2e9fb1) --- pkgs/os-specific/linux/kernel/xanmod-kernels.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix index ee2dfda8f8f1..971a5039e846 100644 --- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix +++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix @@ -12,8 +12,8 @@ let }; mainVariant = { - version = "6.8.9"; - hash = "sha256-OUlT/fiwLGTPnr/7gneyZBio/l8KAWopcJqTpSjBMl0="; + version = "6.8.10"; + hash = "sha256-lGzZThINyeZrMBDaGVujXB+DzIdfFBo7Z/Bhyj21I2g="; variant = "main"; }; From 5db56f261fdefdf29cd23fd769afa9f9e8221d3a Mon Sep 17 00:00:00 2001 From: zzzsyyy Date: Sun, 19 May 2024 23:25:19 +0800 Subject: [PATCH 3/4] xanmod-kernels: enable writeback throttling by default follows commit https://gitlab.com/xanmod/linux/-/commit/c4933254169ad0cfc9164ed262361b9d50439e06 (cherry picked from commit 57f37e2c8c5ccd4780e234bd2b8ff55de44cf3ad) --- pkgs/os-specific/linux/kernel/xanmod-kernels.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix index 971a5039e846..3135eefab984 100644 --- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix +++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix @@ -45,9 +45,6 @@ let HZ = freeform "250"; HZ_250 = yes; HZ_1000 = no; - - # Disable writeback throttling by default - BLK_WBT_MQ = lib.mkOverride 60 no; }; extraMeta = { From 81985918248d631712b5d6bf2c00018fb1136816 Mon Sep 17 00:00:00 2001 From: Matt Kline Date: Thu, 25 Apr 2024 21:26:44 -0700 Subject: [PATCH 4/4] nixos/snapper: Add persistentTimer option to config Defaults to false, but allows users to enable it for machines that aren't on persistently (e.g., laptops, home PCs). Backport of #306909 (cherry picked from commit ff0f4540c088913db38d9a5006b4a85e768c9ae5) --- nixos/modules/services/misc/snapper.nix | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/misc/snapper.nix b/nixos/modules/services/misc/snapper.nix index 569433c3c71d..4dd6a2d76ee1 100644 --- a/nixos/modules/services/misc/snapper.nix +++ b/nixos/modules/services/misc/snapper.nix @@ -103,6 +103,18 @@ in ''; }; + persistentTimer = mkOption { + default = false; + type = types.bool; + example = true; + description = '' + Set the `persistentTimer` option for the + {manpage}`systemd.timer(5)` + which triggers the snapshot immediately if the last trigger + was missed (e.g. if the system was powered down). + ''; + }; + cleanupInterval = mkOption { type = types.str; default = "1d"; @@ -198,7 +210,14 @@ in inherit documentation; requires = [ "local-fs.target" ]; serviceConfig.ExecStart = "${pkgs.snapper}/lib/snapper/systemd-helper --timeline"; - startAt = cfg.snapshotInterval; + }; + + systemd.timers.snapper-timeline = { + wantedBy = [ "timers.target" ]; + timerConfig = { + Persistent = cfg.persistentTimer; + OnCalendar = cfg.snapshotInterval; + }; }; systemd.services.snapper-cleanup = {