summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Hubrecht <tom@hubrecht.ovh>2023-06-05 20:49:16 +0200
committergithub-actions[bot] <github-actions[bot]@users.noreply.github.com>2023-06-12 10:00:05 +0000
commit105b720c19018765a5cb05f7f15f481266de97b7 (patch)
tree5fadc41068edfa49f74d91914bb207e5f553d1f7
parentcoqPackages.Verdi: 20211026 → 20230503 (diff)
downloadnixpkgs-origin/backport-236134-to-release-23.05.tar.gz
nixos/pixelfed: Fix missing permissions for nginx serving filesorigin/backport-236134-to-release-23.05
Also fixes the service `pixelfed-cron` StateDirectory and uses the nginx user instead of group to define nginx appartenance to pixelfed's group (cherry picked from commit 953ee5df829e7dc1e4d7823078c4f564365732e7)
-rw-r--r--nixos/modules/services/web-apps/pixelfed.nix8
1 files changed, 6 insertions, 2 deletions
diff --git a/nixos/modules/services/web-apps/pixelfed.nix b/nixos/modules/services/web-apps/pixelfed.nix
index 430a368650ec..b0c92aac979f 100644
--- a/nixos/modules/services/web-apps/pixelfed.nix
+++ b/nixos/modules/services/web-apps/pixelfed.nix
@@ -356,7 +356,8 @@ in {
ExecStart = "${pixelfed-manage}/bin/pixelfed-manage schedule:run";
User = user;
Group = group;
- StateDirectory = cfg.dataDir;
+ StateDirectory =
+ lib.mkIf (cfg.dataDir == "/var/lib/pixelfed") "pixelfed";
};
};
@@ -391,6 +392,9 @@ in {
rsync -av --no-perms ${pixelfed}/storage-static/ ${cfg.dataDir}/storage
chmod -R +w ${cfg.dataDir}/storage
+ chmod g+x ${cfg.dataDir}/storage ${cfg.dataDir}/storage/app
+ chmod -R g+rX ${cfg.dataDir}/storage/app/public
+
# Link the app.php in the runtime folder.
# We cannot link the cache folder only because bootstrap folder needs to be writeable.
ln -sf ${pixelfed}/bootstrap-static/app.php ${cfg.runtimeDir}/app.php
@@ -441,7 +445,7 @@ in {
];
# Enable NGINX to access our phpfpm-socket.
- users.users."${config.services.nginx.group}".extraGroups = [ cfg.group ];
+ users.users."${config.services.nginx.user}".extraGroups = [ cfg.group ];
services.nginx = mkIf (cfg.nginx != null) {
enable = true;
virtualHosts."${cfg.domain}" = mkMerge [