Skip to content
/ grass Public
forked from OSGeo/grass

GRASS GIS - free and open source Geographic Information System (GIS)

License

Notifications You must be signed in to change notification settings

echoix/grass

Folders and files

NameName
Last commit message
Last commit date

Latest commit

4987a5a · Nov 25, 2024
Nov 25, 2024
Nov 2, 2024
Nov 2, 2024
Nov 23, 2024
Jan 26, 2023
Nov 23, 2024
Nov 23, 2024
Nov 12, 2024
Nov 5, 2024
Nov 23, 2024
Nov 23, 2024
Nov 23, 2024
Nov 23, 2024
Nov 21, 2024
Nov 19, 2024
Nov 23, 2024
Jun 25, 2024
Nov 19, 2024
Nov 12, 2024
Nov 23, 2024
Nov 23, 2024
Nov 23, 2024
Nov 2, 2024
Nov 12, 2024
Nov 2, 2024
Nov 23, 2024
Oct 15, 2024
Nov 23, 2024
Nov 23, 2024
Feb 12, 2023
Feb 1, 2023
Oct 14, 2024
Oct 13, 2023
Nov 20, 2024
Jan 26, 2023
Jul 21, 2024
Nov 2, 2024
Aug 26, 2024
Nov 23, 2024
Aug 8, 2023
Nov 21, 2024
Apr 30, 2024
Oct 25, 2024
Aug 15, 2023
May 31, 2021
Apr 25, 2024
Jun 20, 2024
Jun 1, 2024
Nov 8, 2024
Apr 27, 2008
Sep 19, 2024
Sep 17, 2024
Sep 17, 2024
Nov 14, 2024
Sep 17, 2024
Oct 25, 2024
Nov 2, 2024
Dec 22, 2023
Oct 25, 2024
Jun 27, 2024
Aug 22, 2024
Aug 22, 2024
Sep 19, 2024
Oct 25, 2024
Nov 2, 2024
Nov 2, 2024
Nov 19, 2024
Oct 17, 2024
Mar 2, 2022
Jun 21, 2024
Jun 10, 2013
Nov 2, 2024
Nov 23, 2024
Jul 15, 2024
Jan 26, 2023

Repository files navigation

GRASS GIS Repository

Build Status GCC C/C++ standards check Python code quality check General linting Ubuntu OSGeo4W OpenSSF Scorecard OpenSSF Best Practices Coverity DOI Join the chat at https://gitter.im/grassgis/community Contributor Covenant

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.

Launch this repository in Binder and experiment with GRASS's Python API in Jupyter Notebooks by clicking the button below:

Binder

Contributing

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.

How to compile GRASS

See the INSTALL.md file.

Yes, you should really read INSTALL.md. 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):

A. Docker image without graphical user interface - wxGUI.

docker build -t grassgis .

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/ grassgis 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/ grassgis \
        grass /data/nc_basic_spm_grass7/PERMANENT --exec g.region -p

Note that the first grassgis 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 \
        grassgis grass /data/nc_basic_spm_grass7/PERMANENT --exec \
            python -m grass.gunittest.main \
                --location nc_basic_spm_grass7 --location-type nc

B. Docker image with graphical user interface - wxGUI.

docker build -t grassgis -f docker/ubuntu_wxgui/Dockerfile .

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

xhost local:$(id -u)
docker run -it --privileged --user=$(id -u):$(id -g) --rm \
    --volume="$(pwd)/:/data" --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \
    --env HOME=/data/ --env DISPLAY=$DISPLAY \
    --device="/dev/dri/card0:/dev/dri/card0" \
    grassgis grass --gui

Note: If you compiled locally before building the Docker image, you may encounter problems as the local configuration and the locally compiled files 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

Further documents

Thanks to all contributors ❤

GRASS contributors

About

GRASS GIS - free and open source Geographic Information System (GIS)

Resources

License

Code of conduct

Security policy

Citation

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 51.1%
  • Python 30.8%
  • HTML 7.5%
  • C++ 6.0%
  • AGS Script 2.1%
  • Shell 1.0%
  • Other 1.5%