Upgrade to php8.1 and upgrade old nextcloud versions using docker #2319
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In addition to upgrading php to 8.1, this includes a nextcloud upgrade using docker that I had mentioned in #2309 (comment).
for jammy systems upgrading from miab <= v64, it removes php8.0 and the ondrej/php PPA and re-installs the system php8.1
it adds a docker-based Nextcloud migration that does not rely on the installed php to succeed, allowing backups of older systems to be migrated
As part of the nextcloud migration, I removed the manual download and installation of contacts and calendar.
Installing nextcloud contacts and calendar via the tgz is doing nothing currently.
The downloads are extracted into the nextcloud apps folder as "contacts-5.3.0" and "calendar-4.4.2" then are expected to work as-is. However, they're not usable to Nextcloud. If you do a "occ app:enable contacts-5.3.0" an exception is thrown about a missing composer vendor folder.
The command "occ app:enable contacts" at the bottom of setup/nextcloud.sh actually downloads and installs contacts from the nextcloud app store.
If you run "occ app:list" on a fresh install you'll see calendar 4.5.2 and contacts 5.4.2 installed and not the versions specified by the install script - they show up as disabled by app:list.
With this PR, Nextcloud 20 and higher can be upgraded to the current version 25 (I tested using a v57 duplicity backup). Older versions of Nextcloud could be added to the script as well so they could get upgraded, too. Just need to dig up the hashes.
I understand Docker may be off the table, and using ondrej/php may work just as well, I don't know. But it's an option.