No Description

Markus Neteler 0e0d05ea53 Dockerfile: only create versionless link when needed 3 years ago
.github 9dd0295640 gunittest: Exclude broken tests (#1587) 3 years ago
.travis 9342f4b6dd CI: Switch Travis to Ubuntu 20.04 (focal) (#1384) 3 years ago
db ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
demolocation 18a31bd253 demolocation: update (#1285) 3 years ago
display ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
doc 40f21ab548 Programmer's manual: update GRASS GIS arch drawing (#1610) 3 years ago
docker 4b6516982f Dockerfile_alpine: fix broken link creatio 3 years ago
general ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
gui 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
imagery 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
include ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
lib 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
locale dc409701a9 r.geomorphon: remove multires-specific code (#1570) 3 years ago
macosx 7d9a0da4fc manuals and docs: update broken URLS (#1003) 4 years ago
man 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
misc 7d9a0da4fc manuals and docs: update broken URLS (#1003) 4 years ago
mswindows ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
ps 7d9a0da4fc manuals and docs: update broken URLS (#1003) 4 years ago
python 9dd0295640 gunittest: Exclude broken tests (#1587) 3 years ago
raster 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
raster3d ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
rpm ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
scripts 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
singularity e5ba1f7af4 singularityfile: fix GRASS lib path detection 4 years ago
temporal 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
testsuite ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
utils ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
vector 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
visualization 69be6c5f9a manual: comment out SVN Date tag (#200) 5 years ago
.dockerignore 2efac9859e Stop ignoring .git folder for docker builds (#1182) 3 years ago
.flake8 2312a5da4b init: Solve most of Flake8 issues in grass.py (#1536) 3 years ago
.gitignore 2f51e569b8 Git: Un-ignore locale directory (#1512) 3 years ago
.gunittest.cfg 9dd0295640 gunittest: Exclude broken tests (#1587) 3 years ago
.travis.yml 9342f4b6dd CI: Switch Travis to Ubuntu 20.04 (focal) (#1384) 3 years ago
AUTHORS 7d9a0da4fc manuals and docs: update broken URLS (#1003) 4 years ago
CHANGES ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
CITING ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
CONTRIBUTING.md 487723b6aa CONTRIBUTING.md: intro added for newcomers (#1566) 3 years ago
COPYING 7d9a0da4fc manuals and docs: update broken URLS (#1003) 4 years ago
Dockerfile 0e0d05ea53 Dockerfile: only create versionless link when needed 3 years ago
GPL.TXT db49180dd7 welcome to GRASS 7.0.svn 16 years ago
INSTALL ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
Makefile 61d6f8c7db Move headers from include to include/grass (#1350) 3 years ago
NEWS ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
README.md ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
REQUIREMENTS.html ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
SUBMITTING 1aa0ba0526 Add CONTRIBUTING file with a standard contributor Git how-to (#237) 5 years ago
TODO ae610b8dae GRASS GIS 8.0 changes (#1597) 3 years ago
Vagrantfile de0fbc0051 Rename tools directory to utils (#1348) 3 years ago
aclocal.m4 b5eefc2b13 macos: use @rpath as dynamic linker (#981) 4 years ago
binaryInstall.src a1fbc923c8 binaryInstall.src: nad2bin no longer used (completes https://trac.osgeo.org/grass/changeset/74179) 5 years ago
config.guess d57f40906f configure, config.sub, config.guess: updated (#1585) 3 years ago
config.sub d57f40906f configure, config.sub, config.guess: updated (#1585) 3 years ago
configure d57f40906f configure, config.sub, config.guess: updated (#1585) 3 years ago
configure.in 61d6f8c7db Move headers from include to include/grass (#1350) 3 years ago
contributors.csv 3730335903 Nicklas Larsson added 3 years ago
contributors_extra.csv 4036ac5617 contributors_extra.csv: Nikos Alexandris added 7 years ago
grass.pc.in 1a5d566ba7 pkg-config file: update 10 years ago
grasslib.dox 40f21ab548 Programmer's manual: update GRASS GIS arch drawing (#1610) 3 years ago
install-sh 70b31d97e9 install-sh: updated to newer version (source: https://svn.met.no/viewvc/fimex/branches/version0_28_x/install-sh, GPL) 11 years ago
pyproject.toml 0111b11e8b Update to Black 21.5b1 (#1605) 3 years ago
translators.csv abcada66b9 Updated translators.csv file (#1249) 3 years ago

README.md

Build Status Python code quality check General linting CI OSGeo4W Centos

GRASS GIS Repository

Description

GRASS GIS (https://grass.osgeo.org/) is a Geographic Information System used for geospatial data management and analysis, image processing, graphics/map production, spatial modeling, and visualization.

How to get write access here

In general: you don't really need write access as you can simply open a pull request to contribute to GRASS GIS. See CONTRIBUTING file for more details.

Want to become a core developer? See Procedure for gaining Git write access

How to compile GRASS

See INSTALL file.

Yes, you should really read INSTALL. In addition, there are detailed compile instructions in the Wiki.

Docker

Build a docker image using the downloaded source code (run this in the directory containing the source code):

docker build -t grassgis80 .

A test run (assuming you have the existing GRASS GIS test location; it can be downloaded from here)

# case 1: launching in the grassdata directory in which the location is stored:
docker run -it --rm --user=$(id -u):$(id -g) --volume $(pwd):/data \
    --env HOME=/data/ grassgis80 grass --text nc_basic_spm_grass7/user1 \
        --exec g.region -p

# case 2: launching anywhere
docker run -it --rm --user=$(id -u):$(id -g) \
    --volume /your/test/grassdata/:/data --env HOME=/data/ grassgis80 \
        grass /data/nc_basic_spm_grass7/PERMANENT --exec g.region -p

Note that the first grassgis80 is the name of the image while the second grass is the name of the executable.

To run the tests (again assuming local location):

docker run -it --rm --user=$(id -u):$(id -g) \
    --volume /your/test/grassdata/:/data --env HOME=/data/ -w /code/grass \
        grassgis80 grass /data/nc_basic_spm_grass7/PERMANENT --exec \
            python -m grass.gunittest.main \
                --location nc_basic_spm_grass7 --location-type nc

Note: If you compiled locally before building the Docker image, you may encounter problems as the local configuration and locally compiled file are copied to and used in the Docker image. To make sure you don't have this issue, clean all the compiled files from the source code:

make distclean

How to generate the 'Programmer's Manual'

You can generate locally the GRASS GIS Programmer's Manual.

This needs doxygen (http://www.doxygen.org) and optionally Graphviz dot (http://www.research.att.com/sw/tools/graphviz/).

To build the GRASS programmer's documentation, run

make htmldocs

or to generate documentation as single html file (recommended for simple reading)

make htmldocs-single

here. This takes quite some time. The result is in lib/html/index.html which refers to further document repositories in

lib/vector/html/index.html
lib/db/html/index.html
lib/gis/html/index.html

The master file is: ./grasslib.dox where all sub-documents have to be linked into.

To generate the documents in PDF format, run

make pdfdocs