+# TODO: use gtk4-update-icon-theme
#
# Conditional build:
+%bcond_with apidocs # API documentation (API not packaged, so disabled for now)
+%bcond_without libportal # native app chooser via libportal
%bcond_without nautilus # Nautilus extension
#
Summary: An archive manager for GNOME
Summary(pl.UTF-8): Zarządca archiwów dla GNOME
Summary(pt_BR.UTF-8): Gerenciador de arquivos compactados para o GNOME
Name: file-roller
-Version: 3.38.1
+Version: 44.2
Release: 1
License: GPL v2+
Group: X11/Applications
-Source0: https://download.gnome.org/sources/file-roller/3.38/%{name}-%{version}.tar.xz
-# Source0-md5: 53583aeb16a89185b132af4e9dc96db2
+Source0: https://download.gnome.org/sources/file-roller/44/%{name}-%{version}.tar.xz
+# Source0-md5: 8732ec45e5918d092232974f0549ae84
Patch0: %{name}-packages.patch
URL: https://wiki.gnome.org/Apps/FileRoller
+BuildRequires: cpio
BuildRequires: desktop-file-utils
BuildRequires: docbook-dtd412-xml
BuildRequires: gettext-tools
+%{?with_apidocs:BuildRequires: gi-docgen >= 2021.1}
BuildRequires: glib2-devel >= 1:2.38
-BuildRequires: gtk+3-devel >= 3.22.0
+BuildRequires: gobject-introspection-devel
+BuildRequires: gtk4-devel >= 4.8.1
BuildRequires: json-glib-devel >= 0.14.0
-BuildRequires: libarchive-devel >= 3.0.0
-BuildRequires: libnotify-devel >= 0.4.3
-BuildRequires: libtool >= 2:2
-BuildRequires: libxml2-progs
-BuildRequires: meson >= 0.50
-%{?with_nautilus:BuildRequires: nautilus-devel >= 3.28.0}
+BuildRequires: libadwaita-devel >= 1.2
+BuildRequires: libarchive-devel >= 3.2.0
+%{?with_libportal:BuildRequires: libportal-devel >= 0.5}
+%{?with_libportal:BuildRequires: libportal-gtk4-devel >= 0.5}
+BuildRequires: meson >= 0.59
+%{?with_nautilus:BuildRequires: nautilus-devel >= 43}
BuildRequires: ninja >= 1.5
BuildRequires: pkgconfig
BuildRequires: rpmbuild(find_lang) >= 1.23
Requires(post,postun): glib2 >= 1:2.38
Requires(post,postun): gtk-update-icon-cache
Requires: glib2 >= 1:2.38
-Requires: gtk+3 >= 3.22.0
+Requires: gtk4 >= 4.8.1
Requires: hicolor-icon-theme
Requires: json-glib >= 0.14.0
-Requires: libarchive >= 3.0.0
-Requires: libnotify >= 0.4.3
+Requires: libadwaita >= 1.2
+Requires: libarchive >= 3.2.0
Suggests: bzip2
+Suggests: cpio
Suggests: gzip
Suggests: p7zip
%ifarch %{ix86}
Summary(pl.UTF-8): Rozszerzenie File Roller (zarządca archiwów) Nautilusa (zarządcy plików GNOME)
Group: X11/Applications
Requires: %{name} = %{version}-%{release}
-Requires: nautilus >= 3.28.0
+Requires: nautilus >= 43
%description -n nautilus-extension-file-roller
File Roller (archive manager) extension for Nautilus (GNOME file
%patch0 -p1
%build
-%meson build
+%meson build \
+ %{?with_apidocs:-Dapi_docs=enabled} \
+ -Dintrospection=enabled \
+ %{!?with_nautilus:-Dnautilus-actions=disabled} \
+ %{!?with_libportal:-Duse_native_appchooser=false}
-%ninja_build -C build \
- %{!?with_nautilus:-Dnautilus-actions=false}
+%ninja_build -C build
%install
rm -rf $RPM_BUILD_ROOT
%ninja_install -C build
+# unify name
%{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr@ije,sr@ijekavian}
+# not supported by glibc (as of 2.38)
+%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ie
%find_lang %{name} --with-gnome
%dir %{_libexecdir}/file-roller
%attr(755,root,root) %{_libexecdir}/file-roller/isoinfo.sh
%attr(755,root,root) %{_libexecdir}/file-roller/rpm2cpio
+%{_datadir}/dbus-1/services/org.gnome.ArchiveManager1.service
%{_datadir}/dbus-1/services/org.gnome.FileRoller.service
-%{_datadir}/dbus-1/services/org.gnome.FileRoller.ArchiveManager1.service
%{_datadir}/file-roller
%{_datadir}/glib-2.0/schemas/org.gnome.FileRoller.gschema.xml
%{_datadir}/metainfo/org.gnome.FileRoller.appdata.xml
%{_desktopdir}/org.gnome.FileRoller.desktop
-%{_iconsdir}/hicolor/scalable/apps/org.gnome.ArchiveManager.svg
-%{_iconsdir}/hicolor/scalable/apps/org.gnome.ArchiveManager.Devel.svg
-%{_iconsdir}/hicolor/symbolic/apps/org.gnome.ArchiveManager-symbolic.svg
+%{_iconsdir}/hicolor/scalable/apps/org.gnome.FileRoller.svg
+%{_iconsdir}/hicolor/scalable/apps/org.gnome.FileRoller.Devel.svg
+%{_iconsdir}/hicolor/symbolic/apps/org.gnome.FileRoller-symbolic.svg
%if %{with nautilus}
%files -n nautilus-extension-file-roller
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/nautilus/extensions-3.0/libnautilus-fileroller.so
+%attr(755,root,root) %{_libdir}/nautilus/extensions-4/libnautilus-fileroller.so
%endif