Date: Wed, 13 Jul 2011 18:06:46 -0400 From: Jung-uk Kim <jkim@FreeBSD.org> To: Stephen Montgomery-Smith <stephen@missouri.edu> Cc: Matthias Andree <matthias.andree@gmx.de>, freebsd-ports@FreeBSD.org Subject: Re: [RFC] A trivial change for DESKTOP_ENTRIES Message-ID: <201107131806.49966.jkim@FreeBSD.org> In-Reply-To: <4E1E09C0.9040609@missouri.edu> References: <201107121826.00020.jkim@FreeBSD.org> <201107131536.01059.jkim@FreeBSD.org> <4E1E09C0.9040609@missouri.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 13 July 2011 05:10 pm, Stephen Montgomery-Smith wrote: > On 07/13/2011 02:35 PM, Jung-uk Kim wrote: > > On Wednesday 13 July 2011 06:42 am, Matthias Andree wrote: > >> Am 13.07.2011 00:25, schrieb Jung-uk Kim: > >>> After I updated x11-wm/compiz, GNOME was not able to start the > >>> window manager. Basically, it complained that compiz-manager > >>> was not found. Then, I realized compiz-manager.desktop was > >>> automagically replaced by compizmanager.desktop. Now I tracked > >>> it down to this commit: > >>> > >>> Sat Nov 27 17:42:46 2010 UTC (7 months, 2 weeks ago) by pav > >>> > >>> - DESKTOP_ENTRIES: commandline is used to name installed > >>> .desktop file, this can lead to files containing whitespace and > >>> funny characters; thus strip all non-alphanumeric characters > >>> > >>> http://www.freebsd.org/cgi/cvsweb.cgi/ports/Mk/bsd.port.mk.diff > >>>?r 1=1.656;r2=1.657 > >>> > >>> To me, it looks far too restrictive. At least, I'd like to > >>> allow '-' and '_'. Please see the attached patch. > >>> > >>> Any objections? > >> > >> The dot should also be allowed, to cover the POSIX portable > >> filename character set altogether. > > > > I liked the idea first. Then, I realized that we have to add > > more sanity checks, e.g., ".", "..", ".foo", etc. > > > > Sorry, > > > > Jung-uk Kim > > The extra sanity check seems to add very little overhead: > > if (echo "$$4" | grep "^\..*" > /dev/null) \ > > || (echo "$$4" | grep [^[:alnum:]_.-]> /dev/null); then \ > > echo "blah blah"; \ > fi > > And "." are very common in filenames. Some times '.' and '..' are very hard to deal with. :-( After I applied sanity checks, I only found one port that contains '.' in Exec, i.e., misc/metalink-editor, which has "metalink_editer.py" as an executable name. So, I concluded it isn't very useful check while it is error-prone. There are two ports that contains spaces: games/tome: tome -v -g www/links: links -g These can be easily fixable by adding static desktop files. Other failures are caused by "/" in their Execs, which is also very valid. Currently, these ports create very ugly desktop files, e.g., usrlocalbinfoo.desktop. This problem is also easily fixable, i.e., s/ECHO_CMD/BASENAME/. I believe it must be fixed regardless. Jung-uk Kim
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201107131806.49966.jkim>