diff --git a/.forgejo/workflows/package.yml b/.forgejo/workflows/package.yml index 8966ea5..583a647 100644 --- a/.forgejo/workflows/package.yml +++ b/.forgejo/workflows/package.yml @@ -11,7 +11,7 @@ jobs: # One step per package - nextcloud-27: &job + nextcloud-28: &job runs-on: docker container: image: git.kabelsalat.ch/s3lph/package-pipeline-builder:latest @@ -34,28 +34,6 @@ jobs: --upload-file "${file}" \ "${API_REPOSITORY_DEB}" done - nextcloud-27-app-calendar: *job - nextcloud-27-app-contacts: *job - nextcloud-27-app-deck: *job - nextcloud-27-app-forms: *job - nextcloud-27-app-gpoddersync: *job - nextcloud-27-app-gpxpod: *job - nextcloud-27-app-groupfolders: *job - nextcloud-27-app-polls: *job - nextcloud-27-app-previewgenerator: *job - nextcloud-27-app-mail: *job - nextcloud-27-app-news: *job - nextcloud-27-app-nextpod: *job - nextcloud-27-app-notes: *job - nextcloud-27-app-notify-push: *job - nextcloud-27-app-richdocuments: *job - nextcloud-27-app-richdocumentscode: *job - nextcloud-27-app-talk: *job - nextcloud-27-app-tasks: *job - nextcloud-27-app-twofactor-webauthn: *job - nextcloud-27-app-user-oidc: *job - - nextcloud-28: *job nextcloud-28-app-calendar: *job nextcloud-28-app-contacts: *job nextcloud-28-app-deck: *job @@ -77,3 +55,25 @@ jobs: nextcloud-28-app-twofactor-webauthn: *job nextcloud-28-app-user-oidc: *job + nextcloud-29: *job + nextcloud-29-app-calendar: *job + nextcloud-29-app-contacts: *job + nextcloud-29-app-deck: *job + nextcloud-29-app-forms: *job + nextcloud-29-app-gpoddersync: *job + nextcloud-29-app-gpxpod: *job + nextcloud-29-app-groupfolders: *job + nextcloud-29-app-polls: *job + nextcloud-29-app-previewgenerator: *job + nextcloud-29-app-mail: *job + nextcloud-29-app-news: *job + nextcloud-29-app-nextpod: *job + nextcloud-29-app-notes: *job + nextcloud-29-app-notify-push: *job + nextcloud-29-app-richdocuments: *job + nextcloud-29-app-richdocumentscode: *job + nextcloud-29-app-talk: *job + nextcloud-29-app-tasks: *job + nextcloud-29-app-twofactor-webauthn: *job + nextcloud-29-app-user-oidc: *job + diff --git a/README.md b/README.md index 2588ca9..7f773d4 100644 --- a/README.md +++ b/README.md @@ -10,26 +10,6 @@ information, please see [https://repo.s3lph.me/](https://repo.s3lph.me/). ## Packages -- [nextcloud-27](https://github.com/nextcloud/server) (Code integrity check fails due to patches applied during build process!) -- [nextcloud-27-app-calendar](https://apps.nextcloud.com/apps/calendar) -- [nextcloud-27-app-contacts](https://apps.nextcloud.com/apps/contacts) -- [nextcloud-27-app-deck](https://apps.nextcloud.com/apps/deck) -- [nextcloud-27-app-forms](https://apps.nextcloud.com/apps/forms) -- [nextcloud-27-app-gpoddersync](https://apps.nextcloud.com/apps/gpoddersync) -- [nextcloud-27-app-gpxpod](https://apps.nextcloud.com/apps/gpxpod) -- [nextcloud-27-app-groupfolders](https://apps.nextcloud.com/apps/groupfolders) -- [nextcloud-27-app-polls](https://apps.nextcloud.com/apps/polls) -- [nextcloud-27-app-previewgenerator](https://apps.nextcloud.com/apps/previewgenerator) -- [nextcloud-27-app-mail](https://apps.nextcloud.com/apps/mail) -- [nextcloud-27-app-news](https://apps.nextcloud.com/apps/news) -- [nextcloud-27-app-nextpod](https://apps.nextcloud.com/apps/nextpod) -- [nextcloud-27-app-notes](https://apps.nextcloud.com/apps/notes) -- [nextcloud-27-app-notify-push](https://apps.nextcloud.com/apps/notify_push) -- [nextcloud-27-app-richdocuments](https://apps.nextcloud.com/apps/richdocuments) -- [nextcloud-27-app-richdocumentscode](https://apps.nextcloud.com/apps/richdocumentscode) -- [nextcloud-27-app-tasks](https://apps.nextcloud.com/apps/tasks) -- [nextcloud-27-app-twofactor-webauthn](https://apps.nextcloud.com/apps/twofactor_webauthn) -- [nextcloud-27-app-user-oidc](https://apps.nextcloud.com/apps/user_oidc) - [nextcloud-28](https://github.com/nextcloud/server) (Code integrity check fails due to patches applied during build process!) - [nextcloud-28-app-calendar](https://apps.nextcloud.com/apps/calendar) - [nextcloud-28-app-contacts](https://apps.nextcloud.com/apps/contacts) @@ -50,3 +30,23 @@ information, please see [https://repo.s3lph.me/](https://repo.s3lph.me/). - [nextcloud-28-app-tasks](https://apps.nextcloud.com/apps/tasks) - [nextcloud-28-app-twofactor-webauthn](https://apps.nextcloud.com/apps/twofactor_webauthn) - [nextcloud-28-app-user-oidc](https://apps.nextcloud.com/apps/user_oidc) +- [nextcloud-29](https://github.com/nextcloud/server) (Code integrity check fails due to patches applied during build process!) +- [nextcloud-29-app-calendar](https://apps.nextcloud.com/apps/calendar) +- [nextcloud-29-app-contacts](https://apps.nextcloud.com/apps/contacts) +- [nextcloud-29-app-deck](https://apps.nextcloud.com/apps/deck) +- [nextcloud-29-app-forms](https://apps.nextcloud.com/apps/forms) +- [nextcloud-29-app-gpoddersync](https://apps.nextcloud.com/apps/gpoddersync) !!! +- [nextcloud-29-app-gpxpod](https://apps.nextcloud.com/apps/gpxpod) +- [nextcloud-29-app-groupfolders](https://apps.nextcloud.com/apps/groupfolders) !!! +- [nextcloud-29-app-polls](https://apps.nextcloud.com/apps/polls) +- [nextcloud-29-app-previewgenerator](https://apps.nextcloud.com/apps/previewgenerator) +- [nextcloud-29-app-mail](https://apps.nextcloud.com/apps/mail) +- [nextcloud-29-app-news](https://apps.nextcloud.com/apps/news) +- [nextcloud-29-app-nextpod](https://apps.nextcloud.com/apps/nextpod) +- [nextcloud-29-app-notes](https://apps.nextcloud.com/apps/notes) +- [nextcloud-29-app-notify-push](https://apps.nextcloud.com/apps/notify_push) +- [nextcloud-29-app-richdocuments](https://apps.nextcloud.com/apps/richdocuments) +- [nextcloud-29-app-richdocumentscode](https://apps.nextcloud.com/apps/richdocumentscode) +- [nextcloud-29-app-tasks](https://apps.nextcloud.com/apps/tasks) !!! +- [nextcloud-29-app-twofactor-webauthn](https://apps.nextcloud.com/apps/twofactor_webauthn) +- [nextcloud-29-app-user-oidc](https://apps.nextcloud.com/apps/user_oidc) diff --git a/nextcloud-27-app-news/package.sh b/nextcloud-27-app-news/package.sh deleted file mode 100755 index 30e57dd..0000000 --- a/nextcloud-27-app-news/package.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -. ../.skel/nextcloud-app/build-nextcloud-app - -post_prepare() { - github_changelog nextcloud/news -} - -build_nextcloud_app news 27 diff --git a/nextcloud-27-app-nextpod/package.sh b/nextcloud-27-app-nextpod/package.sh deleted file mode 100755 index 503c3bf..0000000 --- a/nextcloud-27-app-nextpod/package.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -. ../.skel/nextcloud-app/build-nextcloud-app - -export ADDITIONAL_DEPS=", nextcloud-27-app-gpoddersync" - -build_nextcloud_app nextpod 27 - diff --git a/nextcloud-27-app-calendar/package.sh b/nextcloud-29-app-calendar/package.sh similarity index 78% rename from nextcloud-27-app-calendar/package.sh rename to nextcloud-29-app-calendar/package.sh index 4267df9..9334605 100755 --- a/nextcloud-27-app-calendar/package.sh +++ b/nextcloud-29-app-calendar/package.sh @@ -6,5 +6,5 @@ post_prepare() { github_changelog nextcloud/calendar } -build_nextcloud_app calendar 27 +build_nextcloud_app calendar 29 diff --git a/nextcloud-27-app-contacts/package.sh b/nextcloud-29-app-contacts/package.sh similarity index 78% rename from nextcloud-27-app-contacts/package.sh rename to nextcloud-29-app-contacts/package.sh index 103f936..449f23d 100755 --- a/nextcloud-27-app-contacts/package.sh +++ b/nextcloud-29-app-contacts/package.sh @@ -6,5 +6,5 @@ post_prepare() { github_changelog nextcloud/contacts } -build_nextcloud_app contacts 27 +build_nextcloud_app contacts 29 diff --git a/nextcloud-27-app-deck/package.sh b/nextcloud-29-app-deck/package.sh similarity index 80% rename from nextcloud-27-app-deck/package.sh rename to nextcloud-29-app-deck/package.sh index ff4786c..a930e31 100755 --- a/nextcloud-27-app-deck/package.sh +++ b/nextcloud-29-app-deck/package.sh @@ -6,5 +6,5 @@ post_prepare() { github_changelog nextcloud/deck } -build_nextcloud_app deck 27 +build_nextcloud_app deck 29 diff --git a/nextcloud-27-app-forms/package.sh b/nextcloud-29-app-forms/package.sh similarity index 80% rename from nextcloud-27-app-forms/package.sh rename to nextcloud-29-app-forms/package.sh index 48f5d79..a365563 100755 --- a/nextcloud-27-app-forms/package.sh +++ b/nextcloud-29-app-forms/package.sh @@ -6,4 +6,4 @@ post_prepare() { github_changelog nextcloud/forms } -build_nextcloud_app forms 27 +build_nextcloud_app forms 29 diff --git a/nextcloud-27-app-gpoddersync/package.sh b/nextcloud-29-app-gpoddersync/package.sh similarity index 86% rename from nextcloud-27-app-gpoddersync/package.sh rename to nextcloud-29-app-gpoddersync/package.sh index 4a665a9..4d38dd4 100755 --- a/nextcloud-27-app-gpoddersync/package.sh +++ b/nextcloud-29-app-gpoddersync/package.sh @@ -6,5 +6,5 @@ post_prepare() { cat "${PKGDIR}/usr/lib/nextcloud/nextcloud-apps/${APP}/CHANGELOG.md" | gzip -9n > "${PKGDIR}/usr/share/doc/${PKGNAME}/changelog.gz" } -build_nextcloud_app gpoddersync 27 +build_nextcloud_app gpoddersync 29 diff --git a/nextcloud-27-app-gpxpod/package.sh b/nextcloud-29-app-gpxpod/package.sh similarity index 79% rename from nextcloud-27-app-gpxpod/package.sh rename to nextcloud-29-app-gpxpod/package.sh index 32d8302..a78da97 100755 --- a/nextcloud-27-app-gpxpod/package.sh +++ b/nextcloud-29-app-gpxpod/package.sh @@ -6,5 +6,5 @@ post_prepare() { github_changelog julien-nc/gpxpod } -build_nextcloud_app gpxpod 27 +build_nextcloud_app gpxpod 29 diff --git a/nextcloud-27-app-groupfolders/package.sh b/nextcloud-29-app-groupfolders/package.sh similarity index 77% rename from nextcloud-27-app-groupfolders/package.sh rename to nextcloud-29-app-groupfolders/package.sh index 5f4cc70..eedef80 100755 --- a/nextcloud-27-app-groupfolders/package.sh +++ b/nextcloud-29-app-groupfolders/package.sh @@ -6,5 +6,5 @@ post_prepare() { github_changelog nextcloud/groupfolders } -build_nextcloud_app groupfolders 27 +build_nextcloud_app groupfolders 29 diff --git a/nextcloud-27-app-mail/package.sh b/nextcloud-29-app-mail/package.sh similarity index 80% rename from nextcloud-27-app-mail/package.sh rename to nextcloud-29-app-mail/package.sh index a78e74c..309cd3d 100755 --- a/nextcloud-27-app-mail/package.sh +++ b/nextcloud-29-app-mail/package.sh @@ -6,4 +6,4 @@ post_prepare() { github_changelog nextcloud/mail } -build_nextcloud_app mail 27 +build_nextcloud_app mail 29 diff --git a/nextcloud-29-app-news/package.sh b/nextcloud-29-app-news/package.sh new file mode 100755 index 0000000..cf2e187 --- /dev/null +++ b/nextcloud-29-app-news/package.sh @@ -0,0 +1,68 @@ +#!/bin/bash + +. ../.skel/nextcloud-app/build-nextcloud-app + +function pre_fetch() { + # Filter from .skel/build-nextcloud-app, but with restriction to stable versions removed + export _NCAPPS_JQ='.[] | select(.id == $app) | .releases[] | "\(.version) \(.download) \(.rawPlatformVersionSpec)"' +} + +function _prepare() { + mkdir -p \ + "${PKGDIR}/DEBIAN" \ + "${PKGDIR}/usr/share/doc/${PKGNAME}" \ + "${PKGDIR}/usr/lib/nextcloud/nextcloud-apps" + VERSION=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r .info.version | sed -re 's/-/~/g') + SUMMARY=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.summary | if type == "array" then (.[] | select(.["@lang"]=="en") | .["#text"]) else (.) end') + DESCRIPTION=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.description | if type == "array" then (.[] | select(.["@lang"]=="en") | .["#text"]) else (.) end') + PHP_MIN=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.dependencies.php."@min-version"') + PHP_MAX=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.dependencies.php."@max-version"') + PHP_DEP="" +# #f [[ "${PHP_MIN}" != "null" ]]; then +# PHP_DEP="${PHP_DEP}, php (>= ${PHP_MIN})" +# fi +# if [[ "${PHP_MAX}" != "null" ]]; then +# # awk increments the last version component, from https://stackoverflow.com/a/69489163 +# PHP_MAX=$(echo "${PHP_MAX}" | awk -F. -v OFS=. '{$NF=$NF+1;print}') +# PHP_DEP="${PHP_DEP}, php (<< ${PHP_MAX})" +# fi + cp -r "${SRCDIR}/${APP}" "${PKGDIR}/usr/lib/nextcloud/nextcloud-apps/${APP}" + cat > "${PKGDIR}/DEBIAN/control" < "${PKGDIR}/DEBIAN/postinst" < "${PKGDIR}/usr/share/doc/${PKGNAME}/changelog.gz" } -build_nextcloud_app twofactor_webauthn 27 +build_nextcloud_app twofactor_webauthn 29 diff --git a/nextcloud-27-app-user-oidc/package.sh b/nextcloud-29-app-user-oidc/package.sh similarity index 86% rename from nextcloud-27-app-user-oidc/package.sh rename to nextcloud-29-app-user-oidc/package.sh index 08d971e..2cce1b2 100755 --- a/nextcloud-27-app-user-oidc/package.sh +++ b/nextcloud-29-app-user-oidc/package.sh @@ -6,5 +6,5 @@ post_prepare() { cat "${PKGDIR}/usr/lib/nextcloud/nextcloud-apps/${APP}/CHANGELOG.md" | gzip -9n > "${PKGDIR}/usr/share/doc/${PKGNAME}/changelog.gz" } -build_nextcloud_app user_oidc 27 +build_nextcloud_app user_oidc 29 diff --git a/nextcloud-27/config.php b/nextcloud-29/config.php similarity index 100% rename from nextcloud-27/config.php rename to nextcloud-29/config.php diff --git a/nextcloud-27/debian.conffiles b/nextcloud-29/debian.conffiles similarity index 100% rename from nextcloud-27/debian.conffiles rename to nextcloud-29/debian.conffiles diff --git a/nextcloud-27/debian.control b/nextcloud-29/debian.control similarity index 87% rename from nextcloud-27/debian.control rename to nextcloud-29/debian.control index 14cd32a..1797410 100644 --- a/nextcloud-27/debian.control +++ b/nextcloud-29/debian.control @@ -1,10 +1,10 @@ -Package: nextcloud-27 +Package: nextcloud-29 Version: __VERSION__ Maintainer: __MAINTAINER__ Section: web Priority: optional Architecture: all -Depends: php-cli (>=8.0), php-curl, php-gd, php-mbstring, php-xml, php-zip, php-bz2, php-intl +Depends: php-cli (>=8.1), php-curl, php-gd, php-mbstring, php-xml, php-zip, php-bz2, php-intl Suggests: apache2, mariadb-server, php-mysql, php-redis Provides: nextcloud, nextcloud-app-twofactor-totp Conflicts: nextcloud, nextcloud-app-twofactor-totp diff --git a/nextcloud-27/debian.postinst b/nextcloud-29/debian.postinst similarity index 100% rename from nextcloud-27/debian.postinst rename to nextcloud-29/debian.postinst diff --git a/nextcloud-27/nextcloud-cron.service b/nextcloud-29/nextcloud-cron.service similarity index 100% rename from nextcloud-27/nextcloud-cron.service rename to nextcloud-29/nextcloud-cron.service diff --git a/nextcloud-27/nextcloud-cron.timer b/nextcloud-29/nextcloud-cron.timer similarity index 100% rename from nextcloud-27/nextcloud-cron.timer rename to nextcloud-29/nextcloud-cron.timer diff --git a/nextcloud-27/nextcloud.site.conf b/nextcloud-29/nextcloud.site.conf similarity index 100% rename from nextcloud-27/nextcloud.site.conf rename to nextcloud-29/nextcloud.site.conf diff --git a/nextcloud-27/occ.sh b/nextcloud-29/occ.sh similarity index 100% rename from nextcloud-27/occ.sh rename to nextcloud-29/occ.sh diff --git a/nextcloud-27/package.sh b/nextcloud-29/package.sh similarity index 99% rename from nextcloud-27/package.sh rename to nextcloud-29/package.sh index 31ae049..436064a 100755 --- a/nextcloud-27/package.sh +++ b/nextcloud-29/package.sh @@ -4,7 +4,7 @@ set -exo pipefail . ../.skel/helpers.sh -VERSION=27 +VERSION=29 URL="https://download.nextcloud.com/server/releases/latest-${VERSION}.tar.bz2" diff --git a/nextcloud-27/patches/01_isfairuse_userfacing_ui.patch b/nextcloud-29/patches/01_isfairuse_userfacing_ui.patch similarity index 100% rename from nextcloud-27/patches/01_isfairuse_userfacing_ui.patch rename to nextcloud-29/patches/01_isfairuse_userfacing_ui.patch