summaryrefslogtreecommitdiff
path: root/source/l/desktop-file-utils
diff options
context:
space:
mode:
authorPatrick J Volkerding <volkerdi@slackware.com>2016-06-30 20:26:57 +0000
committerEric Hameleers <alien@slackware.com>2018-05-31 23:31:18 +0200
commitd31c50870d0bee042ce660e445c9294a59a3a65b (patch)
tree6bfc0de3c95267b401b620c2c67859557dc60f97 /source/l/desktop-file-utils
parent76fc4757ac91ac7947a01fb7b53dddf9a78a01d1 (diff)
downloadcurrent-d31c50870d0bee042ce660e445c9294a59a3a65b.tar.gz
Slackware 14.2slackware-14.2
Thu Jun 30 20:26:57 UTC 2016 Slackware 14.2 x86_64 stable is released! The long development cycle (the Linux community has lately been living in "interesting times", as they say) is finally behind us, and we're proud to announce the release of Slackware 14.2. The new release brings many updates and modern tools, has switched from udev to eudev (no systemd), and adds well over a hundred new packages to the system. Thanks to the team, the upstream developers, the dedicated Slackware community, and everyone else who pitched in to help make this release a reality. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Have fun! :-)
Diffstat (limited to 'source/l/desktop-file-utils')
-rwxr-xr-xsource/l/desktop-file-utils/desktop-file-utils.SlackBuild4
-rw-r--r--source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch177
-rw-r--r--source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch28
-rw-r--r--source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch26
4 files changed, 235 insertions, 0 deletions
diff --git a/source/l/desktop-file-utils/desktop-file-utils.SlackBuild b/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
index a98deb9e..12804bb4 100755
--- a/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
+++ b/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
@@ -60,6 +60,10 @@ cd ${PKGNAM}-$VERSION || exit 1
zcat $CWD/desktop-file-utils.quiet.warnings.diff.gz | patch -p1 --verbose || exit 1
+patch -p1 < $CWD/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch || exit 1
+patch -p1 < $CWD/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch || exit 1
+patch -p1 < $CWD/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch || exit 1
+
# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
diff --git a/source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch b/source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch
new file mode 100644
index 00000000..e3be90d9
--- /dev/null
+++ b/source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch
@@ -0,0 +1,177 @@
+From 9e279cc3fac9a7e92bf426867fa83c0c7aec5711 Mon Sep 17 00:00:00 2001
+From: Jerome Leclanche <jerome@leclan.ch>
+Date: Tue, 1 Apr 2014 15:33:16 +0200
+Subject: [PATCH 1/3] desktop-file-validate: Trailing semicolons have been
+ downgraded to optional
+
+https://bugs.freedesktop.org/show_bug.cgi?id=76902
+Approved by David Faure and Ryan Lortie
+---
+ src/validate.c | 105 ---------------------------------------------------------
+ 1 file changed, 105 deletions(-)
+
+diff --git a/src/validate.c b/src/validate.c
+index 68fd6f0..77a5fda 100644
+--- a/src/validate.c
++++ b/src/validate.c
+@@ -765,9 +765,6 @@ validate_numeric_key (kf_validator *kf,
+ /* + Values of type string may contain all ASCII characters except for control
+ * characters.
+ * Checked.
+- * + The multiple values should be separated by a semicolon. Those keys which
+- * have several values should have a semicolon as the trailing character.
+- * Checked.
+ * + FIXME: how should an empty list be handled?
+ */
+ static gboolean
+@@ -799,24 +796,6 @@ validate_string_regexp_list_key (kf_validator *kf,
+ return FALSE;
+ }
+
+- if (i > 0 && value[i - 1] != ';') {
+- print_fatal (kf, "value \"%s\" for %s list key \"%s\" in group \"%s\" "
+- "does not have a semicolon (';') as trailing "
+- "character\n",
+- value, type, key, kf->current_group);
+-
+- return FALSE;
+- }
+-
+- if (i > 1 && value[i - 1] == ';' && value[i - 2] == '\\' &&
+- (i < 3 || value[i - 3] != '\\')) {
+- print_fatal (kf, "value \"%s\" for %s list key \"%s\" in group \"%s\" "
+- "has an escaped semicolon (';') as trailing character\n",
+- value, type, key, kf->current_group);
+-
+- return FALSE;
+- }
+-
+ return TRUE;
+ }
+
+@@ -845,10 +824,6 @@ validate_regexp_list_key (kf_validator *kf,
+ * + If a postfixed key occurs, the same key must be also present without the
+ * postfix.
+ * Checked.
+- * + The multiple values should be separated by a semicolon. Those keys which
+- * have several values should have a semicolon as the trailing character.
+- * FIXME: partly checked. We use checks that work for sure for ascii
+- * characters, but that could possibly fail in some weird UTF-8 strings.
+ * + FIXME: how should an empty list be handled?
+ */
+ static gboolean
+@@ -858,7 +833,6 @@ validate_localestring_list_key (kf_validator *kf,
+ const char *value)
+ {
+ char *locale_key;
+- int len;
+
+ if (locale)
+ locale_key = g_strdup_printf ("%s[%s]", key, locale);
+@@ -876,27 +850,6 @@ validate_localestring_list_key (kf_validator *kf,
+ return FALSE;
+ }
+
+- len = strlen (value);
+-
+- if (len > 0 && value[len - 1] != ';') {
+- print_fatal (kf, "value \"%s\" for locale string list key \"%s\" in group "
+- "\"%s\" does not have a semicolon (';') as trailing "
+- "character\n",
+- value, locale_key, kf->current_group);
+-
+- return FALSE;
+- }
+-
+- if (len > 1 && value[len - 1] == ';' && value[len - 2] == '\\' &&
+- (len < 3 || value[len - 3] != '\\')) {
+- print_fatal (kf, "value \"%s\" for locale string list key \"%s\" in group "
+- "\"%s\" has an escaped semicolon (';') as trailing "
+- "character\n",
+- value, locale_key, kf->current_group);
+-
+- return FALSE;
+- }
+-
+ if (!g_hash_table_lookup (kf->current_keys, key)) {
+ print_fatal (kf, "key \"%s\" in group \"%s\" is a localized key, but "
+ "there is no non-localized key \"%s\"\n",
+@@ -3109,45 +3062,11 @@ desktop_file_validate (const char *filename,
+ return (!kf.fatal_error);
+ }
+
+-static void
+-fixup_list (GKeyFile *keyfile,
+- const gchar *filename,
+- const gchar *key)
+-{
+- char *value;
+- int len;
+-
+- value = g_key_file_get_value (keyfile, GROUP_DESKTOP_ENTRY, key, NULL);
+- if (!value)
+- return;
+-
+- len = strlen (value);
+-
+- if (len > 0 && (value[len - 1] != ';' ||
+- (len > 1 && value[len - 2] == '\\' &&
+- (len < 3 || value[len - 3] != '\\')))) {
+- char *str;
+-
+- g_printerr ("%s: warning: key \"%s\" is a list and does not have a "
+- "semicolon as trailing character, fixing\n",
+- filename, key);
+-
+- str = g_strconcat (value, ";", NULL);
+- g_key_file_set_value (keyfile, GROUP_DESKTOP_ENTRY,
+- key, str);
+- g_free (str);
+- }
+-}
+-
+ /* return FALSE if we were unable to fix the file */
+ gboolean
+ desktop_file_fixup (GKeyFile *keyfile,
+ const char *filename)
+ {
+- gchar **keys;
+- gsize keys_nb;
+- unsigned int i;
+-
+ if (g_key_file_has_group (keyfile, GROUP_KDE_DESKTOP_ENTRY)) {
+ g_printerr ("%s: warning: renaming deprecated \"%s\" group to \"%s\"\n",
+ filename, GROUP_KDE_DESKTOP_ENTRY, GROUP_DESKTOP_ENTRY);
+@@ -3155,29 +3074,5 @@ desktop_file_fixup (GKeyFile *keyfile,
+ GROUP_KDE_DESKTOP_ENTRY, GROUP_DESKTOP_ENTRY);
+ }
+
+- keys = g_key_file_get_keys (keyfile, GROUP_DESKTOP_ENTRY, &keys_nb, NULL);
+-
+- /* Fix lists to have a ';' at the end if they don't */
+- for (i = 0; i < G_N_ELEMENTS (registered_desktop_keys); i++) {
+- if (registered_desktop_keys[i].type == DESKTOP_STRING_LIST_TYPE ||
+- registered_desktop_keys[i].type == DESKTOP_REGEXP_LIST_TYPE)
+- fixup_list (keyfile, filename, registered_desktop_keys[i].name);
+-
+- if (registered_desktop_keys[i].type == DESKTOP_LOCALESTRING_LIST_TYPE) {
+- gsize keylen;
+- guint j;
+-
+- keylen = strlen (registered_desktop_keys[i].name);
+- for (j = 0; j < keys_nb; j++) {
+- if (g_str_has_prefix (keys[j], registered_desktop_keys[i].name) &&
+- (keys[j][keylen] == '[' || keys[j][keylen] == '\0')) {
+- fixup_list (keyfile, filename, keys[j]);
+- }
+- }
+- }
+- }
+-
+- g_strfreev (keys);
+-
+ return TRUE;
+ }
+--
+2.2.0
+
diff --git a/source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch b/source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch
new file mode 100644
index 00000000..132d16a4
--- /dev/null
+++ b/source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch
@@ -0,0 +1,28 @@
+From 848c82b2332d0556c22c10a9c64d1f39850271fe Mon Sep 17 00:00:00 2001
+From: Michael Webster <miketwebster@gmail.com>
+Date: Fri, 7 Mar 2014 20:16:52 -0500
+Subject: [PATCH 2/3] Add Cinnamon to list of registered environments.
+
+https://github.com/linuxmint/Cinnamon
+
+https://bugs.freedesktop.org/show_bug.cgi?id=73497
+---
+ src/validate.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/validate.c b/src/validate.c
+index 77a5fda..6859c1b 100644
+--- a/src/validate.c
++++ b/src/validate.c
+@@ -363,7 +363,7 @@ static DesktopKeyDefinition registered_action_keys[] = {
+ };
+
+ static const char *show_in_registered[] = {
+- "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Old"
++ "Cinnamon", "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Old"
+ };
+
+ static struct {
+--
+2.2.0
+
diff --git a/source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch b/source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch
new file mode 100644
index 00000000..0f1d70ac
--- /dev/null
+++ b/source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch
@@ -0,0 +1,26 @@
+From be0c630a19aa1788ef731def911770ce497d6ba3 Mon Sep 17 00:00:00 2001
+From: David Faure <faure@kde.org>
+Date: Tue, 1 Apr 2014 22:29:08 +0200
+Subject: [PATCH 3/3] Add EDE to the list of desktop environments
+
+https://bugs.freedesktop.org/show_bug.cgi?id=56353
+---
+ src/validate.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/validate.c b/src/validate.c
+index 6859c1b..b4b752e 100644
+--- a/src/validate.c
++++ b/src/validate.c
+@@ -363,7 +363,7 @@ static DesktopKeyDefinition registered_action_keys[] = {
+ };
+
+ static const char *show_in_registered[] = {
+- "Cinnamon", "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Old"
++ "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Cinnamon", "EDE", "Old"
+ };
+
+ static struct {
+--
+2.2.0
+