]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - pkgs/private/webapps/piedsjaloux/default.nix
Add piedsjaloux to pkgs
[perso/Immae/Config/Nix.git] / pkgs / private / webapps / piedsjaloux / default.nix
diff --git a/pkgs/private/webapps/piedsjaloux/default.nix b/pkgs/private/webapps/piedsjaloux/default.nix
new file mode 100644 (file)
index 0000000..f5370db
--- /dev/null
@@ -0,0 +1,27 @@
+{ environment ? "prod"
+, varDir ? "/var/lib/piedsjaloux_${environment}"
+, composerEnv, fetchurl, fetchgit, mylibs }:
+let
+  app = composerEnv.buildPackage (
+    import ./php-packages.nix { inherit composerEnv fetchurl fetchgit; } //
+    mylibs.fetchedGitPrivate ./piedsjaloux.json //
+    rec {
+      noDev = (environment == "prod");
+      preInstall = ''
+        export SYMFONY_ENV="${environment}"
+        '';
+      # /!\ miniatures and data need to be in the same physical dir due to a
+      #     bug in leapt.im (searches for data/../miniatures)
+      postInstall = ''
+        cd $out
+        rm app/config/parameters.yml
+        ln -sf /var/secrets/webapps/${environment}-piedsjaloux app/config/parameters.yml
+        rm -rf var/{logs,cache,data,miniatures,tmp}
+        ln -sf ${varDir}/{logs,cache,data,miniatures,tmp} var/
+        '';
+        passthru = {
+          inherit varDir environment;
+          webRoot = "${app}/web";
+      };
+    });
+in app