From 5c477395eb609be0a43d04662ee4c916fe9c8898 Mon Sep 17 00:00:00 2001 From: yopito Date: Thu, 29 Aug 2019 23:45:55 +0200 Subject: [PATCH] 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" + } +}