]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - flakes/mypackages/pkgs/webapps/spip/default.nix
Squash changes containing private information
[perso/Immae/Config/Nix.git] / flakes / mypackages / pkgs / webapps / spip / default.nix
diff --git a/flakes/mypackages/pkgs/webapps/spip/default.nix b/flakes/mypackages/pkgs/webapps/spip/default.nix
new file mode 100644 (file)
index 0000000..20d5c8c
--- /dev/null
@@ -0,0 +1,32 @@
+{ siteName ? "spip"
+, siteDir ? runCommand "empty" { preferLocalBuild = true; } "mkdir -p $out"
+, environment ? "prod"
+, ldap ? false
+, varDir ? "/var/lib/${siteName}_${environment}"
+, lib, fetchzip, runCommand, stdenv }:
+let
+  app = stdenv.mkDerivation rec {
+    name = "${siteName}-${environment}-spip-${version}";
+    version = "3.2.7";
+    src = fetchzip {
+      url = "https://files.spip.net/spip/archives/SPIP-v${version}.zip";
+      sha256 = "0n4kc95nhn524zbb11bpfjs965pm4v026s3m3q44pl8nyms91r33";
+    };
+    paches = lib.optionals ldap [ ./spip_ldap_patch.patch ];
+    buildPhase = ''
+      rm -rf IMG local tmp config/remove.txt
+      ln -sf ${./spip_mes_options.php} config/mes_options.php
+      echo "Require all denied" > "config/.htaccess"
+      ln -sf ${varDir}/{IMG,local} .
+    '';
+    installPhase = ''
+      cp -a . $out
+      cp -a ${siteDir}/* $out
+    '';
+    passthru = {
+      inherit siteName siteDir environment varDir;
+      webRoot = app;
+      spipConfig = ./spip_mes_options.php;
+    };
+  };
+in app