{ lib, pkgs, config, myconfig, ... }: let aten = pkgs.callPackage ./builder.nix { inherit (pkgs.webapps) aten; config = myconfig.env.websites.aten.integration; apacheUser = config.services.httpd.Inte.user; apacheGroup = config.services.httpd.Inte.group; }; cfg = config.myServices.websites.aten.integration; in { options.myServices.websites.aten.integration.enable = lib.mkEnableOption "enable Aten's website in integration"; config = lib.mkIf cfg.enable { secrets.keys = aten.keys; services.myPhpfpm.preStart.aten_dev = aten.phpFpm.preStart; services.myPhpfpm.serviceDependencies.aten_dev = aten.phpFpm.serviceDeps; services.myPhpfpm.poolConfigs.aten_dev = aten.phpFpm.pool; system.activationScripts.aten_dev = aten.activationScript; system.extraSystemBuilderCmds = '' mkdir -p $out/webapps ln -s ${aten.app.webRoot} $out/webapps/${aten.apache.webappName} ''; services.websites.integration.modules = aten.apache.modules; services.websites.integration.vhostConfs.aten = { certName = "eldiron"; addToCerts = true; hosts = [ "dev.aten.pro" ]; root = aten.apache.root; extraConfig = [ aten.apache.vhostConf ]; }; }; }