X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FConfig%2FNix.git;a=blobdiff_plain;f=modules%2Fprivate%2Fwebsites%2Fdefault.nix;h=90a8c1a837da6b91d69a5f2d49828b0c8d4dc616;hp=a3dcbb9c789a88d3afca424931bb95fd5bb348e8;hb=982dc1fabf71cc91ef4409848dd1952c7e6f479f;hpb=9271611c189a3ed4129d3b98422f86ab3f774f10 diff --git a/modules/private/websites/default.nix b/modules/private/websites/default.nix index a3dcbb9..90a8c1a 100644 --- a/modules/private/websites/default.nix +++ b/modules/private/websites/default.nix @@ -89,6 +89,14 @@ let }; makeModules = lib.lists.flatten (lib.attrsets.mapAttrsToList (n: v: v.modules or []) apacheConfig); makeExtraConfig = (builtins.filter (x: x != null) (lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) apacheConfig)); + moomin = let + lines = lib.splitString "\n" (lib.fileContents ./moomin.txt); + pad = width: str: let + padWidth = width - lib.stringLength str; + padding = lib.concatStrings (lib.genList (lib.const "0") padWidth); + in lib.optionalString (padWidth > 0) padding + str; + in + lib.imap0 (i: e: ''Header always set "X-Moomin-${pad 2 (builtins.toString i)}" "${e}"'') lines; in { options.myServices.websites.enable = lib.mkEnableOption "enable websites"; @@ -96,31 +104,11 @@ in config = lib.mkIf config.myServices.websites.enable { services.duplyBackup.profiles.php = { rootDir = "/var/lib/php"; + remotes = [ "eriomem" "ovh" ]; }; users.users.wwwrun.extraGroups = [ "keys" ]; networking.firewall.allowedTCPPorts = [ 80 443 ]; - nixpkgs.overlays = [ (self: super: rec { - #openssl = self.openssl_1_1; - php = php72; - php72 = (super.php72.override { - config.php.mysqlnd = true; - config.php.mysqli = false; - config.php.mhash = true; # Is it needed? - }).overrideAttrs(old: rec { - # Didn't manage to build with mysqli + mysql_config connector - configureFlags = old.configureFlags ++ [ - "--with-mysqli=shared,mysqlnd" - ]; - # preConfigure = (old.preConfigure or "") + '' - # export CPPFLAGS="$CPPFLAGS -I${pkgs.mariadb}/include/mysql/server"; - # sed -i -e 's/#include "mysqli_priv.h"/#include "mysqli_priv.h"\n#include /' \ - # ext/mysqli/mysqli.c ext/mysqli/mysqli_prop.c - # ''; - }); - phpPackages = super.php72Packages.override { inherit php; }; - }) ]; - secrets.keys = [{ dest = "apache-ldap"; user = "wwwrun"; @@ -148,7 +136,6 @@ in }; services.phpfpm = { - phpPackage = pkgs.php; phpOptions = '' session.save_path = "/var/lib/php/sessions" post_max_size = 20M @@ -191,7 +178,7 @@ in let ips = config.myEnv.servers.eldiron.ips.integration; in [ips.ip4] ++ (ips.ip6 or []); modules = makeModules; - extraConfig = makeExtraConfig; + extraConfig = makeExtraConfig ++ moomin; fallbackVhost = { certName = "eldiron"; hosts = ["eldiron.immae.eu" ]; @@ -242,6 +229,10 @@ in production.enable = true; }; + cip-ca = { + sympa.enable = true; + }; + connexionswing = { integration.enable = true; production.enable = true; @@ -250,6 +241,9 @@ in denise = { evariste.enable = true; denisejerome.enable = true; + oms.enable = true; + aventuriers.enable = true; + production.enable = true; }; emilia.moodle.enable = true; @@ -290,6 +284,8 @@ in maison_bbc.enable = true; }; + patrick_fodella.production.enable = true; + piedsjaloux = { integration.enable = true; production.enable = true; @@ -301,7 +297,9 @@ in telio_tortay.production.enable = true; + tools.assets.enable = true; tools.cloud.enable = true; + tools.commento.enable = true; tools.dav.enable = true; tools.db.enable = true; tools.diaspora.enable = true; @@ -310,6 +308,7 @@ in tools.mastodon.enable = true; tools.mediagoblin.enable = true; tools.peertube.enable = true; + tools.performance.enable = true; tools.tools.enable = true; tools.email.enable = true;