[GRASS-dev] Handling of Python scripts on MS Windows

Glynn Clements glynn at gclements.plus.com
Tue Feb 11 08:28:31 PST 2014


Benjamin Ducke wrote:

> How would users choose mapsets or create new ones in this
> scenario?

With g.mapset.

> > Things get marginally more complex if you either need multiple
> > versions installed concurrently, or multiple concurrent sessions.
> > 
> > The former is seldom supported, particularly for packages consisting
> > of many distinct utilities (having python2 and python3 executables is
> > one thing, versioning dozens or hundreds of distinct commands is
> > another).
> 
> Well, at this point I have several versions of GRASS 6.4 and
> a version of GRASS 7 installed. I need them all, because they
> run as testing versions or to provide processing functionality
> for another "host" GIS.

Right; but in the first situation, you're a "developer", not a "user". 
As such, you have to expect to do some customisation which normal
users wouldn't.

> How would I switch between them?

Modify GISBASE and environment variables which depend upon it (PATH,
LD_LIBRARY_PATH, PYTHONPATH).

> > The latter is fairly trivial to implement on Unix (just use $$ in the
> > setting of GISRC), and could be implemented on Windows (which doesn't
> > have the equivalent of ~/.profile etc) with fairly minor changes to
> > lib/gis/env.c.
> 
> But that would again require some user-friendly software, unless
> people are supposed to start editing configuration files, right?

That doesn't involve any user-visible software; it's part of the
installation (if you're installing an environment file as part of the
package, you install one which sets GISRC either per-user or
per-shell).

In the worst case, you can use the grass70 script to start a new
session which is disconnected from any existing session.

> Whatever the decision may be: Please make sure that it will always be
> possible to bundle a completely independent distribution of GRASS
> with 3rd party GIS. Otherwise, this project will no longer be able to
> benefit from the growing user base that projects such as QGIS have
> recently attracted.

A higher-level system which uses GRASS can configure its environment
however it wishes.

-- 
Glynn Clements <glynn at gclements.plus.com>


More information about the grass-dev mailing list