summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-09-10 01:18:17 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-09-13 02:04:51 -0400
commit87c5dd8ea5535df93f3705177cff1c19800999c5 (patch)
tree168a2bf493c4a1bc49c878007bb2ce6949feafd7
parent0e60bdf0dcc684d4593a074bc0814c6c5ff77ec5 (diff)
gnu: nautilus: Update to 42.2 and enable tests.
* gnu/packages/gnome.scm (nautilus): Update to 42.2. [patches]: Replace nautilus-add-libportal-gtk3.patch with nautilus-disable-tracker-tests.patch. [tests?]: Delete argument. [phases]: Use gexps. {check}: Move after install. {pre-check}: New phase. [native-inputs]: Replace intltool with gettext-minimal. Add python-pygobject. [inputs]: Remove libsoup-minimal-2. * gnu/packages/patches/nautilus-add-libportal-gtk3.patch: Delete file. * gnu/packages/patches/nautilus-disable-tracker-tests.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly.
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/gnome.scm65
-rw-r--r--gnu/packages/patches/nautilus-add-libportal-gtk3.patch61
-rw-r--r--gnu/packages/patches/nautilus-disable-tracker-tests.patch47
4 files changed, 83 insertions, 92 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 376ce481b1..a733fc60de 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1539,7 +1539,7 @@ dist_patch_DATA = \
%D%/packages/patches/musl-cross-locale.patch \
%D%/packages/patches/mutt-store-references.patch \
%D%/packages/patches/m4-gnulib-libio.patch \
- %D%/packages/patches/nautilus-add-libportal-gtk3.patch \
+ %D%/packages/patches/nautilus-disable-tracker-tests.patch \
%D%/packages/patches/ncompress-fix-softlinks.patch \
%D%/packages/patches/ncftp-reproducible.patch \
%D%/packages/patches/netcdf-date-time.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index bc43e191f8..65c6156966 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9420,7 +9420,7 @@ shared object databases, search tools and indexing.")
(define-public nautilus
(package
(name "nautilus")
- (version "41.1")
+ (version "42.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -9428,28 +9428,27 @@ shared object databases, search tools and indexing.")
name "-" version ".tar.xz"))
(sha256
(base32
- "0bsqh241m43x3qb3z0mjakjic610ncl95zhjdgls649phnc30qry"))
+ "1cncyiyh79w1id6a6s2f0rxmgwl65lp4ml4afa0z35jrnwp2s8cr"))
(patches
- ;; This patch is already upstream and can be removed next
- ;; release.
- (search-patches "nautilus-add-libportal-gtk3.patch"))))
+ (search-patches "nautilus-disable-tracker-tests.patch"))))
(build-system meson-build-system)
(arguments
- `(#:glib-or-gtk? #t
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'make-extensible
- (lambda _
- (substitute* "src/nautilus-module.c"
- (("static gboolean initialized = FALSE;" all)
- (string-append all "
+ (list
+ #:glib-or-gtk? #t
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'make-extensible
+ (lambda _
+ (substitute* "src/nautilus-module.c"
+ (("static gboolean initialized = FALSE;" all)
+ (string-append all "
const char *extension_path;
char **extension_dirs, **d;
")
- )
- (("load_module_dir \\(NAUTILUS_EXTENSIONDIR\\);" all)
- (string-append all
- "
+ )
+ (("load_module_dir \\(NAUTILUS_EXTENSIONDIR\\);" all)
+ (string-append all
+ "
extension_path = g_getenv (\"NAUTILUS_EXTENSION_PATH\");
if (extension_path)
{
@@ -9459,21 +9458,28 @@ if (extension_path)
g_strfreev(extension_dirs);
}
")))))
- (add-after 'unpack 'skip-gtk-update-icon-cache
- ;; Don't create 'icon-theme.cache'.
- (lambda _
- (substitute* "build-aux/meson/postinstall.py"
- (("gtk-update-icon-cache") "true")))))
- ;; XXX: FAIL: check-nautilus
- ;; Settings schema 'org.gnome.nautilus.preferences' is not installed
- #:tests? #f))
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ ;; Don't create 'icon-theme.cache'.
+ (lambda _
+ (substitute* "build-aux/meson/postinstall.py"
+ (("gtk-update-icon-cache") "true"))))
+ (delete 'check)
+ (add-after 'install 'check
+ (assoc-ref %standard-phases 'check))
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" "/tmp") ;some tests require a writable HOME
+ (setenv "XDG_DATA_DIRS"
+ (string-append (getenv "XDG_DATA_DIRS")
+ ":" #$output "/share")))))))
(native-inputs
- (list desktop-file-utils ; for update-desktop-database
- `(,glib "bin") ; for glib-mkenums, etc.
+ (list desktop-file-utils ;for update-desktop-database
+ `(,glib "bin") ;for glib-mkenums, etc.
+ gettext-minimal
gobject-introspection
- intltool
pkg-config
- python))
+ python
+ python-pygobject))
(inputs
(list dconf
gexiv2
@@ -9487,7 +9493,6 @@ if (extension_path)
libportal
libseccomp
libselinux
- libsoup-minimal-2 ; to satisfy tracker dependencies
tracker
tracker-miners
;; XXX: gtk+ is required by libnautilus-extension.pc
diff --git a/gnu/packages/patches/nautilus-add-libportal-gtk3.patch b/gnu/packages/patches/nautilus-add-libportal-gtk3.patch
deleted file mode 100644
index cefa47cc64..0000000000
--- a/gnu/packages/patches/nautilus-add-libportal-gtk3.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 55cfd66ccca391fc144f5863ff6bfc1f3b137e2d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ant=C3=B3nio=20Fernandes?= <antoniojpfernandes@gmail.com>
-Date: Tue, 21 Dec 2021 17:42:27 +0000
-Subject: [PATCH] general: Add libportal-gtk3 dependency
-
-The portal-gtk3.h header has been moved into a separate library which
-binds gtk3 explicitly.
-
-https://github.com/flatpak/libportal/pull/53
----
- build-aux/flatpak/org.gnome.Nautilus.json | 5 +++-- ;; Changes removed in Guix
- build-aux/flatpak/org.gnome.Nautilus.yml | 3 ++- ;; Changes removed in Guix
- meson.build | 4 +++-
- src/meson.build | 1 +
- src/nautilus-files-view.c | 2 +-
- 5 files changed, 10 insertions(+), 5 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 927216636..4626fa0bb 100644
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,10 @@ gnome_desktop = dependency('gnome-desktop-3.0', version: '>= 3.0.0')
- gtk = dependency('gtk+-3.0', version: '>= 3.22.27')
- libhandy = dependency('libhandy-1', version: '>= 1.1.90')
- libportal = []
-+libportal_gtk3 = []
- if get_option('libportal')
-- libportal = dependency('libportal', version: '>= 0.3')
-+ libportal = dependency('libportal', version: '>= 0.5')
-+ libportal_gtk3 = dependency('libportal-gtk3', version: '>= 0.5')
- endif
- selinux = []
- if get_option('selinux')
-diff --git a/src/meson.build b/src/meson.build
-index 682d6f3a3..d7fb76d53 100644
---- a/src/meson.build
-+++ b/src/meson.build
-@@ -285,6 +285,7 @@ nautilus_deps = [
- libgd_dep,
- libhandy,
- libportal,
-+ libportal_gtk3,
- nautilus_extension,
- selinux,
- tracker_sparql,
-diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c
-index dfb7fb26c..a24005a11 100644
---- a/src/nautilus-files-view.c
-+++ b/src/nautilus-files-view.c
-@@ -93,7 +93,7 @@
-
- #ifdef HAVE_LIBPORTAL
- #include <libportal/portal.h>
--#include <libportal/portal-gtk3.h>
-+#include <libportal-gtk3/portal-gtk3.h>
- #endif
-
- /* Minimum starting update inverval */
---
-GitLab
-
diff --git a/gnu/packages/patches/nautilus-disable-tracker-tests.patch b/gnu/packages/patches/nautilus-disable-tracker-tests.patch
new file mode 100644
index 0000000000..bcc7b38f33
--- /dev/null
+++ b/gnu/packages/patches/nautilus-disable-tracker-tests.patch
@@ -0,0 +1,47 @@
+The tracker test hangs in the build container (see:
+https://gitlab.gnome.org/GNOME/nautilus/-/issues/2486).
+
+--- a/test/automated/displayless/meson.build 2022-09-10 00:52:50.348405729 -0400
++++ b/test/automated/displayless/meson.build 2022-09-10 00:53:07.267907525 -0400
+@@ -34,41 +34,3 @@
+ 'test-file-operations-trash-or-delete.c'
+ ]]
+ ]
+-
+-tracker_tests = [
+- ['test-nautilus-search-engine-tracker', [
+- 'test-nautilus-search-engine-tracker.c',
+- ]],
+-]
+-
+-foreach t: tests
+- test(
+- t[0],
+- executable(t[0], t[1], files('test-utilities.c'), dependencies: libnautilus_dep),
+- env: [
+- test_env,
+- 'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
+- 'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir())
+- ],
+- timeout: 480
+- )
+-endforeach
+-
+-
+-
+-# Tests that read and write from the Tracker index are run using 'tracker-sandbox'
+-# script to use a temporary instance of tracker-miner-fs instead of the session one.
+-foreach t: tracker_tests
+- test_exe = executable(t[0], t[1], files('test-utilities.c'), dependencies: libnautilus_dep)
+- test(
+- t[0],
+- tracker_sandbox,
+- args: ['--store-tmpdir', '--index-recursive-tmpdir', test_exe],
+- env: [
+- test_env,
+- 'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
+- 'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir())
+- ],
+- timeout: 480
+- )
+-endforeach