From bill-auger at peers.community Sat Aug 1 19:38:10 2020 From: bill-auger at peers.community (bill-auger) Date: Sat, 1 Aug 2020 15:38:10 -0400 Subject: [Dev] [PATCH] Update qtcreator to v4.12.4 In-Reply-To: <20200716103647.yjcx3rxjm76b2fxw@RainbowWarrior.localdomain> References: <20200716103647.yjcx3rxjm76b2fxw@RainbowWarrior.localdomain> Message-ID: <20200801153810.1519cb40@parabola> i have upgraded qtcreator From bill-auger at peers.community Sun Aug 2 22:50:54 2020 From: bill-auger at peers.community (bill-auger) Date: Sun, 2 Aug 2020 18:50:54 -0400 Subject: [Dev] [PATCH]: Update Iceweasel to 79.0 Message-ID: <20200802185054.7ff3398d@parabola> grizzlyuser opened a new pull-request against the project: `abslibre` that you are following: `` Update Iceweasel to 79.0 `` To reply, visit the link below or just reply to this email https://pagure.io/abslibre/pull-request/1 From bill-auger at peers.community Sun Aug 2 23:02:28 2020 From: bill-auger at peers.community (bill-auger) Date: Sun, 2 Aug 2020 19:02:28 -0400 Subject: [Dev] Orphan Libre package [calibre] marked out-of-date In-Reply-To: <20200721070112.24fa064b@parabola> References: <20200720221714.1191.41473@winston.parabola.nu> <20200721000031.GA29242@freemor.ca> <20200721030758.2ca5d5c2@parabola> <20200721104107.GB29242@freemor.ca> <20200721070112.24fa064b@parabola> Message-ID: <20200802190228.70d3fc1b@parabola> i rebuilt 'calibre' as 'calibre3' - it would not build, and needed a new patch back-ported anyways; so it was worth doing - as its not going to get any upgrades anyways, i did not bother to add a 'replaces' to it From nobody at parabola.nu Mon Aug 10 01:01:13 2020 From: nobody at parabola.nu (Parabola Website Notification) Date: Mon, 10 Aug 2020 01:01:13 -0000 Subject: [Dev] Orphan Pcr package [freedoom] marked out-of-date Message-ID: <20200810010113.1191.33863@winston.parabola.nu> a.reviewer1234 at yahoo.com wants to notify you that the following packages may be out-of-date: * freedoom 0.11.3-1 [pcr] (armv7h): https://parabolagnulinux.org/packages/pcr/armv7h/freedoom/ * freedoom 0.11.3-1 [pcr] (i686): https://parabolagnulinux.org/packages/pcr/i686/freedoom/ * freedoom 0.11.3-1 [pcr] (x86_64): https://parabolagnulinux.org/packages/pcr/x86_64/freedoom/ The user provided the following additional text: A newer version is available. Thank you for your awesome work on Parabola! From grizzlyuser at protonmail.com Mon Aug 17 07:39:24 2020 From: grizzlyuser at protonmail.com (grizzlyuser) Date: Mon, 17 Aug 2020 07:39:24 +0000 Subject: [Dev] Orphan Pcr package [octopi] marked out-of-date In-Reply-To: <20191025153206.1144.87173@winston.parabola.nu> References: <20191025153206.1144.87173@winston.parabola.nu> Message-ID: Hi! This is a notification that octopi has been updated upstream and in AUR: https://raw.githubusercontent.com/aarnt/octopi/master/CHANGELOG https://aur.archlinux.org/packages/octopi/ I don't know why, but although the package in pcr has been updated quickly after the previous notification, it seems the outdated flag hasn't been reset. ??????? Original Message ??????? On Friday, October 25, 2019 6:32 PM, Parabola Website Notification wrote: > grizzlyuser at protonmail.com wants to notify you that the following packages may be out-of-date: > > - octopi 0.9.0-1.parabola3 [pcr] (armv7h): https://parabolagnulinux.org/packages/pcr/armv7h/octopi/ > - octopi 0.9.0-1.parabola3 [pcr] (i686): https://parabolagnulinux.org/packages/pcr/i686/octopi/ > - octopi 0.9.0-1.parabola3 [pcr] (x86_64): https://parabolagnulinux.org/packages/pcr/x86_64/octopi/ > > The user provided the following additional text: > > Thank you for maintaining this package! > > A new pkgrel version is available in AUR: https://aur.archlinux.org/packages/octopi/ > > It fixes the following error on octopi launch: > > > > octopi: error while loading shared libraries: libalpm.so.11: cannot open shared object file: No such file or directory > > It seems like alpm_octopi_utils needs to be updated first (already marked out of date in Parabola):https://aur.archlinux.org/packages/alpm_octopi_utils/ > > Dev mailing list > Dev at lists.parabola.nu > https://lists.parabola.nu/mailman/listinfo/dev From nobody at parabola.nu Fri Aug 21 10:05:09 2020 From: nobody at parabola.nu (Parabola Website Notification) Date: Fri, 21 Aug 2020 10:05:09 -0000 Subject: [Dev] Orphan Libre package [nextcloud-client] marked out-of-date Message-ID: <20200821100509.1191.69027@winston.parabola.nu> eomc20a2q99n at opayq.com wants to notify you that the following packages may be out-of-date: * nextcloud-client 2.6.4-1.parabola1 [libre] (i686): https://parabolagnulinux.org/packages/libre/i686/nextcloud-client/ * nextcloud-client 2.6.4-1.parabola1 [libre] (x86_64): https://parabolagnulinux.org/packages/libre/x86_64/nextcloud-client/ The user provided the following additional text: 3.0.0 is out: https://github.com/nextcloud/desktop/releases/tag/v3.0.0 From nobody at parabola.nu Tue Aug 25 08:39:22 2020 From: nobody at parabola.nu (Parabola Website Notification) Date: Tue, 25 Aug 2020 08:39:22 -0000 Subject: [Dev] Orphan Libre package [filesystem] marked out-of-date Message-ID: <20200825083922.1190.27615@winston.parabola.nu> grizzlyuser at protonmail.com wants to notify you that the following packages may be out-of-date: * filesystem 2020.05.20-1.parabola1 [libre] (i686): https://parabolagnulinux.org/packages/libre/i686/filesystem/ * filesystem 2020.05.20-1.parabola1 [libre] (x86_64): https://parabolagnulinux.org/packages/libre/x86_64/filesystem/ The user provided the following additional text: Thank you for maintaining this package! A new version has been released: https://www.archlinux.org/packages/core/x86_64/filesystem/ From theova at bluewin.ch Tue Aug 25 12:01:24 2020 From: theova at bluewin.ch (theova) Date: Tue, 25 Aug 2020 14:01:24 +0200 Subject: [Dev] [PATCH] Upgrade nextcloud-client to v3.0.0 In-Reply-To: <20200821100509.1191.69027@winston.parabola.nu> References: <20200821100509.1191.69027@winston.parabola.nu> Message-ID: <20200825120124.av2u2uvq2v2zi52b@RainbowWarrior.localdomain> Hi here is a patch to upgrade nextcloud-client to current version 3.0.0. Successfully tested on x86_64, built for i686. The build for arm failed... Parabola Website Notification schrieb am Fri, 21. Aug 20 10:05: >eomc20a2q99n at opayq.com wants to notify you that the following packages may be out-of-date: > > >* nextcloud-client 2.6.4-1.parabola1 [libre] (i686): https://parabolagnulinux.org/packages/libre/i686/nextcloud-client/ >* nextcloud-client 2.6.4-1.parabola1 [libre] (x86_64): https://parabolagnulinux.org/packages/libre/x86_64/nextcloud-client/ > > >The user provided the following additional text: > >3.0.0 is out: > >https://github.com/nextcloud/desktop/releases/tag/v3.0.0 > >_______________________________________________ >Dev mailing list >Dev at lists.parabola.nu >https://lists.parabola.nu/mailman/listinfo/dev -------------- next part -------------- From 5872e6eddbc491be2343f4444974a3a687df7030 Mon Sep 17 00:00:00 2001 From: Theo von Arx Date: Thu, 16 Jul 2020 21:55:28 +0200 Subject: [PATCH] [nextcloud-client] Upgrade to 3.0.0 --- libre/nextcloud-client/Nextcloud.conf | 2 - libre/nextcloud-client/PKGBUILD | 57 +-- .../nextcloud-client-fix-build.diff | 13 - .../nextcloud-client/remove-qtwebengine.patch | 446 +++++++++--------- 4 files changed, 250 insertions(+), 268 deletions(-) delete mode 100644 libre/nextcloud-client/Nextcloud.conf delete mode 100644 libre/nextcloud-client/nextcloud-client-fix-build.diff diff --git a/libre/nextcloud-client/Nextcloud.conf b/libre/nextcloud-client/Nextcloud.conf deleted file mode 100644 index 232a67665..000000000 --- a/libre/nextcloud-client/Nextcloud.conf +++ /dev/null @@ -1,2 +0,0 @@ -[General] -skipUpdateCheck=true diff --git a/libre/nextcloud-client/PKGBUILD b/libre/nextcloud-client/PKGBUILD index 9afa9b0fb..3028c35f0 100644 --- a/libre/nextcloud-client/PKGBUILD +++ b/libre/nextcloud-client/PKGBUILD @@ -8,8 +8,10 @@ pkgname=nextcloud-client -pkgver=2.6.4 -_commit=b45f5fd1a947dc21eb11c69049a99616a2ec950e +# Upstream does not provide signed tarballs (yet) +# https://github.com/nextcloud/desktop/issues/236#issuecomment-540538247 +pkgver=3.0.0 +_commit=ff175088a391007b66bfca89ef35cf29e37cf001 pkgrel=1 pkgrel+=.parabola1 pkgdesc='Nextcloud desktop client' @@ -18,69 +20,59 @@ arch=(x86_64) arch+=(i686 armv7h) url='https://nextcloud.com/' license=(GPL) -depends=(openssl sqlite qtkeychain qt5-svg xdg-utils libcloudproviders) +depends=(openssl sqlite qtkeychain qt5-svg xdg-utils libcloudproviders + qt5-graphicaleffects qt5-quickcontrols2) makedepends=(doxygen extra-cmake-modules kio python-sphinx qt5-tools git cmocka) optdepends=( 'kio: integration with Dolphin' 'nemo-python: integration with Nemo' 'python-nautilus: integration with Nautilus' - 'python2-caja: integration with Caja' + 'python-caja: integration with Caja' ) -source=("$pkgname::git+https://github.com/nextcloud/desktop.git?signed#commit=$_commit" - issue1458-workaround.patch::https://github.com/yan12125/desktop/commit/7da680ef7843a52c3136916744f50d4a003bb8b5.patch - issue1458-2.patch::https://github.com/yan12125/desktop/commit/2b313368325dac5b8d0e69394cfcc4faaa745f75.patch - $pkgname-fix-build.diff - Nextcloud.conf) +# Not using ?signed here as only the tag is properly signed, not the commit. +# See https://github.com/nextcloud/desktop/issues/2185 +source=("$pkgname::git+https://github.com/nextcloud/desktop.git#commit=$_commit") source+=(remove-qtwebengine.patch) validpgpkeys=( A26B951528EA1BA1678C7AE5D406C75CEE1A36D6 # one of keys controlled by github.com/camilasan 42E775EAA3E47F9E0D5CDB0E00819E3BF4177B28 # controlled by github.com/misch7 + 17166A5275C5FA6F1A48FD78074BBBCB8DECC9E2 # https://github.com/er-vin.gpg ) -sha256sums=('SKIP' - '07cd68f54c004175b4a09cce25830a357d0ebaafaf4e4cabfb8b0d4deeded2f3' - '157c87a789219a3442ca5947c48dcd1ef3898612ff32070bf8842a42bfbe857a' - '8b257a0554ceb54a7ed320dbfa3becb97d6845338e28a8aa0a4f6239f3141645' - '5f51e41ef01d4e5b88a4735531105b84b4fb5317adc2a2996117c03fe5a44fc7') -sha256sums+=('77d7afd2dc65a7625e1617dd2c287c1be004deca2f64ecc18a96bb6c3cd733cf') -backup=('etc/Nextcloud/sync-exclude.lst' - 'etc/Nextcloud/Nextcloud.conf') +sha256sums=('SKIP') +sha256sums+=('92a580a8de3141c2d04a28a4de3264a35f426fa74834379f5cae4ae0934b1d7b') +backup=('etc/Nextcloud/sync-exclude.lst') prepare() { # tmpdir for check() - mkdir tmpdir $pkgname/build + mkdir tmpdir # Use system GNUInstallDirs.cmake so that we can benefit from # https://gitlab.kitware.com/cmake/cmake/merge_requests/3735 rm -v $pkgname/cmake/modules/GNUInstallDirs.cmake cd $pkgname - patch -Np1 -i ../issue1458-workaround.patch - patch -Np1 -i ../issue1458-2.patch - - # https://github.com/nextcloud/desktop/pull/719 - # "Rename owncloud tests to nextcloud" - actually breaks building of tests - patch -Np1 -i ../$pkgname-fix-build.diff # Remove qt5-webengine dependency + # https://github.com/nextcloud/desktop/pull/2204 patch -Np1 -i ../remove-qtwebengine.patch } build() { - cd $pkgname/build + cd $pkgname # bundled breakpad in libcrashreporter-qt submodule is too old and does not build with glibc >= 2.26 # Upstream fix: https://github.com/google/breakpad/commit/bddcc58860f522a0d4cbaa7e9d04058caee0db9d - cmake \ + cmake -B build -S . \ + -DCMAKE_BUILD_TYPE=None \ -DCMAKE_INSTALL_PREFIX=/usr \ -DNO_SHIBBOLETH=1 \ + -DNO_WEBENGINE=1 \ -DWITH_CRASHREPORTER=OFF \ - -DUNIT_TESTING=ON \ - .. + -DUNIT_TESTING=ON - make # TODO: fix installation of PDF and HTML documents # WIP at https://github.com/yan12125/desktop/tree/doc-install-path - make doc-man + make -C build all doc-man } check() { @@ -88,14 +80,11 @@ check() { # Tests fail if $TMPDIR is too small; specify an alternative for machines # with a small /tmp partition. - TMPDIR="$srcdir/tmpdir" make test ARGS="-V" + TMPDIR="$srcdir/tmpdir" make test } package() { cd $pkgname/build make DESTDIR="$pkgdir" install - - # Disables built-in update checker - install -Dm644 "$srcdir/Nextcloud.conf" -t "$pkgdir"/etc/Nextcloud } diff --git a/libre/nextcloud-client/nextcloud-client-fix-build.diff b/libre/nextcloud-client/nextcloud-client-fix-build.diff deleted file mode 100644 index 40e6f361f..000000000 --- a/libre/nextcloud-client/nextcloud-client-fix-build.diff +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/test/testnextcloudpropagator.cpp b/test/testnextcloudpropagator.cpp -index 6ad1a6b37..dc2e476ad 100644 ---- a/test/testnextcloudpropagator.cpp -+++ b/test/testnextcloudpropagator.cpp -@@ -8,7 +8,7 @@ - #include - - #include "propagatedownload.h" --#include "nextcloudpropagator_p.h" -+#include "owncloudpropagator_p.h" - - using namespace OCC; - namespace OCC { diff --git a/libre/nextcloud-client/remove-qtwebengine.patch b/libre/nextcloud-client/remove-qtwebengine.patch index a480f4ad4..a0911d475 100644 --- a/libre/nextcloud-client/remove-qtwebengine.patch +++ b/libre/nextcloud-client/remove-qtwebengine.patch @@ -1,41 +1,67 @@ +From f3b783512dc6d54d80c7ce57bb7c6ce9efd6651b Mon Sep 17 00:00:00 2001 +From: Max Rees +Date: Sun, 23 Feb 2020 23:09:29 -0600 +Subject: [PATCH] Add support for compiling without QtWebEngine (webflow / + flow2 support) + +Signed-off-by: Max Rees +Signed-off-by: theova +--- + CMakeLists.txt | 7 +++++++ + src/CMakeLists.txt | 6 +++++- + src/gui/CMakeLists.txt | 24 ++++++++++++++------- + src/gui/accountmanager.cpp | 2 ++ + src/gui/creds/credentialsfactory.cpp | 4 ++++ + src/gui/wizard/owncloudsetuppage.cpp | 4 ++++ + src/gui/wizard/owncloudwizard.cpp | 31 +++++++++++++++++++++++++++- + src/gui/wizard/owncloudwizard.h | 6 ++++++ + src/libsync/networkjobs.cpp | 8 +++++++ + 9 files changed, 82 insertions(+), 10 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5df238838..4a333dbdd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -176,6 +176,13 @@ if(NO_SHIBBOLETH) + add_definitions(-DNO_SHIBBOLETH=1) + endif() + ++# Disable webengine-based components ++option(NO_WEBENGINE "Build without webflow / flow2 support so QtWebEngine isn't required" OFF) ++if(NO_WEBENGINE) ++ message("Compiling without webengine") ++ add_definitions(-DNO_WEBENGINE=1) ++endif() ++ + if(APPLE) + set( SOCKETAPI_TEAM_IDENTIFIER_PREFIX "" CACHE STRING "SocketApi prefix (including a following dot) that must match the codesign key's TeamIdentifier/Organizational Unit" ) + endif() diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 9f854b006..6f3546353 100644 +index a79edfcfb..c8ef114a4 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -4,7 +4,7 @@ endif() - +@@ -4,7 +4,11 @@ endif() + 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() + +-find_package(Qt5 5.12 COMPONENTS Core Network Xml Concurrent WebEngineWidgets WebEngine REQUIRED) ++find_package(Qt5 5.12 COMPONENTS Core Network Xml Concurrent REQUIRED) ++ ++if(NOT NO_WEBENGINE) ++ find_package(Qt5 5.12 COMPONENTS WebEngineWidgets WebEngine REQUIRED) ++endif() + + if(NOT TOKEN_AUTH_ONLY) + find_package(Qt5Keychain REQUIRED) diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt -index 285057992..8e61531bd 100644 +index 2f1e99e2b..c5be00c37 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt -@@ -35,14 +35,12 @@ set(client_UI_SRCS - addcertificatedialog.ui - proxyauthdialog.ui - mnemonicdialog.ui -- wizard/flow2authwidget.ui - wizard/owncloudadvancedsetuppage.ui - wizard/owncloudconnectionmethoddialog.ui - wizard/owncloudhttpcredspage.ui - wizard/owncloudoauthcredspage.ui - wizard/owncloudsetupnocredspage.ui - wizard/owncloudwizardresultpage.ui -- wizard/webview.ui - ) - - set(client_SRCS -@@ -108,24 +106,17 @@ set(client_SRCS +@@ -111,23 +111,16 @@ set(client_SRCS creds/credentialsfactory.cpp creds/httpcredentialsgui.cpp creds/oauth.cpp - creds/flow2auth.cpp - creds/keychainchunk.cpp - creds/webflowcredentials.cpp - creds/webflowcredentialsdialog.cpp wizard/postfixlineedit.cpp @@ -54,304 +80,286 @@ index 285057992..8e61531bd 100644 - wizard/webview.cpp wizard/slideshow.cpp ) - -@@ -298,7 +289,7 @@ else() + +@@ -148,6 +141,18 @@ IF(BUILD_UPDATER) + ) 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}) - + ++IF(NOT NO_WEBENGINE) ++ list(APPEND client_SRCS ++ creds/flow2auth.cpp ++ creds/webflowcredentials.cpp ++ creds/webflowcredentialsdialog.cpp ++ wizard/flow2authcredspage.cpp ++ wizard/flow2authwidget.cpp ++ wizard/webviewpage.cpp ++ wizard/webview.cpp ++ ) ++endif() ++ + IF( APPLE ) + list(APPEND client_SRCS cocoainitializer_mac.mm) + list(APPEND client_SRCS socketapisocket_mac.mm) +@@ -314,8 +319,11 @@ set_target_properties( ${APPLICATION_EXECUTABLE} PROPERTIES set_target_properties( ${APPLICATION_EXECUTABLE} PROPERTIES + INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/${APPLICATION_EXECUTABLE};${CMAKE_INSTALL_RPATH}" ) + +-target_link_libraries( ${APPLICATION_EXECUTABLE} Qt5::Widgets Qt5::Svg Qt5::Network Qt5::Xml Qt5::Qml Qt5::Quick Qt5::QuickControls2 Qt5::WebEngineWidgets) ++target_link_libraries( ${APPLICATION_EXECUTABLE} Qt5::Widgets Qt5::Svg Qt5::Network Qt5::Xml Qt5::Qml Qt5::Quick Qt5::QuickControls2) + target_link_libraries( ${APPLICATION_EXECUTABLE} ${synclib_NAME} ) ++IF(NOT NO_WEBENGINE) ++ target_link_libraries( ${APPLICATION_EXECUTABLE} Qt5::WebEngineWidgets ) ++endif() + IF(BUILD_UPDATER) + target_link_libraries( ${APPLICATION_EXECUTABLE} updater ) + endif() diff --git a/src/gui/accountmanager.cpp b/src/gui/accountmanager.cpp -index eec375180..c8ae72bda 100644 +index 34c4cbc3e..372c52f44 100644 --- a/src/gui/accountmanager.cpp +++ b/src/gui/accountmanager.cpp -@@ -253,20 +253,6 @@ AccountPtr AccountManager::loadAccountHelper(QSettings &settings) +@@ -253,6 +253,7 @@ AccountPtr AccountManager::loadAccountHelper(QSettings &settings) 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); -- } -- } -- + ++#ifndef NO_WEBENGINE + // Migrate to webflow + if (authType == QLatin1String("http")) { + authType = "webflow"; +@@ -266,6 +267,7 @@ AccountPtr AccountManager::loadAccountHelper(QSettings &settings) + settings.remove(key); + } + } ++#endif + qCInfo(lcAccountManager) << "Account for" << acc->url() << "using auth type" << authType; - - acc->_serverVersion = settings.value(QLatin1String(serverVersionC)).toString(); + diff --git a/src/gui/creds/credentialsfactory.cpp b/src/gui/creds/credentialsfactory.cpp -index 6062f70eb..52e003b57 100644 +index 6062f70eb..723196d08 100644 --- a/src/gui/creds/credentialsfactory.cpp +++ b/src/gui/creds/credentialsfactory.cpp -@@ -21,7 +21,6 @@ +@@ -21,7 +21,9 @@ #ifndef NO_SHIBBOLETH #include "creds/shibbolethcredentials.h" #endif --#include "creds/webflowcredentials.h" - ++#ifndef NO_WEBENGINE + #include "creds/webflowcredentials.h" ++#endif + namespace OCC { - -@@ -40,8 +39,6 @@ namespace CredentialsFactory { + +@@ -40,8 +42,10 @@ namespace CredentialsFactory { } else if (type == "shibboleth") { return new ShibbolethCredentials; #endif -- } else if (type == "webflow") { -- return new WebFlowCredentials; ++#ifndef NO_WEBENGINE + } else if (type == "webflow") { + return new WebFlowCredentials; ++#endif } else { qCWarning(lcGuiCredentials, "Unknown credentials type: %s", qPrintable(type)); return new DummyCredentials; -diff --git a/src/gui/owncloudsetupwizard.cpp b/src/gui/owncloudsetupwizard.cpp -index 875dacf55..65dea6619 100644 ---- a/src/gui/owncloudsetupwizard.cpp -+++ b/src/gui/owncloudsetupwizard.cpp -@@ -409,7 +409,7 @@ void OwncloudSetupWizard::slotAuthError() - - // bring wizard to top - _ocWizard->bringToTop(); -- if (_ocWizard->currentId() == WizardCommon::Page_ShibbolethCreds || _ocWizard->currentId() == WizardCommon::Page_OAuthCreds || _ocWizard->currentId() == WizardCommon::Page_Flow2AuthCreds) { -+ if (_ocWizard->currentId() == WizardCommon::Page_ShibbolethCreds || _ocWizard->currentId() == WizardCommon::Page_OAuthCreds) { - _ocWizard->back(); - } - _ocWizard->displayError(errorMsg, _ocWizard->currentId() == WizardCommon::Page_ServerSetup && checkDowngradeAdvised(reply)); diff --git a/src/gui/wizard/owncloudsetuppage.cpp b/src/gui/wizard/owncloudsetuppage.cpp -index 9a6ced74b..101b5dae5 100644 +index 71f1c19c9..d997125a8 100644 --- a/src/gui/wizard/owncloudsetuppage.cpp +++ b/src/gui/wizard/owncloudsetuppage.cpp -@@ -144,7 +144,7 @@ void OwncloudSetupPage::slotLogin() +@@ -139,7 +139,11 @@ void OwncloudSetupPage::slotLogin() void OwncloudSetupPage::slotGotoProviderList() { _ocWizard->setRegistration(true); -- _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::WebViewFlow); -+ _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::OAuth); ++#ifndef NO_WEBENGINE + _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::WebViewFlow); ++#else ++ _ocWizard->setAuthType(DetermineAuthTypeJob::AuthType::Basic); ++#endif _authTypeKnown = true; _checking = false; emit completeChanged(); -@@ -259,12 +259,8 @@ int OwncloudSetupPage::nextId() const - return WizardCommon::Page_HttpCreds; - case DetermineAuthTypeJob::OAuth: - return WizardCommon::Page_OAuthCreds; -- case DetermineAuthTypeJob::LoginFlowV2: -- return WizardCommon::Page_Flow2AuthCreds; - case DetermineAuthTypeJob::Shibboleth: - return WizardCommon::Page_ShibbolethCreds; -- case DetermineAuthTypeJob::WebViewFlow: -- return WizardCommon::Page_WebView; - } - return WizardCommon::Page_HttpCreds; - } diff --git a/src/gui/wizard/owncloudwizard.cpp b/src/gui/wizard/owncloudwizard.cpp -index 2076136ff..5f3480340 100644 +index aa7f0aaa4..0e7c71bda 100644 --- a/src/gui/wizard/owncloudwizard.cpp +++ b/src/gui/wizard/owncloudwizard.cpp -@@ -27,8 +27,6 @@ +@@ -27,8 +27,10 @@ #endif #include "wizard/owncloudadvancedsetuppage.h" #include "wizard/owncloudwizardresultpage.h" --#include "wizard/webviewpage.h" --#include "wizard/flow2authcredspage.h" - ++#ifndef NO_WEBENGINE + #include "wizard/webviewpage.h" + #include "wizard/flow2authcredspage.h" ++#endif + #include "QProgressIndicator.h" - -@@ -47,14 +45,12 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) - , _setupPage(new OwncloudSetupPage(this)) - , _httpCredsPage(new OwncloudHttpCredsPage(this)) - , _browserCredsPage(new OwncloudOAuthCredsPage) -- , _flow2CredsPage(new Flow2AuthCredsPage) + +@@ -50,22 +52,30 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) #ifndef NO_SHIBBOLETH , _shibbolethCredsPage(new OwncloudShibbolethCredsPage) #endif ++#ifndef NO_WEBENGINE + , _flow2CredsPage(new Flow2AuthCredsPage) ++#endif , _advancedSetupPage(new OwncloudAdvancedSetupPage) , _resultPage(new OwncloudWizardResultPage) - , _credentialsPage(nullptr) -- , _webViewPage(new WebViewPage(this)) - , _setupLog() - , _registration(false) ++#ifndef NO_WEBENGINE + , _webViewPage(new WebViewPage(this)) ++#endif { -@@ -62,13 +58,11 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) + setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint); setPage(WizardCommon::Page_ServerSetup, _setupPage); setPage(WizardCommon::Page_HttpCreds, _httpCredsPage); setPage(WizardCommon::Page_OAuthCreds, _browserCredsPage); -- setPage(WizardCommon::Page_Flow2AuthCreds, _flow2CredsPage); ++#ifndef NO_WEBENGINE + setPage(WizardCommon::Page_Flow2AuthCreds, _flow2CredsPage); ++#endif #ifndef NO_SHIBBOLETH setPage(WizardCommon::Page_ShibbolethCreds, _shibbolethCredsPage); #endif setPage(WizardCommon::Page_AdvancedSetup, _advancedSetupPage); setPage(WizardCommon::Page_Result, _resultPage); -- setPage(WizardCommon::Page_WebView, _webViewPage); - ++#ifndef NO_WEBENGINE + setPage(WizardCommon::Page_WebView, _webViewPage); ++#endif + connect(this, &QDialog::finished, this, &OwncloudWizard::basicSetupFinished); - -@@ -80,11 +74,9 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) + +@@ -77,11 +87,15 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) connect(_setupPage, &OwncloudSetupPage::determineAuthType, this, &OwncloudWizard::determineAuthType); connect(_httpCredsPage, &OwncloudHttpCredsPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); connect(_browserCredsPage, &OwncloudOAuthCredsPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); -- connect(_flow2CredsPage, &Flow2AuthCredsPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); ++#ifndef NO_WEBENGINE + connect(_flow2CredsPage, &Flow2AuthCredsPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); ++#endif #ifndef NO_SHIBBOLETH connect(_shibbolethCredsPage, &OwncloudShibbolethCredsPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); #endif -- connect(_webViewPage, &WebViewPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); ++#ifndef NO_WEBENGINE + connect(_webViewPage, &WebViewPage::connectToOCUrl, this, &OwncloudWizard::connectToOCUrl); ++#endif connect(_advancedSetupPage, &OwncloudAdvancedSetupPage::createLocalAndRemoteFolders, this, &OwncloudWizard::createLocalAndRemoteFolders); connect(this, &QWizard::customButtonClicked, this, &OwncloudWizard::skipFolderConfiguration); -@@ -103,15 +95,6 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) - setButtonText(QWizard::CustomButton1, tr("Skip folders configuration")); - - -- // Connect styleChanged events to our widgets, so they can adapt (Dark-/Light-Mode switching) -- connect(this, &OwncloudWizard::styleChanged, _setupPage, &OwncloudSetupPage::slotStyleChanged); -- connect(this, &OwncloudWizard::styleChanged, _advancedSetupPage, &OwncloudAdvancedSetupPage::slotStyleChanged); -- connect(this, &OwncloudWizard::styleChanged, _flow2CredsPage, &Flow2AuthCredsPage::slotStyleChanged); -- -- customizeStyle(); -- -- // allow Flow2 page to poll on window activation -- connect(this, &OwncloudWizard::onActivate, _flow2CredsPage, &Flow2AuthCredsPage::slotPollNow); +@@ -103,12 +117,16 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) + // Connect styleChanged events to our widgets, so they can adapt (Dark-/Light-Mode switching) + connect(this, &OwncloudWizard::styleChanged, _setupPage, &OwncloudSetupPage::slotStyleChanged); + connect(this, &OwncloudWizard::styleChanged, _advancedSetupPage, &OwncloudAdvancedSetupPage::slotStyleChanged); ++#ifndef NO_WEBENGINE + connect(this, &OwncloudWizard::styleChanged, _flow2CredsPage, &Flow2AuthCredsPage::slotStyleChanged); ++#endif + + customizeStyle(); + ++#ifndef NO_WEBENGINE + // allow Flow2 page to poll on window activation + connect(this, &OwncloudWizard::onActivate, _flow2CredsPage, &Flow2AuthCredsPage::slotPollNow); ++#endif } - + void OwncloudWizard::setAccount(AccountPtr account) -@@ -180,20 +163,12 @@ void OwncloudWizard::successfulStep() +@@ -177,9 +195,11 @@ void OwncloudWizard::successfulStep() _browserCredsPage->setConnected(); break; - -- case WizardCommon::Page_Flow2AuthCreds: -- _flow2CredsPage->setConnected(); -- break; -- + ++#ifndef NO_WEBENGINE + case WizardCommon::Page_Flow2AuthCreds: + _flow2CredsPage->setConnected(); + break; ++#endif + #ifndef NO_SHIBBOLETH case WizardCommon::Page_ShibbolethCreds: - _shibbolethCredsPage->setConnected(); +@@ -187,9 +207,11 @@ void OwncloudWizard::successfulStep() break; #endif - -- case WizardCommon::Page_WebView: -- _webViewPage->setConnected(); -- break; -- + ++#ifndef NO_WEBENGINE + case WizardCommon::Page_WebView: + _webViewPage->setConnected(); + break; ++#endif + case WizardCommon::Page_AdvancedSetup: _advancedSetupPage->directoriesCreated(); - break; -@@ -217,10 +192,6 @@ void OwncloudWizard::setAuthType(DetermineAuthTypeJob::AuthType type) +@@ -214,10 +236,12 @@ void OwncloudWizard::setAuthType(DetermineAuthTypeJob::AuthType type) #endif if (type == DetermineAuthTypeJob::OAuth) { _credentialsPage = _browserCredsPage; -- } else if (type == DetermineAuthTypeJob::LoginFlowV2) { -- _credentialsPage = _flow2CredsPage; -- } else if (type == DetermineAuthTypeJob::WebViewFlow) { -- _credentialsPage = _webViewPage; ++#ifndef NO_WEBENGINE + } else if (type == DetermineAuthTypeJob::LoginFlowV2) { + _credentialsPage = _flow2CredsPage; + } else if (type == DetermineAuthTypeJob::WebViewFlow) { + _credentialsPage = _webViewPage; ++#endif } else { // try Basic auth even for "Unknown" _credentialsPage = _httpCredsPage; } -@@ -245,7 +216,7 @@ void OwncloudWizard::slotCurrentPageChanged(int id) +@@ -242,7 +266,12 @@ void OwncloudWizard::slotCurrentPageChanged(int id) } - + setOption(QWizard::HaveCustomButton1, id == WizardCommon::Page_AdvancedSetup); - if (id == WizardCommon::Page_AdvancedSetup && (_credentialsPage == _browserCredsPage || _credentialsPage == _flow2CredsPage)) { -+ if (id == WizardCommon::Page_AdvancedSetup) { ++ if (id == WizardCommon::Page_AdvancedSetup ++ && (_credentialsPage == _browserCredsPage ++#ifndef NO_WEBENGINE ++ || _credentialsPage == _flow2CredsPage ++#endif ++ )) { // For OAuth, disable the back button in the Page_AdvancedSetup because we don't want // to re-open the browser. button(QWizard::BackButton)->setEnabled(false); diff --git a/src/gui/wizard/owncloudwizard.h b/src/gui/wizard/owncloudwizard.h -index 3cbf89f71..2eecbf95a 100644 +index ee6161ca5..c0ee06403 100644 --- a/src/gui/wizard/owncloudwizard.h +++ b/src/gui/wizard/owncloudwizard.h -@@ -39,8 +39,6 @@ class OwncloudAdvancedSetupPage; +@@ -39,8 +39,10 @@ class OwncloudAdvancedSetupPage; class OwncloudWizardResultPage; class AbstractCredentials; class AbstractCredentialsWizardPage; --class WebViewPage; --class Flow2AuthCredsPage; - ++#ifndef NO_WEBENGINE + class WebViewPage; + class Flow2AuthCredsPage; ++#endif + /** * @brief The OwncloudWizard class -@@ -114,11 +112,9 @@ private: +@@ -114,11 +116,15 @@ private: #ifndef NO_SHIBBOLETH OwncloudShibbolethCredsPage *_shibbolethCredsPage; #endif -- Flow2AuthCredsPage *_flow2CredsPage; ++#ifndef NO_WEBENGINE + Flow2AuthCredsPage *_flow2CredsPage; ++#endif OwncloudAdvancedSetupPage *_advancedSetupPage; OwncloudWizardResultPage *_resultPage; - AbstractCredentialsWizardPage *_credentialsPage; -- WebViewPage *_webViewPage; - + AbstractCredentialsWizardPage *_credentialsPage = nullptr; ++#ifndef NO_WEBENGINE + WebViewPage *_webViewPage; ++#endif + QStringList _setupLog; - -diff --git a/src/gui/wizard/owncloudwizardcommon.h b/src/gui/wizard/owncloudwizardcommon.h -index d1f7c08be..c55ed04fd 100644 ---- a/src/gui/wizard/owncloudwizardcommon.h -+++ b/src/gui/wizard/owncloudwizardcommon.h -@@ -38,8 +38,6 @@ namespace WizardCommon { - Page_HttpCreds, - Page_ShibbolethCreds, - Page_OAuthCreds, -- Page_Flow2AuthCreds, -- Page_WebView, - Page_AdvancedSetup, - Page_Result - }; + diff --git a/src/libsync/networkjobs.cpp b/src/libsync/networkjobs.cpp -index 76789a8ce..06c94ea5b 100644 +index d40ccede4..0125f778b 100644 --- a/src/libsync/networkjobs.cpp +++ b/src/libsync/networkjobs.cpp -@@ -921,7 +921,7 @@ void DetermineAuthTypeJob::start() - }); - connect(oldFlowRequired, &JsonApiJob::jsonReceived, this, [this](const QJsonDocument &json, int statusCode) { - if (statusCode == 200) { -- _resultOldFlow = LoginFlowV2; -+ _resultOldFlow = Basic; - - auto data = json.object().value("ocs").toObject().value("data").toObject().value("capabilities").toObject(); - auto gs = data.value("globalscale"); -@@ -929,7 +929,7 @@ void DetermineAuthTypeJob::start() - auto flow = gs.toObject().value("desktoplogin"); - if (flow != QJsonValue::Undefined) { - if (flow.toInt() == 1) { -- _resultOldFlow = WebViewFlow; -+ _resultOldFlow = Basic; - } - } - } -@@ -955,17 +955,17 @@ void DetermineAuthTypeJob::checkAllDone() - +@@ -966,12 +966,20 @@ void DetermineAuthTypeJob::checkAllDone() + // WebViewFlow > OAuth > Shib > Basic if (_account->serverVersionInt() >= Account::makeServerVersion(12, 0, 0)) { -- result = WebViewFlow; ++#ifndef NO_WEBENGINE + result = WebViewFlow; ++#else + result = Basic; ++#endif } - + // LoginFlowV2 > WebViewFlow > OAuth > Shib > Basic if (_account->serverVersionInt() >= Account::makeServerVersion(16, 0, 0)) { -- result = LoginFlowV2; ++#ifndef NO_WEBENGINE + result = LoginFlowV2; ++#else + result = Basic; ++#endif } - + // If we determined that we need the webview flow (GS for example) then we switch to that -- if (_resultOldFlow == WebViewFlow) { -- result = WebViewFlow; -+ if (_resultOldFlow == Basic) { -+ result = Basic; - } - - qCInfo(lcDetermineAuthTypeJob) << "Auth type for" << _account->davUrl() << "is" << result; -diff --git a/src/libsync/networkjobs.h b/src/libsync/networkjobs.h -index 765204c88..088c517d7 100644 ---- a/src/libsync/networkjobs.h -+++ b/src/libsync/networkjobs.h -@@ -412,8 +412,6 @@ public: - Basic, // also the catch-all fallback for backwards compatibility reasons - OAuth, - Shibboleth, -- WebViewFlow, -- LoginFlowV2 - }; - - explicit DetermineAuthTypeJob(AccountPtr account, QObject *parent = nullptr); +-- +2.28.0 + -- 2.28.0 -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 833 bytes Desc: not available URL: From theova at bluewin.ch Tue Aug 25 13:55:22 2020 From: theova at bluewin.ch (theova) Date: Tue, 25 Aug 2020 15:55:22 +0200 Subject: [Dev] [PATCH] Upgrade nextcloud-client to v3.0.0 In-Reply-To: <191548246.136171.1598359861334@smtp4.opayq.com> References: <191548246.136171.1598359861334@smtp4.opayq.com> Message-ID: <20200825135522.oowiuvv6l7hsdyx6@RainbowWarrior.localdomain> Hi, Thanks for your answer. As this is interesting for other Devs, I reply to the mailing list (please consider to subscribe to write to the mailing list directly). I've built it today with the newest packages in Parabolas repos and got no such fail results. However the second issue I can confirm on i3 (x11). If I start nextcloud-client, the window appears under my mouse. As soon as I leave the area, the window is away (without crashing). Under gnome, I cannot reproduce this behaviour. As the patches only address the login procedure, I do not think that they are the reason for the "crash". It rather seems like a "bleeding edge OS" issue which should be reported upstream to the nextcloud developers. eomc20a2q99n at opayq.com schrieb am Tue, 25. Aug 20 14:50: >Hi, just tried your patch on x86_64. I'm having a couple weird errors. The first time I got this error during the build process: > >``` >94% tests passed, 2 tests failed out of 35 > >Total Test time (real) = 120.80 sec > >The following tests FAILED: >??? 14 - SyncMoveTest (Failed) >??? 15 - SyncConflictTest (Failed) >Errors while running CTest >make: *** [Makefile:126: test] Error 8 >==> ERROR: A failure occurred in check(). >??? Aborting... >``` >I tried it again and the build worked, but I'm having a bunch of separate issues with the actual program. > >Under Wayland (Sway WM), if I open the GUI and focus my mouse anywhere on the screen, the GUI disappears (though it doesn't crash): > >``` >2020-08-25 13:42:22:651 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? screenRect: QRect(0,0 1920x1080) >2020-08-25 13:42:22:651 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? taskbarRect: QRect(0,0 32x1080) >2020-08-25 13:42:22:651 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? taskbarScreenEdge: OCC::Systray::TaskBarPosition::Left >2020-08-25 13:42:22:651 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? trayIconCenter: QPoint(0,0) >2020-08-25 13:42:22:651 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? taskbarScreenEdge: OCC::Systray::TaskBarPosition::Left >2020-08-25 13:42:22:652 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? screenRect: QRect(0,0 1920x1080) >2020-08-25 13:42:22:652 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? windowRect (reference) QRect(36,0 1857x477) >2020-08-25 13:42:22:652 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? windowRect (adjusted ) QRect(36,0 1857x477)?? Aborting... >``` > >If I set `QT_QPA_PLATFORM=xcb` (that is, force QT to use XWayland), the same thing happens: > >``` >2020-08-25 13:48:39:563 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? screenRect: QRect(0,0 1920x1080) >2020-08-25 13:48:39:564 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? taskbarRect: QRect(0,0 1920x32) >2020-08-25 13:48:39:564 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? taskbarScreenEdge: OCC::Systray::TaskBarPosition::Top >2020-08-25 13:48:39:564 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowReferencePoint ]:??? trayIconCenter: QPoint(1156,370) >2020-08-25 13:48:39:564 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? taskbarScreenEdge: OCC::Systray::TaskBarPosition::Top >2020-08-25 13:48:39:564 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? screenRect: QRect(0,0 1920x1080) >2020-08-25 13:48:39:564 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? windowRect (reference) QRect(956,36 401x511) >2020-08-25 13:48:39:564 [ debug nextcloud.gui.systray ]??? [ OCC::Systray::computeWindowPosition ]:??? windowRect (adjusted ) QRect(956,36 401x511) >``` > >Maybe of note is that Arch still have Nextcloud Client 3.0.0 in Testing -- there may be a reason they've kept it there for a while now (perhaps this issue isn't because of your patches). > >25 Aug 2020, 12:01 by > >> Hi >> >> here is a patch to upgrade nextcloud-client to current version 3.0.0. >> >> Successfully tested on x86_64, built for i686. The build for arm >> failed... >> >> >> Parabola Website Notification schrieb am Fri, 21. Aug 20 10:05: >> >>> eomc20a2q99n at opayq.com wants to notify you that the following packages may be out-of-date: >>> >>> >>> * nextcloud-client 2.6.4-1.parabola1 [libre] (i686): https://parabolagnulinux.org/packages/libre/i686/nextcloud-client/ >>> * nextcloud-client 2.6.4-1.parabola1 [libre] (x86_64): https://parabolagnulinux.org/packages/libre/x86_64/nextcloud-client/ >>> >>> >>> The user provided the following additional text: >>> >>> 3.0.0 is out: >>> >>> https://github.com/nextcloud/desktop/releases/tag/v3.0.0 >>> >>> _______________________________________________ >>> Dev mailing list >>> Dev at lists.parabola.nu >>> https://lists.parabola.nu/mailman/listinfo/dev >>> > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 833 bytes Desc: not available URL: From nobody at parabola.nu Wed Aug 26 00:56:08 2020 From: nobody at parabola.nu (Parabola Website Notification) Date: Wed, 26 Aug 2020 00:56:08 -0000 Subject: [Dev] Orphan Libre package [iceweasel] marked out-of-date Message-ID: <20200826005608.1190.328@winston.parabola.nu> eliotreyna at disroot.org wants to notify you that the following packages may be out-of-date: * iceweasel 1:79.0-1.parabola1 [libre] (x86_64): https://parabolagnulinux.org/packages/libre/x86_64/iceweasel/ The user provided the following additional text: Mozilla released Firefox 80. Actually, Firefox source code has been updated to the version 80. Most of the changes are related with accesibility. For more information about Firefox 80, please follow this link: https://www.mozilla.org/en-US/firefox/80.0/releasenotes/ Thanks.