GRASS GIS Core Repository (mirror) - https://grass.osgeo.org
 
 
 
 
 
 
Go to file
renovate[bot] 2cb19a0428
CI(deps): Update docker/setup-qemu-action action to v3.2.0
2024-07-22 12:22:55 +00:00
.github CI(deps): Update docker/setup-qemu-action action to v3.2.0 2024-07-22 12:22:55 +00:00
.travis CI: Switch Travis to Ubuntu 22.04 and fix non-prototype in ODBC (#3002) 2024-06-19 11:30:17 +02:00
binder CI: Enable BASH_EXEC checks in super-linter (#3454) 2024-02-26 18:49:09 -05:00
db CI: Switch Travis to Ubuntu 22.04 and fix non-prototype in ODBC (#3002) 2024-06-19 11:30:17 +02:00
demolocation Fix trailing whitespace, EOF and file formatting (#2785) 2023-01-26 14:10:26 +01:00
display style: Fix math-constant (FURB152) (#4049) 2024-07-14 13:14:48 +00:00
doc doc: add Nix documentation (#3990) 2024-07-11 11:21:55 -04:00
docker CI(deps): Update docker/dockerfile Docker tag to v1.9 (#4037) 2024-07-12 07:12:19 -04:00
general CI(deps): Update clang-format to v17 (#3860) 2024-06-25 19:33:47 -04:00
gui style: Fix needless-bool (SIM103) (#4055) 2024-07-21 13:07:13 -04:00
imagery style: Fix unnecessary-assign (RET504) (#4043) 2024-07-13 08:05:42 -04:00
include CI(deps): Update clang-format to v17 (#3860) 2024-06-25 19:33:47 -04:00
lib style: Fix needless-bool (SIM103) (#4055) 2024-07-21 13:07:13 -04:00
locale Checks: fix flake8 E741 remainder (#3928) 2024-07-02 16:12:21 -04:00
macosx Update super-linter.yml to use super-linter/super-linter (#3332) 2024-01-06 10:09:37 -05:00
man style: Fix needless-bool (SIM103) (#4055) 2024-07-21 13:07:13 -04:00
misc CI(deps): Update clang-format to v17 (#3860) 2024-06-25 19:33:47 -04:00
mswindows grass.app: Refactor PATH setup in grass init script and grass.script.setup (#3694) 2024-06-23 11:52:05 -04:00
ps ps.map: Fix uninitialized variable issues in r_colortable.c (#4004) 2024-07-08 20:02:48 -04:00
python style: Fix needless-bool (SIM103) (#4055) 2024-07-21 13:07:13 -04:00
raster r.category: add JSON support (#4018) 2024-07-19 17:53:19 -04:00
raster3d raster3d: Fix uninitialized variable issue in main.c (#4006) 2024-07-09 10:03:06 +03:00
rpm pkg: remove support for RHEL6 in grass.spec (#3117) 2023-08-09 23:26:20 +02:00
scripts style: Fix needless-bool (SIM103) (#4055) 2024-07-21 13:07:13 -04:00
singularity/debian docker: Use only native Python API, set only necessary variables (#3819) 2024-06-15 08:01:55 -04:00
temporal t.rast.neighbors: support all r.neighbors features and allow to append to existing STRDS as well as filtering by region (#3798) 2024-07-19 08:33:49 +02:00
testsuite Fix trailing whitespace, EOF and file formatting (#2785) 2023-01-26 14:10:26 +01:00
utils pytest: Collect all uncovered Python files in code coverage (#4077) 2024-07-21 13:05:14 -04:00
vector v.univar: add JSON support (#3784) 2024-07-03 15:05:29 -04:00
visualization Fix '-Wunused-parameter' compiler warnings (#2770) 2023-02-12 15:51:56 +01:00
.clang-format pre-commit: add yaml file lint (#2790) 2023-02-01 10:35:08 +01:00
.coveragerc pytest: Collect all uncovered Python files in code coverage (#4077) 2024-07-21 13:05:14 -04:00
.dockerignore docker: implement multi-stage-builds for ubuntu (#3170) 2023-10-13 14:14:41 +02:00
.flake8 Checks: fix flake8 E741 remainder (#3928) 2024-07-02 16:12:21 -04:00
.git-blame-ignore-revs git-blame-ignore: add commit of #2785 (#2789) 2023-01-26 14:17:29 +01:00
.gitignore pytest: Collect all uncovered Python files in code coverage (#4077) 2024-07-21 13:05:14 -04:00
.gunittest.cfg r.in.gdal: fix and enable test (#3339) 2024-01-08 11:16:32 -05:00
.markdownlint.yml CI(pre-commit): Enable markdownlint fixes (#3916) 2024-06-25 16:29:26 -04:00
.pre-commit-config.yaml CI(deps): Update ruff to v0.5.4 (#4078) 2024-07-20 18:49:32 -04:00
.pylintrc Python: Remove code for Python 2, remove six from requirements (#3079) 2023-08-08 11:13:54 -04:00
.travis.yml CI(super-linter): Specify linter rules path to pick up configuration files (#3915) 2024-06-25 04:24:40 -04:00
.yamllint checks: add configuration files for yamllint and markdownlint (#3677) 2024-04-30 08:42:40 +02:00
AUTHORS manual: update broken URLs (#3742) 2024-06-01 13:41:54 -04:00
CHANGES Minor cleanup of CHANGES file (#2327) 2022-04-26 20:45:25 +02:00
CITATION.cff docs: fix syntax of CITATION.cff file (#3123) 2023-08-15 22:13:34 +02:00
CITING GRASS GIS 8.0 changes (#1597) 2021-05-31 21:09:50 +02:00
CODE_OF_CONDUCT.md contributing: add code of conduct (#3663) 2024-04-25 22:51:01 +02:00
CONTRIBUTING.md contributing: move GitHub workflow docs into separate file (#3875) 2024-06-20 07:32:04 +02:00
COPYING manual: update broken URLs (#3742) 2024-06-01 13:41:54 -04:00
Dockerfile CI(deps): Update docker/dockerfile Docker tag to v1.9 (#4037) 2024-07-12 07:12:19 -04:00
GPL.TXT welcome to GRASS 7.0.svn 2008-04-27 12:33:26 +00:00
INSTALL.md Tidy up INSTALL and REQUIREMENTS files (#3499) 2024-03-23 20:59:45 +02:00
Makefile CI: Initial code coverage configuration with Codecov (#3905) 2024-06-27 18:48:04 -04:00
NEWS Minor cleanup of CHANGES file (#2327) 2022-04-26 20:45:25 +02:00
README.md README: fix badges and links (#3706) 2024-05-14 17:50:17 +00:00
REQUIREMENTS.md deps: Set min Python version to 3.8 (#3719) 2024-05-19 12:49:49 -04:00
SECURITY.md docs: fix security.md linting errors (#3678) 2024-04-29 18:04:48 -04:00
TODO Fix trailing whitespace, EOF and file formatting (#2785) 2023-01-26 14:10:26 +01:00
Vagrantfile packaging: Update Vagrantfile to Ubuntu 24.04 (#3836) 2024-06-15 17:43:03 -04:00
aclocal.m4 configure: update to autoconf 2.71 (#2281) 2023-12-22 22:34:26 +01:00
binaryInstall.src g.mkfontcap: Replace -o with --overwrite; Add a renamed flag warning (#3649) 2024-04-23 08:01:32 -06:00
codecov.yml CI: Initial code coverage configuration with Codecov (#3905) 2024-06-27 18:48:04 -04:00
config.guess config.guess + config.sub: updated from http://git.savannah.gnu.org/cgit/config.git/plain/ (#3680) 2024-05-01 22:50:04 -04:00
config.sub config.guess + config.sub: updated from http://git.savannah.gnu.org/cgit/config.git/plain/ (#3680) 2024-05-01 22:50:04 -04:00
configure r.in.pdal: use NoFileWriter class for PDAL > 2.7.0 (fixes #3552) (#3567) 2024-04-07 18:45:50 +03:00
configure.ac r.in.pdal: use NoFileWriter class for PDAL > 2.7.0 (fixes #3552) (#3567) 2024-04-07 18:45:50 +03:00
contributors.csv Update contributors.csv: Yann Chemin (#3244) 2023-11-19 09:25:02 +01:00
contributors_extra.csv contributors_extra.csv: Nikos Alexandris added 2017-03-17 20:53:16 +00:00
flake.lock CI(deps): Lock file maintenance (#4057) 2024-07-15 05:13:18 -04:00
flake.nix nix: pin python version to 3.11 (#4017) 2024-07-10 12:29:39 -04:00
grass.pc.in pkg-config file: grass executable is non-versioned (#2227) 2022-03-02 10:36:20 +01:00
grasslib.dox doc: help_loc_structure -> help_project_structure (#3910) 2024-06-21 15:54:47 -04:00
install-sh install-sh: updated to newer version (source: https://svn.met.no/viewvc/fimex/branches/version0_28_x/install-sh, GPL) 2013-06-10 12:31:57 +00:00
package.nix nix: pin python version to 3.11 (#4017) 2024-07-10 12:29:39 -04:00
pyproject.toml style: Fix needless-bool (SIM103) (#4055) 2024-07-21 13:07:13 -04:00
renovate.json5 CI: Configure Renovate update groups (#4053) 2024-07-15 16:36:58 -04:00
translators.csv Fix trailing whitespace, EOF and file formatting (#2785) 2023-01-26 14:10:26 +01:00

README.md

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 get write access here

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

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

Thanks to all contributors ❤

GRASS contributors