From 5c477395eb609be0a43d04662ee4c916fe9c8898 Mon Sep 17 00:00:00 2001 From: yopito Date: Thu, 29 Aug 2019 23:45:55 +0200 Subject: [PATCH 1/2] New package: nextcloud-client 2.6.0 --- srcpkgs/nextcloud-client-devel | 1 + srcpkgs/nextcloud-client-dolphin | 1 + srcpkgs/nextcloud-client/INSTALL.msg | 2 + .../patches/libressl-no-rsa_oaep_md.patch | 23 ++++++++++ srcpkgs/nextcloud-client/template | 46 +++++++++++++++++++ 5 files changed, 73 insertions(+) create mode 120000 srcpkgs/nextcloud-client-devel create mode 120000 srcpkgs/nextcloud-client-dolphin create mode 100644 srcpkgs/nextcloud-client/INSTALL.msg create mode 100644 srcpkgs/nextcloud-client/patches/libressl-no-rsa_oaep_md.patch create mode 100644 srcpkgs/nextcloud-client/template diff --git a/srcpkgs/nextcloud-client-devel b/srcpkgs/nextcloud-client-devel new file mode 120000 index 00000000000..50c67ada861 --- /dev/null +++ b/srcpkgs/nextcloud-client-devel @@ -0,0 +1 @@ +nextcloud-client \ No newline at end of file diff --git a/srcpkgs/nextcloud-client-dolphin b/srcpkgs/nextcloud-client-dolphin new file mode 120000 index 00000000000..50c67ada861 --- /dev/null +++ b/srcpkgs/nextcloud-client-dolphin @@ -0,0 +1 @@ +nextcloud-client \ No newline at end of file diff --git a/srcpkgs/nextcloud-client/INSTALL.msg b/srcpkgs/nextcloud-client/INSTALL.msg new file mode 100644 index 00000000000..b3e877dc379 --- /dev/null +++ b/srcpkgs/nextcloud-client/INSTALL.msg @@ -0,0 +1,2 @@ +NextCloud client end-to-end encryption (e2e) is currently unavailable +(LibreSSL 2.9.2 does not provide EVP_PKEY_CTX_set_rsa_oaep_md primitive) diff --git a/srcpkgs/nextcloud-client/patches/libressl-no-rsa_oaep_md.patch b/srcpkgs/nextcloud-client/patches/libressl-no-rsa_oaep_md.patch new file mode 100644 index 00000000000..47c54fff778 --- /dev/null +++ b/srcpkgs/nextcloud-client/patches/libressl-no-rsa_oaep_md.patch @@ -0,0 +1,23 @@ +source: https://github.com/nextcloud/desktop/issues/738 + +--- src/libsync/clientsideencryption.cpp.ORIG 2019-07-25 12:20:49.000000000 +0200 ++++ src/libsync/clientsideencryption.cpp 2019-07-28 12:56:18.813514323 +0200 +@@ -35,6 +35,18 @@ + + #include "wordlist.h" + ++/* libessl 2.92 does not provide EVP_PKEY_CTX_set_rsa_oaep_md ++ * So with LibreSSL EVP_PKEY_CTX_ctrl() should explicitly return an error ++ * "operation not supported" when you try to use e2e ++ */ ++#ifndef EVP_PKEY_CTX_set_rsa_oaep_md ++#define EVP_PKEY_CTRL_RSA_OAEP_MD (EVP_PKEY_ALG_CTRL + 9) ++#define EVP_PKEY_CTRL_GET_RSA_OAEP_MD (EVP_PKEY_ALG_CTRL + 11) ++#define EVP_PKEY_CTX_set_rsa_oaep_md(ctx, md) \ ++ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \ ++ EVP_PKEY_CTRL_RSA_OAEP_MD, 0, (void *)(md)) ++#endif ++ + QDebug operator<<(QDebug out, const std::string& str) + { + out << QString::fromStdString(str); diff --git a/srcpkgs/nextcloud-client/template b/srcpkgs/nextcloud-client/template new file mode 100644 index 00000000000..b7a4ea38221 --- /dev/null +++ b/srcpkgs/nextcloud-client/template @@ -0,0 +1,46 @@ +# Template file for 'nextcloud-client' +pkgname=nextcloud-client +version=2.6.0 +revision=1 +wrksrc="desktop-${version}" +build_style=cmake +configure_args="-Wno-dev" +hostmakedepends="pkg-config" +makedepends="qt5-tools-devel qt5-webengine-devel qt5-declarative-devel + qt5-webchannel-devel qt5-location-devel qtkeychain-qt5-devel sqlite-devel + qt5-webkit-devel libcloudproviders-devel extra-cmake-modules kio-devel" +conf_files="/etc/Nextcloud/sync-exclude.lst" +short_desc="NextCloud Desktop client" +maintainer="yopito " +license="GPL-2.0-or-later" +homepage="https://nextcloud.com/clients/" +distfiles="https://github.com/nextcloud/desktop/archive/v${version}.tar.gz" +checksum=7b3f3c14d2e44826a5183fd59a7412c6dd5ed00296873e35c566f75c14c3a3ea + +case "$XBPS_TARGET_MACHINE" in + armv6*|armv7*) broken="qt5-tools-devel unavailable" ;; +esac + +if [ "$CROSS_BUILD" ]; then + hostmakedepends+=" qt5-qmake qt5-host-tools qt5-tools" +fi + +nextcloud-client-dolphin_package() { + short_desc+=" - KDE dolphin integration" + depends="nextcloud-client>=${version}_${revision}" + pkg_install() { + vmove usr/lib/libnextclouddolphinpluginhelper.so + vmove usr/lib/qt5 + vmove usr/share/kservices5 + } +} + +nextcloud-client-devel_package() { + depends="nextcloud-client>=${version}_${revision}" + short_desc+=" - development files" + pkg_install() { + vmove usr/include + vmove usr/lib/libnextcloudsync.so + vmove "usr/lib/nextcloud/*.so" + } +} From 2b12bd29cff9eb2449d5655549979fe6f6a9412a Mon Sep 17 00:00:00 2001 From: yopito Date: Wed, 16 Oct 2019 08:24:23 +0200 Subject: [PATCH 2/2] nextcloud-client: add dolphin build_option --- srcpkgs/nextcloud-client/template | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/srcpkgs/nextcloud-client/template b/srcpkgs/nextcloud-client/template index b7a4ea38221..46d0af2b204 100644 --- a/srcpkgs/nextcloud-client/template +++ b/srcpkgs/nextcloud-client/template @@ -8,7 +8,7 @@ configure_args="-Wno-dev" hostmakedepends="pkg-config" makedepends="qt5-tools-devel qt5-webengine-devel qt5-declarative-devel qt5-webchannel-devel qt5-location-devel qtkeychain-qt5-devel sqlite-devel - qt5-webkit-devel libcloudproviders-devel extra-cmake-modules kio-devel" + qt5-webkit-devel libcloudproviders-devel $(vopt_if dolphin 'extra-cmake-modules kio-devel')" conf_files="/etc/Nextcloud/sync-exclude.lst" short_desc="NextCloud Desktop client" maintainer="yopito " @@ -17,14 +17,21 @@ homepage="https://nextcloud.com/clients/" distfiles="https://github.com/nextcloud/desktop/archive/v${version}.tar.gz" checksum=7b3f3c14d2e44826a5183fd59a7412c6dd5ed00296873e35c566f75c14c3a3ea +build_options="dolphin" +desc_option_dolphin="Build KDE dolphin support" +build_options_default="dolphin" + case "$XBPS_TARGET_MACHINE" in armv6*|armv7*) broken="qt5-tools-devel unavailable" ;; esac if [ "$CROSS_BUILD" ]; then hostmakedepends+=" qt5-qmake qt5-host-tools qt5-tools" + # provides desktoptojson + hostmakedepends+=" $(vopt_if dolphin 'kcoreaddons')" fi +if [ $build_option_dolphin ]; then nextcloud-client-dolphin_package() { short_desc+=" - KDE dolphin integration" depends="nextcloud-client>=${version}_${revision}" @@ -34,6 +41,7 @@ nextcloud-client-dolphin_package() { vmove usr/share/kservices5 } } +fi nextcloud-client-devel_package() { depends="nextcloud-client>=${version}_${revision}"