Installation and Setup¶
GSM requires some system dependencies to be met before setting up the configuration and installing the packages.
Workflow:
Install software dependencies
Download and install gsm
Set up gsm initially.
Software dependencies¶
The installation of the system dependencies depends on Linux Distribution as described here.
Ubuntu/Debian¶
Installation of Python3 and the package installer for Python venv and gnupg.
sudo apt install python3 python3-venv gnupg
RHEL¶
Installation of Python3 and the package installer for Python venv and gnupg.
su -
dnf install python3 gnupg2
exit
Package download and installation¶
Download the current gsm package and unpack it in the corresponding directory.
mkdir $HOME/install
cd $HOME/install
wget https://data.gempa.de/gsm/gempa-gsm.tar.gz
tar xvfz gempa-gsm.tar.gz
Initial setup¶
To setup the installation environment run
./gsm setup
Searching Python executable
Using /usr/bin/python3
Creating Python virtual environment: /home/sysop/install/gsm/venv
Installing Python dependencies
====================================================================
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 [6]: 6
Operating system [rhel]: rhel
Operating system version [9]: 9
System architecture [x86_64]: x86_64
Do you want to use your private repository with gempa modules? Otherwise use the public SeisComP packages: [Y/n]: y
Username []: xxx
Password []: xxx
Repository URL [https://data.gempa.de/packages/GEMPA]: https://data.gempa.de/packages/XXX
Download dir [/tmp/gsm/packages]: /home/sysop/install/gsm/packages
Install path [/home/sysop/seiscomp]: /home/sysop/seiscomp
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
This initial setup creates the file gsm.conf
where the
configuration is stored.
When done continue with standard workflow.
Change of setup¶
./gsm setup
The setup file exists already. Your current settings will be suggested as
default values and may be confirmed simply by pressing enter.
NOTE: You cannot change the SeisComP release or operating system by calling ./gsm setup.
* to change the SeisComP release, explicitly use ./gsm do-release-upgrade or ./gsm do-release-downgrade.
* to change the operating system, explicitly use ./gsm switch-os.
Do you want to continue? [y/N]: y
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/gempa-dev]: https://data.gempa.de/packages/XXX
Download dir [/tmp/gsm/packages]: /home/sysop/install/gsm/packages
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
Note
The release and operating system can not be changed with consecutive runs of setup. Instead, see: Workflow: Upgrade Release and Workflow: Switch OS.
Description of file structure¶
All files and directories are located in the gsm
directory.
gsm
├── bin
│ └── gsm.py
├── CHANGELOG
├── gsm
├── gsm.conf
├── libs
│ ├── cache
│ │ ├── custominstall.py
│ │ ├── __init__.py
│ │ ├── localcache.py
│ │ └── synccache.py
│ ├── config.py
│ ├── const.py
│ ├── gpgutils.py
│ ├── gsm.py
│ ├── helpcli.py
│ ├── __init__.py
│ ├── installdeps.py
│ ├── log.py
│ ├── makelinks.py
│ ├── news.py
│ ├── osupgrade.py
│ ├── osutils.py
│ ├── package.py
│ ├── pkgbuild.py
│ ├── releasedowngrade.py
│ ├── releaseupgrade.py
│ └── utils.py
├── local
│ └── gsm
│ ├── desc
│ └── files
├── migrations
│ ├── 0.0_to_0.1
│ └── 0.1_to_0.2
└── requirements.txt