X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fwebsites%2Fdefault.nix;h=3d43b1108fab5f7ce4a7b91fbffb97ec811ee4f5;hb=8a05c7fb2e7aad81ce4eb31b5173f4dabf353e31;hp=e2bcef5269aac642ca39ecb4dff7ffe1134e4a8a;hpb=6a8252b11bb02f3e67857d5a9d733b1affa6a625;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/websites/default.nix b/modules/private/websites/default.nix index e2bcef5..3d43b11 100644 --- a/modules/private/websites/default.nix +++ b/modules/private/websites/default.nix @@ -1,4 +1,4 @@ -{ lib, pkgs, config, myconfig, ... }: +{ lib, pkgs, config, ... }: let www_root = "/run/current-system/webapps/_www"; theme_root = "/run/current-system/webapps/_theme"; @@ -64,16 +64,20 @@ let makeExtraConfig = (builtins.filter (x: x != null) (lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) apacheConfig)); in { - options.myServices.websites.webappDirs = lib.mkOption { - type = lib.types.attrsOf lib.types.path; - description = '' - Webapp paths to create in /run/current-system/webapps - ''; - default = {}; + options.myServices.websites = { + enable = lib.mkEnableOption "enable websites"; + + webappDirs = lib.mkOption { + type = lib.types.attrsOf lib.types.path; + description = '' + Webapp paths to create in /run/current-system/webapps + ''; + default = {}; + }; }; - config = { - services.backup.profiles.php = { + config = lib.mkIf config.myServices.websites.enable { + services.duplyBackup.profiles.php = { rootDir = "/var/lib/php"; }; users.users.wwwrun.extraGroups = [ "keys" ]; @@ -83,9 +87,9 @@ in #openssl = self.openssl_1_1; php = php72; php72 = (super.php72.override { - mysql.connector-c = self.mariadb; - config.php.mysqlnd = false; + 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 ++ [ @@ -110,7 +114,7 @@ in AuthLDAPURL ldap://ldap.immae.eu:389/dc=immae,dc=eu STARTTLS AuthLDAPBindDN cn=httpd,ou=services,dc=immae,dc=eu - AuthLDAPBindPassword "${myconfig.env.httpd.ldap.password}" + AuthLDAPBindPassword "${config.myEnv.httpd.ldap.password}" AuthType Basic AuthName "Authentification requise (Acces LDAP)" AuthBasicProvider ldap @@ -121,7 +125,7 @@ in system.activationScripts = { httpd = '' - install -d -m 0755 ${config.security.acme.directory}/acme-challenge + install -d -m 0755 /var/lib/acme/acme-challenges install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions ''; }; @@ -136,9 +140,9 @@ in ; 30 days (minutes) session.cache_expire = 43200 ''; - extraConfig = '' - log_level = notice - ''; + settings = { + log_level = "notice"; + }; }; services.filesWatcher.httpdProd.paths = [ "/var/secrets/apache-ldap" ]; @@ -150,7 +154,7 @@ in adminAddr = "httpd@immae.eu"; httpdName = "Prod"; ips = - let ips = myconfig.env.servers.eldiron.ips.production; + let ips = config.myEnv.servers.eldiron.ips.production; in [ips.ip4] ++ (ips.ip6 or []); modules = makeModules; extraConfig = makeExtraConfig; @@ -167,7 +171,7 @@ in adminAddr = "httpd@immae.eu"; httpdName = "Inte"; ips = - let ips = myconfig.env.servers.eldiron.ips.integration; + let ips = config.myEnv.servers.eldiron.ips.integration; in [ips.ip4] ++ (ips.ip6 or []); modules = makeModules; extraConfig = makeExtraConfig; @@ -184,7 +188,7 @@ in adminAddr = "httpd@immae.eu"; httpdName = "Tools"; ips = - let ips = myconfig.env.servers.eldiron.ips.main; + let ips = config.myEnv.servers.eldiron.ips.main; in [ips.ip4] ++ (ips.ip6 or []); modules = makeModules; extraConfig = makeExtraConfig ++ @@ -220,8 +224,9 @@ in _theme = pkgs.webapps.apache-theme.theme; }; - aten.integration.enable = true; - aten.production.enable = true; + isabelle.aten_integration.enable = true; + isabelle.aten_production.enable = true; + isabelle.iridologie.enable = true; capitaines.production.enable = true; @@ -234,6 +239,7 @@ in denisejerome.production.enable = true; emilia.production.enable = true; + emilia.richie_production.enable = true; florian.app.enable = true; florian.integration.enable = true; @@ -250,14 +256,18 @@ in nassime.production.enable = true; + evariste.production.enable = true; naturaloutil.production.enable = true; telioTortay.production.enable = true; papa.surveillance.enable = true; + papa.maison_bbc.enable = true; piedsjaloux.integration.enable = true; piedsjaloux.production.enable = true; + syden.peertube.enable = true; + tools.cloud.enable = true; tools.dav.enable = true; tools.db.enable = true;