diff options
author | Ismaël Bouya <ismael.bouya@normalesup.org> | 2023-10-04 01:35:06 +0200 |
---|---|---|
committer | Ismaël Bouya <ismael.bouya@normalesup.org> | 2023-10-04 02:11:48 +0200 |
commit | 1a64deeb894dc95e2645a75771732c6cc53a79ad (patch) | |
tree | 1b9df4838f894577a09b9b260151756272efeb53 /modules/private/websites/florian | |
parent | fa25ffd4583cc362075cd5e1b4130f33306103f0 (diff) | |
download | Nix-1a64deeb894dc95e2645a75771732c6cc53a79ad.tar.gz Nix-1a64deeb894dc95e2645a75771732c6cc53a79ad.tar.zst Nix-1a64deeb894dc95e2645a75771732c6cc53a79ad.zip |
Squash changes containing private information
There were a lot of changes since the previous commit, but a lot of them
contained personnal information about users. All thos changes got
stashed into a single commit (history is kept in a different place) and
private information was moved in a separate private repository
Diffstat (limited to 'modules/private/websites/florian')
-rw-r--r-- | modules/private/websites/florian/app.nix | 142 | ||||
-rw-r--r-- | modules/private/websites/florian/app/default.nix | 27 | ||||
-rw-r--r-- | modules/private/websites/florian/app/php-packages.nix | 389 | ||||
-rw-r--r-- | modules/private/websites/florian/integration.nix | 34 | ||||
-rw-r--r-- | modules/private/websites/florian/production.nix | 34 |
5 files changed, 0 insertions, 626 deletions
diff --git a/modules/private/websites/florian/app.nix b/modules/private/websites/florian/app.nix deleted file mode 100644 index 2df344f..0000000 --- a/modules/private/websites/florian/app.nix +++ /dev/null | |||
@@ -1,142 +0,0 @@ | |||
1 | { lib, pkgs, config, ... }: | ||
2 | let | ||
3 | adminer = pkgs.callPackage ../commons/adminer.nix { inherit config; }; | ||
4 | secrets = config.myEnv.websites.tellesflorian.integration; | ||
5 | webRoot = "/var/lib/ftp/immae/florian/web"; | ||
6 | cfg = config.myServices.websites.florian.app; | ||
7 | pcfg = config.services.phpApplication; | ||
8 | in { | ||
9 | options.myServices.websites.florian.app.enable = lib.mkEnableOption "enable Florian's app in integration"; | ||
10 | |||
11 | config = lib.mkIf cfg.enable { | ||
12 | services.phpApplication.apps.florian_app = { | ||
13 | websiteEnv = "integration"; | ||
14 | httpdUser = config.services.httpd.Inte.user; | ||
15 | httpdGroup = config.services.httpd.Inte.group; | ||
16 | inherit webRoot; | ||
17 | varDir = "/var/lib/ftp/immae/florian_var"; | ||
18 | varDirPaths = { | ||
19 | "var" = "0700"; | ||
20 | }; | ||
21 | app = "/var/lib/ftp/immae/florian"; | ||
22 | serviceDeps = [ "mysql.service" ]; | ||
23 | preStartActions = [ | ||
24 | "./bin/console --env=dev cache:clear --no-warmup" | ||
25 | ]; | ||
26 | phpOpenbasedir = [ "/tmp" ]; | ||
27 | phpPool = { | ||
28 | "php_admin_value[upload_max_filesize]" = "20M"; | ||
29 | "php_admin_value[post_max_size]" = "20M"; | ||
30 | #"php_admin_flag[log_errors]" = "on"; | ||
31 | "pm" = "ondemand"; | ||
32 | "pm.max_children" = "5"; | ||
33 | "pm.process_idle_timeout" = "60"; | ||
34 | }; | ||
35 | phpEnv = { | ||
36 | SYMFONY_DEBUG_MODE = "\"yes\""; | ||
37 | }; | ||
38 | phpWatchFiles = [ | ||
39 | config.secrets.fullPaths."websites/florian/app" | ||
40 | ]; | ||
41 | phpPackage = pkgs.php72; | ||
42 | }; | ||
43 | |||
44 | secrets.keys = { | ||
45 | "websites/florian/app_passwords" = { | ||
46 | user = config.services.httpd.Inte.user; | ||
47 | group = config.services.httpd.Inte.group; | ||
48 | permissions = "0400"; | ||
49 | text = '' | ||
50 | invite:${secrets.invite_passwords} | ||
51 | ''; | ||
52 | }; | ||
53 | "websites/florian/app" = { | ||
54 | user = config.services.httpd.Inte.user; | ||
55 | group = config.services.httpd.Inte.group; | ||
56 | permissions = "0400"; | ||
57 | text = '' | ||
58 | # This file is auto-generated during the composer install | ||
59 | parameters: | ||
60 | database_host: ${secrets.mysql.host} | ||
61 | database_port: ${secrets.mysql.port} | ||
62 | database_name: ${secrets.mysql.database} | ||
63 | database_user: ${secrets.mysql.user} | ||
64 | database_password: ${secrets.mysql.password} | ||
65 | mailer_transport: smtp | ||
66 | mailer_host: 127.0.0.1 | ||
67 | mailer_user: null | ||
68 | mailer_password: null | ||
69 | secret: ${secrets.secret} | ||
70 | ''; | ||
71 | }; | ||
72 | }; | ||
73 | |||
74 | services.websites.env.integration.modules = adminer.apache.modules; | ||
75 | services.websites.env.integration.vhostConfs.florian_app = { | ||
76 | certName = "integration"; | ||
77 | addToCerts = true; | ||
78 | hosts = [ "app.tellesflorian.com" ]; | ||
79 | root = webRoot; | ||
80 | extraConfig = [ | ||
81 | '' | ||
82 | <FilesMatch "\.php$"> | ||
83 | SetHandler "proxy:unix:${pcfg.phpListenPaths.florian_app}|fcgi://localhost" | ||
84 | </FilesMatch> | ||
85 | |||
86 | <Location /> | ||
87 | AuthBasicProvider file ldap | ||
88 | Use LDAPConnect | ||
89 | Require ldap-group cn=app.tellesflorian.com,cn=httpd,ou=services,dc=immae,dc=eu | ||
90 | |||
91 | AuthUserFile "${config.secrets.fullPaths."websites/florian/app_passwords"}" | ||
92 | Require user "invite" | ||
93 | |||
94 | ErrorDocument 401 "<html><meta http-equiv=\"refresh\" content=\"0;url=https://tellesflorian.com\"></html>" | ||
95 | </Location> | ||
96 | |||
97 | <Directory ${webRoot}> | ||
98 | Options Indexes FollowSymLinks MultiViews Includes | ||
99 | AllowOverride None | ||
100 | Require all granted | ||
101 | |||
102 | DirectoryIndex app_dev.php | ||
103 | |||
104 | <IfModule mod_negotiation.c> | ||
105 | Options -MultiViews | ||
106 | </IfModule> | ||
107 | |||
108 | <IfModule mod_rewrite.c> | ||
109 | RewriteEngine On | ||
110 | |||
111 | RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ | ||
112 | RewriteRule ^(.*) - [E=BASE:%1] | ||
113 | |||
114 | # Maintenance script | ||
115 | RewriteCond %{DOCUMENT_ROOT}/maintenance.php -f | ||
116 | RewriteCond %{SCRIPT_FILENAME} !maintenance.php | ||
117 | RewriteRule ^.*$ %{ENV:BASE}/maintenance.php [R=503,L] | ||
118 | ErrorDocument 503 /maintenance.php | ||
119 | |||
120 | # Sets the HTTP_AUTHORIZATION header removed by Apache | ||
121 | RewriteCond %{HTTP:Authorization} . | ||
122 | RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] | ||
123 | |||
124 | RewriteCond %{ENV:REDIRECT_STATUS} ^$ | ||
125 | RewriteRule ^app_dev\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L] | ||
126 | |||
127 | # If the requested filename exists, simply serve it. | ||
128 | # We only want to let Apache serve files and not directories. | ||
129 | RewriteCond %{REQUEST_FILENAME} -f | ||
130 | RewriteRule ^ - [L] | ||
131 | |||
132 | # Rewrite all other queries to the front controller. | ||
133 | RewriteRule ^ %{ENV:BASE}/app_dev.php [L] | ||
134 | </IfModule> | ||
135 | |||
136 | </Directory> | ||
137 | '' | ||
138 | (adminer.apache.vhostConf null) | ||
139 | ]; | ||
140 | }; | ||
141 | }; | ||
142 | } | ||
diff --git a/modules/private/websites/florian/app/default.nix b/modules/private/websites/florian/app/default.nix deleted file mode 100644 index 28a7ec1..0000000 --- a/modules/private/websites/florian/app/default.nix +++ /dev/null | |||
@@ -1,27 +0,0 @@ | |||
1 | { environment, varDir, secretsPath | ||
2 | , composerEnv, fetchurl, sources }: | ||
3 | let | ||
4 | app = composerEnv.buildPackage ( | ||
5 | import ./php-packages.nix { inherit composerEnv fetchurl; } // | ||
6 | rec { | ||
7 | version = sources.websites-florian-app.version; | ||
8 | pname = "tellesflorian"; | ||
9 | name = "${pname}-${version}"; | ||
10 | src = sources.websites-florian-app; | ||
11 | noDev = (environment == "prod"); | ||
12 | preInstall = '' | ||
13 | export SYMFONY_ENV="${environment}" | ||
14 | ''; | ||
15 | postInstall = '' | ||
16 | cd $out | ||
17 | rm app/config/parameters.yml | ||
18 | ln -sf ${secretsPath} app/config/parameters.yml | ||
19 | rm -rf var/{logs,cache} | ||
20 | ln -sf ${varDir}/var/{logs,cache,sessions} var/ | ||
21 | ''; | ||
22 | passthru = { | ||
23 | inherit varDir environment; | ||
24 | webRoot = "${app}/web"; | ||
25 | }; | ||
26 | }); | ||
27 | in app | ||
diff --git a/modules/private/websites/florian/app/php-packages.nix b/modules/private/websites/florian/app/php-packages.nix deleted file mode 100644 index 0c7e00c..0000000 --- a/modules/private/websites/florian/app/php-packages.nix +++ /dev/null | |||
@@ -1,389 +0,0 @@ | |||
1 | # Generated with composer2nix and adapted to return only the list of | ||
2 | # packages | ||
3 | { composerEnv, fetchurl }: | ||
4 | { | ||
5 | packages = { | ||
6 | "composer/ca-bundle" = { | ||
7 | targetDir = ""; | ||
8 | src = composerEnv.buildZipPackage { | ||
9 | name = "composer-ca-bundle-943b2c4fcad1ef178d16a713c2468bf7e579c288"; | ||
10 | src = fetchurl { | ||
11 | url = https://api.github.com/repos/composer/ca-bundle/zipball/943b2c4fcad1ef178d16a713c2468bf7e579c288; | ||
12 | sha256 = "1gljia7akifp57w4rjzyh1km23kwymmvglz0mgafdgqzczcw0m6w"; | ||
13 | }; | ||
14 | }; | ||
15 | }; | ||
16 | "doctrine/annotations" = { | ||
17 | targetDir = ""; | ||
18 | src = composerEnv.buildZipPackage { | ||
19 | name = "doctrine-annotations-f25c8aab83e0c3e976fd7d19875f198ccf2f7535"; | ||
20 | src = fetchurl { | ||
21 | url = https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535; | ||
22 | sha256 = "08vm22fqq8r4bg2fk06y4inqnc8x0yfmsss28w5ra2011x2phq4z"; | ||
23 | }; | ||
24 | }; | ||
25 | }; | ||
26 | "doctrine/cache" = { | ||
27 | targetDir = ""; | ||
28 | src = composerEnv.buildZipPackage { | ||
29 | name = "doctrine-cache-eb152c5100571c7a45470ff2a35095ab3f3b900b"; | ||
30 | src = fetchurl { | ||
31 | url = https://api.github.com/repos/doctrine/cache/zipball/eb152c5100571c7a45470ff2a35095ab3f3b900b; | ||
32 | sha256 = "0iq0qqv1smlqz63jhj2fpjy54c5dwfwxyf5c89iky6i0yb81gwyd"; | ||
33 | }; | ||
34 | }; | ||
35 | }; | ||
36 | "doctrine/collections" = { | ||
37 | targetDir = ""; | ||
38 | src = composerEnv.buildZipPackage { | ||
39 | name = "doctrine-collections-6c1e4eef75f310ea1b3e30945e9f06e652128b8a"; | ||
40 | src = fetchurl { | ||
41 | url = https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a; | ||
42 | sha256 = "1dkxr2vjycykpcnnmq68rcnn1ww0kbpizd5pxxm6x9i2ilj8cbn7"; | ||
43 | }; | ||
44 | }; | ||
45 | }; | ||
46 | "doctrine/common" = { | ||
47 | targetDir = ""; | ||
48 | src = composerEnv.buildZipPackage { | ||
49 | name = "doctrine-common-7bce00698899aa2c06fe7365c76e4d78ddb15fa3"; | ||
50 | src = fetchurl { | ||
51 | url = https://api.github.com/repos/doctrine/common/zipball/7bce00698899aa2c06fe7365c76e4d78ddb15fa3; | ||
52 | sha256 = "12yizcsxsbhhi8hwaik4zalr12n5nxbpld05zygqhx6miyr92jyd"; | ||
53 | }; | ||
54 | }; | ||
55 | }; | ||
56 | "doctrine/dbal" = { | ||
57 | targetDir = ""; | ||
58 | src = composerEnv.buildZipPackage { | ||
59 | name = "doctrine-dbal-729340d8d1eec8f01bff708e12e449a3415af873"; | ||
60 | src = fetchurl { | ||
61 | url = https://api.github.com/repos/doctrine/dbal/zipball/729340d8d1eec8f01bff708e12e449a3415af873; | ||
62 | sha256 = "184p8h0n6mcm0y6vfyh0z6qcxmmf8h5z4vdvxd4ycmx0531lnhj3"; | ||
63 | }; | ||
64 | }; | ||
65 | }; | ||
66 | "doctrine/doctrine-bundle" = { | ||
67 | targetDir = ""; | ||
68 | src = composerEnv.buildZipPackage { | ||
69 | name = "doctrine-doctrine-bundle-eb6e4fb904a459be28872765ab6e2d246aac7c87"; | ||
70 | src = fetchurl { | ||
71 | url = https://api.github.com/repos/doctrine/DoctrineBundle/zipball/eb6e4fb904a459be28872765ab6e2d246aac7c87; | ||
72 | sha256 = "0kkisgyblc9hf9x3zpbb1wif51fa8mi6svyd44nls38k9k93dp17"; | ||
73 | }; | ||
74 | }; | ||
75 | }; | ||
76 | "doctrine/doctrine-cache-bundle" = { | ||
77 | targetDir = ""; | ||
78 | src = composerEnv.buildZipPackage { | ||
79 | name = "doctrine-doctrine-cache-bundle-9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1"; | ||
80 | src = fetchurl { | ||
81 | url = https://api.github.com/repos/doctrine/DoctrineCacheBundle/zipball/9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1; | ||
82 | sha256 = "08bqz18vk4673pnm2r2pcph6pdchc36zajnma1p9c6dp21sv7iki"; | ||
83 | }; | ||
84 | }; | ||
85 | }; | ||
86 | "doctrine/inflector" = { | ||
87 | targetDir = ""; | ||
88 | src = composerEnv.buildZipPackage { | ||
89 | name = "doctrine-inflector-90b2128806bfde671b6952ab8bea493942c1fdae"; | ||
90 | src = fetchurl { | ||
91 | url = https://api.github.com/repos/doctrine/inflector/zipball/90b2128806bfde671b6952ab8bea493942c1fdae; | ||
92 | sha256 = "01vmclj3k7xil51jg329fznshh8d07pvm4mr89lvfn1d7fyrq6qw"; | ||
93 | }; | ||
94 | }; | ||
95 | }; | ||
96 | "doctrine/instantiator" = { | ||
97 | targetDir = ""; | ||
98 | src = composerEnv.buildZipPackage { | ||
99 | name = "doctrine-instantiator-8e884e78f9f0eb1329e445619e04456e64d8051d"; | ||
100 | src = fetchurl { | ||
101 | url = https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d; | ||
102 | sha256 = "15dcja45rnwya431pcm826l68k1g8f1fabl7rih69alcdyvdlln4"; | ||
103 | }; | ||
104 | }; | ||
105 | }; | ||
106 | "doctrine/lexer" = { | ||
107 | targetDir = ""; | ||
108 | src = composerEnv.buildZipPackage { | ||
109 | name = "doctrine-lexer-83893c552fd2045dd78aef794c31e694c37c0b8c"; | ||
110 | src = fetchurl { | ||
111 | url = https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c; | ||
112 | sha256 = "0cyh3vwcl163cx1vrcwmhlh5jg9h47xwiqgzc6rwscxw0ppd1v74"; | ||
113 | }; | ||
114 | }; | ||
115 | }; | ||
116 | "doctrine/orm" = { | ||
117 | targetDir = ""; | ||
118 | src = composerEnv.buildZipPackage { | ||
119 | name = "doctrine-orm-810a7baf81462a5ddf10e8baa8cb94b6eec02754"; | ||
120 | src = fetchurl { | ||
121 | url = https://api.github.com/repos/doctrine/doctrine2/zipball/810a7baf81462a5ddf10e8baa8cb94b6eec02754; | ||
122 | sha256 = "1hmkc7917kgnav9hmlgvlp7qwm3zjj910ci71g9yqwjh6s28wrf1"; | ||
123 | }; | ||
124 | }; | ||
125 | }; | ||
126 | "fig/link-util" = { | ||
127 | targetDir = ""; | ||
128 | src = composerEnv.buildZipPackage { | ||
129 | name = "fig-link-util-1a07821801a148be4add11ab0603e4af55a72fac"; | ||
130 | src = fetchurl { | ||
131 | url = https://api.github.com/repos/php-fig/link-util/zipball/1a07821801a148be4add11ab0603e4af55a72fac; | ||
132 | sha256 = "0ky1pq4a17br5zvcychjghgwr6wpkgp409hdv0ljdk3ks90w5w64"; | ||
133 | }; | ||
134 | }; | ||
135 | }; | ||
136 | "incenteev/composer-parameter-handler" = { | ||
137 | targetDir = ""; | ||
138 | src = composerEnv.buildZipPackage { | ||
139 | name = "incenteev-composer-parameter-handler-933c45a34814f27f2345c11c37d46b3ca7303550"; | ||
140 | src = fetchurl { | ||
141 | url = https://api.github.com/repos/Incenteev/ParameterHandler/zipball/933c45a34814f27f2345c11c37d46b3ca7303550; | ||
142 | sha256 = "1zqdwlcl790kjyz4rkpva35xkfsp8kslds82fzznj0yigkgnbifm"; | ||
143 | }; | ||
144 | }; | ||
145 | }; | ||
146 | "jdorn/sql-formatter" = { | ||
147 | targetDir = ""; | ||
148 | src = composerEnv.buildZipPackage { | ||
149 | name = "jdorn-sql-formatter-64990d96e0959dff8e059dfcdc1af130728d92bc"; | ||
150 | src = fetchurl { | ||
151 | url = https://api.github.com/repos/jdorn/sql-formatter/zipball/64990d96e0959dff8e059dfcdc1af130728d92bc; | ||
152 | sha256 = "1dnmkm8mxylvxjwi0bdkzrlklncqx92fa4fwqp5bh2ypj8gaagzi"; | ||
153 | }; | ||
154 | }; | ||
155 | }; | ||
156 | "monolog/monolog" = { | ||
157 | targetDir = ""; | ||
158 | src = composerEnv.buildZipPackage { | ||
159 | name = "monolog-monolog-fd8c787753b3a2ad11bc60c063cff1358a32a3b4"; | ||
160 | src = fetchurl { | ||
161 | url = https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4; | ||
162 | sha256 = "0avf3y8raw23krwdb7kw9qb5bsr5ls4i7qd2vh7hcds3qjixg3h9"; | ||
163 | }; | ||
164 | }; | ||
165 | }; | ||
166 | "paragonie/random_compat" = { | ||
167 | targetDir = ""; | ||
168 | src = composerEnv.buildZipPackage { | ||
169 | name = "paragonie-random_compat-5da4d3c796c275c55f057af5a643ae297d96b4d8"; | ||
170 | src = fetchurl { | ||
171 | url = https://api.github.com/repos/paragonie/random_compat/zipball/5da4d3c796c275c55f057af5a643ae297d96b4d8; | ||
172 | sha256 = "1hp6pin4923c300yi85m7qk04gsrbygv52wv5zm7giyyf0k0g073"; | ||
173 | }; | ||
174 | }; | ||
175 | }; | ||
176 | "psr/cache" = { | ||
177 | targetDir = ""; | ||
178 | src = composerEnv.buildZipPackage { | ||
179 | name = "psr-cache-d11b50ad223250cf17b86e38383413f5a6764bf8"; | ||
180 | src = fetchurl { | ||
181 | url = https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8; | ||
182 | sha256 = "06i2k3dx3b4lgn9a4v1dlgv8l9wcl4kl7vzhh63lbji0q96hv8qz"; | ||
183 | }; | ||
184 | }; | ||
185 | }; | ||
186 | "psr/container" = { | ||
187 | targetDir = ""; | ||
188 | src = composerEnv.buildZipPackage { | ||
189 | name = "psr-container-b7ce3b176482dbbc1245ebf52b181af44c2cf55f"; | ||
190 | src = fetchurl { | ||
191 | url = https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f; | ||
192 | sha256 = "0rkz64vgwb0gfi09klvgay4qnw993l1dc03vyip7d7m2zxi6cy4j"; | ||
193 | }; | ||
194 | }; | ||
195 | }; | ||
196 | "psr/link" = { | ||
197 | targetDir = ""; | ||
198 | src = composerEnv.buildZipPackage { | ||
199 | name = "psr-link-eea8e8662d5cd3ae4517c9b864493f59fca95562"; | ||
200 | src = fetchurl { | ||
201 | url = https://api.github.com/repos/php-fig/link/zipball/eea8e8662d5cd3ae4517c9b864493f59fca95562; | ||
202 | sha256 = "091k4p9irkqnmq9b0p792wz1hb7dm4rafpjilw9im9xhsxgkmr13"; | ||
203 | }; | ||
204 | }; | ||
205 | }; | ||
206 | "psr/log" = { | ||
207 | targetDir = ""; | ||
208 | src = composerEnv.buildZipPackage { | ||
209 | name = "psr-log-4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"; | ||
210 | src = fetchurl { | ||
211 | url = https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d; | ||
212 | sha256 = "1mlcv17fjw39bjpck176ah1z393b6pnbw3jqhhrblj27c70785md"; | ||
213 | }; | ||
214 | }; | ||
215 | }; | ||
216 | "psr/simple-cache" = { | ||
217 | targetDir = ""; | ||
218 | src = composerEnv.buildZipPackage { | ||
219 | name = "psr-simple-cache-408d5eafb83c57f6365a3ca330ff23aa4a5fa39b"; | ||
220 | src = fetchurl { | ||
221 | url = https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b; | ||
222 | sha256 = "1djgzclkamjxi9jy4m9ggfzgq1vqxaga2ip7l3cj88p7rwkzjxgw"; | ||
223 | }; | ||
224 | }; | ||
225 | }; | ||
226 | "sensio/distribution-bundle" = { | ||
227 | targetDir = ""; | ||
228 | src = composerEnv.buildZipPackage { | ||
229 | name = "sensio-distribution-bundle-eb6266b3b472e4002538610b28a0a04bcf94891a"; | ||
230 | src = fetchurl { | ||
231 | url = https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/eb6266b3b472e4002538610b28a0a04bcf94891a; | ||
232 | sha256 = "0wyffqj924lz9cv0vbahyngjw1g850v0p34swygzzgp3cr0ank13"; | ||
233 | }; | ||
234 | }; | ||
235 | }; | ||
236 | "sensio/framework-extra-bundle" = { | ||
237 | targetDir = ""; | ||
238 | src = composerEnv.buildZipPackage { | ||
239 | name = "sensio-framework-extra-bundle-bf4940572e43af679aaa13be98f3446a1c237bd8"; | ||
240 | src = fetchurl { | ||
241 | url = https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/bf4940572e43af679aaa13be98f3446a1c237bd8; | ||
242 | sha256 = "1kb1n5w3kfc0kf4pslqdx5pgp0g4hmaag0i00wvjj2n3pjfm5lhf"; | ||
243 | }; | ||
244 | }; | ||
245 | }; | ||
246 | "sensiolabs/security-checker" = { | ||
247 | targetDir = ""; | ||
248 | src = composerEnv.buildZipPackage { | ||
249 | name = "sensiolabs-security-checker-dc270d5fec418cc6ac983671dba5d80ffaffb142"; | ||
250 | src = fetchurl { | ||
251 | url = https://api.github.com/repos/sensiolabs/security-checker/zipball/dc270d5fec418cc6ac983671dba5d80ffaffb142; | ||
252 | sha256 = "0fnshyd6f8j91a7y604nh6sqgscjl48mfa0727g2r4hkdfz8hpd1"; | ||
253 | }; | ||
254 | }; | ||
255 | }; | ||
256 | "swiftmailer/swiftmailer" = { | ||
257 | targetDir = ""; | ||
258 | src = composerEnv.buildZipPackage { | ||
259 | name = "swiftmailer-swiftmailer-7ffc1ea296ed14bf8260b6ef11b80208dbadba91"; | ||
260 | src = fetchurl { | ||
261 | url = https://api.github.com/repos/swiftmailer/swiftmailer/zipball/7ffc1ea296ed14bf8260b6ef11b80208dbadba91; | ||
262 | sha256 = "1vl5pzgvr2yfrj1yfs02mi917b0gr56v76ibi40r51a3346zhp6v"; | ||
263 | }; | ||
264 | }; | ||
265 | }; | ||
266 | "symfony/monolog-bundle" = { | ||
267 | targetDir = ""; | ||
268 | src = composerEnv.buildZipPackage { | ||
269 | name = "symfony-monolog-bundle-8781649349fe418d51d194f8c9d212c0b97c40dd"; | ||
270 | src = fetchurl { | ||
271 | url = https://api.github.com/repos/symfony/monolog-bundle/zipball/8781649349fe418d51d194f8c9d212c0b97c40dd; | ||
272 | sha256 = "0wcqhg1vfdj3mxacr3fxpgqwy1rk9znjg9bmzx4jymk8l16i7bq8"; | ||
273 | }; | ||
274 | }; | ||
275 | }; | ||
276 | "symfony/polyfill-apcu" = { | ||
277 | targetDir = ""; | ||
278 | src = composerEnv.buildZipPackage { | ||
279 | name = "symfony-polyfill-apcu-e8ae2136ddb53dea314df56fcd88e318ab936c00"; | ||
280 | src = fetchurl { | ||
281 | url = https://api.github.com/repos/symfony/polyfill-apcu/zipball/e8ae2136ddb53dea314df56fcd88e318ab936c00; | ||
282 | sha256 = "07wdszb9ircnidjk3fp3cvcrggxv3sfm996jzd0a9pm6vfz9hymv"; | ||
283 | }; | ||
284 | }; | ||
285 | }; | ||
286 | "symfony/polyfill-intl-icu" = { | ||
287 | targetDir = ""; | ||
288 | src = composerEnv.buildZipPackage { | ||
289 | name = "symfony-polyfill-intl-icu-254919c03761d46c29291616576ed003f10e91c1"; | ||
290 | src = fetchurl { | ||
291 | url = https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/254919c03761d46c29291616576ed003f10e91c1; | ||
292 | sha256 = "01yivzv7p55fzrkkyvgd57zpyz82zn1qp0h6nzr77k01rkv3w0ds"; | ||
293 | }; | ||
294 | }; | ||
295 | }; | ||
296 | "symfony/polyfill-mbstring" = { | ||
297 | targetDir = ""; | ||
298 | src = composerEnv.buildZipPackage { | ||
299 | name = "symfony-polyfill-mbstring-78be803ce01e55d3491c1397cf1c64beb9c1b63b"; | ||
300 | src = fetchurl { | ||
301 | url = https://api.github.com/repos/symfony/polyfill-mbstring/zipball/78be803ce01e55d3491c1397cf1c64beb9c1b63b; | ||
302 | sha256 = "0cqr8ni6wpbaxa9gyr40y5bsv54pa2g8kdarlfw3qg2rgzmk0yz1"; | ||
303 | }; | ||
304 | }; | ||
305 | }; | ||
306 | "symfony/polyfill-php56" = { | ||
307 | targetDir = ""; | ||
308 | src = composerEnv.buildZipPackage { | ||
309 | name = "symfony-polyfill-php56-ebc999ce5f14204c5150b9bd15f8f04e621409d8"; | ||
310 | src = fetchurl { | ||
311 | url = https://api.github.com/repos/symfony/polyfill-php56/zipball/ebc999ce5f14204c5150b9bd15f8f04e621409d8; | ||
312 | sha256 = "0b2j56l6d6rdggx7vr20d527df4pjfp4lgxpglsgbf5912rcyf83"; | ||
313 | }; | ||
314 | }; | ||
315 | }; | ||
316 | "symfony/polyfill-php70" = { | ||
317 | targetDir = ""; | ||
318 | src = composerEnv.buildZipPackage { | ||
319 | name = "symfony-polyfill-php70-3532bfcd8f933a7816f3a0a59682fc404776600f"; | ||
320 | src = fetchurl { | ||
321 | url = https://api.github.com/repos/symfony/polyfill-php70/zipball/3532bfcd8f933a7816f3a0a59682fc404776600f; | ||
322 | sha256 = "151m76lc9w0kxnnwk4zdcjlmj7fppibnp8jisgpvvq32ml3fizdi"; | ||
323 | }; | ||
324 | }; | ||
325 | }; | ||
326 | "symfony/polyfill-util" = { | ||
327 | targetDir = ""; | ||
328 | src = composerEnv.buildZipPackage { | ||
329 | name = "symfony-polyfill-util-e17c808ec4228026d4f5a8832afa19be85979563"; | ||
330 | src = fetchurl { | ||
331 | url = https://api.github.com/repos/symfony/polyfill-util/zipball/e17c808ec4228026d4f5a8832afa19be85979563; | ||
332 | sha256 = "17sdpdidc0b701f9rippjv1grfci7wrdpy2i1inlwwpr6zy782cq"; | ||
333 | }; | ||
334 | }; | ||
335 | }; | ||
336 | "symfony/swiftmailer-bundle" = { | ||
337 | targetDir = ""; | ||
338 | src = composerEnv.buildZipPackage { | ||
339 | name = "symfony-swiftmailer-bundle-c4808f5169efc05567be983909d00f00521c53ec"; | ||
340 | src = fetchurl { | ||
341 | url = https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/c4808f5169efc05567be983909d00f00521c53ec; | ||
342 | sha256 = "0jmd3slhb3gf3c3krmk2a9fi4ixdxvqlimdkfpj0sfaaq0115y01"; | ||
343 | }; | ||
344 | }; | ||
345 | }; | ||
346 | "symfony/symfony" = { | ||
347 | targetDir = ""; | ||
348 | src = composerEnv.buildZipPackage { | ||
349 | name = "symfony-symfony-874d4d659774d7bab90538072c83ed532dd17dc5"; | ||
350 | src = fetchurl { | ||
351 | url = https://api.github.com/repos/symfony/symfony/zipball/874d4d659774d7bab90538072c83ed532dd17dc5; | ||
352 | sha256 = "02rsn3sc34jh107n576jfbh666k06y44yr7hw61nir0d864k8api"; | ||
353 | }; | ||
354 | }; | ||
355 | }; | ||
356 | "twig/twig" = { | ||
357 | targetDir = ""; | ||
358 | src = composerEnv.buildZipPackage { | ||
359 | name = "twig-twig-9c24f2cd39dc1906b76879e099970b7e53724601"; | ||
360 | src = fetchurl { | ||
361 | url = https://api.github.com/repos/twigphp/Twig/zipball/9c24f2cd39dc1906b76879e099970b7e53724601; | ||
362 | sha256 = "0brfj2lahrrw1322zy6jyd380hjks1ynzzkmq3875a282gzrfkdz"; | ||
363 | }; | ||
364 | }; | ||
365 | }; | ||
366 | }; | ||
367 | devPackages = { | ||
368 | "sensio/generator-bundle" = { | ||
369 | targetDir = ""; | ||
370 | src = composerEnv.buildZipPackage { | ||
371 | name = "sensio-generator-bundle-28cbaa244bd0816fd8908b93f90380bcd7b67a65"; | ||
372 | src = fetchurl { | ||
373 | url = https://api.github.com/repos/sensiolabs/SensioGeneratorBundle/zipball/28cbaa244bd0816fd8908b93f90380bcd7b67a65; | ||
374 | sha256 = "1j09y037xk843q8gcyfmwgy6dmn0h67pd5jnsvhj08h92ssbl0c3"; | ||
375 | }; | ||
376 | }; | ||
377 | }; | ||
378 | "symfony/phpunit-bridge" = { | ||
379 | targetDir = ""; | ||
380 | src = composerEnv.buildZipPackage { | ||
381 | name = "symfony-phpunit-bridge-32b06d2b0babf3216e55acfce42249321a304f03"; | ||
382 | src = fetchurl { | ||
383 | url = https://api.github.com/repos/symfony/phpunit-bridge/zipball/32b06d2b0babf3216e55acfce42249321a304f03; | ||
384 | sha256 = "0vw4q3lvz8gfs0r93ds8yymz8586k0czwa01c7d172rc8x02v0qq"; | ||
385 | }; | ||
386 | }; | ||
387 | }; | ||
388 | }; | ||
389 | } | ||
diff --git a/modules/private/websites/florian/integration.nix b/modules/private/websites/florian/integration.nix deleted file mode 100644 index 8ac1f46..0000000 --- a/modules/private/websites/florian/integration.nix +++ /dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | { lib, pkgs, config, ... }: | ||
2 | let | ||
3 | adminer = pkgs.callPackage ../commons/adminer.nix { inherit config; }; | ||
4 | cfg = config.myServices.websites.florian.integration; | ||
5 | varDir = "/var/lib/ftp/florian/www.ft.immae.dev"; | ||
6 | env = config.myEnv.websites.florian; | ||
7 | in { | ||
8 | options.myServices.websites.florian.integration.enable = lib.mkEnableOption "enable Florian's website integration"; | ||
9 | |||
10 | config = lib.mkIf cfg.enable { | ||
11 | security.acme.certs."ftp".extraDomains."ft.immae.dev" = null; | ||
12 | |||
13 | services.websites.env.integration.modules = adminer.apache.modules; | ||
14 | services.websites.env.integration.vhostConfs.florian_integration = { | ||
15 | certName = "integration"; | ||
16 | addToCerts = true; | ||
17 | hosts = [ "www.ft.immae.dev" ]; | ||
18 | root = varDir; | ||
19 | extraConfig = [ | ||
20 | (adminer.apache.vhostConf null) | ||
21 | '' | ||
22 | ServerAdmin ${env.server_admin} | ||
23 | |||
24 | <Directory ${varDir}> | ||
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 | } | ||
diff --git a/modules/private/websites/florian/production.nix b/modules/private/websites/florian/production.nix deleted file mode 100644 index 1c5ffa6..0000000 --- a/modules/private/websites/florian/production.nix +++ /dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | { lib, pkgs, config, ... }: | ||
2 | let | ||
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; | ||
7 | in { | ||
8 | options.myServices.websites.florian.production.enable = lib.mkEnableOption "enable Florian's website production"; | ||
9 | |||
10 | config = lib.mkIf cfg.enable { | ||
11 | security.acme.certs."ftp".extraDomains."tellesflorian.com" = null; | ||
12 | |||
13 | services.websites.env.production.modules = adminer.apache.modules; | ||
14 | services.websites.env.production.vhostConfs.florian_production = { | ||
15 | certName = "florian"; | ||
16 | certMainHost = "tellesflorian.com"; | ||
17 | hosts = [ "tellesflorian.com" "www.tellesflorian.com" ]; | ||
18 | root = varDir; | ||
19 | extraConfig = [ | ||
20 | (adminer.apache.vhostConf null) | ||
21 | '' | ||
22 | ServerAdmin ${env.server_admin} | ||
23 | |||
24 | <Directory ${varDir}> | ||
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 | } | ||