From: Pacho Ramos Date: Mon, 12 Sep 2011 10:01:54 +0000 (+0000) Subject: Also support Gsettings conditions to work with latest libcanberra, fix race condition... X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=b5539bece84de48d086676015f45d88a92d44e1d;p=gentoo.git Also support Gsettings conditions to work with latest libcanberra, fix race condition in idle monitor, fix dialog size, pull in x11-misc/xdg-user-dirs stuff as done in gnome-session-3. Remove old. Package-Manager: portage-2.1.10.14/cvs/Linux x86_64 --- diff --git a/gnome-base/gnome-session/ChangeLog b/gnome-base/gnome-session/ChangeLog index 0ec49255e81a..b052b0b5b640 100644 --- a/gnome-base/gnome-session/ChangeLog +++ b/gnome-base/gnome-session/ChangeLog @@ -1,6 +1,18 @@ # ChangeLog for gnome-base/gnome-session # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-session/ChangeLog,v 1.295 2011/08/19 12:07:06 nirbheek Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-session/ChangeLog,v 1.296 2011/09/12 10:01:54 pacho Exp $ + +*gnome-session-2.32.1-r3 (12 Sep 2011) + + 12 Sep 2011; Pacho Ramos -gnome-session-2.32.1.ebuild, + +gnome-session-2.32.1-r3.ebuild, + +files/gnome-session-2.32.1-dialog-size.patch, + +files/gnome-session-2.32.1-dialog-size2.patch, + +files/gnome-session-2.32.1-gsettings-conditions.patch, + +files/gnome-session-2.32.1-idle-transition.patch: + Also support Gsettings conditions to work with latest libcanberra, fix race + condition in idle monitor, fix dialog size, pull in x11-misc/xdg-user-dirs + stuff as done in gnome-session-3. Remove old. 19 Aug 2011; Nirbheek Chauhan gnome-session-3.0.2.ebuild: diff --git a/gnome-base/gnome-session/Manifest b/gnome-base/gnome-session/Manifest index b9826b97c99b..09dae26e5c29 100644 --- a/gnome-base/gnome-session/Manifest +++ b/gnome-base/gnome-session/Manifest @@ -6,28 +6,22 @@ AUX 15-xdg-data-gnome 227 RMD160 b42bf6342d18a00fe38b49264ef8a43c8ce87af9 SHA1 a AUX Gnome 2391 RMD160 dee0875327352ae70f71b73257deb8ccc5bbc3ba SHA1 9d6f5c7c4f7aee36ea64b30c57b9cb9818664c42 SHA256 ffc912945278c88ef854c8988b0042675ffa78525592f34580ee76c1f25309d3 AUX defaults.list 14505 RMD160 1e15a5166728493f21987b530fafcae735a47a3c SHA1 927a883d98b7dbbed75f4480c284e0b0431ab000 SHA256 efe30d8f5be448661870fec6a5e49ae98ecfb73f06ee4ab0926990cb15223354 AUX gnome-session-2.32.0-session-saving-button.patch 21424 RMD160 11c4db9951859c2749473a7969693469c9d9e277 SHA1 f7c2f8d98c6deac63ca9448977bdcfa29ae80d52 SHA256 7a2dd8771180bc460fdc034ad95d61ed83b14952b16b17c3cb9a10aade8a1a97 +AUX gnome-session-2.32.1-dialog-size.patch 953 RMD160 436ac050715db19af87eb677e8a652e47f397ead SHA1 a4bf898f8c85b6870c61ddbd83816f7726e9fe5d SHA256 8f96daba40ae19223d54aa271f79e0a6541e4c936771815a4599077533c6948b +AUX gnome-session-2.32.1-dialog-size2.patch 1114 RMD160 bd9587678b2bf4dffab7959b1377d5b9856cb22b SHA1 26702bba164b816dd34c53ad9669b6734c21c959 SHA256 fefa53adb80c531fecc4fa4e67f5faff7ee5cfd33a290c689dca9f2267525f6e AUX gnome-session-2.32.1-gnome3-conditions.patch 4552 RMD160 429b39d3338fb26eb96c94d4087579c5620393b3 SHA1 d96cd45515d484c6d82fe135b5b678349850490b SHA256 88482711f19399b766ed562c43511d8a6db1e1df2790945cd1819d7f616af42e +AUX gnome-session-2.32.1-gsettings-conditions.patch 5085 RMD160 257d3bd04034abad8e638d71ddf63226883ede4c SHA1 5e1d577e89b79ec252aafe99beb56deca388f4fb SHA256 a57d614d533a54d0d3c186d521c53caad7150d4dc19863b9171472b1a48c01b0 +AUX gnome-session-2.32.1-idle-transition.patch 1802 RMD160 aec519f8b0bfff589c079d365dbdf134333f4f69 SHA1 67bcb498be8410c3ea3f0bdfc0bc42a880827208 SHA256 6e80574672ff9e4b9a63796959d1e83af0f184eb4ad507bcbe6589c364b63038 DIST gnome-session-2.32.1.tar.bz2 774842 RMD160 c579bf197b38c8df7df14c751c056be86695a287 SHA1 7d4c7652247606a972a2f1e50a6a6339809a5b9e SHA256 22d93ce433fcf9c7ce6b5f36dd81f64e692ea0e41faaa0f61159ddac28c3686a DIST gnome-session-3.0.2.tar.bz2 805690 RMD160 58268528a627ffe9be96e8d168ea278b98c5e693 SHA1 5559a71ef3134f3aaa48b7f06e2123714f71756f SHA256 4801a0cfdf351a1184780cc1c2bdd5cea6cd1ad31505d5fa8de4e56aa766ab96 EBUILD gnome-session-2.32.1-r2.ebuild 2181 RMD160 62ce137f70d6fabe0531cc10c8e5a66b884edafc SHA1 29e676cd69295adca01f209f7ed751a3690d1445 SHA256 1a0b4219a56f9e944d7badbc96769cc474058a7fc521b7a787060c72caf54c4f -EBUILD gnome-session-2.32.1.ebuild 1818 RMD160 801e7c83e5964ca0fd1f377a2df4f65964c726e4 SHA1 dc5dfce1084b891237b290608d5f81551b139cbf SHA256 65381314484779e4b4391a72f896ab49a35396048f641bab49ea8b99f5aef459 +EBUILD gnome-session-2.32.1-r3.ebuild 2883 RMD160 695d2f1b4f3b341fc6b741bcd7edf06e4b6a4221 SHA1 6c9f03bd143d0f39ffd2be36b5acc80b38fec904 SHA256 784b3a46f5626a230d5247e19b36d0124d2e6cc01e46fa7052247e5efce6cb54 EBUILD gnome-session-3.0.2.ebuild 3008 RMD160 90605703cc0e6a6e83987714de0e9a53efb93658 SHA1 be7a5ea68af2605fc2cfafc1efd13a7e19294f6d SHA256 3ddabe923a9abd8bddcfef5a807f92532337cca125531f2b686f7aec051323bf -MISC ChangeLog 42593 RMD160 b76ede6ca8185185b08c6dc6b8223712a4259345 SHA1 9a545d9c14a040406ae04c6cf785f6b2a475a795 SHA256 4fb34b9da5a62bc92f1f4337e044cdf8edf690150b8ef5f032bde0f18f7979ab +MISC ChangeLog 43155 RMD160 ba1da7cbafe72874c39b6fc328582d7c3ad2af1a SHA1 ef08eddf30b3d53ba9fbe67097c67f255185c018 SHA256 fa33d1e10d5fd393f4756549dd2ccdd7ef2e6a8b25a95d7958b0a87d6dab050a MISC metadata.xml 158 RMD160 c0e2bae8e91bb6be8922bac5e4f597302e06587e SHA1 38f78e9790bcd4382b4a49aa226aa6dda1d3a3d7 SHA256 3a7dbca0fdc557de69783e0663e2d76ddab129ea8a19b2d0ef6d3e5d1b947ce1 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) -iQIcBAEBAgAGBQJOTlH4AAoJEO/kOhxWD91koogP/3vknbchat6MvWcpFrBlsWsH -toup5uJx+JgUGct1VaHSrsclvyb6oyVgjWlR5DtC2fmU44mTa+BYxxG1cORSN8wZ -pTBU49f6CFz1syrvfynx8bnJdGf+Hvt3Fq3iv4Rzcz0IagnTe6e6SkLtVEFpUXDD -io4qa8u5GMYgYXOO5vj9277YVfOfG14zJl2NlZGCkhm1hxNM3ktV0U6CQP2e1oG3 -2PaXU8Kr6OAJzkxCol47NGQ9YYzY+gfINV3eC/AkOzPhorywEDHurP41jRHRSdHf -joJXFoyM7V0JzaHSlEtd8y+e+SarhZFDd5AClhwKseY5u53FAiyc5dZqzE/yrLCT -FZ82dQ+ogtv5kzJve0uLhgLC0VBld+kcq7h+JRrm0P6RPe0Noish7i5NeoScquHx -sG8FR8dUazB61+gKNB9eQdqhW3u/T2l1BoK/LsX+V2Dvl6F9OPbvO0StNxPu3C4e -shmY+MAgdzlR+pa9lILKmOSZ3Y5bMCJuuewzxCo56f/KOlF9MBRdu211niENpeEW -ZaUVss1sAv9FDlMu1PLHpO/aNTdEVvkSjseZWsGDUvM19DyPya5COQHvPE3ZL3Xm -Aa0S24bQ2G9h2SufCwH8Pejw5omWQAQe3seY6HiY/q2UwVcx9Vq9h6S3AHDccvgy -Zgs6EwLj6jFKZgMLJBZD -=8k9x +iEYEARECAAYFAk5t2JgACgkQCaWpQKGI+9RLcwCdETRgywLUFl4A+tfJDrjy4HLq +UoMAnRmNlOT2yEHXpoRykh1qJu+7v/2X +=no22 -----END PGP SIGNATURE----- diff --git a/gnome-base/gnome-session/files/gnome-session-2.32.1-dialog-size.patch b/gnome-base/gnome-session/files/gnome-session-2.32.1-dialog-size.patch new file mode 100644 index 000000000000..c5cfcebbfd8b --- /dev/null +++ b/gnome-base/gnome-session/files/gnome-session-2.32.1-dialog-size.patch @@ -0,0 +1,21 @@ +From 8c4cdd5304929d19a27f876eb9cb5bbb67a4d59f Mon Sep 17 00:00:00 2001 +From: Vincent Untz +Date: Mon, 29 Nov 2010 21:44:03 +0000 +Subject: capplet: Give the dialog a reasonable default height + +https://bugzilla.gnome.org/show_bug.cgi?id=635891 +--- +diff --git a/capplet/gsm-properties-dialog.c b/capplet/gsm-properties-dialog.c +index 4432b09..8b51169 100644 +--- a/capplet/gsm-properties-dialog.c ++++ b/capplet/gsm-properties-dialog.c +@@ -784,6 +784,7 @@ gsm_properties_dialog_init (GsmPropertiesDialog *dialog) + "main-notebook")); + gtk_box_pack_start (GTK_BOX (content_area), widget, TRUE, TRUE, 0); + ++ gtk_window_set_default_size (GTK_WINDOW (dialog), -1, 450); + gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE); + gtk_container_set_border_width (GTK_CONTAINER (dialog), 6); + gtk_box_set_spacing (GTK_BOX (content_area), 2); +-- +cgit v0.9.0.2 diff --git a/gnome-base/gnome-session/files/gnome-session-2.32.1-dialog-size2.patch b/gnome-base/gnome-session/files/gnome-session-2.32.1-dialog-size2.patch new file mode 100644 index 000000000000..39a02806d599 --- /dev/null +++ b/gnome-base/gnome-session/files/gnome-session-2.32.1-dialog-size2.patch @@ -0,0 +1,25 @@ +From 6fd301895a39fc32f302ea3fced74fc03e5c75c9 Mon Sep 17 00:00:00 2001 +From: Vincent Untz +Date: Mon, 29 Nov 2010 21:47:00 +0000 +Subject: capplet: Also give the dialog a reasonable width + +We don't want to depend on the natural size, which depends on the length +of strings for this. + +https://bugzilla.gnome.org/show_bug.cgi?id=635891 +--- +diff --git a/capplet/gsm-properties-dialog.c b/capplet/gsm-properties-dialog.c +index 8b51169..487250e 100644 +--- a/capplet/gsm-properties-dialog.c ++++ b/capplet/gsm-properties-dialog.c +@@ -784,7 +784,7 @@ gsm_properties_dialog_init (GsmPropertiesDialog *dialog) + "main-notebook")); + gtk_box_pack_start (GTK_BOX (content_area), widget, TRUE, TRUE, 0); + +- gtk_window_set_default_size (GTK_WINDOW (dialog), -1, 450); ++ gtk_window_set_default_size (GTK_WINDOW (dialog), 600, 450); + gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE); + gtk_container_set_border_width (GTK_CONTAINER (dialog), 6); + gtk_box_set_spacing (GTK_BOX (content_area), 2); +-- +cgit v0.9.0.2 diff --git a/gnome-base/gnome-session/files/gnome-session-2.32.1-gsettings-conditions.patch b/gnome-base/gnome-session/files/gnome-session-2.32.1-gsettings-conditions.patch new file mode 100644 index 000000000000..9c272375e3eb --- /dev/null +++ b/gnome-base/gnome-session/files/gnome-session-2.32.1-gsettings-conditions.patch @@ -0,0 +1,135 @@ +--- gnome-session/gsm-autostart-app.c.old 2011-09-12 11:06:20.552420744 +0200 ++++ gnome-session/gsm-autostart-app.c 2011-09-12 11:18:39.934966203 +0200 +@@ -66,6 +66,7 @@ + + GFileMonitor *condition_monitor; + guint condition_notify_id; ++ GSettings *condition_settings; + + int launch_type; + GPid pid; +@@ -164,6 +165,8 @@ + kind = GSM_CONDITION_UNLESS_EXISTS; + } else if (!g_ascii_strncasecmp (condition_string, "GNOME", len)) { + kind = GSM_CONDITION_GNOME; ++ } else if (!g_ascii_strncasecmp (condition_string, "GSettings", len)) { ++ kind = GSM_CONDITION_GSETTINGS; + } else if (!g_ascii_strncasecmp (condition_string, "GNOME3", len)) { + condition_string = key; + space = condition_string + strcspn (condition_string, " "); +@@ -289,6 +292,81 @@ + } + + static void ++gsettings_condition_cb (GSettings *settings, ++ const char *key, ++ gpointer user_data) ++{ ++ GsmApp *app; ++ GsmAutostartAppPrivate *priv; ++ gboolean condition; ++ ++ g_return_if_fail (GSM_IS_APP (user_data)); ++ ++ app = GSM_APP (user_data); ++ ++ priv = GSM_AUTOSTART_APP (app)->priv; ++ ++ condition = g_settings_get_boolean (settings, key); ++ ++ g_debug ("GsmAutostartApp: app:%s condition changed condition:%d", ++ gsm_app_peek_id (app), ++ condition); ++ ++ /* Emit only if the condition actually changed */ ++ if (condition != priv->condition) { ++ priv->condition = condition; ++ g_signal_emit (app, signals[CONDITION_CHANGED], 0, condition); ++ } ++} ++ ++static gboolean ++setup_gsettings_condition_monitor (GsmAutostartApp *app, ++ const char *key) ++{ ++ GSettings *settings; ++ const char * const *schemas; ++ char **elems; ++ gboolean schema_exists; ++ guint i; ++ gboolean retval; ++ char *signal; ++ ++ elems = g_strsplit (key, " ", 2); ++ if (elems == NULL) ++ return FALSE; ++ if (elems[0] == NULL || elems[1] == NULL) { ++ g_strfreev (elems); ++ return FALSE; ++ } ++ ++ schemas = g_settings_list_schemas (); ++ schema_exists = FALSE; ++ for (i = 0; schemas[i] != NULL; i++) { ++ if (g_str_equal (schemas[i], elems[0])) { ++ schema_exists = TRUE; ++ break; ++ } ++ } ++ ++ if (schema_exists == FALSE) ++ return FALSE; ++ ++ settings = g_settings_new (elems[0]); ++ retval = g_settings_get_boolean (settings, elems[1]); ++ ++ signal = g_strdup_printf ("changed::%s", elems[1]); ++ g_signal_connect (G_OBJECT (settings), signal, ++ G_CALLBACK (gsettings_condition_cb), app); ++ g_free (signal); ++ ++ app->priv->condition_settings = settings; ++ ++ g_strfreev (elems); ++ ++ return retval; ++} ++ ++static void + setup_condition_monitor (GsmAutostartApp *app) + { + guint kind; +@@ -383,6 +461,8 @@ + gconf_condition_cb, + app, NULL, NULL); + g_object_unref (client); ++ } else if (kind == GSM_CONDITION_GSETTINGS) { ++ disabled = !setup_gsettings_condition_monitor (app, key); + } else if (kind == GSM_CONDITION_IF_SESSION) { + /* We treat GNOME 2.32 as the same as gnome-fallback */ + disabled = strcmp ("gnome-fallback", key) != 0; +@@ -578,6 +658,11 @@ + priv->condition_string = NULL; + } + ++ if (priv->condition_settings) { ++ g_object_unref (priv->condition_settings); ++ priv->condition_settings = NULL; ++ } ++ + if (priv->desktop_file) { + egg_desktop_file_free (priv->desktop_file); + priv->desktop_file = NULL; +@@ -672,6 +757,12 @@ + g_assert (GCONF_IS_CLIENT (client)); + disabled = !gconf_client_get_bool (client, key, NULL); + g_object_unref (client); ++ } else if (kind == GSM_CONDITION_GSETTINGS && ++ priv->condition_settings != NULL) { ++ char **elems; ++ elems = g_strsplit (key, " ", 2); ++ disabled = !g_settings_get_boolean (priv->condition_settings, elems[1]); ++ g_strfreev (elems); + } else if (kind == GSM_CONDITION_IF_SESSION) { + /* We treat GNOME 2.32 as the same as gnome-fallback */ + disabled = strcmp ("gnome-fallback", key) != 0; diff --git a/gnome-base/gnome-session/files/gnome-session-2.32.1-idle-transition.patch b/gnome-base/gnome-session/files/gnome-session-2.32.1-idle-transition.patch new file mode 100644 index 000000000000..4fb215151d12 --- /dev/null +++ b/gnome-base/gnome-session/files/gnome-session-2.32.1-idle-transition.patch @@ -0,0 +1,37 @@ +From 861313503a741f0129611ca005cf6d7c27124b54 Mon Sep 17 00:00:00 2001 +From: Christopher Halse Rogers +Date: Thu, 26 May 2011 09:09:14 +0000 +Subject: gsm: Fix race condition in idle monitor + +In _xsync_alarm_set(), the positive and negative transition intervals +are set to the same value. However, the SYNC extension defines the +positive transition as set when the counter goes from strictly below the +threshold to greater than or equal to the threshold and similarly a +negative transition is triggered when the counter goes form strictly +greater than the threshold to less than or equal to the threshold. + +Thus in the current set up there's a chance that the positive transition +can trigger, marking the session as idle, and some user input occur on +the same click so the IDLETIME count will hit the threshold but not go +above so the negative transition will not trigger. Thus the session will +not be marked as active. + +The negative transition threshold should be set to 1ms less than the +positive transition to ensure that it always fires. + +https://bugzilla.gnome.org/show_bug.cgi?id=627903 +--- +diff --git a/gnome-session/gs-idle-monitor.c b/gnome-session/gs-idle-monitor.c +index cd38dcb..d25144f 100644 +--- a/gnome-session/gs-idle-monitor.c ++++ b/gnome-session/gs-idle-monitor.c +@@ -463,6 +463,7 @@ _xsync_alarm_set (GSIdleMonitor *monitor, + watch->xalarm_positive = XSyncCreateAlarm (monitor->priv->display, flags, &attr); + } + ++ attr.trigger.wait_value = _int64_to_xsyncvalue (_xsyncvalue_to_int64 (watch->interval) - 1); + attr.trigger.test_type = XSyncNegativeTransition; + if (watch->xalarm_negative != None) { + g_debug ("GSIdleMonitor: updating alarm for negative transition wait=%lld", +-- +cgit v0.9.0.2 diff --git a/gnome-base/gnome-session/gnome-session-2.32.1.ebuild b/gnome-base/gnome-session/gnome-session-2.32.1-r3.ebuild similarity index 52% rename from gnome-base/gnome-session/gnome-session-2.32.1.ebuild rename to gnome-base/gnome-session/gnome-session-2.32.1-r3.ebuild index fd4691c2a6f7..2e9424e5a04e 100644 --- a/gnome-base/gnome-session/gnome-session-2.32.1.ebuild +++ b/gnome-base/gnome-session/gnome-session-2.32.1-r3.ebuild @@ -1,9 +1,10 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-session/gnome-session-2.32.1.ebuild,v 1.11 2011/03/22 19:11:59 ranger Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-session/gnome-session-2.32.1-r3.ebuild,v 1.1 2011/09/12 10:01:54 pacho Exp $ -EAPI="3" +EAPI="4" GCONF_DEBUG="yes" +GNOME_TARBALL_SUFFIX="bz2" inherit autotools eutils gnome2 @@ -12,10 +13,13 @@ HOMEPAGE="http://www.gnome.org/" LICENSE="GPL-2 LGPL-2 FDL-1.1" SLOT="0" -KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-solaris" IUSE="doc ipv6 elibc_FreeBSD" +# x11-misc/xdg-user-dirs{,-gtk} are needed to create the various XDG_*_DIRs, and +# create .config/user-dirs.dirs which is read by glib to get G_USER_DIRECTORY_* +# xdg-user-dirs-update is run during login (see 10-user-dirs-update below). RDEPEND=">=dev-libs/glib-2.16:2 >=x11-libs/gtk+-2.22.0:2 >=dev-libs/dbus-glib-0.76 @@ -28,7 +32,10 @@ RDEPEND=">=dev-libs/glib-2.16:2 x11-libs/libX11 x11-libs/libXext x11-libs/libXtst - x11-apps/xdpyinfo" + x11-apps/xdpyinfo + + x11-misc/xdg-user-dirs + x11-misc/xdg-user-dirs-gtk" DEPEND="${RDEPEND} >=dev-lang/perl-5 >=sys-devel/gettext-0.10.40 @@ -59,6 +66,19 @@ src_prepare() { # Add "session saving" button back, upstream bug #575544 epatch "${FILESDIR}/${PN}-2.32.0-session-saving-button.patch" + # Fix support for GNOME3 conditions, bug #XXXXXX + epatch "${FILESDIR}/${PN}-2.32.1-gnome3-conditions.patch" + + # Also support Gsettings conditions to work with libcanberra + epatch "${FILESDIR}/${PN}-2.32.1-gsettings-conditions.patch" + + # gsm: Fix race condition in idle monitor + epatch "${FILESDIR}/${PN}-2.32.1-idle-transition.patch" + + # Fix dialog size + epatch "${FILESDIR}/${PN}-2.32.1-dialog-size.patch" + epatch "${FILESDIR}/${PN}-2.32.1-dialog-size2.patch" + intltoolize --force --copy --automake || die "intltoolize failed" eautoreconf } @@ -66,7 +86,18 @@ src_prepare() { src_install() { gnome2_src_install - dodir /etc/X11/Sessions || die "dodir failed" + dodir /etc/X11/Sessions exeinto /etc/X11/Sessions - doexe "${FILESDIR}/Gnome" || die "doexe failed" + doexe "${FILESDIR}/Gnome" + + dodir /usr/share/gnome/applications/ + insinto /usr/share/gnome/applications/ + doins "${FILESDIR}/defaults.list" + + dodir /etc/X11/xinit/xinitrc.d/ + exeinto /etc/X11/xinit/xinitrc.d/ + doexe "${FILESDIR}/15-xdg-data-gnome" + + # FIXME: this should be done by x11-misc/xdg-user-dirs + doexe "${FILESDIR}/10-user-dirs-update" }