openbsd-ports/devel/desktop-file-utils/patches/patch-src_update-desktop-database_c

44 lines
1.8 KiB
Plaintext

$OpenBSD: patch-src_update-desktop-database_c,v 1.7 2010/05/15 07:41:19 ajacoutot Exp $
Quiet warnings about deprecated/discouraged and invalid MIME types.
Under OpenBSD, desktop files are installed using INSTALL_DATA which is
defined in ports/infrastructure/mk/bsd.port.mk as:
${INSTALL} ${INSTALL_COPY} -o ${SHAREOWN} -g ${SHAREGRP} -m ${SHAREMODE}
SHAREMODE is defined under /usr/share/mk/bsd.own.mk as "444".
That means desktop files are installed with mode 444 which is wrong
because fd.o environments use these files to create menu structures,
links to applications... and a user should be able to edit the link icon
or menu he just created.
--- src/update-desktop-database.c.orig Wed Mar 10 03:33:41 2010
+++ src/update-desktop-database.c Sat May 15 08:56:37 2010
@@ -135,15 +135,9 @@ process_desktop_file (const char *desktop_file,
case MU_VALID:
break;
case MU_DISCOURAGED:
- udd_print (_("Warning in file \"%s\": usage of MIME type \"%s\" is "
- "discouraged (%s)\n"),
- desktop_file, mime_types[i], valid_error);
g_free (valid_error);
break;
case MU_INVALID:
- udd_print (_("Error in file \"%s\": \"%s\" is an invalid MIME type "
- "(%s)\n"),
- desktop_file, mime_types[i], valid_error);
g_free (valid_error);
/* not a break: we continue to the next mime type */
continue;
@@ -213,6 +207,10 @@ process_desktop_files (const char *desktop_dir,
}
name = g_strdup_printf ("%s%s", prefix, filename);
+
+ if (chmod(full_path, 0644) != 0)
+ printf("Cannot give 644 perms to :%s", full_path);
+
process_desktop_file (full_path, name, &process_error);
g_free (name);