On 02/24/2010 01:16 PM, Pacho Ramos wrote: > El mar, 23-02-2010 a las 20:26 -0500, Jonathan Callen escribió: >> Attached is a patch to properly comply with the part of the FDO Desktop >> Menu Specification pertaining to Categories (namely, always ensuring >> that the list ends in a ";") and the part of the FDO Desktop Entry >> Specification and Icon Theme Specification pertaining to icons (namely, >> that non-absolute paths MUST NOT have an extension). > > Would be nice if you would have time to look at the following old > make_desktop_entry bug: > http://bugs.gentoo.org/show_bug.cgi?id=191000 > > Thanks a lot :-D
I edited the patch to include a fix for but 191000 as well. See attached.
--- eutils.eclass +++ eutils.eclass.new @@ -961,6 +961,7 @@ make_desktop_entry() { news) type=News;; nntp) type=News;; p2p) type=FileTransfer;; + voip) type=Telephony;; *) type=;; esac type="Network;${type}" @@ -979,7 +980,7 @@ make_desktop_entry() { visual*) type=DataVisualization;; *) type=;; esac - type="Science;${type}" + type="Education;Science;${type}" ;; sys) @@ -991,7 +992,7 @@ make_desktop_entry() { client) type=WebBrowser;; *) type=;; esac - type="Network" + type="Network;${type}" ;; *) @@ -1007,6 +1008,17 @@ make_desktop_entry() { local desktop="${T}/$(echo ${exec} | sed 's:[[:space:]/:]:_:g')-${desktop_name}.desktop" #local desktop=${T}/${exec%% *:-${desktop_name}}.desktop + # Don't append another ";" when a valid category value is provided. + [[ -n ${type} && ${type} != *';' ]] && type+=";" + + eshopts_push -s extglob + if [[ -n ${icon} && ${icon} != /* && ${icon} == *.@(xpm|png|svg) ]]; then + ewarn "As described in the Icon Theme Specification, icon file extensions are not" + ewarn "allowed in .desktop files if the value is not an absolute path." + icon=${icon%.@(xpm|png|svg)} + fi + eshopts_pop + cat <<-EOF > "${desktop}" [Desktop Entry] Name=${name} @@ -1015,7 +1027,7 @@ make_desktop_entry() { Exec=${exec} TryExec=${exec%% *} Icon=${icon} - Categories=${type}; + Categories=${type} EOF [[ ${path} ]] && echo "Path=${path}" >> "${desktop}"
signature.asc
Description: OpenPGP digital signature