$ git diff --patch-with-stat --summary 90055483002d881295dce611a6076a3ed68bc9d8..1a42cc432c6e9d5ffda613454c444b4430ab4f8b
.abf.yml | 2 +-
...-general-React-to-tracker-projects-rename.patch | 131 +++++++++++++++++++++
...ert-test-Update-to-localsearch-CLI-rename.patch | 23 ++++
...evert-tests-Use-localsearch3-test-sandbox.patch | 34 ++++++
1596.patch | 65 ++++++++++
disable-werror-related-stuff.patch | 11 ++
nautilus.spec | 41 ++++---
7 files changed, 285 insertions(+), 22 deletions(-)
create mode 100644 0001-Revert-general-React-to-tracker-projects-rename.patch
create mode 100644 0002-Revert-test-Update-to-localsearch-CLI-rename.patch
create mode 100644 0003-Revert-tests-Use-localsearch3-test-sandbox.patch
create mode 100644 1596.patch
create mode 100644 disable-werror-related-stuff.patch
diff --git a/.abf.yml b/.abf.yml
index 433165c..3e6e03d 100644
--- a/.abf.yml
+++ b/.abf.yml
@@ -1,2 +1,2 @@
sources:
- nautilus-43.2.tar.xz: 6fc0eb8fe96ffe2a9203170c37a1025a1ebd2527
+ nautilus-48.2.tar.xz: df50c4a6dbf17be49cc46a659e34e2a49c9f04cc
diff --git a/0001-Revert-general-React-to-tracker-projects-rename.patch b/0001-Revert-general-React-to-tracker-projects-rename.patch
new file mode 100644
index 0000000..a7bf11f
--- /dev/null
+++ b/0001-Revert-general-React-to-tracker-projects-rename.patch
@@ -0,0 +1,131 @@
+From f514545834b18a68d3818eebfe57de7df87700e8 Mon Sep 17 00:00:00 2001
+From: Adam Williamson <awilliam@redhat.com>
+Date: Thu, 8 Aug 2024 09:50:02 -0400
+Subject: [PATCH] Revert "general: React to tracker projects rename"
+
+This reverts commit 0e6e3946ebfcbaf1c7e2ebbb1300dd3a016ee0e9.
+---
+ README.md | 2 +-
+ build-aux/flatpak/org.gnome.Nautilus.json | 8 ++++----
+ data/tracker/meson.build | 9 ++++-----
+ .../org.gnome.Nautilus.Tracker3.Miner.Extract.service.in | 4 ++--
+ .../org.gnome.Nautilus.Tracker3.Miner.Files.service.in | 4 ++--
+ src/nautilus-tag-manager.c | 4 ++--
+ 6 files changed, 15 insertions(+), 16 deletions(-)
+
+diff --git a/README.md b/README.md
+index a726662b3..090a76a47 100644
+--- a/README.md
++++ b/README.md
+@@ -29,7 +29,7 @@ git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main
+
+ ## Runtime dependencies
+ - [Bubblewrap](https://github.com/projectatomic/bubblewrap) installed. Used for security reasons.
+-- [LocalSearch](https://gitlab.gnome.org/GNOME/localsearch) properly set up and with all features enabled. Used for fast search and metadata extraction, starred files and batch renaming.
++- [Tracker (including tracker-miners)](https://gitlab.gnome.org/GNOME/tracker) properly set up and with all features enabled. Used for fast search and metadata extraction, starred files and batch renaming.
+
+ ## Discourse
+
+diff --git a/build-aux/flatpak/org.gnome.Nautilus.json b/build-aux/flatpak/org.gnome.Nautilus.json
+index ccf653829..362b933e0 100644
+--- a/build-aux/flatpak/org.gnome.Nautilus.json
++++ b/build-aux/flatpak/org.gnome.Nautilus.json
+@@ -72,11 +72,11 @@
+ ]
+ },
+ {
+- "name": "localsearch",
++ "name": "tracker-miners",
+ "buildsystem": "meson",
+ "cleanup": [
+ "/etc",
+- "/libexec/localsearch-3",
++ "/libexec/tracker-3",
+ "/share/dbus-1/services/org.freedesktop.Tracker3.Miner.Extract.service",
+ "/share/dbus-1/services/org.freedesktop.Tracker3.Miner.Files.service",
+ "/share/dbus-1/services/org.freedesktop.Tracker3.Miner.Files.Control.service"
+@@ -95,8 +95,8 @@
+ "sources": [
+ {
+ "type": "git",
+- "url": "https://gitlab.gnome.org/GNOME/localsearch.git",
+- "branch": "main"
++ "url": "https://gitlab.gnome.org/GNOME/tracker-miners.git",
++ "branch": "master"
+ }
+ ]
+ },
+diff --git a/data/tracker/meson.build b/data/tracker/meson.build
+index 2921ca925..5320af164 100644
+--- a/data/tracker/meson.build
++++ b/data/tracker/meson.build
+@@ -1,12 +1,11 @@
+-# Files needed for running LocalSearch (historically known as Tracker) inside
+-# the Flatpak sandbox, for systems which don't have a suitable version of
+-# LocalSearch in the host OS.
++# Files needed for running Tracker inside the Flatpak sandbox, for systems
++# which don't have a suitable version of Tracker in the host OS.
+ #
+ # We must export the .service files from the sandbox so they work on the
+-# session bus. This means the LocalSearch domain name must correspond with the
++# session bus. This means the Tracker domain name must correspond with the
+ # application ID.
+
+-domain_ontologies_dir = get_option('datadir') / 'localsearch3' / 'domain-ontologies'
++domain_ontologies_dir = get_option('datadir') / 'tracker3' / 'domain-ontologies'
+ dbus_services_dir = get_option('datadir') / 'dbus-1' / 'services'
+
+ tracker_domain_config = configuration_data()
+diff --git a/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in
+index 23ded4583..eb7a87aa6 100644
+--- a/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in
++++ b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in
+@@ -1,7 +1,7 @@
+ [D-BUS Service]
+ Name=@application_id@.Tracker3.Miner.Extract
+-Exec=/app/libexec/localsearch-extractor-3 --domain-ontology @domain_rule@
++Exec=/app/libexec/tracker-extract-3 --domain-ontology @domain_rule@
+
+-# Miner details needed for localsearch-control
++# Miner details needed for tracker-control
+ Path=/org/freedesktop/Tracker3/Miner/Extract
+ NameSuffix=Miner.Files
+diff --git a/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in
+index d770619b3..4fa7371d1 100644
+--- a/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in
++++ b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in
+@@ -1,7 +1,7 @@
+ [D-BUS Service]
+ Name=@application_id@.Tracker3.Miner.Files
+-Exec=/app/libexec/localsearch-3 --domain-ontology @domain_rule@ --initial-sleep 0
++Exec=/app/libexec/tracker-miner-fs-3 --domain-ontology @domain_rule@ --initial-sleep 0
+
+-# Miner details needed for localsearch-control
++# Miner details needed for tracker-control
+ Path=/org/freedesktop/Tracker3/Miner/Files
+ NameSuffix=Miner.Files
+diff --git a/src/nautilus-tag-manager.c b/src/nautilus-tag-manager.c
+index 4c1da5ec5..b946225e3 100644
+--- a/src/nautilus-tag-manager.c
++++ b/src/nautilus-tag-manager.c
+@@ -955,7 +955,7 @@ child_watch_cb (GPid pid,
+ static void
+ export_tracker2_data (NautilusTagManager *self)
+ {
+- gchar *argv[] = {"tinysparql3", "export", "--2to3", "files-starred", "--keyfile", NULL};
++ gchar *argv[] = {"tracker3", "export", "--2to3", "files-starred", "--keyfile", NULL};
+ gint stdout_fd;
+ GPid child_pid;
+ g_autoptr (GError) error = NULL;
+@@ -979,7 +979,7 @@ export_tracker2_data (NautilusTagManager *self)
+ &error);
+ if (!success)
+ {
+- g_warning ("Tracker 2 migration: Couldn't run `tinysparql3`: %s", error->message);
++ g_warning ("Tracker 2 migration: Couldn't run `tracker3`: %s", error->message);
+ return;
+ }
+
+--
+2.46.0
+
diff --git a/0002-Revert-test-Update-to-localsearch-CLI-rename.patch b/0002-Revert-test-Update-to-localsearch-CLI-rename.patch
new file mode 100644
index 0000000..42d1d32
--- /dev/null
+++ b/0002-Revert-test-Update-to-localsearch-CLI-rename.patch
@@ -0,0 +1,23 @@
+From 39edbf3582c835a36d5c0b5d13f3c14fea7b960f Mon Sep 17 00:00:00 2001
+From: Adam Williamson <awilliam@redhat.com>
+Date: Thu, 8 Aug 2024 10:03:13 -0400
+Subject: [PATCH 2/2] Revert "test: Update to localsearch CLI rename"
+
+This reverts commit 9fdcb225fb1b4c8fc2df06df5f70f43809aeed0d.
+---
+ test/automated/displayless/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/automated/displayless/meson.build b/test/automated/displayless/meson.build
+index d0a70e1d6..13616a260 100644
+--- a/test/automated/displayless/meson.build
++++ b/test/automated/displayless/meson.build
+@@ -1,4 +1,4 @@
+-tracker_sandbox = find_program('localsearch')
++tracker_sandbox = find_program('localsearch3')
+
+ tests = [
+ ['test-directory', [
+--
+2.46.0
+
diff --git a/0003-Revert-tests-Use-localsearch3-test-sandbox.patch b/0003-Revert-tests-Use-localsearch3-test-sandbox.patch
new file mode 100644
index 0000000..c2e21fc
--- /dev/null
+++ b/0003-Revert-tests-Use-localsearch3-test-sandbox.patch
@@ -0,0 +1,34 @@
+From 458b58d35a8234cadd7a4f3d5bfb71f14d613d3a Mon Sep 17 00:00:00 2001
+From: Adam Williamson <awilliam@redhat.com>
+Date: Thu, 8 Aug 2024 10:13:05 -0400
+Subject: [PATCH 3/3] Revert "tests: Use localsearch3 test-sandbox"
+
+This reverts commit 25f445f4d7f38f501090cca88566ffd319d69463.
+---
+ test/automated/displayless/meson.build | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/test/automated/displayless/meson.build b/test/automated/displayless/meson.build
+index 13616a260..9d50c5084 100644
+--- a/test/automated/displayless/meson.build
++++ b/test/automated/displayless/meson.build
+@@ -1,4 +1,6 @@
+-tracker_sandbox = find_program('localsearch3')
++trackertestutils = dependency('tracker-testutils-3.0')
++
++tracker_sandbox = find_program(trackertestutils.get_variable('command'))
+
+ tests = [
+ ['test-directory', [
+@@ -73,7 +75,7 @@ foreach t: tracker_tests
+ test(
+ t[0],
+ tracker_sandbox,
+- args: ['test-sandbox', '--store-tmpdir', '--index-recursive-tmpdir', test_exe],
++ args: ['--store-tmpdir', '--index-recursive-tmpdir', test_exe],
+ env: [
+ test_env,
+ 'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
+--
+2.46.0
+
diff --git a/1596.patch b/1596.patch
new file mode 100644
index 0000000..9faf3a2
--- /dev/null
+++ b/1596.patch
@@ -0,0 +1,65 @@
+From d6b733a509897ad19ae6939b05652acbe3ccbc75 Mon Sep 17 00:00:00 2001
+From: Lucas Fryzek <lucas.fryzek@fryzekconcepts.com>
+Date: Thu, 22 Aug 2024 13:20:37 +0100
+Subject: [PATCH] Add gzip compression option
+
+gzip compression is still widely used and sometimes you want to
+share a file to be used on a system that doesn't have xz available.
+---
+ src/nautilus-compress-dialog.c | 8 ++++++++
+ src/nautilus-files-view.c | 7 +++++++
+ src/nautilus-global-preferences.h | 1 +
+ 3 files changed, 16 insertions(+)
+
+diff --git a/src/nautilus-compress-dialog.c b/src/nautilus-compress-dialog.c
+index 0b30f29329..d395da5bc5 100644
+--- a/src/nautilus-compress-dialog.c
++++ b/src/nautilus-compress-dialog.c
+@@ -264,6 +264,14 @@ extension_combo_row_setup (NautilusCompressDialog *self)
+ ".tar.xz",
+ _("TAR (.tar.xz)"),
+ _("Smaller archives but Linux and Mac only."));
++
++ g_list_store_append (store, item);
++ g_object_unref (item);
++ item = nautilus_compress_item_new (NAUTILUS_COMPRESSION_TAR_GZIP,
++ ".tar.gz",
++ _("TAR (.tar.gz)"),
++ _("Larger archives but Linux and Mac only."));
++
+ g_list_store_append (store, item);
+ g_object_unref (item);
+ item = nautilus_compress_item_new (NAUTILUS_COMPRESSION_7ZIP,
+diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c
+index 868e0463e8..d576351e3f 100644
+--- a/src/nautilus-files-view.c
++++ b/src/nautilus-files-view.c
+@@ -2333,6 +2333,13 @@ create_archive_callback (const char *archive_name,
+ }
+ break;
+
++ case NAUTILUS_COMPRESSION_TAR_GZIP:
++ {
++ format = AUTOAR_FORMAT_TAR;
++ filter = AUTOAR_FILTER_GZIP;
++ }
++ break;
++
+ case NAUTILUS_COMPRESSION_7ZIP:
+ {
+ format = AUTOAR_FORMAT_7ZIP;
+diff --git a/src/nautilus-global-preferences.h b/src/nautilus-global-preferences.h
+index e64fcdb5cf..99043612cf 100644
+--- a/src/nautilus-global-preferences.h
++++ b/src/nautilus-global-preferences.h
+@@ -69,6 +69,7 @@ typedef enum
+ {
+ NAUTILUS_COMPRESSION_ZIP = 0,
+ NAUTILUS_COMPRESSION_TAR_XZ,
++ NAUTILUS_COMPRESSION_TAR_GZIP,
+ NAUTILUS_COMPRESSION_7ZIP,
+ NAUTILUS_COMPRESSION_ENCRYPTED_ZIP
+ } NautilusCompressionFormat;
+--
+GitLab
+
diff --git a/disable-werror-related-stuff.patch b/disable-werror-related-stuff.patch
new file mode 100644
index 0000000..b8c996d
--- /dev/null
+++ b/disable-werror-related-stuff.patch
@@ -0,0 +1,11 @@
+diff -uraN nautilus-44.0/meson.build omv-nautilus-44.0/meson.build
+--- nautilus-44.0/meson.build 2023-03-17 10:06:25.000000000 +0100
++++ omv-nautilus-44.0/meson.build 2023-03-27 16:49:16.299004653 +0200
+@@ -60,7 +60,6 @@
+ '-Werror=shadow',
+ '-Werror=strict-prototypes',
+ '-Werror=undef',
+- '-Werror=uninitialized',
+ # Context: https://gitlab.com/freedesktop-sdk/freedesktop-sdk/commit/ce54a2527555e51e4ebf4cce9cbb6259cafa89a4
+ # -O2 and -fexceptions unmask some cases of -Wmaybe-uninitialized, which
+ # become errors for some reason (I’m guessing because of the
diff --git a/nautilus.spec b/nautilus.spec
index 2376050..007c5b6 100644
--- a/nautilus.spec
+++ b/nautilus.spec
@@ -1,5 +1,8 @@
%define url_ver %(echo %{version}|cut -d. -f1,2)
+# Needed in 47.rc, looks like fixed in stable 47.0
+#global optflags %{optflags} -Wno-sometimes-uninitialized
+
%define api 4.0
%define major 4
%define libname %mklibname %{name}-extension %{major}
@@ -8,25 +11,24 @@
Summary: File manager for the GNOME desktop environment
Name: nautilus
-Version: 43.2
+Version: 48.2
Release: 1
Group: File tools
License: GPLv2+
-Url: http://www.gnome.org/projects/nautilus/
-Source0: http://ftp.gnome.org/pub/GNOME/sources/nautilus/%{url_ver}/%{name}-%{version}.tar.xz
-#Patch0: nautilus-43.0-compile.patch
+Url: https://www.gnome.org/projects/nautilus/
+Source0: https://ftp.gnome.org/pub/GNOME/sources/nautilus/%{url_ver}/%{name}-%{version}.tar.xz
-# https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/977
-# https://bugzilla.redhat.com/show_bug.cgi?id=2127618
-# https://gitlab.gnome.org/GNOME/nautilus/-/issues/2487
-# Revert high-resolution thumbnail generation as it cannot work
-# without fixes in glib
-Patch1: 977.patch
+# Not merged (and probably won't be)
+# Added support for .tar.gz compression in nautilus
+Patch3: https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/1596.patch
+BuildRequires: appstream
BuildRequires: appstream-util
BuildRequires: gtk-doc
BuildRequires: gettext
BuildRequires: intltool
+BuildRequires: localsearch
+BuildRequires: desktop-file-utils
BuildRequires: pkgconfig(cloudproviders)
BuildRequires: pkgconfig(exempi-2.0)
BuildRequires: pkgconfig(gail-3.0)
@@ -51,18 +53,18 @@ BuildRequires: pkgconfig(libportal)
BuildRequires: pkgconfig(libportal-gtk3)
BuildRequires: pkgconfig(libportal-gtk4)
BuildRequires: pkgconfig(libxml-2.0) >= 2.7.8
-BuildRequires: pkgconfig(tracker-sparql-3.0)
+BuildRequires: pkgconfig(tinysparql-3.0)
BuildRequires: pkgconfig(x11)
BuildRequires: meson
-BuildRequires: tracker
+BuildRequires: tinysparql
BuildRequires: pkgconfig(libseccomp)
Requires: gvfs
Requires: gsettings-desktop-schemas
# this crap is now required to launch nautilus... (from 3.32.0)
#it slows down the system. It could be optional but noo... Where are you going GNOME?
-Requires: tracker-miners
-Recommends: tracker
+Requires: localsearch
+Recommends: tinysparql
%description
Nautilus is an excellent file manager for the GNOME desktop environment.
@@ -131,20 +133,19 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/gnome/desktop \
%{_datadir}/%{name}
%{_datadir}/dbus-1/services/org.gnome.Nautilus.service
%{_datadir}/dbus-1/services/org.freedesktop.FileManager1.service
-%{_datadir}/dbus-1/services/org.gnome.Nautilus.Tracker3.Miner.Extract.service
-%{_datadir}/dbus-1/services/org.gnome.Nautilus.Tracker3.Miner.Files.service
-%{_datadir}/tracker3/domain-ontologies/org.gnome.Nautilus.domain.rule
+#{_datadir}/dbus-1/services/org.gnome.Nautilus.Tracker3.Miner.Extract.service
+#{_datadir}/dbus-1/services/org.gnome.Nautilus.Tracker3.Miner.Files.service
%{_datadir}/gnome-shell/search-providers/org.gnome.Nautilus.search-provider.ini
+#{_datadir}/localsearch3/domain-ontologies/org.gnome.Nautilus.domain.rule
#{_datadir}/GConf/gsettings/%{name}.convert
%{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml
%{_mandir}/man1/*
#{_datadir}/appdata/org.gnome.Nautilus.appdata.xml
%{_libdir}/%{name}/extensions-4/lib%{name}-image-properties.so
-%{_datadir}/metainfo/org.gnome.Nautilus.appdata.xml
+%{_datadir}/metainfo/org.gnome.Nautilus.metainfo.xml
%{_libdir}/%{name}/extensions-4/libtotem-properties-page.so
%{_iconsdir}/hicolor/*/apps/*gnome*.*
-
%files -n %{libname}
%{_libdir}/libnautilus-extension.so.%{major}*
@@ -156,5 +157,3 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/gnome/desktop \
%{_libdir}/*.so
%{_libdir}/pkgconfig/*
%{_datadir}/gir-1.0/Nautilus-%{api}.gir
-
-#exclude /usr/lib/debug/usr/lib64/nautilus/extensions-3.0/libnautilus-image-properties.so-3.28.1-1.x86_64.debug