]);
env = config.myEnv.tools.nextcloud;
varDir = "/var/lib/nextcloud";
- webappName = "tools_nextcloud";
- apacheRoot = "/run/current-system/webapps/${webappName}";
cfg = config.myServices.websites.tools.cloud;
phpFpm = rec {
basedir = builtins.concatStringsSep ":" ([ nextcloud varDir ] ++ nextcloud.apps);
};
config = lib.mkIf cfg.enable {
- # FIXME: find a way to backup the data
services.websites.env.tools.modules = [ "proxy_fcgi" ];
services.websites.env.tools.vhostConfs.cloud = {
certName = "eldiron";
addToCerts = true;
hosts = ["cloud.immae.eu" ];
- root = apacheRoot;
+ root = nextcloud;
extraConfig = [
''
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
- <Directory ${apacheRoot}>
+ <Directory ${nextcloud}>
AcceptPathInfo On
DirectoryIndex index.php
Options FollowSymlinks
];
};
- secrets.keys = [{
- dest = "webapps/tools-nextcloud";
+ secrets.keys."webapps/tools-nextcloud" = {
user = "wwwrun";
group = "wwwrun";
permissions = "0600";
include('${nextcloud}/version.php');
$CONFIG = array (
// FIXME: change this value when nextcloud starts getting slow
- 'instanceid' => '${env.instance_id}1',
+ 'instanceid' => '${env.instance_id}',
'datadirectory' => '/var/lib/nextcloud/',
'passwordsalt' => '${env.password_salt}',
'debug' => false,
'has_rebuilt_cache' => true,
);
'';
- }];
+ };
users.users.root.packages = let
occ = pkgs.writeScriptBin "nextcloud-occ" ''
#! ${pkgs.stdenv.shell}
cd ${nextcloud}
NEXTCLOUD_CONFIG_DIR="${nextcloud}/config" \
exec \
- sudo -u wwwrun ${pkgs.php74}/bin/php \
+ sudo -E -u wwwrun ${pkgs.php74}/bin/php \
-c ${pkgs.php74}/etc/php.ini \
occ $*
'';
${builtins.concatStringsSep "\n" (lib.attrsets.mapAttrsToList (n: v:
"install -D -m 0644 -o wwwrun -g wwwrun -T ${v} ${varDir}/config/${n}.json"
) confs)}
- #install -D -m 0600 -o wwwrun -g wwwrun -T /var/secrets/webapps/tools-nextcloud ${varDir}/config/config.php
+ #install -D -m 0600 -o wwwrun -g wwwrun -T ${config.secrets.fullPaths."webapps/tools-nextcloud"} ${varDir}/config/config.php
'';
};
- # FIXME: add a warning when config.php changes
- system.extraSystemBuilderCmds = ''
- mkdir -p $out/webapps
- ln -s ${nextcloud} $out/webapps/${webappName}
- '';
services.phpfpm.pools.nextcloud = {
user = "wwwrun";
#! ${pkgs.stdenv.shell}
export LOCALE_ARCHIVE=/run/current-system/sw/lib/locale/locale-archive
export PATH=/run/wrappers/bin:$PATH
- ${pkgs.php74}/bin/php -d memory_limit=512M -f ${nextcloud}/cron.php
+ ${pkgs.php74}/bin/php -d memory_limit=2048M -f ${nextcloud}/cron.php
'';
in [
''