activationScript = ''
install -m 0755 -o ${apache.user} -g ${apache.group} -d /var/lib/php/sessions/yourls
'';
- keys.tools-yourls = {
- destDir = "/run/keys/webapps";
+ keys = [{
+ dest = "webapps/tools-yourls";
user = apache.user;
group = apache.group;
permissions = "0400";
define( 'LDAPAUTH_USERCACHE_TYPE', 0);
'';
- };
+ }];
webRoot = stdenv.mkDerivation (fetchedGithub ./yourls.json // rec {
installPhase = ''
mkdir -p $out
cp -a */ *.php $out/
cp sample-robots.txt $out/robots.txt
- ln -sf /run/keys/webapps/tools-yourls $out/includes/config.php
+ ln -sf /var/secrets/webapps/tools-yourls $out/includes/config.php
${builtins.concatStringsSep "\n" (
lib.attrsets.mapAttrsToList (name: value: "ln -sf ${value} $out/user/plugins/${name}") plugins
)}
'';
};
phpFpm = rec {
- serviceDeps = [ "mysql.service" "openldap.service" "tools-yourls-key.service" ];
+ serviceDeps = [ "mysql.service" "openldap.service" ];
basedir = builtins.concatStringsSep ":" (
- [ webRoot "/run/keys/webapps/tools-yourls" ]
+ [ webRoot "/var/secrets/webapps/tools-yourls" ]
++ lib.attrsets.mapAttrsToList (name: value: value) plugins);
socket = "/var/run/phpfpm/yourls.sock";
pool = ''
; Needed to avoid clashes in browser cookies (same domain)
php_value[session.name] = YourlsPHPSESSID
- php_admin_value[open_basedir] = "${basedir}:/tmp"
+ php_admin_value[open_basedir] = "${basedir}:/tmp:/var/lib/php/sessions/yourls"
php_admin_value[session.save_path] = "/var/lib/php/sessions/yourls"
'';
};