]> git.immae.eu Git - perso/Immae/Config/Nix.git/blob - modules/private/default.nix
ece6907db6e287170ea15339de77b075124774d5
[perso/Immae/Config/Nix.git] / modules / private / default.nix
1 let
2 set = {
3 # adatped from nixpkgs/nixos/modules/services/web-servers/apache-httpd/default.nix
4 httpdInte = import ../websites/httpd-service-builder.nix { httpdName = "Inte"; withUsers = false; };
5 httpdProd = import ../websites/httpd-service-builder.nix { httpdName = "Prod"; withUsers = false; };
6 httpdTools = import ../websites/httpd-service-builder.nix { httpdName = "Tools"; withUsers = true; };
7
8 databases = ./databases;
9 mariadb = ./databases/mariadb.nix;
10 openldap = ./databases/openldap;
11 postgresql = ./databases/postgresql.nix;
12 redis = ./databases/redis.nix;
13 postgresqlReplication = ./databases/postgresql_replication.nix;
14 mariadbReplication = ./databases/mariadb_replication.nix;
15 redisReplication = ./databases/redis_replication.nix;
16 openldapReplication = ./databases/openldap_replication.nix;
17
18 websites = ./websites;
19 isabelleAtenInte = ./websites/isabelle/aten_integration.nix;
20 isabelleAtenProd = ./websites/isabelle/aten_production.nix;
21 isabelleIridologie = ./websites/isabelle/iridologie.nix;
22 capitainesProd = ./websites/capitaines/production.nix;
23 chloeInte = ./websites/chloe/integration.nix;
24 chloeProd = ./websites/chloe/production.nix;
25 connexionswingInte = ./websites/connexionswing/integration.nix;
26 connexionswingProd = ./websites/connexionswing/production.nix;
27 denisejeromeProd = ./websites/denisejerome/production.nix;
28 emiliaProd = ./websites/emilia/production.nix;
29 richieProd = ./websites/emilia/richie.nix;
30 florianApp = ./websites/florian/app.nix;
31 florianInte = ./websites/florian/integration.nix;
32 florianProd = ./websites/florian/production.nix;
33 immaeProd = ./websites/immae/production.nix;
34 immaeRelease = ./websites/immae/release.nix;
35 immaeTemp = ./websites/immae/temp.nix;
36 leilaProd = ./websites/leila/production.nix;
37 ludivinecassalInte = ./websites/ludivinecassal/integration.nix;
38 ludivinecassalProd = ./websites/ludivinecassal/production.nix;
39 nassimeProd = ./websites/nassime/production.nix;
40 naturaloutilProd = ./websites/naturaloutil/production.nix;
41 evaristeProd = ./websites/evariste/production.nix;
42 telioTortayProd = ./websites/teliotortay/production.nix;
43 papaMaisonBbc = ./websites/papa/maison_bbc.nix;
44 papaSurveillance = ./websites/papa/surveillance.nix;
45 piedsjalouxInte = ./websites/piedsjaloux/integration.nix;
46 piedsjalouxProd = ./websites/piedsjaloux/production.nix;
47
48 cloudTool = ./websites/tools/cloud;
49 davTool = ./websites/tools/dav;
50 vpnTool = ./websites/tools/vpn;
51 dbTool = ./websites/tools/db;
52 diasporaTool = ./websites/tools/diaspora;
53 etherTool = ./websites/tools/ether;
54 gitTool = ./websites/tools/git;
55 imTool = ./websites/tools/im;
56 mastodonTool = ./websites/tools/mastodon;
57 mgoblinTool = ./websites/tools/mgoblin;
58 peertubeTool = ./websites/tools/peertube;
59 toolsTool = ./websites/tools/tools;
60 mailTool = ./websites/tools/mail;
61
62 mail = ./mail;
63
64 buildbot = ./buildbot;
65 certificates = ./certificates.nix;
66 gitolite = ./gitolite;
67 irc = ./irc.nix;
68 pub = ./pub;
69 tasks = ./tasks;
70 dns = ./dns.nix;
71 ftp = ./ftp.nix;
72 mpd = ./mpd.nix;
73 ejabberd = ./ejabberd;
74 ssh = ./ssh;
75 monitoring = ./monitoring;
76 status = ./monitoring/status.nix;
77 vpn = ./vpn;
78
79 environment = ./environment.nix;
80 system = ./system.nix;
81 loginctl-linger = ./loginctl-linger.nix;
82 };
83 in
84 builtins.listToAttrs (map (attr: { name = "priv${attr}"; value = set.${attr}; }) (builtins.attrNames set))