Browse Source

nextcloud-client package update

Signed-off-by: guibuilder_pel7x64builder0 <guibuilder@powerel.org>
master
guibuilder_pel7x64builder0 3 years ago
parent
commit
6adfce0ebf
  1. 88
      SOURCES/nextcloud-client-2.3.3-syslibs.patch
  2. 29
      SOURCES/xcb.patch
  3. 164
      SPECS/nextcloud-client.spec

88
SOURCES/nextcloud-client-2.3.3-syslibs.patch

@ -0,0 +1,88 @@
diff -urNr client-2.3.0-orig/src/3rdparty/qtsingleapplication/qtlocalpeer.h client-2.3.0/src/3rdparty/qtsingleapplication/qtlocalpeer.h
--- client-2.3.0-orig/src/3rdparty/qtsingleapplication/qtlocalpeer.h 2016-09-27 10:53:37.000000000 +0200
+++ client-2.3.0/src/3rdparty/qtsingleapplication/qtlocalpeer.h 2016-10-11 07:58:58.953393364 +0200
@@ -27,7 +27,7 @@
**
****************************************************************************/
-#include <qtlockedfile.h>
+#include <QTSolutions/qtlockedfile.h>
#include <QLocalServer>
#include <QLocalSocket>
diff -urNr client-2.3.0-orig/src/gui/application.cpp client-2.3.0/src/gui/application.cpp
--- client-2.3.0-orig/src/gui/application.cpp 2016-09-27 10:53:37.000000000 +0200
+++ client-2.3.0/src/gui/application.cpp 2016-10-11 08:00:25.875964871 +0200
@@ -92,7 +92,7 @@
// ----------------------------------------------------------------------------------
Application::Application(int &argc, char **argv) :
- SharedTools::QtSingleApplication(Theme::instance()->appName() ,argc, argv),
+ QtSingleApplication(Theme::instance()->appName() ,argc, argv),
_gui(0),
_theme(Theme::instance()),
_helpOnly(false),
diff -urNr client-2.3.0-orig/src/gui/application.h client-2.3.0/src/gui/application.h
--- client-2.3.0-orig/src/gui/application.h 2016-09-27 10:53:37.000000000 +0200
+++ client-2.3.0/src/gui/application.h 2016-10-11 08:01:58.240768785 +0200
@@ -22,7 +22,7 @@
#include <QElapsedTimer>
#include <QNetworkConfigurationManager>
-#include "qtsingleapplication.h"
+#include "QtSolutions/QtSingleApplication"
#include "syncresult.h"
#include "logbrowser.h"
@@ -49,7 +49,7 @@
* @brief The Application class
* @ingroup gui
*/
-class Application : public SharedTools::QtSingleApplication
+class Application : public QtSingleApplication
{
Q_OBJECT
public:
diff -urNr client-2.3.0-orig/src/gui/CMakeLists.txt client-2.3.0/src/gui/CMakeLists.txt
--- client-2.3.0-orig/src/gui/CMakeLists.txt 2016-09-27 10:53:37.000000000 +0200
+++ client-2.3.0/src/gui/CMakeLists.txt 2016-10-11 08:05:03.906753374 +0200
@@ -147,10 +147,6 @@
set(3rdparty_SRC
../3rdparty/QProgressIndicator/QProgressIndicator.cpp
- ../3rdparty/qtlockedfile/qtlockedfile.cpp
- ../3rdparty/qtsingleapplication/qtlocalpeer.cpp
- ../3rdparty/qtsingleapplication/qtsingleapplication.cpp
- ../3rdparty/qtsingleapplication/qtsinglecoreapplication.cpp
)
if (APPLE)
@@ -161,18 +157,10 @@
)
endif()
-if(NOT WIN32)
- list(APPEND 3rdparty_SRC ../3rdparty/qtlockedfile/qtlockedfile_unix.cpp)
-else()
- list(APPEND 3rdparty_SRC ../3rdparty/qtlockedfile/qtlockedfile_win.cpp )
-endif()
-
set(3rdparty_INC
${CMAKE_SOURCE_DIR}/src/3rdparty/qjson
${CMAKE_SOURCE_DIR}/src/3rdparty/QProgressIndicator
- ${CMAKE_SOURCE_DIR}/src/3rdparty/qtlockedfile
${CMAKE_SOURCE_DIR}/src/3rdparty/qtmacgoodies/src
- ${CMAKE_SOURCE_DIR}/src/3rdparty/qtsingleapplication
)
include_directories(${3rdparty_INC})
@@ -298,6 +286,8 @@
target_link_libraries( ${APPLICATION_EXECUTABLE} ${QT_LIBRARIES} )
target_link_libraries( ${APPLICATION_EXECUTABLE} ${synclib_NAME} )
target_link_libraries( ${APPLICATION_EXECUTABLE} updater )
+target_link_libraries( ${APPLICATION_EXECUTABLE} Qt5Solutions_LockedFile-2.4 )
+target_link_libraries( ${APPLICATION_EXECUTABLE} Qt5Solutions_SingleApplication-2.6 )
target_link_libraries( ${APPLICATION_EXECUTABLE} ${OS_SPECIFIC_LINK_LIBRARIES} )
if(WITH_CRASHREPORTER)

29
SOURCES/xcb.patch

@ -0,0 +1,29 @@
--- desktop-3.2.2-orig/src/gui/main.cpp 2021-06-14 20:40:51.378471413 -0400
+++ desktop-3.2.2/src/gui/main.cpp 2021-06-14 20:42:21.630180229 -0400
@@ -49,8 +49,26 @@
.arg(Theme::instance()->appNameGUI()));
}
+#ifdef Q_OS_LINUX
+void wayland_hacks()
+{
+ QByteArray currentDesktop = qgetenv("XDG_CURRENT_DESKTOP").toLower();
+ QByteArray sessionDesktop = qgetenv("XDG_SESSION_DESKTOP").toLower();
+ QByteArray sessionType = qgetenv("XDG_SESSION_TYPE").toLower();
+ if (sessionType.contains("wayland") && (currentDesktop.contains("gnome") || sessionDesktop.contains("gnome")))
+ {
+ qputenv("QT_QPA_PLATFORM", "xcb");
+ }
+}
+#endif
+
int main(int argc, char **argv)
{
+
+#ifdef Q_OS_LINUX
+wayland_hacks();
+#endif
+
Q_INIT_RESOURCE(resources);
Q_INIT_RESOURCE(theme);

164
SPECS/nextcloud-client.spec

@ -1,15 +1,16 @@
%undefine __cmake_in_source_build
%undefine _cmake_skip_rpath
%global _hardened_build 1 %global _hardened_build 1


Name: nextcloud-client Name: nextcloud-client
Version: 2.6.4 Version: 3.2.4
Release: 1%{?dist} Release: 1%{?dist}
Summary: The Nextcloud Client Summary: The Nextcloud Client


# -libs are LGPLv2+, rest GPLv2 # -libs are LGPLv2+, rest GPLv2
License: LGPLv2+ and GPLv2 License: LGPLv2+ and GPLv2
Url: https://nextcloud.com/install/#install-clients Url: https://nextcloud.com/install/#install-clients
#Source0: https://github.com/nextcloud/desktop/archive/desktop-%{version}.tar.gz Source0: https://github.com/nextcloud/desktop/archive/v%{version}/desktop-%{version}.tar.gz
Source0: https://github.com/nextcloud/desktop/archive/v%{version}.tar.gz
Source1: nextcloud.appdata.xml Source1: nextcloud.appdata.xml
# The patch does 3 things: # The patch does 3 things:
# - Depends on system lib for QtSingleApplication and QtLockedFile # - Depends on system lib for QtSingleApplication and QtLockedFile
@ -19,28 +20,40 @@ Source1: nextcloud.appdata.xml
# These fix are needed because the system wide QtSingleApplication is slightly # These fix are needed because the system wide QtSingleApplication is slightly
# different from the bundled one. # different from the bundled one.
#Patch0: %%{name}-%%{version}-syslibs.patch #Patch0: %%{name}-%%{version}-syslibs.patch
# Patch0: fixes GNOME quirks on Wayland sessions. Read
# https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/3BVLBS4B3XHJEXFVGD7RK2ZMXZG6JQZT/
Patch2: xcb.patch


BuildRequires: check BuildRequires: check
BuildRequires: chrpath
BuildRequires: cmake BuildRequires: cmake
BuildRequires: desktop-file-utils BuildRequires: desktop-file-utils
BuildRequires: doxygen BuildRequires: doxygen
BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-2.0)
BuildRequires: inotify-tools-devel
BuildRequires: libcloudproviders-devel
BuildRequires: libappstream-glib BuildRequires: libappstream-glib
BuildRequires: neon-devel BuildRequires: neon-devel
BuildRequires: openssl-devel BuildRequires: openssl-devel
BuildRequires: pkgconfig(dbus-1)
BuildRequires: python3-sphinx BuildRequires: python3-sphinx
BuildRequires: qtlockedfile-qt5-devel BuildRequires: qtlockedfile-qt5-devel
BuildRequires: qtkeychain-qt5-devel >= 0.7.0 BuildRequires: qtkeychain-qt5-devel
BuildRequires: qtsingleapplication-qt5-devel BuildRequires: qtsingleapplication-qt5-devel
BuildRequires: qt5-qtbase BuildRequires: qt5-qtbase
BuildRequires: qt5-qtbase-devel BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qtbase-private-devel
BuildRequires: qt5-qtbase-gui BuildRequires: qt5-qtbase-gui
BuildRequires: qt5-qtwebkit-devel BuildRequires: qt5-qtwebkit-devel
BuildRequires: qt5-qtxmlpatterns-devel BuildRequires: qt5-qtxmlpatterns-devel
BuildRequires: qt5-qttools qt5-qttools-devel BuildRequires: qt5-qttools
BuildRequires: qt5-qttools-devel
BuildRequires: qt5-qtquickcontrols2-devel
BuildRequires: qt5-qtwebengine-devel BuildRequires: qt5-qtwebengine-devel
BuildRequires: qt5-qtwebsockets-devel
BuildRequires: qt5-qtsvg-devel BuildRequires: qt5-qtsvg-devel
BuildRequires: extra-cmake-modules BuildRequires: extra-cmake-modules
BuildRequires: inkscape
# Plasma 5 Dolphin integration # Plasma 5 Dolphin integration
%if 0%{?fedora} >= 24 || 0%{?rhel} > 7 %if 0%{?fedora} >= 24 || 0%{?rhel} > 7
BuildRequires: kf5-kio-devel BuildRequires: kf5-kio-devel
@ -49,6 +62,10 @@ BuildRequires: kf5-rpm-macros
%endif %endif
BuildRequires: sqlite-devel BuildRequires: sqlite-devel
Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%if 0%{?fedora} && 0%{?fedora} < 33
# concerning libgnome-keyring read https://bugzilla.redhat.com/show_bug.cgi?id=1652973
Requires: libgnome-keyring
%endif


Provides: mirall = %{version}-%{release} Provides: mirall = %{version}-%{release}
Obsoletes: mirall < 1.8.0 Obsoletes: mirall < 1.8.0
@ -134,23 +151,22 @@ The nextcloud desktop client dolphin extension.


%prep %prep
%setup -q -n desktop-%{version} %setup -q -n desktop-%{version}
#rm -rf src/3rdparty/qtlockedfile src/3rdparty/qtsingleapplication %patch2 -p1
sed 's/OpenSSL 1.1/OpenSSL 1.0/g' -i CMakeLists.txt


# change compiler flag
sed -i 's/-fPIE/-fPIC/g' src/gui/CMakeLists.txt
sed -i 's/-fPIE/-fPIC/g' src/cmd/CMakeLists.txt


%build %build
mkdir build %cmake_kf5 \
pushd build -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" \
### ### ### %cmake_kf5 .. -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" -DNO_SHIBBOLETH=1
%cmake3 .. -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed"
make %{?_smp_mflags}
popd


%cmake_build


%install %install
pushd build %cmake_install
make install DESTDIR=%{buildroot}
popd
%find_lang client --with-qt %find_lang client --with-qt
mkdir -p %{buildroot}%{_datadir}/appdata/ mkdir -p %{buildroot}%{_datadir}/appdata/
install -m 644 %{SOURCE1} %{buildroot}%{_datadir}/appdata/nextcloud.appdata.xml install -m 644 %{SOURCE1} %{buildroot}%{_datadir}/appdata/nextcloud.appdata.xml
@ -183,14 +199,17 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/nextcloud.
%files -f client.lang %files -f client.lang
%{_bindir}/nextcloud %{_bindir}/nextcloud
%{_bindir}/nextcloudcmd %{_bindir}/nextcloudcmd
%{_datadir}/applications/nextcloud.desktop %{_datadir}/mime/packages/nextcloud.xml
%{_datadir}/applications/com.nextcloud.desktopclient.nextcloud.desktop
%{_datadir}/icons/hicolor/*/apps/* %{_datadir}/icons/hicolor/*/apps/*
%{_datadir}/appdata/nextcloud.appdata.xml %{_datadir}/appdata/nextcloud.appdata.xml
%{_datadir}/cloud-providers/com.nextcloudgmbh.Nextcloud.ini
%{_datadir}/dbus-1/services/com.nextcloudgmbh.Nextcloud.service


%files libs %files libs
%{_libdir}/libnextcloudsync.so.0 %{_libdir}/libnextcloudsync.so.0
%{_libdir}/libnextcloudsync.so.%%{version} %{_libdir}/libnextcloudsync.so.%%{version}
%{_libdir}/nextcloud/libocsync.so.* %{_libdir}/libnextcloud_csync.so*
%doc README.md %doc README.md
%config %{_sysconfdir}/Nextcloud/sync-exclude.lst %config %{_sysconfdir}/Nextcloud/sync-exclude.lst
%dir %{_sysconfdir}/Nextcloud %dir %{_sysconfdir}/Nextcloud
@ -198,7 +217,6 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/nextcloud.
%files devel %files devel
%{_includedir}/nextcloudsync/ %{_includedir}/nextcloudsync/
%{_libdir}/libnextcloudsync.so %{_libdir}/libnextcloudsync.so
%{_libdir}/nextcloud/libocsync.so


%files nautilus %files nautilus
%{_datadir}/nautilus-python/extensions/* %{_datadir}/nautilus-python/extensions/*
@ -221,6 +239,114 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/nextcloud.
%endif %endif


%changelog %changelog
* Wed Jul 07 2021 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.2.4-1
- Update to 3.2.4

* Thu Jun 24 2021 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.2.3-1
- Update to 3.2.3
- Add inkscape as buildrequires

* Mon Jun 14 2021 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.2.2-2
- Fix patch

* Sat Jun 05 2021 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.2.2-1
- Update to 3.2.2

* Mon May 03 2021 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.2.1-2
- Replace picpie patch with sed (fixes FTBFS)

* Sat May 01 2021 Germano Massullo <germano.massullo@gmail.com> - 3.2.1-1
- 3.2.1 release

* Sat May 01 2021 Germano Massullo <germano.massullo@gmail.com> - 3.2.0-2
- added xcb.patch that fixes GNOME quirks on Wayland sessions. Read https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/3BVLBS4B3XHJEXFVGD7RK2ZMXZG6JQZT/

* Thu Apr 08 2021 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.2.0-1
- Update to 3.2.0

* Thu Mar 11 2021 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.1.3-1
- Update to 3.1.3

* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

* Wed Dec 23 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.1.1-1
- Update to 3.1.1

* Tue Dec 22 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.1.0-1
- Update to 3.1.0
- Add qtbase-private as buildrequires

* Fri Oct 30 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.0.3-1
- Update to 3.0.3

* Fri Oct 02 2020 Jeff Law <law@redhat.com> - 3.0.2-2
- Use -fPIC rather than -fPIE. Re-enable LTO.

* Sat Sep 26 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.0.2-1
- Update to 3.0.2

* Thu Sep 10 2020 Nick Bebout <nb@fedoraproject.org> - 3.0.1-2
- Disable LTO

* Sat Sep 05 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 3.0.1-1
- Update to 3.0.1
- Drop upstreamed patches

* Mon Aug 31 2020 Michel Alexandre Salim <salimma@fedoraproject.org> - 2.6.5-9
- Only require libgnome-keyring on Fedora (not EPEL). EPEL8 is getting qtkeychain 0.10.0

* Mon Aug 24 2020 Rex Dieter <rdieter@fedoraproject.org> - 2.6.5-8
- %%check: verify correct rpath/runpath

* Mon Aug 24 2020 Rex Dieter <rdieter@fedoraproject.org> - 2.6.5-7
- restore use of %%cmake_kf5, explicitly undefine _cmake_skip_rpath (#1871655)

* Tue Aug 04 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 2.6.5-6
- Change cmake macros to fix FTBFS

* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.5-5
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.5-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Wed Jul 15 2020 Gwyn Ciesla <gwync@protonmail.com> - 2.6.5-3
- Require libgnome-keyring only for <=f32

* Tue Jul 14 2020 Gwyn Ciesla <gwync@protonmail.com> - 2.6.5-2
- Reinstate libgnome-keyring requires.

* Fri Jul 10 2020 Gwyn Ciesla <gwync@protonmail.com> - 2.6.5-1
- 2.6.5

* Thu Jun 18 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 2.6.4-5
- Drop requires on libgnome-keyring (not needed with qtkeychain >= 0.10.0)

* Mon Apr 27 2020 Germano Massullo <germano.massullo@gmail.com> - 2.6.4-4
- Added Requires: libgnome-keyring Read https://bugzilla.redhat.com/show_bug.cgi?id=1652973

* Sun Apr 12 2020 Tim Klocke <taaem@mailbox.org> - 2.6.4-3
- Fixed autostart when using libcloudproviders
- Fixed recently changed files in libcloudproviders support

* Sun Apr 05 2020 Germano Massullo <germano.massullo@gmail.com> - 2.6.4-2
- Added libcloudproviders support. Thanks to Tim Klocke
- Added BuildRequires: libcloudproviders-devel BuildRequires: pkgconfig(dbus-1)

* Thu Mar 05 2020 Gwyn Ciesla <gwync@protonmail.com> - 2.6.4-1
- 2.6.4

* Mon Feb 17 2020 Mukundan Ragavan <nonamedotc@fedoraproject.org> - 2.6.3-1
- Update to 2.6.3

* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Fri Dec 27 2019 Gwyn Ciesla <gwync@protonmail.com> - 2.6.2-1
- 2.6.2

* Wed Nov 06 2019 Germano Massullo <germano.massullo@gmail.com> - 2.6.1-1 * Wed Nov 06 2019 Germano Massullo <germano.massullo@gmail.com> - 2.6.1-1
- 2.6.1 release - 2.6.1 release
- Replaced Requires:python-caja with Requires:python3-caja in caja subpackage - Replaced Requires:python-caja with Requires:python3-caja in caja subpackage

Loading…
Cancel
Save