blob: ebd461e4e95c8957afc68fc8ff4f484dedd77385 (
plain) (
tree)
|
|
{ lib, pkgs, config, myconfig, ... }:
let
adminer = pkgs.callPackage ../commons/adminer.nix {};
cfg = config.services.myWebsites.Florian;
varDir = "/var/lib/ftp/florian";
env = myconfig.env.websites.florian;
in {
options.services.myWebsites.Florian = {
production = {
enable = lib.mkEnableOption "enable Florian's website production";
};
integration = {
enable = lib.mkEnableOption "enable Florian's website integration";
};
};
config = lib.mkMerge [
(lib.mkIf cfg.production.enable {
security.acme.certs."ftp".extraDomains."tellesflorian.com" = null;
services.websites.production.modules = adminer.apache.modules;
services.websites.production.vhostConfs.florian = {
certName = "florian";
certMainHost = "tellesflorian.com";
hosts = [ "tellesflorian.com" "www.tellesflorian.com" ];
root = "${varDir}/tellesflorian.com";
extraConfig = [
adminer.apache.vhostConf
''
ServerAdmin ${env.server_admin}
<Directory ${varDir}/tellesflorian.com>
DirectoryIndex index.php index.htm index.html
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride None
Require all granted
</Directory>
''
];
};
})
(lib.mkIf cfg.integration.enable {
security.acme.certs."ftp".extraDomains."florian.immae.eu" = null;
services.websites.integration.modules = adminer.apache.modules;
services.websites.integration.vhostConfs.florian = {
certName = "eldiron";
addToCerts = true;
hosts = [ "florian.immae.eu" ];
root = "${varDir}/florian.immae.eu";
extraConfig = [
adminer.apache.vhostConf
''
ServerAdmin ${env.server_admin}
<Directory ${varDir}/florian.immae.eu>
DirectoryIndex index.php index.htm index.html
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride None
Require all granted
</Directory>
''
];
};
})
];
}
|