1 { adminer, php73, forcePhpSocket ? null }:
6 install -m 0755 -o ${apache.user} -g ${apache.group} -d /var/lib/php/sessions/adminer
7 install -m 0755 -o ${apache.user} -g ${apache.group} -d /var/lib/php/tmp/adminer
14 phpPackage = (php73.override {
15 config.php.mysqlnd = true;
16 config.php.mysqli = false;
17 config.php.pdo-mysql = false;
18 }).overrideAttrs(old: rec {
19 configureFlags = old.configureFlags ++ [
20 "--with-mysqli=shared,mysqlnd"
24 extension=${phpPackage}/lib/php/extensions/mysqli.so
27 "listen.owner" = apache.user;
28 "listen.group" = apache.group;
30 "pm.max_children" = "5";
31 "pm.process_idle_timeout" = "60";
32 #"php_admin_flag[log_errors]" = "on";
33 # Needed to avoid clashes in browser cookies (same domain)
34 "php_value[session.name]" = "AdminerPHPSESSID";
35 "php_admin_value[open_basedir]" = "${webRoot}:/tmp:/var/lib/php/sessions/adminer:/var/lib/php/tmp/adminer";
36 "php_admin_value[session.save_path]" = "/var/lib/php/sessions/adminer";
37 "php_admin_value[upload_tmp_dir]" = "/var/lib/php/tmp/adminer";
43 modules = [ "proxy_fcgi" ];
44 webappName = "_adminer";
45 root = "/run/current-system/webapps/${webappName}";
46 vhostConf = socket: ''
47 Alias /adminer ${root}
49 DirectoryIndex index.php
51 SetHandler "proxy:unix:${if forcePhpSocket != null then forcePhpSocket else socket}|fcgi://localhost"
55 Require ldap-group cn=users,cn=mysql,cn=pam,ou=services,dc=immae,dc=eu
56 Require ldap-group cn=users,cn=postgresql,cn=pam,ou=services,dc=immae,dc=eu