From cfc967fac9f245274d4f5e468e0fb3479039f39f Mon Sep 17 00:00:00 2001 From: kurogeek Date: Tue, 20 Jan 2026 14:22:02 +0700 Subject: [PATCH] fix think-backend upload and get avartar image --- modules/nixos/think-backend-gtcm.nix | 15 +++++++++++++-- modules/nixos/think-gtcm.nix | 12 +++++++++++- pkgs/think-backend-gtcm.nix | 4 ++++ pkgs/think-gtcm.nix | 4 ++++ 4 files changed, 32 insertions(+), 3 deletions(-) diff --git a/modules/nixos/think-backend-gtcm.nix b/modules/nixos/think-backend-gtcm.nix index 2079c1e..599c8ac 100644 --- a/modules/nixos/think-backend-gtcm.nix +++ b/modules/nixos/think-backend-gtcm.nix @@ -263,6 +263,7 @@ in # migrate & seed db ${lib.getExe php} artisan key:generate --force ${lib.getExe php} artisan migrate --force + ${lib.getExe php} artisan storage:link ${lib.getExe php} artisan config:cache ''; }; @@ -270,8 +271,8 @@ in systemd.tmpfiles.rules = [ "d ${cfg.dataDir} 0710 ${cfg.user} ${cfg.group} - -" "d ${cfg.dataDir}/cache 0700 ${cfg.user} ${cfg.group} - -" - "d ${cfg.dataDir}/public 0750 ${cfg.user} ${cfg.group} - -" - "d ${cfg.dataDir}/public/uploads 0750 ${cfg.user} ${cfg.group} - -" + "d ${cfg.dataDir}/public 0755 ${cfg.user} ${cfg.group} - -" + "d ${cfg.dataDir}/public/uploads 0755 ${cfg.user} ${cfg.group} - -" "d ${cfg.dataDir}/storage 0700 ${cfg.user} ${cfg.group} - -" "d ${cfg.dataDir}/storage/app 0700 ${cfg.user} ${cfg.group} - -" "d ${cfg.dataDir}/storage/fonts 0700 ${cfg.user} ${cfg.group} - -" @@ -304,6 +305,16 @@ in index = "index.php"; tryFiles = "$uri $uri/ /index.php?$query_string"; }; + "/uploads" = { + root = "${cfg.dataDir}/public/uploads"; + index = "index.php index.html"; + tryFiles = "$uri $uri/ /index.php"; + }; + "/storage" = { + root = "${cfg.dataDir}/public/storage"; + index = "index.php index.html"; + tryFiles = "$uri $uri/ /index.php"; + }; "~ \\.php$".extraConfig = '' fastcgi_pass unix:${config.services.phpfpm.pools."think-backend-gtcm".socket}; ''; diff --git a/modules/nixos/think-gtcm.nix b/modules/nixos/think-gtcm.nix index e868fbb..be1de12 100644 --- a/modules/nixos/think-gtcm.nix +++ b/modules/nixos/think-gtcm.nix @@ -228,6 +228,7 @@ in # migrate & seed db ${lib.getExe php} artisan key:generate --force ${lib.getExe php} artisan migrate --force + ${lib.getExe php} artisan storage:link ${lib.getExe php} artisan config:cache ''; }; @@ -267,7 +268,16 @@ in index = "index.php"; tryFiles = "$uri $uri/ /index.php?$query_string"; }; - + "/uploads" = { + root = "${cfg.dataDir}/public/uploads"; + index = "index.php index.html"; + tryFiles = "$uri $uri/ /index.php"; + }; + "/storage" = { + root = "${cfg.dataDir}/public/storage"; + index = "index.php index.html"; + tryFiles = "$uri $uri/ /index.php"; + }; "~ \\.php$".extraConfig = '' fastcgi_pass unix:${config.services.phpfpm.pools."think-gtcm".socket}; ''; diff --git a/pkgs/think-backend-gtcm.nix b/pkgs/think-backend-gtcm.nix index 4d6f5ea..151c720 100644 --- a/pkgs/think-backend-gtcm.nix +++ b/pkgs/think-backend-gtcm.nix @@ -21,9 +21,13 @@ php.buildComposerProject2 (finalAttrs: { runHook preInstall mkdir -p $out cp -R * $out + rm -rf $out/storage + ln -s ${dataDir}/.env $out/.env ln -s ${dataDir}/storage $out/storage + ln -s ${dataDir}/public/storage $out/public/storage + ln -s ${dataDir}/public/uploads $out/public/uploads runHook postInstall ''; diff --git a/pkgs/think-gtcm.nix b/pkgs/think-gtcm.nix index b8858e9..ec59a88 100644 --- a/pkgs/think-gtcm.nix +++ b/pkgs/think-gtcm.nix @@ -21,9 +21,13 @@ php.buildComposerProject2 (finalAttrs: { runHook preInstall mkdir -p $out cp -R * $out + rm -rf $out/storage + ln -s ${dataDir}/.env $out/.env ln -s ${dataDir}/storage $out/storage + ln -s ${dataDir}/public/storage $out/public/storage + ln -s ${dataDir}/public/uploads $out/public/uploads runHook postInstall '';