From ed89d043dc86dc76b6f6df02f8db1153f8719b54 Mon Sep 17 00:00:00 2001 From: Edmund Wu Date: Sun, 16 Aug 2020 12:16:34 -0400 Subject: [PATCH 1/4] nixos/kresd: remove derivation from systemd.tmpfiles Using per-unit directives as per https://github.com/NixOS/nixpkgs/pull/95222#issuecomment-674512571 --- nixos/modules/services/networking/kresd.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/nixos/modules/services/networking/kresd.nix b/nixos/modules/services/networking/kresd.nix index 26ddd4e811ed..17c229581fba 100644 --- a/nixos/modules/services/networking/kresd.nix +++ b/nixos/modules/services/networking/kresd.nix @@ -134,8 +134,6 @@ in { CacheDirectoryMode = "0750"; }; - systemd.tmpfiles.packages = [ package ]; - # Try cleaning up the previously default location of cache file. # Note that /var/cache/* should always be safe to remove. # TODO: remove later, probably between 20.09 and 21.03 From 1a6240bde4a63f2aa8ab56cfdfdce29e69b9481b Mon Sep 17 00:00:00 2001 From: Edmund Wu Date: Sun, 16 Aug 2020 12:16:30 -0400 Subject: [PATCH 2/4] nixos/kresd: fix CacheDirectory permissions as per tmpfiles --- nixos/modules/services/networking/kresd.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/networking/kresd.nix b/nixos/modules/services/networking/kresd.nix index 17c229581fba..06c63361e1d7 100644 --- a/nixos/modules/services/networking/kresd.nix +++ b/nixos/modules/services/networking/kresd.nix @@ -129,9 +129,9 @@ in { systemd.services."kresd@".serviceConfig = { ExecStart = "${package}/bin/kresd --noninteractive " + "-c ${package}/lib/knot-resolver/distro-preconfig.lua -c ${configFile}"; - # Ensure correct ownership in case UID or GID changes. + # Ensure /var/cache/knot-resolver exists CacheDirectory = "knot-resolver"; - CacheDirectoryMode = "0750"; + CacheDirectoryMode = "0770"; }; # Try cleaning up the previously default location of cache file. From 6c67af2facd02d43a70fba2d6c1932988707f0be Mon Sep 17 00:00:00 2001 From: Edmund Wu Date: Mon, 10 Aug 2020 14:11:27 -0400 Subject: [PATCH 3/4] nixos/kresd: ensure /var/lib/knot-resolver exists --- nixos/modules/services/networking/kresd.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/modules/services/networking/kresd.nix b/nixos/modules/services/networking/kresd.nix index 06c63361e1d7..5403a0a06583 100644 --- a/nixos/modules/services/networking/kresd.nix +++ b/nixos/modules/services/networking/kresd.nix @@ -129,6 +129,9 @@ in { systemd.services."kresd@".serviceConfig = { ExecStart = "${package}/bin/kresd --noninteractive " + "-c ${package}/lib/knot-resolver/distro-preconfig.lua -c ${configFile}"; + # Ensure /var/lib/knot-resolver exists + StateDirectory = "knot-resolver"; + StateDirectoryMode = "0770"; # Ensure /var/cache/knot-resolver exists CacheDirectory = "knot-resolver"; CacheDirectoryMode = "0770"; From 68366adf3c3020a7323ae8197da2b156f5112ab1 Mon Sep 17 00:00:00 2001 From: Edmund Wu Date: Mon, 10 Aug 2020 14:21:49 -0400 Subject: [PATCH 4/4] nixos/kresd: ensure /run/knot-resolver exists --- nixos/modules/services/networking/kresd.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/modules/services/networking/kresd.nix b/nixos/modules/services/networking/kresd.nix index 5403a0a06583..ccb34163d5f3 100644 --- a/nixos/modules/services/networking/kresd.nix +++ b/nixos/modules/services/networking/kresd.nix @@ -129,6 +129,9 @@ in { systemd.services."kresd@".serviceConfig = { ExecStart = "${package}/bin/kresd --noninteractive " + "-c ${package}/lib/knot-resolver/distro-preconfig.lua -c ${configFile}"; + # Ensure /run/knot-resolver exists + RuntimeDirectory = "knot-resolver"; + RuntimeDirectoryMode = "0770"; # Ensure /var/lib/knot-resolver exists StateDirectory = "knot-resolver"; StateDirectoryMode = "0770";