about summary refs log tree commit diff
path: root/nixos/modules/services
diff options
context:
space:
mode:
authorAustin Seipp <aseipp@pobox.com>2014-05-14 14:57:36 -0500
committerAustin Seipp <aseipp@pobox.com>2014-05-14 14:57:36 -0500
commit2558fa587bd1d71de5de089df1bbcff5b0254c03 (patch)
treead4a706a5d0b75fcc4cbf4c36e77fa49f8890d71 /nixos/modules/services
parentaaf7f570c16bbffcb8d556bfd41365e908554847 (diff)
parent25e0d51a6793a5773227bda92ae494b73c8df624 (diff)
downloadnixlib-2558fa587bd1d71de5de089df1bbcff5b0254c03.tar
nixlib-2558fa587bd1d71de5de089df1bbcff5b0254c03.tar.gz
nixlib-2558fa587bd1d71de5de089df1bbcff5b0254c03.tar.bz2
nixlib-2558fa587bd1d71de5de089df1bbcff5b0254c03.tar.lz
nixlib-2558fa587bd1d71de5de089df1bbcff5b0254c03.tar.xz
nixlib-2558fa587bd1d71de5de089df1bbcff5b0254c03.tar.zst
nixlib-2558fa587bd1d71de5de089df1bbcff5b0254c03.zip
Merge pull request #2629 from letac/master
Phabricator, a web application, snapshot of 2014-05-12
Diffstat (limited to 'nixos/modules/services')
-rw-r--r--nixos/modules/services/web-servers/apache-httpd/phabricator.nix41
1 files changed, 41 insertions, 0 deletions
diff --git a/nixos/modules/services/web-servers/apache-httpd/phabricator.nix b/nixos/modules/services/web-servers/apache-httpd/phabricator.nix
new file mode 100644
index 000000000000..c7a9bdf68c56
--- /dev/null
+++ b/nixos/modules/services/web-servers/apache-httpd/phabricator.nix
@@ -0,0 +1,41 @@
+{ config, lib, pkgs, ... }:
+let
+  phabricatorRoot = pkgs.stdenv.mkDerivation rec {
+    version = "2014-05-12";
+    name = "phabricator-${version}";
+    srcLibphutil = pkgs.fetchgit {
+        url = git://github.com/facebook/libphutil.git;
+        rev = "2f3b5a1cf6ea464a0250d4b1c653a795a90d2716";
+        sha256 = "9598cec400984dc149162f1e648814a54ea0cd34fcd529973dc83f5486fdd9fd";
+    };
+    srcArcanist = pkgs.fetchgit {
+        url = git://github.com/facebook/arcanist.git;
+        rev = "54c377448db8dbc40f0ca86d43c837d30e493485";
+        sha256 = "086db3c0d1154fbad23e7c6def31fd913384ee20247b329515838b669c3028e0";
+    };
+    srcPhabricator = pkgs.fetchgit {
+        url = git://github.com/facebook/phabricator.git;
+        rev = "1644ef185ecf1e9fca3eb6b16351ef46b19d110f";
+        sha256 = "e1135e4ba76d53f48aad4161563035414ed7e878f39a8a34a875a01b41b2a084";
+    };
+    
+    buildCommand = ''
+      mkdir -p $out
+      cp -R ${srcLibphutil} $out/libphutil
+      cp -R ${srcArcanist} $out/arcanist
+      cp -R ${srcPhabricator} $out/phabricator
+    '';
+  };
+in {
+  enablePHP = true;
+  extraApacheModules = [ "mod_rewrite" ];
+  DocumentRoot = "${phabricatorRoot}/phabricator/webroot";
+  extraConfig = ''
+      DocumentRoot ${phabricatorRoot}/phabricator/webroot
+
+      RewriteEngine on
+      RewriteRule ^/rsrc/(.*) - [L,QSA]
+      RewriteRule ^/favicon.ico - [L,QSA]
+      RewriteRule ^(.*)$ /index.php?__path__=$1 [B,L,QSA]
+  '';
+}