Commands

You may run gsm with commands and additional command-line parameters. This section describes the commands. Parameters are listed in section Command-Line Options. The general syntax is

./gsm [options] [command]

Read the command-line help for the full list of commands and command-line parameters

./gsm -h

check

Syntax: gsm check signature [module1 module2 … moduleN] args

Checks the GPG signature for packages

./gsm check signature seiscomp
INFO         : Verification successfully for file '/home/sysop/install/gsm/packages/seiscomp-6.7.9-rhel-9-x86_64.tar.gz'.

clean

Syntax: gsm clean args

Delete the sync folder

./gsm clean dbcache
CLEAN        : dbcache ... OK: disk space saved: (/home/sysop/install/gsm/sync, 6.5 MiB)

Delete all downloaded files

./gsm clean packages
CLEAN        : packages ... OK: disk space saved: (/home/sysop/install/gsm/packages, 13.8 GiB

Delete all backup files

./gsm clean backup
CLEAN        : backup ... OK: disk space saved: (/home/data/gsm/backup, 18.3 GiB

Delete dbcache + packages

./gsm clean all
CLEAN        : dbcache ... OK: disk space saved: (/home/sysop/install/gsm/sync, 6.5 MiB)
CLEAN        : packages ... OK: disk space saved: (/home/sysop/install/gsm/packages, 13.8 GiB

do-release-upgrade

See Workflow: Upgrade Release

do-release-downgrade

See Workflow: Downgrade Release

hold

Syntax: gsm hold [module1 module2 … moduleN]

Sometimes it is useful to keep the version of a package fixed. This can be done by setting the package to hold.

Add packages to hold

./gsm hold seiscomp
INFO         : Set package seiscomp on hold

Add files to hold

./gsm hold files ~/seiscomp/etc/global.cfg
INFO         : Set file /home/sysop/seiscomp/etc/global.cfg on hold

info

Syntax: gsm info [module1 module2 … moduleN] args

Show installed modules

./gsm info
OS: rhel/9 (x86_64)
Install path: /home/sysop/seiscomp
Package DB path: /home/sysop/install/gsm/local

Installed packages  Version  Valid until  Updates until
------------------  -------  -----------  -------------
gsm                 1.6.7    None         None
seiscomp            6.7.9    None         None

Show installed modules (only package names)

./gsm info short
OS: rhel/9 (x86_64)
Install path: /home/sysop/seiscomp
Package DB path: /home/sysop/install/gsm/local

Installed packages: seiscomp

Show detailed information about an installed module

./gsm info seiscomp
seiscomp
----------
Release          : 6
Version          : 6.7.9
Documentation    : https://docs.gempa.de/seiscomp/current
Architecture     : x86_64
Licenses         : None
Description      : SeisComP including data acquisition, processing, distribution and interactive analysis, version >=4.0.0 (public)
Filename         : seiscomp-6.7.9-rhel-9-x86_64.tar.gz
Download size    : 62.3 MiB
Installed size   : 196.8 MiB
SHA256           : 2d1ef42fe1ebe80e193f1216c8f2b311fdc8b610beaf12380dfc336d303f7833
Build date       : 2025-07-04 07:43:04 UTC
Package type     : app
Install date     : 2025-07-14 06:19:28 UTC

Show all available dependencies (only installed modules)

./gsm info deps seiscomp
Dependency name    Package name  Install script
-----------------  ------------  ----------------------------
base               seiscomp      install-base.sh
fdsnws             seiscomp      install-fdsnws.sh
gui                seiscomp      install-gui.sh
iloc               seiscomp      install-iloc.sh
mariadb-server     seiscomp      install-mariadb-server.sh
mysql-server       seiscomp      install-mysql-server.sh
postgresql-server  seiscomp      install-postgresql-server.sh



The scripts are located under: /home/sysop/seiscomp/share/deps/rhel/9

install

Syntax: gsm install [module1 module2 … moduleN] args

Install or update packages. To install a specific package run, e.g.,install gds=2019.287. If no module is provided, all installed modules will be updated.

./gsm install seiscomp
CHECKING [✓] : ACCESS (1/1)       : 100%|########################################| 1/1 [00:00<00:00,  5.57it/s]
GET      [✓] : seiscomp 6.7.9     : 100%|########################################| 62.3M/62.3M [00:02<00:00, 32.0MB/s]
CHECKSUM [✓] : seiscomp 6.7.9     : 100%|########################################| 62.3M/62.3M [00:00<00:00, 343MB/s]
CHECKING [✓] : CHANGELOG (1/1)    : 100%|########################################| 1/1 [00:00<00:00,  4.03it/s]
INSTALL      : seiscomp

Do you want to continue? [Y/n]: y
INSTALL  [✓] : seiscomp 6.7.9     : 100%|########################################| 2793/2793 [00:01<00:00, 2333.30it/s]

1/1 packages have been installed:

seiscomp (6.7.9) to /home/sysop/seiscomp: 2535 file(s), 196.8 MiB


Dependency name    Package name  Install script
-----------------  ------------  ----------------------------
base               seiscomp      install-base.sh
fdsnws             seiscomp      install-fdsnws.sh
gui                seiscomp      install-gui.sh
iloc               seiscomp      install-iloc.sh
mariadb-server     seiscomp      install-mariadb-server.sh
mysql-server       seiscomp      install-mysql-server.sh
postgresql-server  seiscomp      install-postgresql-server.sh



The scripts are located under: /home/sysop/seiscomp/share/deps/rhel/9

Install or update the licenses

./gsm install licenses scanloc
GET      [✓] : scanloc.crt                 : 100%|###############################| 15.8k/15.8k [00:00<00:00, 11.5MB/s]
GET      [✓] : scanloc-license.txt         : 100%|###############################| 10.4k/10.4k [00:00<00:00, 8.07MB/s]
INSTALL  [✓] : scanloc license             : 100%|###############################| 2/2 [00:00<00:00, 567.41it/s]

migrate

Update config schema

./gsm migrate
Running Migration step 0.1 --> 0.2

reinstall

Syntax: gsm reinstall [module1 module2 … moduleN] args

Reinstall packages. If no module name is provided, all installed modules will be reinstalled.

./gsm reinstall seiscomp
CHECKING [✓] : ACCESS (1/1)             : 100%|##################################| 1/1 [00:00<00:00,  5.45it/s]
CHECKSUM [✓] : seiscomp 6.7.9           : 100%|##################################| 62.3M/62.3M [00:00<00:00, 354MB/s]
CHECKING [✓] : CHANGELOG (1/1)          : 100%|##################################| 1/1 [00:00<00:00,  4.40it/s]
INSTALL      : seiscomp=6.7.9

Do you want to continue? [Y/n]: y
INSTALL  [✓] : seiscomp 6.7.9           : 100%|##################################| 2793/2793 [00:01<00:00, 2312.00it/s]

1/1 packages have been installed:

seiscomp (6.7.9) to /home/sysop/seiscomp: 2535 file(s), 196.8 MiB


Dependency name    Package name    Install script
-----------------  --------------  ----------------------------
base               seiscomp        install-base.sh
fdsnws             seiscomp        install-fdsnws.sh
gui                seiscomp        install-gui.sh
iloc               seiscomp        install-iloc.sh
mariadb-server     seiscomp        install-mariadb-server.sh
mysql-server       seiscomp        install-mysql-server.sh
postgresql-server  seiscomp        install-postgresql-server.sh



The scripts are located under: /home/sysop/seiscomp/share/deps/rhel/9

remove

Syntax: gsm remove [module1 module2 … moduleN] args

Uninstall packages

./gsm remove seiscomp
REMOVE       : seiscomp

Do you want to continue? [y/N]: y
REMOVE   [✓] : DONE (1/1)         : 100%|########################################| 1/1 [00:00<00:00,  7.98it/s]

1/1 packages have been removed:

seiscomp (6.7.9) from /home/sysop/seiscomp: 2559 file(s), 196.8 MiB

setup

Run initial setup (required when using for the first time)

See Initial setup

show

Syntax: gsm show [module1 module2 … moduleN] args

Show all available packages

./gsm show
Available packages        Description
------------------------  -----------
bathymetry                Bathymetry files for TOAST (commercial)
caps-dataview             CAPS DataView web application featuring 24h plots, spectrograms, spectra, filtered or
                          unfiltered waveforms (commercial)
...
caps-plugins              Collection of plugins for CAPS (commercial)
caps-tools                Client tools for CAPS, e.g., capstool or rifftest (commercial)
ccloc                     Event detector based on cross-correlation with template waveforms (commercial)
deepc                     Deep Learning Phase Classifier Plugin, uses TorchScript models to classify picks (commercial)
dlbase                    base package for deep learning packages (public)
dlmodels-class            Deep Learning classification models (commercial)
dlmodels-pick             Deep Learning picker models (commercial)
dlpick                    Deep Learning Phase Picker, uses TorchScript models to pick on record streams (commercial)
...
seiscomp                  SeisComP including data acquisition, processing, distribution and interactive analysis,
                          version >=4.0.0 (public)
...

Show all packages available in your own repository (not available in offline mode)

./gsm show own
Package URL: https://data.gempa.de/packages/xxx

Available packages        Description
------------------------  -----------
dlbase                    base package for deep learning packages (public)
elevation                 GEBCO_2024 global coverage grids (public)
gsm                       gempa Software Management tool (public)
scrtdd                    A module for real-time double difference relocation of events (public)
sed-eew                   Earthquake early warning modules by SED (public)
seiscomp                  SeisComP including data acquisition, processing, distribution and interactive analysis,
                          version >=4.0.0 (public)
seiscomp-debug            SeisComP including data acquisition, processing, distribution and interactive analysis,
                          version >=4.0.0 (public)
seiscomp-tools            tools by gempa GmbH for public use

Show all public packages

./gsm show public
Package URL: https://data.gempa.de/packages/Public

Available packages        Description
------------------------  -----------
dlbase                    base package for deep learning packages (public)
elevation                 GEBCO_2024 global coverage grids (public)
gsm                       gempa Software Management tool (public)
scrtdd                    A module for real-time double difference relocation of events (public)
sed-eew                   Earthquake early warning modules by SED (public)
seiscomp                  SeisComP including data acquisition, processing, distribution and interactive analysis, version >=4.0.0 (public)
seiscomp-debug            SeisComP including data acquisition, processing, distribution and interactive analysis, version >=4.0.0 (public)
seiscomp-tools            tools by gempa GmbH for public use

Show available SeisComP releases

./gsm show releases
SeisComP releases:
  nightly
  6*
  5
  4

Show module changelog

./gsm show seiscomp changelog
# Change Log

All notable changes to SeisComP are documented here.

## 6.7.9

-   trunk
    -   Fix crash if a transfer function is created from a poles and zeros
        response with either empty poles or empty zeros caused by a certain
        compiler version and configuration.
...
...
Press any button to continue or (Ctrl+C) to cancel....

Show all packages on hold

./gsm show hold
Packages on hold:
  seiscomp (6.7.9)

Show possible updates

./gsm show updates
The following packages can be updated:

seiscomp (6.7.8) --> 6.7.9

switch-os

See Workflow: Switch OS

sync

Syntax: gsm sync args

Synchronize the package index from the source repo

./gsm sync
GET      [✓] : core.db                       : 100%|#############################| 1.81M/1.81M [00:00<00:00, 10.4MB/s]
INSTALL  [✓] : core.db                       : 100%|#############################| 9131/9131 [00:00<00:00, 11072.79it/s]

unhold

Syntax: gsm unhold [module1 module2 … moduleN]

Remove packages from hold

./gsm unhold seiscomp
INFO         : The package seiscomp was removed from hold

Remove files from hold

./gsm unhold files ~/seiscomp/etc/global.cfg
INFO         : The file /home/sysop/seiscomp/etc/global.cfg was removed from hold

update

Syntax: gsm update args

Synchronize the package index from the source repository and show possible updates

./gsm update
INSTALL  [✓] : core.db            : 100%|########################################| 9131/9131 [00:00<00:00, 11407.04it/s]

The following packages can be updated:

seiscomp (6.7.8) --> 6.7.9

Do you want to install packages which can be updated? [y/N]: y
CHECKING [✓] : ACCESS (1/1)       : 100%|########################################| 1/1 [00:00<00:00,  5.58it/s]
GET      [✓] : seiscomp 6.7.9     : 100%|########################################| 62.3M/62.3M [00:02<00:00, 32.0MB/s]
CHECKSUM [✓] : seiscomp 6.7.9     : 100%|########################################| 62.3M/62.3M [00:00<00:00, 379MB/s]
CHECKING [✓] : CHANGELOG (1/1)    : 100%|########################################| 1/1 [00:00<00:00,  4.86it/s]
INSTALL  [✓] : seiscomp 6.7.9     : 100%|########################################| 2793/2793 [00:01<00:00, 2336.24it/s]

1/1 packages have been installed:

seiscomp (6.7.9) to /home/sysop/seiscomp: 2535 file(s), 196.8 MiB

alias

Syntax: gsm alias command

Manages gsm aliases.

./gsm alias create toast
====================================================================
Package manager setup
====================================================================

This initializes the configuration of your package manager.
If you already made adjustments to the configuration file then your
current settings will be suggested as default values and may be
confirmed simply by pressing enter.
The configuration file is only written after the setup is completed
entirely.

SeisComP release [7]: 7
Operating system [rhel]: rhel
Operating system version [10]: 10
System architecture [x86_64]: x86_64
Do you want to use your private repository with gempa modules? Otherwise use the public SeisComP without gempa modules. [Y/n]: y
Username [xxx]: xxx
Password [xxx]: xxx
Repository URL [https://data.gempa.de/packages/xxx]: https://data.gempa.de/packages/xxx
Download dir [/home/sysop/install/gsm/packages]: /home/sysop/install/gsm/packages
Install path [/home/sysop/seiscomp-toast]: /home/sysop/seiscomp-toast
Data path [/home/data]: /home/data
Number of days before the license expires message is displayed:  [30]: 30
Do you want to validate the downloaded packages using gnupg?: [Y/n]: n
Do you want to backup the downloaded packages: [y/N]: n
Would you like to create a link to /home/sysop/.local/bin: [y/N]: y
The alias toast (gsm-toast) was created.
./gsm alias remove toast
Do you really want to remove the alias toast (gsm-toast)? [y/N]: y