diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/createlinks smeserver-nextcloud-1.2.0/createlinks --- smeserver-nextcloud-1.2.0.old/createlinks 2023-08-07 23:05:23.866000000 -0400 +++ smeserver-nextcloud-1.2.0/createlinks 2023-08-17 23:52:20.453000000 -0400 @@ -2,20 +2,23 @@ use esmith::Build::CreateLinks qw(:all); event_actions("nextcloud-update", qw( - nextcloud-conf 20 + nextcloud-conf 04 nextcloud-occ-conf 30 )); event_templates("nextcloud-update", qw( /etc/httpd/conf/httpd.conf /etc/opt/remi/php74/php.d/20-opcache.ini + /etc/opt/remi/php81/php.d/20-opcache.ini /etc/crontab /etc/opt/remi/php74/php-fpm.d/www.conf + /etc/opt/remi/php81/php-fpm.d/www.conf )); event_services("nextcloud-update", qw( httpd-e-smith sigusr1 php74-php-fpm reload-or-restart + php81-php-fpm reload-or-restart )); event_actions("nextcloud-save", qw( @@ -39,17 +42,29 @@ event_templates($event, qw( /etc/httpd/conf/httpd.conf /etc/opt/remi/php74/php.d/20-opcache.ini + /etc/opt/remi/php81/php.d/20-opcache.ini /etc/crontab /etc/opt/remi/php74/php-fpm.d/www.conf + /etc/opt/remi/php81/php-fpm.d/www.conf )); event_services($event, qw( httpd-e-smith sigusr1 php74-php-fpm reload-or-restart + php81-php-fpm reload-or-restart )); +# this is after service restart as it depends on installation of mariadb +# however if we increase initial version of nextcloud >25 then we need to +# change the default of php to 81 or re expand templates a second time +# or web serice will fail event_link("nextcloud-conf", $event, "91"); event_link("nextcloud-occ-conf", $event, "92"); - +#maybe changing to +#event_link("nextcloud-conf", $event, "91"); +#event_link("generic_template_expand", $event, "92"); +#event_link("nextcloud-occ-conf", $event, "93"); +#event_link("adjust-services", $event, "95"); +# or adding the key element in script # Backup use esmith::Build::Backup qw(:all); diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/root/etc/e-smith/events/actions/nextcloud-conf smeserver-nextcloud-1.2.0/root/etc/e-smith/events/actions/nextcloud-conf --- smeserver-nextcloud-1.2.0.old/root/etc/e-smith/events/actions/nextcloud-conf 2023-08-07 23:05:23.905000000 -0400 +++ smeserver-nextcloud-1.2.0/root/etc/e-smith/events/actions/nextcloud-conf 2023-08-17 23:26:23.124000000 -0400 @@ -66,6 +66,8 @@ fi fi +/usr/bin/occ config:system:set --type=bool --value=false simpleSignUpLink.shown + #samba needed folder to put gencache.tdb if [ ! -d /var/www/.cache/samba ]; then mkdir -p /var/www/.cache/samba diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/crontab/98nextcloud smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/crontab/98nextcloud --- smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/crontab/98nextcloud 2023-08-07 23:05:23.913000000 -0400 +++ smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/crontab/98nextcloud 2023-08-17 22:59:18.310000000 -0400 @@ -1,5 +1,14 @@ # nextcloud cron -*/15 * * * * www /usr/bin/php74 --define apc.enable_cli=1 --define memory_limit=512M -f /usr/share/nextcloud/cron.php > /dev/null 2>&1 +*/15 * * * * www { + $OUT="/usr/bin/php74"; + $version="24"; + $search=qr/\s*'version'\s*=>\s*'([0-9]{2})\.[0-9]{1,2}.*/; + if ( open NC, "; + close NC; + } + $OUT="/usr/bin/php81" if $version >= 25; +} --define apc.enable_cli=1 --define memory_limit={ $memory=$nextcloud{'memory_limit'}||'1024M';} -f /usr/share/nextcloud/cron.php > /dev/null 2>&1 # nextcloud db update 19 2 * * * root /usr/bin/nc_dbupdate > /dev/null 2>&1 diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98nextcloud smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98nextcloud --- smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98nextcloud 2023-08-07 23:05:23.879000000 -0400 +++ smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98nextcloud 2023-08-17 23:12:47.550000000 -0400 @@ -46,9 +46,18 @@ _EOF } if ($fastcgi_mod eq 'mod_proxy_fcgi'){ - $php =<<'_EOF'; - - SetHandler "proxy:unix:/var/run/php-fpm/php74-nextcloud.sock|fcgi://localhost" + my $phpversion="74"; + my $version="24"; + my $search=qr/\s*'version'\s*=>\s*'([0-9]{2})\.[0-9]{1,2}.*/; + if ( open NC, "; + close NC; + } + $phpversion="81" if $version >= 25; + + $php =<<"_EOF"; + + SetHandler "proxy:unix:/var/run/php-fpm/php${phpversion}-nextcloud.sock|fcgi://localhost" _EOF } diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/opt/remi/php74/php.d/20-opcache.ini/10base smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/opt/remi/php74/php.d/20-opcache.ini/10base --- smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/opt/remi/php74/php.d/20-opcache.ini/10base 2023-08-07 23:05:23.898000000 -0400 +++ smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/opt/remi/php74/php.d/20-opcache.ini/10base 2023-08-17 23:37:45.136000000 -0400 @@ -1,7 +1,7 @@ opcache.enable=1 opcache.file_cache= /var/opt/remi/php74/lib/php/opcache opcache.enable_cli= 1 -opcache.interned_strings_buffer= {$nextcloud{'opcache.interned_strings_buffer'} || 16;} +opcache.interned_strings_buffer= {$nextcloud{'opcache.interned_strings_buffer'} || 32;} opcache.max_accelerated_files= 10000 opcache.memory_consumption= {$nextcloud{'opcache.memory_consumption'} || 128;} opcache.save_comments= 1 diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/opt/remi/php81/php.d/20-opcache.ini/10base smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/opt/remi/php81/php.d/20-opcache.ini/10base --- smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/opt/remi/php81/php.d/20-opcache.ini/10base 1969-12-31 19:00:00.000000000 -0500 +++ smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/opt/remi/php81/php.d/20-opcache.ini/10base 2023-08-17 23:38:15.437000000 -0400 @@ -0,0 +1,9 @@ +opcache.enable=1 +opcache.file_cache= /var/opt/remi/php81/lib/php/opcache +opcache.enable_cli= 1 +opcache.interned_strings_buffer= {$nextcloud{'opcache.interned_strings_buffer'} || 32;} +opcache.max_accelerated_files= 10000 +opcache.memory_consumption= {$nextcloud{'opcache.memory_consumption'} || 128;} +opcache.save_comments= 1 +opcache.revalidate_freq= 1 + diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15Nextcloud smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15Nextcloud --- smeserver-nextcloud-1.2.0.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15Nextcloud 2023-08-07 23:05:23.898000000 -0400 +++ smeserver-nextcloud-1.2.0/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15Nextcloud 2023-08-17 23:17:32.313000000 -0400 @@ -1,13 +1,21 @@ { + my $phpversion="74"; + my $version="24"; + my $search=qr/\s*'version'\s*=>\s*'([0-9]{2})\.[0-9]{1,2}.*/; + if ( open NC, "; + close NC; + } + $phpversion="81" if $version >= 25; -if ($PHP_VERSION eq '74'){ +if ($PHP_VERSION eq $phpversion){ if (($nextcloud{'status'} || 'disabled') eq 'enabled'){ my $max_upload_size = ($nextcloud{MaxUploadSize} || '4096'); $max_upload_size .= 'M' if ($max_upload_size =~ m/^\d+$/); my $memory_limit = ($nextcloud{MemoryLimit} || '512M'); $memory_limit .= 'M' if ($memory_limit =~ m/^\d+$/); my $open_basedir= $nextcloud{PHPBaseDir} || ''; - $open_basedir = "/usr/share/nextcloud:/var/lib/nextcloud:/var/log/nextcloud.log:/var/lib/php/nextcloud:/home/e-smith/files/nextcloud:/dev/urandom:/proc/meminfo:$open_basedir"; + $open_basedir = "/usr/share/nextcloud:/var/lib/nextcloud:/var/log/nextcloud.log:/var/lib/php/nextcloud:/home/e-smith/files/nextcloud:/dev/urandom:/proc/meminfo:/usr/share/GeoIP/GeoLite2-Country.mmdb:/proc/cpuinfo:$open_basedir"; my $id = 'nextcloud'; my $max_children = $nextcloud{'PHPmaxChildren'} || 20; my $min_spare_servers = $nextcloud{'PHPminServers'} || 4; diff -Nur --no-dereference smeserver-nextcloud-1.2.0.old/root/usr/bin/occ smeserver-nextcloud-1.2.0/root/usr/bin/occ --- smeserver-nextcloud-1.2.0.old/root/usr/bin/occ 2023-08-07 23:05:23.914000000 -0400 +++ smeserver-nextcloud-1.2.0/root/usr/bin/occ 2023-08-17 22:58:48.265000000 -0400 @@ -1,3 +1,8 @@ #!/bin/bash - -/usr/sbin/runuser -u www -- /usr/bin/php74 -d memory_limit=1024M -d apc.enable_cli=1 /usr/share/nextcloud/occ "$@" +majversion=$(/usr/bin/grep -Eo "'version'.*[0-9]{2}\." /usr/share/nextcloud/config/config.php |/usr/bin/grep -Eo "[0-9]{2}"|head -1) +memory=$(config getprop nextcloud memory_limit|| echo "1024M") +myphp=/usr/bin/php74 +if [[ $majversion -ge '25' ]]; then + myphp=/usr/bin/php81 +fi +/usr/sbin/runuser -u www -- $myphp -d memory_limit=$memory -d apc.enable_cli=1 /usr/share/nextcloud/occ "$@"