]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - modules/private/websites/florian/production.nix
Refactor websites
[perso/Immae/Config/Nix.git] / modules / private / websites / florian / production.nix
CommitLineData
ab8f306d 1{ lib, pkgs, config, ... }:
f8026b6e 2let
d3452fc5
IB
3 adminer = pkgs.callPackage ../commons/adminer.nix { inherit config; };
4 cfg = config.myServices.websites.florian.production;
5 varDir = "/var/lib/ftp/florian/tellesflorian.com";
6 env = config.myEnv.websites.florian;
f8026b6e
IB
7in {
8 options.myServices.websites.florian.production.enable = lib.mkEnableOption "enable Florian's website production";
9
10 config = lib.mkIf cfg.enable {
5400b9b6 11 security.acme.certs."ftp".extraDomains."tellesflorian.com" = null;
f8026b6e 12
29f8cb85 13 services.websites.env.production.modules = adminer.apache.modules;
d3452fc5 14 services.websites.env.production.vhostConfs.florian_production = {
f8026b6e
IB
15 certName = "florian";
16 certMainHost = "tellesflorian.com";
17 hosts = [ "tellesflorian.com" "www.tellesflorian.com" ];
d3452fc5 18 root = varDir;
f8026b6e 19 extraConfig = [
5400b9b6 20 (adminer.apache.vhostConf null)
f8026b6e
IB
21 ''
22 ServerAdmin ${env.server_admin}
23
d3452fc5 24 <Directory ${varDir}>
f8026b6e
IB
25 DirectoryIndex index.php index.htm index.html
26 Options Indexes FollowSymLinks MultiViews Includes
27 AllowOverride None
28 Require all granted
29 </Directory>
30 ''
31 ];
32 };
33 };
34}