about summary refs log tree commit diff
path: root/nixos/modules/services/web-apps
diff options
context:
space:
mode:
authorPol Dellaiera <pol.dellaiera@protonmail.com>2023-10-27 01:36:34 +0200
committerGitHub <noreply@github.com>2023-10-27 01:36:34 +0200
commitaaccf42b1b42702e2dd83ad8f6bda1262b12a221 (patch)
tree05d5b5d9d37616fbdc9b23bbe48669257c9c765e /nixos/modules/services/web-apps
parent99be59bae8b3ee7bb23c66d6a2476a8e81592a45 (diff)
parentd91c530a552cad849b1cb1dedc7209933c115cb3 (diff)
downloadnixlib-aaccf42b1b42702e2dd83ad8f6bda1262b12a221.tar
nixlib-aaccf42b1b42702e2dd83ad8f6bda1262b12a221.tar.gz
nixlib-aaccf42b1b42702e2dd83ad8f6bda1262b12a221.tar.bz2
nixlib-aaccf42b1b42702e2dd83ad8f6bda1262b12a221.tar.lz
nixlib-aaccf42b1b42702e2dd83ad8f6bda1262b12a221.tar.xz
nixlib-aaccf42b1b42702e2dd83ad8f6bda1262b12a221.tar.zst
nixlib-aaccf42b1b42702e2dd83ad8f6bda1262b12a221.zip
Merge pull request #261432 from yayayayaka/snipe-it-convert-to-buildComposerProject
snipe-it: convert to buildComposerProject
Diffstat (limited to 'nixos/modules/services/web-apps')
-rw-r--r--nixos/modules/services/web-apps/snipe-it.nix16
1 files changed, 10 insertions, 6 deletions
diff --git a/nixos/modules/services/web-apps/snipe-it.nix b/nixos/modules/services/web-apps/snipe-it.nix
index 9cba5cb4fa9e..4fbf2bad750b 100644
--- a/nixos/modules/services/web-apps/snipe-it.nix
+++ b/nixos/modules/services/web-apps/snipe-it.nix
@@ -18,15 +18,19 @@ let
   inherit (snipe-it.passthru) phpPackage;
 
   # shell script for local administration
-  artisan = pkgs.writeScriptBin "snipe-it" ''
+  artisan = (pkgs.writeScriptBin "snipe-it" ''
     #! ${pkgs.runtimeShell}
-    cd ${snipe-it}
+    cd "${snipe-it}/share/php/snipe-it"
     sudo=exec
     if [[ "$USER" != ${user} ]]; then
       sudo='exec /run/wrappers/bin/sudo -u ${user}'
     fi
     $sudo ${phpPackage}/bin/php artisan $*
-  '';
+  '').overrideAttrs (old: {
+    meta = old.meta // {
+      mainProgram = "snipe-it";
+    };
+  });
 in {
   options.services.snipe-it = {
 
@@ -357,7 +361,7 @@ in {
     services.nginx = {
       enable = mkDefault true;
       virtualHosts."${cfg.hostName}" = mkMerge [ cfg.nginx {
-        root = mkForce "${snipe-it}/public";
+        root = mkForce "${snipe-it}/share/php/snipe-it/public";
         extraConfig = optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "fastcgi_param HTTPS on;";
         locations = {
           "/" = {
@@ -394,7 +398,7 @@ in {
         RuntimeDirectory = "snipe-it/cache";
         RuntimeDirectoryMode = "0700";
       };
-      path = [ pkgs.replace-secret ];
+      path = [ pkgs.replace-secret artisan ];
       script =
         let
           isSecret  = v: isAttrs v && v ? _secret && (isString v._secret || builtins.isPath v._secret);
@@ -451,7 +455,7 @@ in {
           rm "${cfg.dataDir}"/bootstrap/cache/*.php || true
 
           # migrate db
-          ${phpPackage}/bin/php artisan migrate --force
+          ${lib.getExe artisan} migrate --force
 
           # A placeholder file for invalid barcodes
           invalid_barcode_location="${cfg.dataDir}/public/uploads/barcodes/invalid_barcode.gif"