Skip to content
Snippets Groups Projects
Verified Commit 104c2539 authored by Spotlight Deveaux's avatar Spotlight Deveaux :fox:
Browse files

net-misc/seafile-client: add libressl support

parent 75710958
No related branches found
No related tags found
No related merge requests found
AUX libressl.patch 731 BLAKE2B 031752b83c015382137141b74c6a80a8886cac6381a4e3c5e26ebe4786869bd668e4f784509a950f250aaf404e77e8c32b15d9886e8ee9fe1c351bbefe3823a6 SHA512 5975b52fc9bf1593ba32d270c33d037f677d25fc6344702cb88d32096bae1cff3e9c048b1c342c4ed44229e6b3fd3cd48c4049969cc8dec57c32bc30211de216
AUX no-webengine.patch 7680 BLAKE2B 73216c74a1f1650a8c1bea6f5c08cf2e3746b14e0347d143fafca26b1ca82327766a8d4ec73784e6d96201386039c433b491e03469718b6fe01aa6c3b5c6234b SHA512 17e6a8437d33a2bb1305e45405aee4e23f233e00c232669a1f8317355032d88329899d3f7b65d1069cf1612029b589a575b0f64018b9b23d239a73c5f4bed2ce
DIST nextcloud-client-2.5.2.tar.gz 18995992 BLAKE2B 6ad23962d327c1feeec34f59092021f7f82f4baeaf973fac0572db55cb03bc8ba2ed0c5037bcbfa80ca057d3976aaf6e402e129f2ec963b3a9c432330ef6aaf3 SHA512 1000b420355d7a4104ca5b41e813d467dcb345b60c79c78ce532de9c58ea89cad10d5565a433409bd512f0f7771c18c7c27974b968c74f84ccfda1ed3510d3ae
EBUILD nextcloud-client-2.5.2.ebuild 2103 BLAKE2B 9e7c602587572731971b0fe158a79a68da53716861a30f3bdef562662a8e3407721f7161490feb63b7c8c5aee575aaaf78b0990f51941b62c8a6ceda4d57f6fa SHA512 12799329d436885c082ecb80db78f4a7607f00580987d1ef9201f358cd01d8578b2421fc6d5f5d9832a0a05f1347a5a37330f525d4266fb373991a4a2da58626
MISC metadata.xml 647 BLAKE2B b7e7d3b8269ab2a45085ee285da093b5e413255963c2ea93c41782fc2d41972336968876d97e1c4e0470efcf54a9b5f1a8fdf175ade594cd2164f6d9d3ce8e9b SHA512 510d0ac0ee9400049284f8e0883eca6c6e6e7e7076834b37930e753d9bbd892d2aba4f13420e75a83671039679debeaba64f9cd4ee92bcb2233d5eaa87f5ee62
diff --git a/src/libsync/clientsideencryption.cpp b/src/libsync/clientsideencryption.cpp
index f0d3bc9dc..1b062fc23 100644
--- a/src/libsync/clientsideencryption.cpp
+++ b/src/libsync/clientsideencryption.cpp
@@ -35,6 +35,15 @@
#include "wordlist.h"
+#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);
--- desktop-2.5.2/src/CMakeLists.txt 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/CMakeLists.txt 2019-04-22 04:01:31.260028906 +0000
@@ -4,7 +4,7 @@
set(synclib_NAME ${APPLICATION_EXECUTABLE}sync)
-find_package(Qt5 5.6 COMPONENTS Core Network Xml Concurrent WebEngineWidgets WebEngine REQUIRED)
+find_package(Qt5 5.6 COMPONENTS Core Network Xml Concurrent REQUIRED)
if (Qt5Core_VERSION VERSION_LESS 5.9.0)
message(STATUS "For HTTP/2 support, compile with Qt 5.9 or higher.")
endif()
--- desktop-2.5.2/src/gui/CMakeLists.txt 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/gui/CMakeLists.txt 2019-04-22 04:15:53.230034980 +0000
@@ -40,7 +40,6 @@
wizard/owncloudoauthcredspage.ui
wizard/owncloudsetupnocredspage.ui
wizard/owncloudwizardresultpage.ui
- wizard/webview.ui
)
set(client_SRCS
@@ -103,8 +102,6 @@
creds/credentialsfactory.cpp
creds/httpcredentialsgui.cpp
creds/oauth.cpp
- creds/webflowcredentials.cpp
- creds/webflowcredentialsdialog.cpp
wizard/postfixlineedit.cpp
wizard/abstractcredswizardpage.cpp
wizard/owncloudadvancedsetuppage.cpp
@@ -115,8 +112,6 @@
wizard/owncloudwizardcommon.cpp
wizard/owncloudwizard.cpp
wizard/owncloudwizardresultpage.cpp
- wizard/webviewpage.cpp
- wizard/webview.cpp
wizard/slideshow.cpp
)
@@ -295,7 +290,7 @@
endif()
add_library(updater STATIC ${updater_SRCS})
-target_link_libraries(updater ${synclib_NAME} Qt5::Widgets Qt5::Network Qt5::Xml Qt5::WebEngineWidgets)
+target_link_libraries(updater ${synclib_NAME} Qt5::Widgets Qt5::Network Qt5::Xml)
target_include_directories(updater PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
set_target_properties( ${APPLICATION_EXECUTABLE} PROPERTIES
--- desktop-2.5.2/src/gui/accountmanager.cpp 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/gui/accountmanager.cpp 2019-04-22 04:17:04.440035482 +0000
@@ -253,20 +253,6 @@
acc->setUrl(urlConfig.toUrl());
}
- // Migrate to webflow
- if (authType == QLatin1String("http")) {
- authType = "webflow";
- settings.setValue(QLatin1String(authTypeC), authType);
-
- foreach(QString key, settings.childKeys()) {
- if (!key.startsWith("http_"))
- continue;
- auto newkey = QString::fromLatin1("webflow_").append(key.mid(5));
- settings.setValue(newkey, settings.value((key)));
- settings.remove(key);
- }
- }
-
qCInfo(lcAccountManager) << "Account for" << acc->url() << "using auth type" << authType;
acc->_serverVersion = settings.value(QLatin1String(serverVersionC)).toString();
--- desktop-2.5.2/src/gui/creds/credentialsfactory.cpp 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/gui/creds/credentialsfactory.cpp 2019-04-22 04:23:19.590038126 +0000
@@ -21,7 +21,6 @@
#ifndef NO_SHIBBOLETH
#include "creds/shibbolethcredentials.h"
#endif
-#include "creds/webflowcredentials.h"
namespace OCC {
@@ -40,8 +39,6 @@
} else if (type == "shibboleth") {
return new ShibbolethCredentials;
#endif
- } else if (type == "webflow") {
- return new WebFlowCredentials;
} else {
qCWarning(lcGuiCredentials, "Unknown credentials type: %s", qPrintable(type));
return new DummyCredentials;
--- desktop-2.5.2/src/gui/wizard/owncloudwizard.cpp 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/gui/wizard/owncloudwizard.cpp 2019-04-22 04:24:59.360038829 +0000
@@ -26,7 +26,6 @@
#endif
#include "wizard/owncloudadvancedsetuppage.h"
#include "wizard/owncloudwizardresultpage.h"
-#include "wizard/webviewpage.h"
#include "QProgressIndicator.h"
@@ -51,7 +50,6 @@
, _advancedSetupPage(new OwncloudAdvancedSetupPage)
, _resultPage(new OwncloudWizardResultPage)
, _credentialsPage(nullptr)
- , _webViewPage(new WebViewPage(this))
, _setupLog()
, _registration(false)
{
@@ -64,7 +62,6 @@
#endif
setPage(WizardCommon::Page_AdvancedSetup, _advancedSetupPage);
setPage(WizardCommon::Page_Result, _resultPage);
- setPage(WizardCommon::Page_WebView, _webViewPage);
connect(this, &QDialog::finished, this, &OwncloudWizard::basicSetupFinished);
@@ -79,7 +76,6 @@
#ifndef NO_SHIBBOLETH
connect(_shibbolethCredsPage, &OwncloudShibbolethCredsPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl);
#endif
- connect(_webViewPage, &WebViewPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl);
connect(_advancedSetupPage, &OwncloudAdvancedSetupPage::createLocalAndRemoteFolders,
this, &OwncloudWizard::createLocalAndRemoteFolders);
connect(this, &QWizard::customButtonClicked, this, &OwncloudWizard::skipFolderConfiguration);
@@ -168,10 +164,6 @@
break;
#endif
- case WizardCommon::Page_WebView:
- _webViewPage->setConnected();
- break;
-
case WizardCommon::Page_AdvancedSetup:
_advancedSetupPage->directoriesCreated();
break;
@@ -195,8 +187,6 @@
#endif
if (type == DetermineAuthTypeJob::OAuth) {
_credentialsPage = _browserCredsPage;
- } else if (type == DetermineAuthTypeJob::WebViewFlow) {
- _credentialsPage = _webViewPage;
} else { // try Basic auth even for "Unknown"
_credentialsPage = _httpCredsPage;
}
--- desktop-2.5.2/src/libsync/networkjobs.h 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/libsync/networkjobs.h 2019-04-22 05:21:11.950062594 +0000
@@ -411,8 +411,7 @@
enum AuthType {
Basic, // also the catch-all fallback for backwards compatibility reasons
OAuth,
- Shibboleth,
- WebViewFlow
+ Shibboleth
};
explicit DetermineAuthTypeJob(AccountPtr account, QObject *parent = nullptr);
--- desktop-2.5.2/src/libsync/networkjobs.cpp 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/libsync/networkjobs.cpp 2019-04-22 05:33:28.590067785 +0000
@@ -922,7 +922,7 @@
// WebViewFlow > OAuth > Shib > Basic
if (_account->serverVersionInt() >= Account::makeServerVersion(12, 0, 0)) {
- result = WebViewFlow;
+ result = Basic;
}
qCInfo(lcDetermineAuthTypeJob) << "Auth type for" << _account->davUrl() << "is" << result;
--- desktop-2.5.2/src/gui/wizard/owncloudsetuppage.cpp 2019-03-19 01:52:24.000000000 +0000
+++ desktop-2.5.2/src/gui/wizard/owncloudsetuppage.cpp 2019-04-22 05:32:01.750067173 +0000
@@ -143,7 +143,7 @@
void OwncloudSetupPage::slotGotoProviderList()
{
_ocWizard->setRegistration(true);
- _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::WebViewFlow);
+ _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::Basic);
_authTypeKnown = true;
_checking = false;
emit completeChanged();
@@ -260,8 +260,6 @@
return WizardCommon::Page_OAuthCreds;
case DetermineAuthTypeJob::Shibboleth:
return WizardCommon::Page_ShibbolethCreds;
- case DetermineAuthTypeJob::WebViewFlow:
- return WizardCommon::Page_WebView;
}
return WizardCommon::Page_HttpCreds;
}
--- desktop-2.5.2/src/gui/wizard/owncloudwizard.h 2019-03-18 21:52:24.000000000 -0400
+++ desktop-2.5.2/src/gui/wizard/owncloudwizard.h 2019-04-22 02:07:03.600081984 -0400
@@ -39,7 +39,6 @@
class OwncloudWizardResultPage;
class AbstractCredentials;
class AbstractCredentialsWizardPage;
-class WebViewPage;
/**
* @brief The OwncloudWizard class
@@ -106,7 +105,6 @@
OwncloudAdvancedSetupPage *_advancedSetupPage;
OwncloudWizardResultPage *_resultPage;
AbstractCredentialsWizardPage *_credentialsPage;
- WebViewPage *_webViewPage;
QStringList _setupLog;
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit cmake-utils gnome2-utils
DESCRIPTION="Desktop Syncing Client for Nextcloud"
HOMEPAGE="https://github.com/nextcloud/desktop"
SRC_URI="https://github.com/nextcloud/desktop/archive/v${PV/_/-}.tar.gz -> ${P}.tar.gz"
LICENSE="CC-BY-3.0 GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="doc dolphin nautilus shibboleth test libressl"
COMMON_DEPEND=">=dev-db/sqlite-3.4:3
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
dev-libs/qtkeychain[qt5(+)]
dev-qt/qtconcurrent:5
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtnetwork:5[ssl]
dev-qt/qtsql:5
dev-qt/qtwidgets:5
dev-qt/qtxml:5
sys-fs/inotify-tools
dolphin? (
kde-frameworks/kcoreaddons:5
kde-frameworks/kio:5
)
nautilus? ( dev-python/nautilus-python )
shibboleth? ( dev-qt/qtwebkit:5 )"
RDEPEND="${COMMON_DEPEND}"
DEPEND="${COMMON_DEPEND}
dev-qt/linguist-tools:5
doc? (
dev-python/sphinx
dev-tex/latexmk
dev-texlive/texlive-latexextra
virtual/latex-base
)
dolphin? ( kde-frameworks/extra-cmake-modules )
test? (
dev-util/cmocka
dev-qt/qttest:5
)"
S=${WORKDIR}/desktop-${PV/_/-}
PATCHES+=(
"${FILESDIR}/no-webengine.patch"
"${FILESDIR}/libressl.patch"
)
src_prepare() {
# Keep tests in ${T}
sed -i -e "s#\"/tmp#\"${T}#g" test/test*.cpp || die
if ! use nautilus; then
pushd shell_integration > /dev/null || die
cmake_comment_add_subdirectory nautilus
popd > /dev/null || die
fi
cmake-utils_src_prepare
}
src_configure() {
local mycmakeargs=(
-DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc
-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
-DCMAKE_DISABLE_FIND_PACKAGE_Sphinx=$(usex !doc)
-DCMAKE_DISABLE_FIND_PACKAGE_KF5=$(usex !dolphin)
-DNO_SHIBBOLETH=$(usex !shibboleth)
-DUNIT_TESTING=$(usex test)
)
cmake-utils_src_configure
}
pkg_postinst() {
if ! use doc ; then
elog "Documentation and man pages not installed"
elog "Enable doc USE-flag to generate them"
fi
gnome2_icon_cache_update
}
pkg_postrm() {
gnome2_icon_cache_update
}
AUX seafile-client-select-qt5.patch 807 BLAKE2B bc28c24a114899fa4d864a3ea10d1d2ab08410d0360e8499d40aee2a26358b5bc401edd8e57121306a5e840b674c50930840c3b8723eae1930421eaf3dbfe919 SHA512 565cd7a3b4f187ef52b9a95b0d657a35cc9722c78e92dfc413b64f781c3cae129aba23ab302f80c7526ccab234b0354709e95d1e79d356a502cce47370524f41
DIST seafile-client-7.0.5.tar.gz 2359779 BLAKE2B 58fa532668859c4413bb931146a58eb51ede7c1faa3ea2a9cafb94be44a8819261570ef16cc9f62f584f9ff483aa0832a63a99bb53380dd9efa4f82d25dea553 SHA512 b79cde3f98ebb1a0cb1035131cf95735f01c63bcb4bb658d5c40c36cdf85705d2c6fd2f7787fbdb3d965a25d60ee98e020e33c4f9423295c7ef1ab36ee5c7c27
EBUILD seafile-client-7.0.5.ebuild 1124 BLAKE2B 90f392132b332b7e1a76c669a35bdb7f38b058c867bf1f837df5e1b06d71b9e344be8821de4f741df40e7afe2f8f2005ba870dd1a917083041f29bd773315670 SHA512 bd5e9c9df34948eff766164fb704f8898df92e69c4716c85a26ae9ea1841a4a270500ef81aac33321bcadbb2dba37925bd49428098b698386155d2f15432d51e
MISC metadata.xml 634 BLAKE2B 9de57f95b7d26af958c14c4acc7f523597d039dbd86bed4edbd7559d533f8b541913c779d8fcb114e57ed59fe87f76f9ea7abe3893d243fad94fbda1f63c7e5f SHA512 07ad9297df4b21d6743ec7d76e70624734b01c522de9c6c9b9d7126dd377860ac877ae14568a4bfc6e90ed41c8f79c639d4ae54159a9c4696f684afd31b4e628
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4261fba..24fbbda 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -158,11 +158,8 @@ SET(QT_VERSION_MAJOR 5)
# have to keep using QtWebKit on windows because QtWebEngine can't be
# compiled in msys2/mingw (QtWebEnigne is based on chrome, which has to be
# compiled with MSVC.)
-FIND_PROGRAM(qmake_executable NAMES qmake qmake.exe)
-EXECUTE_PROCESS(COMMAND
- bash -c "${qmake_executable} --version | grep -iE '^using qt version [0-9.]+' | awk '{print $4}'"
- OUTPUT_VARIABLE DETECTED_QT_VERSION
- OUTPUT_STRIP_TRAILING_WHITESPACE)
+FIND_PACKAGE(Qt5Core)
+SET(DETECTED_QT_VERSION ${Qt5Core_VERSION})
MESSAGE("qt5 version: ${DETECTED_QT_VERSION}")
IF(WIN32 OR DETECTED_QT_VERSION VERSION_LESS 5.6.0)
ADD_DEFINITIONS(-DSEAFILE_USE_WEBKIT)
<?xml version='1.0' encoding='UTF-8'?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>voyageur@gentoo.org</email>
<name>Bernard Cafarelli</name>
<email>efremov@linux.com</email>
<name>Denis Efremov</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<use>
<flag name="libressl">Build with LibreSSL support instead of OpenSSL</flag>
</use>
<use>
<flag name="dolphin">Install the <pkg>kde-apps/dolphin</pkg> extension</flag>
<flag name="nautilus">Install the <pkg>gnome-base/nautilus</pkg> extension</flag>
<flag name="shibboleth">Build support for Shibboleth single sign-on</flag>
<flag name="libressl">Use libressl over openssl</flag>
</use>
<upstream>
<remote-id type="github">nextcloud/desktop</remote-id>
<remote-id type="github">haiwen/seafile-client</remote-id>
</upstream>
</pkgmetadata>
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake xdg-utils
DESCRIPTION="Seafile desktop client"
HOMEPAGE="http://www.seafile.com/ https://github.com/haiwen/seafile-client/"
SRC_URI="https://github.com/haiwen/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="libressl shibboleth test"
RESTRICT="!test? ( test )"
RDEPEND="net-libs/libsearpc
~net-misc/seafile-${PV}
dev-libs/libevent
dev-libs/jansson
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
dev-db/sqlite:3
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
dev-qt/qtnetwork:5
dev-qt/qtdbus:5
shibboleth? ( dev-qt/qtwebengine:5[widgets] )"
DEPEND="${RDEPEND}
test? ( dev-qt/qttest:5 )"
BDEPEND="dev-qt/linguist-tools:5"
PATCHES=("${FILESDIR}/${PN}-select-qt5.patch")
src_configure() {
local mycmakeargs=(
-DBUILD_SHIBBOLETH_SUPPORT="$(usex shibboleth)"
-DBUILD_TESTING="$(usex test)"
)
cmake_src_configure
}
pkg_postinst() {
xdg_icon_cache_update
}
pkg_postrm() {
xdg_icon_cache_update
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment