[GRASS-dev] hardcoded 'xterm': wrapper?
Markus Neteler
neteler at itc.it
Sun Aug 27 15:39:03 EDT 2006
On Sun, Aug 27, 2006 at 07:58:22PM +0100, Glynn Clements wrote:
>
> Markus Neteler wrote:
>
> > > > Debian folks are unhappy with the hardcoded 'xterm' in
> > > > many places and suggest to replace it with a wrapper script so
> > > > that they have to change it in a single place later.
> > > >
> > > > They do:
> > > > http://svn.debian.org/wsvn/pkg-grass/packages/grass/branches/6.1/debian/patches/xterm-fix.dpatch?op=file&rev=0&sc=0
> > > >
> > > > Should we invent a 'grass-xterm' script (in $ETC?) for
> > > > that? What would be the needed content (thinking portability)?
> > >
> > > That's one option; another is an environment variable, GRASS_XTERM. If
> > > a wrapper script is used, it should check $GRASS_XTERM before falling
> > > back to x-terminal-emulator or xterm.
> >
> > Based on above diff I have prepared a wrapper script and a patch:
> >
> > http://mpa.itc.it/markus/xterm_wrapper/
> >
> > I am not sure if and where the 'exec's are needed (see patch)
>
> I suggest ending the script with:
>
> # run command
> exec $GRASS_XTERM "$@"
>
> The lines which are executed after xterm completes aren't meaningful
> unless you're running from a terminal, which won't be the case in any
> situation where the script is actually used (the only reason for
> spawning an xterm is if you don't already have a terminal, i.e. when
> running commands from d.m/gis.m).
>
> The wrapper should probably go into $GISBASE/etc, in which case the
> patch needs to use $GISBASE/etc/grass-xterm-wrapper (or
> $env(GISBASE)/etc/grass-xterm-wrapper for Tcl code) rather than just
> grass-xterm-wrapper.
>
> Also, Init.sh should probably set GRASS_XTERM to x-terminal-emulator
> if it is available. IIRC, x-terminal-emulator runs the user's
> preferred terminal emulator (xterm, kterm etc), so it should always be
> preferred over xterm if it's available.
Thanks for your comments. I have implemented all of them,
revised patch at
http://mpa.itc.it/markus/xterm_wrapper/
One problem remains:
etc/grass-run.sh seems to fail (now?). I tested:
gis.m
-> Raster
-> Map calculator
-> Formula: 1
Resulting output map: mytest
-> Run runs ok, but
Run in Xterm fails with
/home/neteler/soft/61grass_cvsexp/dist.i686-pc-linux-gnu/etc/grass-run.sh: line 30: : command not found
this line contains "$@". Seems to be tricky with a script calling
a program calling a script ...
Markus
More information about the grass-dev
mailing list