summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'gnome-base')
-rw-r--r--gnome-base/nautilus/Manifest1
-rw-r--r--gnome-base/nautilus/files/3.30.5-docs-build.patch42
-rw-r--r--gnome-base/nautilus/files/3.30.5-seccomp-sparc32.patch27
-rw-r--r--gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch113
-rw-r--r--gnome-base/nautilus/files/3.30.5-thumbnailer-updates2.patch46
-rw-r--r--gnome-base/nautilus/nautilus-3.28.1.ebuild2
-rw-r--r--gnome-base/nautilus/nautilus-3.30.5.ebuild105
7 files changed, 335 insertions, 1 deletions
diff --git a/gnome-base/nautilus/Manifest b/gnome-base/nautilus/Manifest
index 5397c7fa99d8..c7b794919843 100644
--- a/gnome-base/nautilus/Manifest
+++ b/gnome-base/nautilus/Manifest
@@ -2,3 +2,4 @@ DIST nautilus-3.24.2.1.tar.xz 5143440 BLAKE2B 731046b6bdd0817b770cf3e2f0667187bf
DIST nautilus-3.26.4.tar.xz 3267652 BLAKE2B 56986b8d87afc0ea7ce6f1f56ae06c7cfb05d060414aad428145a6c2cb631b9d4ebbeaefabb0f0ceeb5f930ae94737f8dfcabb300554a59c2b7d5a53d1ee3cd1 SHA512 2a50a2a9ae6ffbe4b706d46fb47e5f54f42e645189b3548d1904c3ddf882ef4a94819740c6821fe50c662a9013ab43bb9b7b3dbdfc779ecc82f16170b4867973
DIST nautilus-3.28.1-patchset.tar.xz 129360 BLAKE2B 18e94e83132a8ce2e07491ce6b5cb9499141bf93e0c3ef44f2e5ac891e59d334cf310d863e8e7450fa385a6a49873d790e4f8c36a1ef8e009b1f2be2361586b4 SHA512 6c3385b4bc7020601f47dc66c0b1cabd6dadcd9f986bdaec42aeca9b43a6b8a2362651958d4e6a4738b78fbd546071678ba15ab87c268e33cfc1cca49229da48
DIST nautilus-3.28.1.tar.xz 3262520 BLAKE2B 6f007e2327ffb108c5195737c02c7be12b874f5bc3bdfc1c84a3ba2176ff36e1843057522a54e569a7c09a056ccd888e1ddf099d6f2b527dfa109370cbe1a3a9 SHA512 6b695c097e5082062afe8cb036e819c837ce1e2570f581f81860f378e34f38f3020b8802e6a4285243c111d5208e892c419ac92621cdb1d35b2df205a3ccaa13
+DIST nautilus-3.30.5.tar.xz 3254344 BLAKE2B 64da158ee661fc259a14f890bf6ad343f720245df6b9475ff047993570ea4e7234723eb242f057bc85b7ea95d38a99b5c2f5d546e982a3e3e32b7fc75cabb786 SHA512 e38a8bb380460d902e4ec6219d0e147a4245e790b18fb18ab9474ec2ae002a971243c6b09b8fec267e65c7ecc7bb1217191c4f5cb9547b3b9d5b0793068103cf
diff --git a/gnome-base/nautilus/files/3.30.5-docs-build.patch b/gnome-base/nautilus/files/3.30.5-docs-build.patch
new file mode 100644
index 000000000000..65ac29109e8f
--- /dev/null
+++ b/gnome-base/nautilus/files/3.30.5-docs-build.patch
@@ -0,0 +1,42 @@
+From a62478c8e55bc6b1cd685f0c8c2094e1ed244c69 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Mon, 11 Mar 2019 20:52:53 +0200
+Subject: [PATCH] build: Always install man page
+
+It's already generated and shouldn't be thrown in the same pot as
+full gtk-doc generation. It should be either a separate `man` option,
+or just always installed.
+---
+ docs/meson.build | 4 +++-
+ meson.build | 4 +---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/docs/meson.build b/docs/meson.build
+index b039cb631..2b1800be6 100644
+--- a/docs/meson.build
++++ b/docs/meson.build
+@@ -1,3 +1,5 @@
+ install_man('nautilus.1')
+
+-subdir('reference')
++if get_option('docs')
++ subdir('reference')
++endif
+diff --git a/meson.build b/meson.build
+index 996360a62..50479f5f0 100644
+--- a/meson.build
++++ b/meson.build
+@@ -222,9 +222,7 @@ subdirs = [
+ # Conditional building #
+ ########################
+
+-if get_option('docs')
+- subdirs += 'docs'
+-endif
++subdirs += 'docs'
+ if get_option('tests') != 'none'
+ subdirs += 'test'
+ endif
+--
+2.17.0
+
diff --git a/gnome-base/nautilus/files/3.30.5-seccomp-sparc32.patch b/gnome-base/nautilus/files/3.30.5-seccomp-sparc32.patch
new file mode 100644
index 000000000000..f67695b7f1d0
--- /dev/null
+++ b/gnome-base/nautilus/files/3.30.5-seccomp-sparc32.patch
@@ -0,0 +1,27 @@
+From 3b0fd7dd26fa5af0b310650b2974d800ace80802 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Fri, 15 Feb 2019 21:34:34 +0200
+Subject: [PATCH 2/2] meson.build: Add 32-bit sparc to seccomp unsupported list
+
+32-bit sparc doesn't support seccomp either.
+
+(cherry picked from commit 44b49e6ca02add9592abac03a8578b9eea1a5088)
+---
+ meson.build | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/meson.build b/meson.build
+index 50479f5f0..91915b31a 100644
+--- a/meson.build
++++ b/meson.build
+@@ -72,6 +72,7 @@ unsupported_cpus = [
+ 'parisc',
+ 'parisc64',
+ 'sh4',
++ 'sparc',
+ 'sparc64',
+ ]
+ system_supports_seccomp = host_system == 'linux'
+--
+2.17.0
+
diff --git a/gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch b/gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch
new file mode 100644
index 000000000000..84d0bfc1d5af
--- /dev/null
+++ b/gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch
@@ -0,0 +1,113 @@
+From 2e36d4bacc3cffebe62161adc375bb9ec64099f5 Mon Sep 17 00:00:00 2001
+From: Timothy OBrien <obrien.timothy.a@gmail.com>
+Date: Fri, 18 Jan 2019 19:42:46 +1100
+Subject: [PATCH 1/2] gnome-desktop: update to latest version of upstream
+ thumbnail code
+
+The thumbnail code in gnome-desktop had recent bug fixes that needed to be carried across to the Nautilus implementation. Issues for the three related upstream fixes can be found at: https://gitlab.gnome.org/GNOME/gnome-desktop/issues/4 | https://gitlab.gnome.org/GNOME/gnome-desktop/issues/89 | https://gitlab.gnome.org/GNOME/gnome-desktop/issues/87
+
+This patch includes the latest thumbnail code from the gnome-desktop repository to include the fixes.
+
+Fixes #836
+
+(cherry picked from commit e88b2dc8783833c4263ad5d84567a67dbc7bc6de)
+---
+ .../gnome-desktop-thumbnail-script.c | 54 +++++++++++++++++--
+ src/gnome-desktop/gnome-desktop-thumbnail.c | 4 +-
+ 2 files changed, 52 insertions(+), 6 deletions(-)
+
+diff --git a/src/gnome-desktop/gnome-desktop-thumbnail-script.c b/src/gnome-desktop/gnome-desktop-thumbnail-script.c
+index 14e2fed3a..525766388 100644
+--- a/src/gnome-desktop/gnome-desktop-thumbnail-script.c
++++ b/src/gnome-desktop/gnome-desktop-thumbnail-script.c
+@@ -506,22 +506,68 @@ setup_seccomp (GPtrArray *argv_array,
+ #endif
+
+ #ifdef HAVE_BWRAP
++static gboolean
++path_is_usrmerged (const char *dir)
++{
++ /* does /dir point to /usr/dir? */
++ g_autofree char *target = NULL;
++ GStatBuf stat_buf_src, stat_buf_target;
++
++ if (g_stat (dir, &stat_buf_src) < 0)
++ return FALSE;
++
++ target = g_strdup_printf ("/usr/%s", dir);
++
++ if (g_stat (target, &stat_buf_target) < 0)
++ return FALSE;
++
++ return (stat_buf_src.st_dev == stat_buf_target.st_dev) &&
++ (stat_buf_src.st_ino == stat_buf_target.st_ino);
++}
++
+ static gboolean
+ add_bwrap (GPtrArray *array,
+ ScriptExec *script)
+ {
++ const char * const usrmerged_dirs[] = { "bin", "lib64", "lib", "sbin" };
++ int i;
++
+ g_return_val_if_fail (script->outdir != NULL, FALSE);
+ g_return_val_if_fail (script->s_infile != NULL, FALSE);
+
+ add_args (array,
+ "bwrap",
+ "--ro-bind", "/usr", "/usr",
+- "--ro-bind", "/lib", "/lib",
+- "--ro-bind", "/lib64", "/lib64",
++ "--ro-bind", "/etc/ld.so.cache", "/etc/ld.so.cache",
++ NULL);
++
++ /* These directories might be symlinks into /usr/... */
++ for (i = 0; i < G_N_ELEMENTS (usrmerged_dirs); i++)
++ {
++ g_autofree char *absolute_dir = g_strdup_printf ("/%s", usrmerged_dirs[i]);
++
++ if (!g_file_test (absolute_dir, G_FILE_TEST_EXISTS))
++ continue;
++
++ if (path_is_usrmerged (absolute_dir))
++ {
++ g_autofree char *symlink_target = g_strdup_printf ("/usr/%s", absolute_dir);
++
++ add_args (array,
++ "--symlink", symlink_target, absolute_dir,
++ NULL);
++ }
++ else
++ {
++ add_args (array,
++ "--ro-bind", absolute_dir, absolute_dir,
++ NULL);
++ }
++ }
++
++ add_args (array,
+ "--proc", "/proc",
+ "--dev", "/dev",
+- "--symlink", "usr/bin", "/bin",
+- "--symlink", "usr/sbin", "/sbin",
+ "--chdir", "/",
+ "--setenv", "GIO_USE_VFS", "local",
+ "--unshare-all",
+diff --git a/src/gnome-desktop/gnome-desktop-thumbnail.c b/src/gnome-desktop/gnome-desktop-thumbnail.c
+index b31bad58d..f48fd461a 100644
+--- a/src/gnome-desktop/gnome-desktop-thumbnail.c
++++ b/src/gnome-desktop/gnome-desktop-thumbnail.c
+@@ -967,8 +967,8 @@ get_preview_thumbnail (const char *uri,
+ if (file_info == NULL)
+ return NULL;
+
+- object = g_file_info_get_attribute_object (file_info,
+- G_FILE_ATTRIBUTE_PREVIEW_ICON);
++ object = g_object_ref (g_file_info_get_attribute_object (file_info,
++ G_FILE_ATTRIBUTE_PREVIEW_ICON));
+ g_object_unref (file_info);
+
+ if (!object)
+--
+2.17.0
+
diff --git a/gnome-base/nautilus/files/3.30.5-thumbnailer-updates2.patch b/gnome-base/nautilus/files/3.30.5-thumbnailer-updates2.patch
new file mode 100644
index 000000000000..884deb420911
--- /dev/null
+++ b/gnome-base/nautilus/files/3.30.5-thumbnailer-updates2.patch
@@ -0,0 +1,46 @@
+From 87aa2520989bafbd861a03a32d6fdb0d2620faf5 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Mon, 11 Mar 2019 23:23:11 +0200
+Subject: [PATCH] Sync gnome-desktop code
+
+Brings in fontconfig cache bind mount and a small memory fix; cache path hardcoded to Gentoo for now
+---
+ src/gnome-desktop/gnome-desktop-thumbnail-script.c | 4 ++++
+ src/gnome-desktop/gnome-desktop-thumbnail.c | 6 ++++--
+ 2 files changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/src/gnome-desktop/gnome-desktop-thumbnail-script.c b/src/gnome-desktop/gnome-desktop-thumbnail-script.c
+index 525766388..0331cb3c7 100644
+--- a/src/gnome-desktop/gnome-desktop-thumbnail-script.c
++++ b/src/gnome-desktop/gnome-desktop-thumbnail-script.c
+@@ -565,6 +565,10 @@ add_bwrap (GPtrArray *array,
+ }
+ }
+
++ /* fontconfig cache if necessary */
++ if (!g_str_has_prefix ("/var/cache/fontconfig", "/usr/"))
++ add_args (array, "--ro-bind-try", "/var/cache/fontconfig", "/var/cache/fontconfig", NULL);
++
+ add_args (array,
+ "--proc", "/proc",
+ "--dev", "/dev",
+diff --git a/src/gnome-desktop/gnome-desktop-thumbnail.c b/src/gnome-desktop/gnome-desktop-thumbnail.c
+index f48fd461a..566fbeb84 100644
+--- a/src/gnome-desktop/gnome-desktop-thumbnail.c
++++ b/src/gnome-desktop/gnome-desktop-thumbnail.c
+@@ -967,8 +967,10 @@ get_preview_thumbnail (const char *uri,
+ if (file_info == NULL)
+ return NULL;
+
+- object = g_object_ref (g_file_info_get_attribute_object (file_info,
+- G_FILE_ATTRIBUTE_PREVIEW_ICON));
++ object = g_file_info_get_attribute_object (file_info,
++ G_FILE_ATTRIBUTE_PREVIEW_ICON);
++ if (object)
++ g_object_ref (object);
+ g_object_unref (file_info);
+
+ if (!object)
+--
+2.17.0
+
diff --git a/gnome-base/nautilus/nautilus-3.28.1.ebuild b/gnome-base/nautilus/nautilus-3.28.1.ebuild
index 77031b8ffd34..40dd98c4c84d 100644
--- a/gnome-base/nautilus/nautilus-3.28.1.ebuild
+++ b/gnome-base/nautilus/nautilus-3.28.1.ebuild
@@ -21,7 +21,7 @@ COMMON_DEPEND="
>=app-arch/gnome-autoar-0.2.1
>=gnome-base/gnome-desktop-3.0.0:3=
>=x11-libs/pango-1.28.3
- >=x11-libs/gtk+-3.22.6:3[X,introspection?]
+ >=x11-libs/gtk+-3.22.26:3[X,introspection?]
selinux? ( >=sys-libs/libselinux-2.0 )
>=app-misc/tracker-2.0:=
x11-libs/libX11
diff --git a/gnome-base/nautilus/nautilus-3.30.5.ebuild b/gnome-base/nautilus/nautilus-3.30.5.ebuild
new file mode 100644
index 000000000000..f7403a0a6dd7
--- /dev/null
+++ b/gnome-base/nautilus/nautilus-3.30.5.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit gnome.org gnome2-utils meson readme.gentoo-r1 virtualx xdg
+
+DESCRIPTION="Default file manager for the GNOME desktop"
+HOMEPAGE="https://wiki.gnome.org/Apps/Nautilus"
+
+LICENSE="GPL-3+ LGPL-2.1+"
+SLOT="0"
+IUSE="gnome gtk-doc +introspection packagekit +previewer seccomp selinux sendto"
+
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+
+COMMON_DEPEND="
+ >=dev-libs/glib-2.55.1:2
+ >=media-libs/gexiv2-0.10.0
+ >=app-arch/gnome-autoar-0.2.1
+ gnome-base/gsettings-desktop-schemas
+ >=x11-libs/gtk+-3.22.27:3[X,introspection?]
+ seccomp? ( sys-libs/libseccomp )
+ >=x11-libs/pango-1.28.3
+ selinux? ( >=sys-libs/libselinux-2.0 )
+ >=app-misc/tracker-2.0:=
+ x11-libs/libX11
+ >=dev-libs/libxml2-2.7.8:2
+ introspection? ( >=dev-libs/gobject-introspection-1.54:= )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gdbus-codegen-2.51.2
+ dev-util/glib-utils
+ gtk-doc? (
+ >=dev-util/gtk-doc-1.10
+ app-text/docbook-xml-dtd:4.1.2 )
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+ x11-base/xorg-proto
+"
+RDEPEND="${COMMON_DEPEND}
+ packagekit? ( app-admin/packagekit-base )
+ seccomp? ( sys-apps/bubblewrap )
+ sendto? ( !<gnome-extra/nautilus-sendto-3.0.1 )
+"
+
+PDEPEND="
+ gnome? ( x11-themes/adwaita-icon-theme )
+ previewer? ( >=gnome-extra/sushi-0.1.9 )
+ sendto? ( >=gnome-extra/nautilus-sendto-3.0.1 )
+ >=gnome-base/gvfs-1.14[gtk(+)]
+" # Need gvfs[gtk] for recent:/// support; always built (without USE=gtk) since gvfs-1.34
+
+PATCHES=(
+ "${FILESDIR}"/${PV}-docs-build.patch # Always install pregenerated manpage, keeping docs option for gtk-doc
+ "${FILESDIR}"/${PV}-thumbnailer-updates{,2}.patch # syncs with gnome-desktop; fixes the ld.so.cache for us
+ "${FILESDIR}"/${PV}-seccomp-sparc32.patch # 32-bit sparc doesn't have seccomp either
+)
+
+src_prepare() {
+ if use previewer; then
+ DOC_CONTENTS="nautilus uses gnome-extra/sushi to preview media files.
+ To activate the previewer, select a file and press space; to
+ close the previewer, press space again."
+ fi
+ xdg_src_prepare
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use gtk-doc docs)
+ -Dextensions=true # image file properties, sendto support
+ $(meson_use introspection)
+ $(meson_use packagekit)
+ $(meson_use selinux)
+ -Dprofiling=false
+ -Dtests=$(usex test all none)
+ )
+ meson_src_configure
+}
+
+src_install() {
+ use previewer && readme.gentoo_create_doc
+ meson_src_install
+}
+
+src_test() {
+ virtx meson_src_test
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+
+ if use previewer; then
+ readme.gentoo_print_elog
+ else
+ elog "To preview media files, emerge nautilus with USE=previewer"
+ fi
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}