1
0
nextcloud-desktop/nextcloud-desktop.spec
Eric Schirra e54f823369 Accepting request 1001793 from home:ecsos
- Update to 3.6.0
  - desktop#3461 Fix crash in cldapi.dll
  - desktop#4526 Updating command-rebase.yml workflow from template
  - desktop#4577 Reply button size should be same as the input field, smaller + text color
  - desktop#4616 Fix crashing when selecting user status and predefined statuses not appearing
  - desktop#4624 Make user status dialog look in line with the rest of the desktop client tray and Nextcloud
  - desktop#4628 Add a placeholder message for the recents tab of the emoji picker
  - desktop#4631 Add SVG icon styled for macOS Big Sur
  - desktop#4643 Ensure the dispatch source only gets deallocated after the dispatch_source_cancel is done,
    avoiding crashing of the Finder Sync Extension on macOS
  - desktop#4650 Properly adapt the UserStatusSelectorModel to QML, eliminate hacks, make code more declarative
  - desktop#4655 Fix the system tray menu not being correctly replaced in setupContextMenu on GNOME
  - desktop#4663 Make the share dialog resizeable
  - desktop#4667 Make client language gender-neutral and more clear
  - desktop#4671 Use an en-dash for the userstatus panel
  - desktop#4672 Close call notifications when the call has been joined by the user, or the call has ended
  - desktop#4678 Correct spelling
  - desktop#4679 Print sync direction in SyncFileStatusTracker::slotAboutToPropagate
  - desktop#4682 Windows CI. Use specific Craft revision.
  - desktop#4683 Add 'db/local/remote' reference to log string.
  - desktop#4685 Work around issues with window positioning on Linux DEs,
    hardcode tray window to screen center when new account added
  - desktop#4686 Add a custom back button to the account wizard's advanced setup page
  - desktop#4687 Clean up systray methods, make more QML-friendly
  - desktop#4688 Refactor tray window opening code for clarity and efficiency
  - desktop#4693 Increase the call state checking interval to not overload the server
  - desktop#4700 Fix bad quote in CMakeLists PNG generation message
  - desktop#4703 Only set _FORTIFY_SOURCE when a higher level of this flag has not been set
  - desktop#4704 Switch to using the main client CI image based on ubuntu 22.04
  - desktop#4706 Limit concurrent notifications
  - desktop#4707 Use macOS-specific application icon
  - desktop#4710 QML-ify the UserModel, use properties rather than setter methods
  - desktop#4712 Take ints by value rather than reference in UserModel methods
  - desktop#4713 Feature/vfs windows thumbnails
  - desktop#4717 Respect skipAutoUpdateCheck in nextcloud.cfg with Sparkle on macOS
  - desktop#4718 Restyle unified search skeleton items animation and simplify their code
  - desktop#4719 Stop styling QML unified search items hierarchically, use global Style constants
  - desktop#4720 Use preprocessor directive rather than normal 'if' for UNNotification types
  - desktop#4723 Make apps menu scrollable when content taller than available vertical space,
    preventing borking of layout
  - desktop#4734 Ensure that throttled notifications still appear in tray activity model
  - desktop#4735 Stop clearing notifications when new notifications are received
  - desktop#4738 Fix ActivityItemContent QML paintedWidth errors
  - desktop#4748 Clicking on an activity list item for a file opens the local file if available
  - desktop#4753 Replace unified search text field busy indicator with custom indicator
  - desktop#4755 Update macOS Info.plist
  - desktop#4756 Ensure debug archive contents are readable by any user
  - desktop#4758 Remove Ubuntu Impish, add Kinetic
  - desktop#4760 Make UserStatusSelector a dismissible page pushed onto the tray window
  - desktop#4771 Feature/handle edit locally
  - desktop#4773 Add Debian Bullseye build
  - desktop#4774 Double-clicking tray icon opens currently-selected user's local folder (if available)
  - desktop#4790 Clean up TalkReplyTextField, remove unnecessary parent Item
  - desktop#4797 Refactor user line
  - desktop#4799 Do not reboot PC when running an MSI via autoupdate.
  - desktop#4801 Always run MSI with full UI.
  - desktop#4802 Eliminate padding around the menu separator in the account menu
  - desktop#4804 Feature/enable more warnings also for gcc
  - desktop#4810 Move CFAPI shell extensions variables to root CMakeLists.
  - desktop#4815 Move URI scheme variable from Nextcloud.cmake to root CMakeListsts.
  - desktop#4816 Ensure SyncEngine use an initialized instance of SyncOptions
  - desktop#4818 Fix QML warnings
  - desktop#4820 I18n: Spelling unification
  - desktop#4821 Fix crash: 'Failed to create OpenGL context'.
  - desktop#4822 Fix bugs with setting 'Away' user status
  - desktop#4827 Fix greek translation for application name in menu
  - desktop#4829 Align, resize, and layout everything uniformly in the unified search view
  - desktop#4830 Remove libglib-2.0.so.0 and libgobject-2.0.so.0 from Appimage.
  - desktop#4831 Fix unified search item placeholder image source
  - desktop#4833 Use same tooltip component everywhere, fix tooltip clipping bugs
  - desktop#4834 Bump version and year.
  - desktop#4839 Fix account switching and hover issues with UserLine component
  - desktop#4840 Remove Ubuntu Focal
  - desktop#4842 Add a ScrollView to the predefined statuses area of the UserStatusSelector
  - desktop#4843 Prevent the 'Cancel' button of the user status selector getting squashed
  - desktop#4844 Ensure that clear status message combo box is at least implicit width
  - desktop#4845 Fix alignment of predefined status contents regardless of emoji fonts
  - desktop#4850 Prevent crashing when trying to create error-ing QML component in systray.cpp, output error to log
  - desktop#4852 Add CHANGELOG.md.
  - desktop#4853 Ensure file activity dialog is centered on screen and appears at top of window stack
  - desktop#4866 Build script for AppImage should not assume Nextcloud is the name
  - desktop#4867 Fix File Activities dialog not showing up.
  - desktop#4869 Reads and store fileId and remote permissions during bulk upload
  - desktop#4882 Do not build qt keychain already included in the CI images
  - desktop#4884 Bugfix/web engine on win11
  - desktop#4885 Update CHANGELOG for the 3.6.0 release.
  - desktop#4900 Fix script that upload AppImage to go in correct path

OBS-URL: https://build.opensuse.org/request/show/1001793
OBS-URL: https://build.opensuse.org/package/show/network/nextcloud-desktop?expand=0&rev=73
2022-09-07 16:58:47 +00:00

288 lines
9.3 KiB
RPMSpec

#
# spec file for package nextcloud-desktop
#
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define soname libnextcloudsync
%define sover 0
Name: nextcloud-desktop
Version: 3.6.0
Release: 0
Summary: Nextcloud desktop synchronisation client
License: GPL-2.0-or-later AND LGPL-3.0-or-later
Group: Productivity/Networking/File-Sharing
URL: https://nextcloud.com/
Source: https://github.com/nextcloud/desktop/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: sysctl-sync-inotify.conf
# PATCH-FIX-OPENSUSE nextcloud-desktop-remove-datetime.patch sor.alexei@meowr.ru -- Remove __TIME__ and __DATE__.
Patch1: nextcloud-desktop-remove-datetime.patch
BuildRequires: AppStream
BuildRequires: cmake >= 3.2
BuildRequires: extra-cmake-modules
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: glibc-devel
BuildRequires: gobject-introspection-devel
BuildRequires: hicolor-icon-theme
BuildRequires: inkscape >= 1.0
BuildRequires: libQt5Gui-private-headers-devel
BuildRequires: libqt5-linguist-devel
BuildRequires: pkgconfig
BuildRequires: qtkeychain-qt5-devel
BuildRequires: update-desktop-files
BuildRequires: cmake(KF5Config)
BuildRequires: cmake(KF5KIO) >= 5.16
###BuildRequires: cmake(Qt5Keychain)
BuildRequires: pkgconfig(Qt5Concurrent)
BuildRequires: pkgconfig(Qt5Core) >= 5.15
BuildRequires: pkgconfig(Qt5DBus)
BuildRequires: pkgconfig(Qt5Gui)
BuildRequires: pkgconfig(Qt5Network)
BuildRequires: pkgconfig(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5QuickControls2)
BuildRequires: pkgconfig(Qt5Sql)
BuildRequires: pkgconfig(Qt5Svg)
BuildRequires: pkgconfig(Qt5WebEngineWidgets)
BuildRequires: pkgconfig(Qt5WebSockets)
BuildRequires: pkgconfig(Qt5Xml)
BuildRequires: pkgconfig(cloudproviders)
BuildRequires: pkgconfig(cmocka)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(openssl) >= 1.1
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(zlib)
Requires: %{soname}%{sover} = %{version}
Requires: libqt5-qtgraphicaleffects
Requires: libqt5-qtquickcontrols2
Provides: nextcloud-client = %{version}
Obsoletes: nextcloud-client < %{version}
Provides: nextcloud-client-lang = %{version}
Obsoletes: nextcloud-client-lang < %{version}
%if 0%{?is_opensuse}
BuildRequires: doxygen
#BuildRequires: python3-MarkupSafe
BuildRequires: python3-Sphinx
#BuildRequires: python3-importlib-metadata
Suggests: %{name}-doc = %{version}
%endif
%description
The Nextcloud Desktop Client is a tool to synchronise files from
the Nextcloud Server with your computer.
Nextcloud Desktop enables you to connect to your private
Nextcloud Server. With it you can create directories in your home
directory, and keep the contents of those directories synced with
the server. Simply copy a file into the directory and the desktop
synchronisation client does the rest.
%lang_package
%if 0%{?is_opensuse}
%package doc
Summary: Documentation for nextcloud-desktop
Group: Productivity/Networking/File-Sharing
Provides: nextcloud-client-doc = %{version}
Obsoletes: nextcloud-client-doc < %{version}
BuildArch: noarch
%description doc
The Nextcloud Desktop Client is a tool to synchronise files from
the Nextcloud Server with your computer.
This package contains the documentation.
%endif
%package -n %{soname}%{sover}
Summary: The Nextcloud synchronisation library
Group: Productivity/Networking/File-Sharing
%description -n %{soname}%{sover}
The Nextcloud Desktop Client synchronisation library.
%package -n %{soname}-devel
Summary: Development files for the Nextcloud synchronisation library
Group: Development/Libraries/C and C++
Requires: %{soname}%{sover} = %{version}
%description -n %{soname}-devel
Development files for the Nextcloud Desktop Client synchronisation
library.
%package -n nautilus-extension-nextcloud
Summary: Nautilus overlay icons
Group: Productivity/Networking/File-Sharing
Requires: %{name} = %{version}
Requires: nautilus
Requires: python3-nautilus
Supplements: (%{name} and nautilus)
BuildArch: noarch
%description -n nautilus-extension-nextcloud
This package provides overlay icons to visualise the
synchronisation state in the Nautilus file manager.
%if 0%{?is_opensuse}
%package -n caja-extension-nextcloud
Summary: Caja overlay icons
Group: Productivity/Networking/File-Sharing
Requires: %{name} = %{version}
Requires: caja
Requires: python-caja
Supplements: (%{name} and caja)
BuildArch: noarch
%description -n caja-extension-nextcloud
This package provides overlay icons to visualise the
synchronisation state in the Caja file manager.
%package -n nemo-extension-nextcloud
Summary: Nemo overlay icons
Group: Productivity/Networking/File-Sharing
Requires: %{name} = %{version}
Requires: nemo
Requires: python-nemo
Supplements: (%{name} and nemo)
BuildArch: noarch
%description -n nemo-extension-nextcloud
This package provides overlay icons to visualise the
synchronisation state in the Nemo file manager.
%package -n %{name}-dolphin
Summary: Dolphin overlay icons
Group: Productivity/Networking/File-Sharing
Requires: %{name} = %{version}
Requires: dolphin
Supplements: (%{name} and dolphin)
%description -n %{name}-dolphin
This package provides the necessary plugin libraries for the
Dolphin filemanager to display overlay icons.
%endif
%prep
%autosetup -p1 -n desktop-%{version}
cp -a %{SOURCE1} sysctl-sync-inotify.conf
%build
%cmake \
%if 0%{?is_opensuse}
-DWITH_DOC=ON \
-DNO_SHIBBOLETH=1
%endif
%cmake_build
%install
%cmake_install
%if 0%{?is_opensuse}
mkdir -p %{buildroot}%{_docdir}/%{name}-doc/
mv -f %{buildroot}%{_datadir}/doc/client/nextcloud-client/html/ \
%{buildroot}%{_docdir}/%{name}-doc/html/
%else
# There's no Caja and Nemo in SLE.
rm -r %{buildroot}%{_datadir}/caja-python/
rm -r %{buildroot}%{_datadir}/nemo-python/
%endif
# Generate bytecode for extensions.
for fm in caja nautilus nemo; do
if [ -d %{buildroot}%{_datadir}/$fm-python/ ]; then
%py3_compile %{buildroot}%{_datadir}/$fm-python/extensions/
fi
done
# ecsos: Comment this out, because it seems to be a security risk.
# See: https://github.com/owncloud/client/issues/4107#issuecomment-240627858
# A workaround for gh#owncloud/client#4107
#install -Dpm 0644 sysctl-sync-inotify.conf \
# %%{buildroot}%%{_sysconfdir}/sysctl.d/99-%%{name}-sync-inotify.conf
%suse_update_desktop_file com.nextcloud.desktopclient.nextcloud
%fdupes %{buildroot}%{_datadir}/
%post -n %{soname}%{sover} -p /sbin/ldconfig
%postun -n %{soname}%{sover} -p /sbin/ldconfig
%files
%license COPYING*
%config %{_sysconfdir}/Nextcloud/
#%%config %%{_sysconfdir}/sysctl.d/99-%%{name}-sync-inotify.conf
%{_bindir}/nextcloud*
%dir %{_datadir}/nextcloud/
%{_datadir}/applications/com.nextcloud.desktopclient.nextcloud.desktop
%dir %{_datadir}/icons/hicolor/1024x1024/
%dir %{_datadir}/icons/hicolor/1024x1024/apps/
%{_datadir}/icons/hicolor/*/apps/Nextcloud*.*
%dir %{_datadir}/cloud-providers/
%{_datadir}/cloud-providers/com.nextcloudgmbh.Nextcloud.ini
%{_datadir}/dbus-1/services/com.nextcloudgmbh.Nextcloud.service
%{_datadir}/mime/packages/nextcloud.xml
%files lang
%{_datadir}/nextcloud/i18n/
%if 0%{?is_opensuse}
%files doc
%doc %{_docdir}/%{name}-doc/
%endif
%files -n %{soname}%{sover}
%license COPYING*
%{_libdir}/%{soname}.so.*
%{_libdir}/libnextcloud_csync.so.*
%files -n %{soname}-devel
%{_includedir}/nextcloudsync/
%{_libdir}/%{soname}.so
%{_libdir}/libnextcloud_csync.so
%{_libdir}/nextcloudsync_vfs_*.so
%files -n nautilus-extension-nextcloud
%dir %{_datadir}/nautilus-python/
%dir %{_datadir}/nautilus-python/extensions/
%dir %{_datadir}/nautilus-python/extensions/__pycache__
%{_datadir}/nautilus-python/extensions/syncstate-Nextcloud.py*
%{_datadir}/nautilus-python/extensions/__pycache__/syncstate-Nextcloud*
%if 0%{?is_opensuse}
%files -n caja-extension-nextcloud
%dir %{_datadir}/caja-python/
%dir %{_datadir}/caja-python/extensions/
%dir %{_datadir}/caja-python/extensions/__pycache__
%{_datadir}/caja-python/extensions/syncstate-Nextcloud.py*
%{_datadir}/caja-python/extensions/__pycache__/*
%files -n nemo-extension-nextcloud
%dir %{_datadir}/nemo-python/
%dir %{_datadir}/nemo-python/extensions/
%dir %{_datadir}/nemo-python/extensions/__pycache__
%{_datadir}/nemo-python/extensions/syncstate-Nextcloud.py*
%{_datadir}/nemo-python/extensions/__pycache__/*
%files dolphin
%{_libdir}/libnextclouddolphinpluginhelper.so
%{_libdir}/qt5/plugins/nextclouddolphinactionplugin.so
%dir %{_libdir}/qt5/plugins/kf5/overlayicon/
%{_libdir}/qt5/plugins/kf5/overlayicon/nextclouddolphinoverlayplugin.so
%{_datadir}/kservices5/nextclouddolphinactionplugin.desktop
%endif
%changelog