{ lib, pkgs, config, myconfig, ... }: let connexionswing = pkgs.callPackage ./builder.nix { inherit (pkgs.webapps) connexionswing; config = myconfig.env.websites.connexionswing.integration; apacheUser = config.services.httpd.Inte.user; apacheGroup = config.services.httpd.Inte.group; }; cfg = config.myServices.websites.connexionswing.integration; in { options.myServices.websites.connexionswing.integration.enable = lib.mkEnableOption "enable Connexionswing's website in integration"; config = lib.mkIf cfg.enable { secrets.keys = connexionswing.keys; systemd.services.phpfpm-connexionswing_dev.after = lib.mkAfter connexionswing.phpFpm.serviceDeps; systemd.services.phpfpm-connexionswing_dev.wants = connexionswing.phpFpm.serviceDeps; systemd.services.phpfpm-connexionswing_dev.preStart = lib.mkAfter connexionswing.phpFpm.preStart; services.phpfpm.pools.connexionswing_dev = { listen = connexionswing.phpFpm.socket; extraConfig = connexionswing.phpFpm.pool; phpOptions = config.services.phpfpm.phpOptions + connexionswing.phpFpm.phpConfig; }; system.activationScripts.connexionswing_dev = connexionswing.activationScript; myServices.websites.webappDirs."${connexionswing.apache.webappName}" = connexionswing.app.webRoot; services.websites.integration.modules = connexionswing.apache.modules; services.websites.integration.vhostConfs.connexionswing = { certName = "eldiron"; addToCerts = true; hosts = ["connexionswing.immae.eu" "sandetludo.immae.eu" ]; root = connexionswing.apache.root; extraConfig = [ connexionswing.apache.vhostConf ]; }; services.filesWatcher.phpfpm-connexionswing_dev = { restart = true; paths = [ "/var/secrets/webapps/${connexionswing.app.environment}-connexionswing" ]; }; }; }