From 022eef556ba5c3a3ef8e72e43131a0ff9876f062 Mon Sep 17 00:00:00 2001 From: Hans Fangohr <hans.fangohr@mpsd.mpg.de> Date: Fri, 16 Jun 2023 13:07:33 +0200 Subject: [PATCH] rework instructions in preparation for the new package --- README.rst | 91 ++++++++++++++++++++++++++---------------------------- 1 file changed, 43 insertions(+), 48 deletions(-) diff --git a/README.rst b/README.rst index 7479d62..071a8b6 100644 --- a/README.rst +++ b/README.rst @@ -1,5 +1,5 @@ -MPSD Software installation -========================== +MPSD Software manager +===================== .. contents:: @@ -20,28 +20,44 @@ Quick start To install, for example, the ``foss2022a-serial`` toolchain: -1. Clone this repository to the place where you want to install the software environment:: +1. Install this mpsd-software-manager Python package. The recommended way is to + use ``pipx`` to that this tool is available independent from the use of any + other python environments:: - git clone https://gitlab.gwdg.de/mpsd-cs/mpsd-software.git + pipx install git+https://gitlab.gwdg.de/mpsd-cs/mpsd-software-manager -2. ``cd mpsd-software`` -3. Execute the script to install the toolchain:: +2. Navigate to the location in your file system where you would like to store + the compiled software. (Once compiled, the location cannot be changed.) For + example:: - $> ./mpsd-software.py install dev-23a foss2022a-serial + cd /home/user/mpsd-software + + +3. Initiate the installation at this location using:: + + mpsd-software init . + + (This creates a hidden file ``.mpsd-software-root`` to tag the location for + as the root of the installation. All compiled files, logs etc are written in + or below this subdirectory.) + +4. From the same directory, run the command to install the ``foss2022a-serial`` toolchain: + + $> mpsd-software install dev-23a foss2022a-serial This will take some time (up to several hours depending on hardware). -4. To see the installation status, and the required ``module use`` command line +5. To see the installation status, and the required ``module use`` command line to activate the created modules, try the ``status`` command:: - $> ./mpsd-software status dev-23a + $> mpsd-software status dev-23a Installed toolchains (dev-23a): - cascadelake foss2022a-serial - [module use /home/fangohr/git/mpsd-software-environments/dev-23a/cascadelake/lmod/Core] + [module use /home/user/mpsd-software/dev-23a/cascadelake/lmod/Core] @@ -108,7 +124,7 @@ At the moment (June 2023), there is only one release (that is ``dev-23a``). For each MPSD software release, multiple toolchains and package sets are available:: - $> ./mpsd-software.py available dev-23a + $> mpsd-software available dev-23a MPSD software release dev-23a, AVAILABLE for installation are Toolchains: @@ -128,40 +144,19 @@ Prerequisites What needs to be installed for the installation to succeed? -1. ``mpsd-software.py`` installation requirements -+++++++++++++++++++++++++++++++++++++++++++++++++ - -- a recent version of Python3 (3.9 or newer) - -- an environment variable MPSD_MICROARCH to point to the correct microarchitecture of the computer -- or the ``archspec`` command in the search path that can determine this. - Install ``archspec`` as ``pip install archspec`` or ``pipx install archspec``. - If you are on a MPSD-maintained linux laptop, you can probably also use - `apt-get install archspec`. -- Optional: if the ``rich`` package is available, some output will be coloured. (Debian package: `python3-rich` or `pip install rich`) - -2. Spack requirements -+++++++++++++++++++++ - -To be able to compile the toolchains, one needs standard build tools (required by spack). On Debian/Ubuntu, this includes the packages: - -autoconf -automake -build-essential -ca-certificates -coreutils -curl -file -gfortran -git -libtool -lmod -openssh-server -python3 -rsync -unzip -wget - -Probably an ongoing topic of work. We know the following tools need to be available: - -- XXX TODO, add, requirements in container from CI might be best. Things like rsync, git, buildtools, Linux-headers, +The ``mpsd-software-manager`` python package. + +- This needs a recent Python (3.9 or later). +- Install via pip or pipx. + + Pipx commands are:: + + - to install: ``pipx install git+https://gitlab.gwdg.de/mpsd-cs/mpsd-software-manager`` + - to update: ``pipx upgrade mpsd-software-manager`` + - to uninstall: ``pipx uninstall mpsd-software-manager`` + +- Requirements to be able to run `spack <spack.readthedocs.io>`__ + + - Please check https://spack.readthedocs.io/en/latest/getting_started.html#system-prerequisites + + -- GitLab