## START: Set by rpmautospec
## (rpmautospec version 0.3.0)
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 5;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

%global repo dde-file-manager

Name:           deepin-file-manager
Version:        5.6.4
Release:        %autorelease
Summary:        Deepin File Manager
License:        GPLv3
URL:            https://github.com/linuxdeepin/dde-file-manager
Source0:        %{url}/archive/%{version}/%{repo}-%{version}.tar.gz

# fix: use Q_GLOBAL_STATIC to initialize eventHanlder and eventFilter
# Author: Robin Lee <cheeselee@fedoraproject.org>
Patch0001: 0001-fix-use-Q_GLOBAL_STATIC-to-initialize-eventHanlder-a.patch
# Fix build when ANYTHING is disabled. Without this patch, error would be
# ././search/dfsearch.h:28:10: fatal error: fsearch.h: No such file or directory
Patch0002: 0002-Include-dfsearch.pri-if-ANYTHING-is-disabled.patch
# Fix build on GCC 11
Patch0003: 0003-fix-undefined-sleep_for.patch
# Fix build on GCC 12
Patch0004: 0004-fix-undefined-std-array.patch

BuildRequires:  gcc-c++
BuildRequires:  desktop-file-utils
BuildRequires:  deepin-gettext-tools
BuildRequires:  deepin-dock-devel
BuildRequires:  file-devel
BuildRequires:  jemalloc-devel
BuildRequires:  zlib-devel
BuildRequires:  disomaster-devel
BuildRequires:  openssl-devel
BuildRequires:  cmake(KF5Codecs)
BuildRequires:  pkgconfig(atk)
BuildRequires:  pkgconfig(dtkwidget) >= 2.0.6
BuildRequires:  pkgconfig(dframeworkdbus) >= 2.0
BuildRequires:  udisks2-qt5-devel >= 5.0.3
BuildRequires:  glib2-devel
BuildRequires:  libicu-devel
BuildRequires:  lucene++-devel
BuildRequires:  libxml2-devel
BuildRequires:  htmlcxx-devel
BuildRequires:  mimetic-devel
BuildRequires:  boost-devel
BuildRequires:  pcre-devel
BuildRequires:  pkgconfig(libgsf-1)
BuildRequires:  pkgconfig(libmediainfo)
BuildRequires:  pkgconfig(gsettings-qt)
BuildRequires:  pkgconfig(libsecret-1)
BuildRequires:  pkgconfig(poppler-cpp)
BuildRequires:  pkgconfig(polkit-agent-1)
BuildRequires:  pkgconfig(polkit-qt5-1)
BuildRequires:  pkgconfig(Qt5Core)
BuildRequires:  pkgconfig(Qt5Concurrent)
BuildRequires:  pkgconfig(Qt5DBus)
BuildRequires:  pkgconfig(Qt5Gui)
BuildRequires:  pkgconfig(Qt5Svg)
BuildRequires:  pkgconfig(Qt5Multimedia)
BuildRequires:  pkgconfig(Qt5X11Extras)
BuildRequires:  pkgconfig(Qt5Xdg)
BuildRequires:  qt5-qtbase-private-devel

BuildRequires:  pkgconfig(taglib)
BuildRequires:  pkgconfig(uchardet)
BuildRequires:  pkgconfig(xcb-util)
BuildRequires:  pkgconfig(xcb-ewmh)
BuildRequires:  pkgconfig(gio-qt)
BuildRequires:  pkgconfig(docparser)
BuildRequires:  qt5-linguist
BuildRequires:  systemd
BuildRequires:  make

# run command by QProcess
Requires:       deepin-shortcut-viewer
Requires:       deepin-terminal
Requires:       deepin-desktop
Requires:       file-roller
Requires:       gvfs-client
Requires:       samba
Requires:       xdg-user-dirs
Recommends:     deepin-manual

%description
File manager front end of Deepin OS.

%package devel
Summary:        Development package for %{name}
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description devel
Header files and libraries for %{name}.

%package -n deepin-desktop
Summary:        Deepin desktop environment - desktop module
Requires:       %{name}%{?_isa} = %{version}-%{release}
Requires:       deepin-dock
Requires:       deepin-launcher
Requires:       deepin-session-ui
Requires:       deepin-control-center

%description -n deepin-desktop
Deepin desktop environment - desktop module.

%prep
%autosetup -p1 -n %{repo}-%{version}

# fix file permissions
find -type f -perm 775 -exec chmod 644 {} \;
sed -i 's|systembusconf.path = /etc/dbus-1/system.d|systembusconf.path = %{_datadir}/dbus-1/system.d|' src/dde-file-manager-daemon/dde-file-manager-daemon.pro
sed -i '/target.path/s|lib|%{_lib}|' src/dde-dock-plugins/disk-mount/disk-mount.pro
sed -i '/deepin-daemon/s|lib|libexec|' src/dde-zone/mainwindow.h
sed -i 's|lib/gvfs|libexec|' src/%{repo}-lib/gvfs/networkmanager.cpp
sed -i 's|systemd_service.path = .*|systemd_service.path = %{_unitdir}|' src/dde-file-manager-daemon/dde-file-manager-daemon.pro

#sed -i 's:$$PWD/::' src/dde-file-manager-lib/search/dfsearch.pri

%build
export PATH=%{_qt5_bindir}:$PATH
%qmake_qt5 PREFIX=%{_prefix} QMAKE_CFLAGS_ISYSTEM= CONFIG+="DISABLE_FFMPEG DISABLE_ANYTHING" filemanager.pro
%make_build

%install
%make_install INSTALL_ROOT=%{buildroot}

%check
desktop-file-validate %{buildroot}%{_datadir}/applications/%{repo}.desktop
desktop-file-validate %{buildroot}%{_datadir}/applications/dde-computer.desktop
desktop-file-validate %{buildroot}%{_datadir}/applications/dde-trash.desktop
desktop-file-validate %{buildroot}%{_datadir}/applications/dde-home.desktop
desktop-file-validate %{buildroot}%{_datadir}/applications/dde-open.desktop

%files
%doc README.md
%license LICENSE
%{_datadir}/dbus-1/system.d/com.deepin.filemanager.daemon.conf
%{_bindir}/%{repo}
%{_bindir}/%{repo}-daemon
%{_bindir}/%{repo}-pkexec
%{_bindir}/dde-property-dialog
%{_bindir}/dde-select-dialog-wayland
%{_bindir}/dde-select-dialog-x11
%{_libdir}/lib%{repo}.so.*
%{_libdir}/dde-dock/plugins/
%{_libdir}/%{repo}/
%{_libdir}/libdfm-extension.so.1*
%{_datadir}/%{repo}/
%{_datadir}/deepin/%{repo}/
%{_datadir}/icons/hicolor/scalable/apps/*.svg
%{_datadir}/applications/%{repo}.desktop
%{_datadir}/applications/dde-open.desktop
%{_datadir}/applications/context-menus/
%{_datadir}/dbus-1/interfaces/com.deepin.filemanager.filedialog.xml
%{_datadir}/dbus-1/interfaces/com.deepin.filemanager.filedialogmanager.xml
%{_datadir}/dbus-1/services/com.deepin.filemanager.filedialog.service
%{_datadir}/dbus-1/services/com.deepin.filemanager.filedialog_wayland.service
%{_datadir}/dbus-1/services/com.deepin.filemanager.filedialog_x11.service
%{_datadir}/dbus-1/services/org.freedesktop.FileManager.service
%{_datadir}/dbus-1/system-services/com.deepin.filemanager.daemon.service
%dir %{_datadir}/dde-disk-mount-plugin
%{_datadir}/dde-disk-mount-plugin/translations/
%{_unitdir}/dde-filemanager-daemon.service
%{_datadir}/polkit-1/actions/com.deepin.*.policy
%{_datadir}/glib-2.0/schemas/*
%{_datadir}/deepin-manual/
%ifarch aarch64
%{_bindir}/file-manager.sh
%{_sysconfdir}/xdg/autostart/%{repo}-autostart.desktop
%endif

%files devel
%{_includedir}/%{repo}/
%{_includedir}/dfm-extension/
%{_libdir}/pkgconfig/%{repo}.pc
%{_libdir}/pkgconfig/dfm-extension.pc
%{_libdir}/lib%{repo}.so
%{_libdir}/libdfm-extension.so

%files -n deepin-desktop
%{_bindir}/dde-desktop
%{_datadir}/applications/dde-computer.desktop
%{_datadir}/applications/dde-trash.desktop
%{_datadir}/applications/dde-home.desktop
%dir %{_datadir}/dde-desktop
%{_datadir}/dde-desktop/translations/
%{_datadir}/dbus-1/services/com.deepin.dde.desktop.service
%ifarch aarch64
%{_bindir}/dde-computer.sh
%{_bindir}/dde-trash.sh
%endif

%changelog
* Sat Nov 05 2022 Robin Lee <cheeselee@fedoraproject.org> 5.6.4-5
- Rebuild (qt5)

* Sat Nov 05 2022 Robin Lee <cheeselee@fedoraproject.org> 5.6.4-4
- Revert "Re-mark need for rebuild at Qt5 version update"

* Sat Nov 05 2022 Robin Lee <cheeselee@fedoraproject.org> 5.6.4-3
- Re-mark need for rebuild at Qt5 version update

* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> 5.6.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Sat Jul 16 2022 Robin Lee <cheeselee@fedoraproject.org> 5.6.4-1
- New release 5.6.4

* Fri Jul 15 2022 Robin Lee <cheeselee@fedoraproject.org> 5.5.10-5
- BR pcre-devel

* Thu Jul 14 2022 Jan Grulich <jgrulich@redhat.com> 5.5.10-4
- Rebuild (qt5)

* Tue May 17 2022 Jan Grulich <jgrulich@redhat.com> 5.5.10-3
- Rebuild (qt5)

* Tue Apr 19 2022 Robin Lee <cheeselee@fedoraproject.org> 5.5.10-2
- fix Patch0002 to fix build on aarch64

* Tue Apr 19 2022 Robin Lee <cheeselee@fedoraproject.org> 5.5.10-1
- New release 5.5.10

* Tue Mar 08 2022 Jan Grulich <jgrulich@redhat.com> 5.5.1-5
- Rebuild (qt5)

* Fri Feb 18 2022 Robin Lee <cheeselee@fedoraproject.org> 5.5.1-4
- Fix build on GCC 12 (RHBZ#2045305)

* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> 5.5.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Wed Jan 05 2022 Robin Lee <cheeselee@fedoraproject.org> 5.5.1-2
- fix Patch0002 to fix build on non-x86 arches

* Wed Jan 05 2022 Robin Lee <cheeselee@fedoraproject.org> 5.5.1-1
- New release 5.5.1

* Tue Oct 05 2021 Robin Lee <cheeselee@fedoraproject.org> 5.2.24-4
- drop a patch to fix segfault at exit

* Tue Oct 05 2021 Robin Lee <cheeselee@fedoraproject.org> 5.2.24-3
- BR systemd for unitdir macro

* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> 5.2.24-2
- Rebuilt with OpenSSL 3.0.0

* Mon Sep 06 2021 Robin Lee <cheeselee@fedoraproject.org> 5.2.24-1
- New release 5.2.24

* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.0.87-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

* Wed Apr  7 2021 Robin Lee <cheeselee@fedoraproject.org> - 5.2.0.87-2
- deepin-desktop requires deepin-control-center

* Fri Mar 12 2021 Robin Lee <cheeselee@fedoraproject.org> - 5.2.0.87-1
- chore: null (liuyangming)
- fix: 撤销之前对批量打开wps文件的修改 (liuyangming)

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

* Thu Nov 26 2020 Robin Lee <cheeselee@fedoraproject.org> - 5.2.0.65-1
- new upstream release: 5.2.0.65

* Wed Nov 11 2020 Robin Lee <cheeselee@fedoraproject.org> - 5.2.0.59-1
- new upstream release: 5.2.0.59

* Wed Sep 16 2020 Robin Lee <cheeselee@fedoraproject.org> - 5.0.0-9
- Fix build with Qt 5.15

* Fri Sep 11 2020 Jan Grulich <jgrulich@redhat.com> - 5.0.0-9
- rebuild (qt5)

* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Wed Apr  8 2020 Robin Lee <cheeselee@fedoraproject.org> - 5.0.0-4
- Fix build with Qt 5.14.2

* Mon Apr 06 2020 Rex Dieter <rdieter@fedoraproject.org> - 5.0.0-7
- rebuild (qt5)

* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Fri Jan 17 2020 Marek Kasik <mkasik@redhat.com> - 5.0.0-5
- Rebuild for poppler-0.84.0

* Mon Dec 09 2019 Jan Grulich <jgrulich@redhat.com> - 5.0.0-4
- rebuild (qt5)

* Wed Sep 25 2019 Jan Grulich <jgrulich@redhat.com> - 5.0.0-3
- rebuild (qt5)

* Wed Sep 11 2019 Robin Lee <cheeselee@fedoraproject.org> - 5.0.0-2
- Drop gstreamer-plugins-good unused requirement (BZ#1751104)

* Sat Aug 10 2019 Robin Lee <cheeselee@fedoraproject.org> - 5.0.0-1
- Release 5.0.0

* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.7-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Mon Jun 17 2019 Jan Grulich <jgrulich@redhat.com> - 4.7.7-4
- rebuild (qt5)

* Mon Jun 10 2019 Robin Lee <cheeselee@fedoraproject.org> - 4.7.7-3
- rebuild (Qt5)

* Sun Mar 10 2019 Robin Lee <cheeselee@fedoraproject.org> - 4.7.7-2
- rebuild (Qt5)

* Tue Feb 26 2019 mosquito <sensor.wen@gmail.com> - 4.7.7-1
- Update to 4.7.7

* Tue Feb 19 2019 mosquito <sensor.wen@gmail.com> - 4.7.6-1
- Update to 4.7.6

* Thu Jan 31 2019 mosquito <sensor.wen@gmail.com> - 4.7.5-1
- Update to 4.7.5

* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.1.10-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Sun Dec 23 2018 mosquito <sensor.wen@gmail.com> - 4.7.1.10-1
- Update to 4.7.1.10

* Tue Dec 18 2018 Rex Dieter <rdieter@fedoraproject.org> - 4.7.1.9-2
- rebuild (Qt5)

* Thu Dec 13 2018 mosquito <sensor.wen@gmail.com> - 4.7.1.9-1
- Update to 4.7.1.9

* Thu Dec 13 2018 Rex Dieter <rdieter@fedoraproject.org> - 4.7.1.4-2
- rebuild (qt5)

* Thu Nov 29 2018 mosquito <sensor.wen@gmail.com> - 4.7.1.4-1
- Update to 4.7.1.4

* Thu Nov 22 2018 mosquito <sensor.wen@gmail.com> - 4.7.1.1-2
- Add Req deepin-session-ui, deepin-dock, deepin-launcher

* Mon Nov 12 2018 mosquito <sensor.wen@gmail.com> - 4.7.1.1-1
- Update to 4.7.1.1

* Fri Sep 21 2018 Jan Grulich <jgrulich@redhat.com> - 4.4.9.1-2
- rebuild (qt5)

* Wed Aug 15 2018 mosquito <sensor.wen@gmail.com> - 4.4.9.1-1
- Update to 4.4.9.1

* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.7-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Thu Jun 21 2018 Rex Dieter <rdieter@fedoraproject.org> - 4.4.7-10
- rebuild (qt5)

* Sun May 27 2018 Rex Dieter <rdieter@fedoraproject.org> - 4.4.7-9
- rebuild (qt5)

* Fri Mar 23 2018 Marek Kasik <mkasik@redhat.com> - 4.4.7-8
- Rebuild for poppler-0.63.0

* Mon Mar 19 2018 mosquito <sensor.wen@gmail.com> - 4.4.7-7
- Exclude ppc64le, ppc64, aarch64

* Sat Mar 10 2018 mosquito <sensor.wen@gmail.com> - 4.4.7-6
- Remove obsoletes statement (BZ#1537223)

* Tue Feb 20 2018 Rex Dieter <rdieter@fedoraproject.org> - 4.4.7-5
- rebuild (qt5)

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.7-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Thu Jan 11 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4.4.7-3
- Remove obsolete scriptlets

* Mon Jan 01 2018 Rex Dieter <rdieter@fedoraproject.org> - 4.4.7-2
- rebuild (qt5)

* Sat Dec  2 2017 mosquito <sensor.wen@gmail.com> - 4.4.7-1
- Update to 4.4.7

* Mon Nov 27 2017 Rex Dieter <rdieter@fedoraproject.org> - 4.3.2-2
- rebuild (qt5)

* Fri Oct 27 2017 mosquito <sensor.wen@gmail.com> - 4.3.4-1
- Update to 4.3.4

* Fri Oct 13 2017 mosquito <sensor.wen@gmail.com> - 4.3.2-1
- Update to 4.3.2
- Remove ffmpeg patch file
- BR: Qt5Concurrent Qt5DBus Qt5Gui

* Wed Oct 11 2017 Rex Dieter <rdieter@fedoraproject.org> - 4.2.5-2
- BR: qt5-qtbase-private-devel

* Sat Aug 26 2017 mosquito <sensor.wen@gmail.com> - 4.2.5-1
- Update to 4.2.5

* Mon Aug 21 2017 mosquito <sensor.wen@gmail.com> - 4.2.4-1
- Update to 4.2.4

* Sun Aug 20 2017 mosquito <sensor.wen@gmail.com> - 4.2.3-1
- Update to 4.2.3

* Tue Aug  1 2017 mosquito <sensor.wen@gmail.com> - 4.2.2-1
- Update to 4.2.2

* Fri Jul 14 2017 mosquito <sensor.wen@gmail.com> - 4.1.8-1.git9308953
- Update to 4.1.8

* Fri May 19 2017 mosquito <sensor.wen@gmail.com> - 4.1.5-1.git99d7597
- Update to 4.1.5

* Tue Mar  7 2017 mosquito <sensor.wen@gmail.com> - 1.4.1-1.gite303113
- Update to 1.4.1

* Sat Jan 28 2017 mosquito <sensor.wen@gmail.com> - 1.3.8-1.git207000d
- Update to 1.3.8

* Sun Jan 22 2017 mosquito <sensor.wen@gmail.com> - 1.3.7-2.gitf1915f8
- Add Req for run command

* Tue Jan 17 2017 mosquito <sensor.wen@gmail.com> - 1.3.7-1.gitf1915f8
- Update to 1.3.7

* Thu Jan 12 2017 Jaroslav <cz.guardian@gmail.com> Stepanek 1.3.6-3
- Fixed broken icon link noticed by Brenton Horne <brentonhorne77@gmail.com>

* Fri Jan 06 2017 Jaroslav <cz.guardian@gmail.com> Stepanek 1.3.6-2
- Fixed build dependecies

* Fri Dec 30 2016 Jaroslav <cz.guardian@gmail.com> Stepanek 1.3.6-1
- Update package to 1.3.6 and rename to deepin-file-manager

* Mon Dec 19 2016 Jaroslav <cz.guardian@gmail.com> Stepanek 1.3.4-1
- Update package to 1.3.4

* Mon Oct 10 2016 Jaroslav <cz.guardian@gmail.com> Stepanek 1.3.3-1
- Update package to 1.3.3

* Mon Oct 10 2016 Jaroslav <cz.guardian@gmail.com> Stepanek 1.2.3-1
- Initial package build