From 922c530087f04e5f076addf274628e0bd5d4d4da Mon Sep 17 00:00:00 2001 From: Alex James Date: Sat, 7 Oct 2023 18:59:24 -0500 Subject: [PATCH 1/2] transmission_4: fix web UI path in AppArmor rules The web UI directory was renamed from transmission/web in 3.00 [1] to transmission/public_html in 4.0.0 [2]. This change updates the AppArmor rules to fix the web UI when AppArmor is enabled. [1]: https://github.com/transmission/transmission/blob/3.00/libtransmission/platform.c#L627 [2]: https://github.com/transmission/transmission/blob/4.0.x/libtransmission/platform.cc#L324 --- pkgs/applications/networking/p2p/transmission/4.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/networking/p2p/transmission/4.nix b/pkgs/applications/networking/p2p/transmission/4.nix index 78f5b6cf2543..68a072687cc1 100644 --- a/pkgs/applications/networking/p2p/transmission/4.nix +++ b/pkgs/applications/networking/p2p/transmission/4.nix @@ -134,7 +134,7 @@ stdenv.mkDerivation (finalAttrs: { r @{PROC}/@{pid}/mounts, rwk /tmp/tr_session_id_*, - r $out/share/transmission/web/**, + r $out/share/transmission/public_html/**, include } From 71ab0b6c1c94fdc5d702bbe401bbf841f0d2257b Mon Sep 17 00:00:00 2001 From: Alex James Date: Sat, 7 Oct 2023 19:03:06 -0500 Subject: [PATCH 2/2] transmission_4: add option to allow additional paths in AppArmor rules This change adds an extraAppArmorPaths option to the transmission_4 derivation to allow additional read-only paths to be added to the ppArmor rules. This can be combined with the TRANSMISSION_WEB_HOME environment variable to override the web UI. --- pkgs/applications/networking/p2p/transmission/4.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/networking/p2p/transmission/4.nix b/pkgs/applications/networking/p2p/transmission/4.nix index 68a072687cc1..f6fc83b1f98b 100644 --- a/pkgs/applications/networking/p2p/transmission/4.nix +++ b/pkgs/applications/networking/p2p/transmission/4.nix @@ -35,6 +35,7 @@ , enableCli ? true , installLib ? false , apparmorRulesFromClosure +, extraAppArmorPaths ? [] }: stdenv.mkDerivation (finalAttrs: { @@ -135,6 +136,7 @@ stdenv.mkDerivation (finalAttrs: { rwk /tmp/tr_session_id_*, r $out/share/transmission/public_html/**, + ${lib.strings.concatMapStrings (x: "r ${x},\n") extraAppArmorPaths} include }