{ lib, pkgs, config, mylibs, ... }: let aten = pkgs.callPackage ../../packages/aten.nix { inherit (mylibs) checkEnv fetchedGitPrivate; }; aten_dev = aten { environment = "dev"; }; aten_prod = aten { environment = "prod"; }; cfg = config.services.myWebsites.Aten; in { options.services.myWebsites.Aten = { production = { enable = lib.mkEnableOption "enable Aten's website in production"; }; integration = { enable = lib.mkEnableOption "enable Aten's website in integration"; }; }; config = lib.mkMerge [ (lib.mkIf cfg.production.enable { security.acme.certs."aten" = config.services.myCertificates.certConfig // { domain = "aten.pro"; extraDomains = { "www.aten.pro" = null; }; }; services.phpfpm.poolConfigs.aten_prod = aten_prod.phpFpm.pool; system.activationScripts.aten_prod = aten_prod.activationScript; }) (lib.mkIf cfg.integration.enable { security.acme.certs."eldiron".extraDomains."dev.aten.pro" = null; services.phpfpm.poolConfigs.aten_dev = aten_dev.phpFpm.pool; system.activationScripts.aten_dev = aten_dev.activationScript; }) ]; }