You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

272 lines
8.5 KiB

%global _hardened_build 1
Name: nextcloud-client
Version: 2.3.3
Release: 1%{?dist}
Summary: The Nextcloud Client
# -libs are LGPLv2+, rest GPLv2
License: LGPLv2+ and GPLv2
Url: https://nextcloud.com/install/#install-clients
##Source0: https://github.com/nextcloud/client_theming/archive/v%{version}.tar.gz
# 2.3.3 Nextcloud theme not yet available
Source0: https://github.com/nextcloud/client_theming/archive/v2.3.2.tar.gz
Source1: https://download.owncloud.com/desktop/stable/owncloudclient-%{version}.tar.xz
Source2: nextcloud.appdata.xml
Patch0: %{name}-%{version}-syslibs.patch
## patch 1 solves https://bugzilla.redhat.com/show_bug.cgi?id=1409252
Patch1: %{name}-icon.patch
BuildRequires: check
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: doxygen
BuildRequires: libappstream-glib
BuildRequires: neon-devel
BuildRequires: openssl-devel
BuildRequires: python-sphinx
BuildRequires: qtlockedfile-qt5-devel
BuildRequires: qtkeychain-qt5-devel >= 0.7.0
BuildRequires: qtsingleapplication-qt5-devel
BuildRequires: qt5-qtbase
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qtbase-gui
BuildRequires: qt5-qtwebkit-devel
BuildRequires: qt5-qtxmlpatterns-devel
BuildRequires: qt5-qttools qt5-qttools-devel
BuildRequires: extra-cmake-modules
# Plasma 5 Dolphin integration
%if 0%{?fedora} >= 24 || 0%{?rhel} > 7
BuildRequires: kf5-kio-devel
BuildRequires: kf5-kcoreaddons-devel
BuildRequires: kf5-rpm-macros
%endif
BuildRequires: sqlite-devel
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Provides: mirall = %{version}-%{release}
Obsoletes: mirall < 1.8.0
%description
Nextcloud-client enables you to connect to your private Nextcloud Server.
With it you can create folders in your home directory, and keep the contents
of those folders synced with your Nextcloud server. Simply copy a file into
the directory and the Nextcloud Client does the rest.
%package libs
Summary: Common files for nextcloud-client
License: LGPLv2+
Provides: mirall-common = %{version}-%{release}
Obsoletes: mirall-common < 1.8.0
Requires: %{name}%{?_isa} = %{version}-%{release}
%description libs
Provides common files for nextcloud-client such as the
configuration file that determines the excluded files in a sync.
%package devel
Summary: Development files for nextcloud-client
License: LGPLv2+
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Provides: %{name}-static = %{version}-%{release}
Provides: mirall-devel = %{version}-%{release}
Obsoletes: mirall-devel < 1.8.0
%description devel
Development headers for use of the nextcloud-client library
%package nautilus
Summary: nextcloud client nautilus extension
Requires: nautilus
Requires: nautilus-python
Requires: %{name}%{?_isa} = %{version}-%{release}
Provides: mirall-nautilus = %{version}-%{release}
Obsoletes: mirall-nautilus < 1.8.0
%description nautilus
The nextcloud desktop client nautilus extension.
%package nemo
Summary: Nemo overlay icons
Requires: nemo
Requires: nemo-python
Requires: %{name}%{?_isa} = %{version}-%{release}
%description nemo
This package provides overlay icons to visualize the sync state
in the nemo file manager.
# Only Fedora has Mate, so there is no need for Caja extension on EPEL
%if 0%{?fedora}
%package caja
Summary: Caja overlay icons
Requires: caja
Requires: python-caja
Requires: %{name}%{?_isa} = %{version}-%{release}
%description caja
This package provides overlay icons to visualize the sync state
in the caja file manager.
%endif
%if 0%{?fedora} >= 24 || 0%{?rhel} > 7
%package dolphin
Summary: Dolphin overlay icons
Requires: dolphin
Requires: %{name}%{?_isa} = %{version}-%{release}
%description dolphin
The nextcloud desktop client dolphin extension.
%endif
%prep
# 2.3.2 Nextcloud theme not yet available
%setup -q -n client_theming-2.3.2
%setup -T -D -a 1 -n client_theming-2.3.2
##%setup -q -n client_theming-%{version}
##%setup -T -D -a 1 -n client_theming-%{version}
rm -Rf client
mv owncloudclient-%{version} client
cd client
%patch0 -p1
cd -
%patch1 -p1
rm -rf src/3rdparty/qtlockedfile src/3rdparty/qtsingleapplication
%build
mkdir build
pushd build
%cmake3 .. -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" -D OEM_THEME_DIR=`pwd`/../nextcloudtheme ../client
make %{?_smp_mflags}
popd
%install
pushd build
make install DESTDIR=%{buildroot}
popd
%find_lang client --with-qt
mkdir -p %{buildroot}%{_datadir}/appdata/
install -m 644 %{SOURCE2} %{buildroot}%{_datadir}/appdata/nextcloud.appdata.xml
# for distros that do not have KDE Plasma 5
%if 0%{?fedora} < 24 && 0%{?rhel} <= 7
rm -f %{buildroot}%{_libdir}/libnextclouddolphinpluginhelper.so
rm -f %{buildroot}%{_kf5_plugindir}/overlayicon/nextclouddolphinoverlayplugin.so
rm -f %{buildroot}%{_qt5_plugindir}/nextclouddolphinactionplugin.so
rm -f %{buildroot}%{_kf5_datadir}/kservices5/nextclouddolphinactionplugin.desktop
%endif
# Only Fedora has Mate, so there is no need for Caja extension on EPEL
%if 0%{?rhel}
rm -rf %{buildroot}%{_datadir}/caja-python/
%endif
%check
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/nextcloud.appdata.xml
%post
touch --no-create %{_datadir}/icons/hicolor &> /dev/null || :
%posttrans
gtk-update-icon-cache -f %{_datadir}/icons/hicolor &>/dev/null || :
%postun
if [ $1 -eq 0 ] ; then
touch --no-create %{_datadir}/icons/hicolor &> /dev/null
gtk-update-icon-cache -f %{_datadir}/icons/hicolor &> /dev/null || :
fi
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%if 0%{?fedora} >= 24 || 0%{?rhel} > 7
%post dolphin -p /sbin/ldconfig
%postun dolphin -p /sbin/ldconfig
%endif
%files -f client.lang
%{_bindir}/nextcloud
%{_bindir}/nextcloudcmd
%{_datadir}/applications/nextcloud.desktop
%{_datadir}/icons/hicolor/*/apps/*
%{_datadir}/appdata/nextcloud.appdata.xml
%files libs
%{_libdir}/libnextcloudsync.so.0
%{_libdir}/libnextcloudsync.so.%{version}
%{_libdir}/nextcloud/libocsync.so.*
%doc README.md
%license client/COPYING
%config %{_sysconfdir}/Nextcloud/sync-exclude.lst
%dir %{_sysconfdir}/Nextcloud
%files devel
%{_includedir}/nextcloudsync/
%{_libdir}/libnextcloudsync.so
%{_libdir}/nextcloud/libocsync.so
%files nautilus
%{_datadir}/nautilus-python/extensions/*
%files nemo
%{_datadir}/nemo-python/extensions/*
# Only Fedora has Mate, so there is no need for Caja extension on EPEL
%if 0%{?fedora}
%files caja
%{_datadir}/caja-python/extensions/*
%endif
%if 0%{?fedora} >= 24 || 0%{?rhel} > 7
%files dolphin
%{_libdir}/libnextclouddolphinpluginhelper.so
%{_kf5_plugindir}/overlayicon/nextclouddolphinoverlayplugin.so
%{_qt5_plugindir}/nextclouddolphinactionplugin.so
%{_kf5_datadir}/kservices5/nextclouddolphinactionplugin.desktop
%endif
%changelog
* Mon Sep 11 2017 Nick Bebout <nb@fedoraproject.org> - 2.3.3-1
- update to 2.3.3
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sun Jun 04 2017 Germano Massullo <germano.massullo@gmail.com> - 2.3.2-2
- added macros to build Caja subpackage only in Fedora, not EPEL (Mate is Fedora only)
- added macro to build Dolphin (Plasma 5) subpackage only in Fedora >= 24 && EPEL > 7 (EPEL7 ships KDE 4)
* Sat Jun 03 2017 Germano Massullo <germano.massullo@gmail.com> - 2.3.2-1
- Removed no longer necessary OpenSSL patch
- 2.3.2 release
- Remove caja extension hack. Included in upstream
* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.4-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Jan 11 2017 Kalev Lember <klember@redhat.com> - 2.2.4-8
- Fix appdata file name to match with desktop file name
* Mon Jan 02 2017 Claudio Rodrigo Pereyra Diaz <elsupergomez@fedoraproject.org> - 2.2.4-7
- Add caja extension
* Mon Jan 02 2017 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 2.2.4-6
- Fix the desktop icon (#1409252)
* Thu Dec 08 2016 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 2.2.4-5
- Epel7: drop dolphin files since they are not included in build for Epel7
* Wed Nov 23 2016 Nick Bebout <nb@fedoraproject.org> - 2.2.4-4
- Update for review
* Wed Nov 02 2016 Germano Massullo <germano.massullo@gmail.com> 2.2.4-3
- First release