This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Start menu shortcuts


On 02/09/2009 20:59, Charles Wilson wrote:
> Jon TURNEY wrote:
>> I'm not sure what to do about X-start-menu-icons.
>>
>> I think Yaakov has some ideas about how to approach this, but I don't
>> know what they are.
>>
>> Anyhow, this is something I am willing to spend a bit of time on, if
>> there was some vague consensus as to the direction we should be heading in.
> 
> IMO, each (X) package should, in its own postinstall script, create the
> start menu shortcut it needs, using mkshortcut from cygutils.  That
> postinstall script should also invoke whatever tool is necessary and
> supported to add its opendesktop menu items to the cygwin area, so that
> cygwin/gnome and/or cygwin/kde window managers are happy -- at the
> package maintainer's discretion.   I believe Yaakov's ideas revolve
> around automating this with certain primitives to be invoked within
> .cygport packaging scripts.
> 
> How to manange the transition, from the monolithic X-start-menu-icons
> package and script, to this distributed approach -- no idea.

Since this has reared it's ugly head again [1], rather than perpetuate
X-start-menu-icons into x86_64, I'll suggest the following plan:

1) Obsolete X-start-menu-icons on x86 and replace it with a dummy empty package

2) Recognize that most of the links created by X-start-menu-icons are
worthless and drop them.  I'd suggest that links for the following
applications are worthwhile, and should be installed by the application
package itself:

emacs   (Ken Brown)
xemacs  (Dr. Volker Zell)
gvim    (Yaakov S)
rxvt    (Charles Wilson) (perhaps better if only urxvt did this as we don't
want to encourage people to use rxvt)
xterm   (Yaakov S)
idle    (Jason Tishler)

Links should be made using scripts something like the following:

postinstall.sh:

/usr/bin/mkdir -p "$(/usr/bin/cygpath $CYGWINFORALL -P)/Cygwin-X"
/usr/bin/mkshortcut $CYGWINFORALL -P -i /path/to/foo.exe-or-.ico -n
"Cygwin-X/AppName" -a "/usr/bin/bash.exe -l -c '/usr/bin/foo.exe -display
:0.0'" /usr/bin/run.exe

preremove.sh:

rm -f "$(cygpath $CYGWINFORALL -P)/Cygwin-X/AppName.lnk"
rmdir --ignore-fail-on-non-empty "$(cygpath $CYGWINFORALL -P)/Cygwin-X"

3) Look forward to a glorious future where cygport can generate those link
installation scripts automatically from *.desktop files :D

[1] http://cygwin.com/ml/cygwin-xfree/2013-07/msg00019.html


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]