]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - nixops/modules/websites/tools/diaspora/default.nix
Upgrade diaspora to latest version
[perso/Immae/Config/Nix.git] / nixops / modules / websites / tools / diaspora / default.nix
index 8d62c7e3f798830faf963d250475c2802a7c87ba..7a2af975e2179d5659ce437b079da8cf0ebf2696 100644 (file)
@@ -1,10 +1,11 @@
-{ lib, pkgs, config, myconfig, mylibs, ... }:
+{ lib, pkgs, pkgsPrevious, config, myconfig, mylibs, ... }:
 let
-  diaspora = pkgs.callPackage ./diaspora.nix {
+  diaspora = pkgsPrevious.callPackage ./diaspora.nix {
     inherit (mylibs) fetchedGithub;
     env = myconfig.env.tools.diaspora;
   };
 
+  root = "/run/current-system/webapps/tools_diaspora";
   cfg = config.services.myWebsites.tools.diaspora;
 in {
   options.services.myWebsites.tools.diaspora = {
@@ -20,7 +21,7 @@ in {
       uid = config.ids.uids.diaspora;
       group = "diaspora";
       description = "Diaspora user";
-      home = diaspora.railsRoot;
+      home = diaspora.varDir;
       useDefaultShell = true;
       packages = [ diaspora.gems pkgs.nodejs diaspora.gems.ruby ];
     };
@@ -77,22 +78,21 @@ in {
     };
 
     services.myWebsites.tools.modules = [
-      "headers" "proxy" "proxy_http" "proxy_balancer"
-      "lbmethod_byrequests" "lbmethod_bytraffic" "lbmethod_bybusyness" "lbmethod_heartbeat"
+      "headers" "proxy" "proxy_http"
     ];
     security.acme.certs."eldiron".extraDomains."diaspora.immae.eu" = null;
+    system.extraSystemBuilderCmds = ''
+      mkdir -p $out/webapps
+      ln -s ${diaspora.railsRoot}/public/ $out/webapps/tools_diaspora
+      '';
     services.myWebsites.tools.vhostConfs.diaspora = {
       certName    = "eldiron";
       hosts       = [ "diaspora.immae.eu" ];
-      root        = "${diaspora.railsRoot}/public/";
+      root        = root;
       extraConfig = [ ''
         RewriteEngine On
         RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
-        RewriteRule ^/(.*)$ balancer://thinservers%{REQUEST_URI} [P,QSA,L]
-
-        <Proxy balancer://thinservers>
-            BalancerMember unix://${diaspora.railsSocket}|http://
-        </Proxy>
+        RewriteRule ^/(.*)$ unix://${diaspora.railsSocket}|http://diaspora.immae.eu/%{REQUEST_URI} [P,NE,QSA,L]
 
         ProxyRequests Off
         ProxyVia On
@@ -103,7 +103,7 @@ in {
             Require all granted
         </Proxy>
 
-        <Directory ${diaspora.railsRoot}/public>
+        <Directory ${root}>
             Require all granted
             Options -MultiViews
         </Directory>