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