product: Remove install.sh
The documented install process for Linux involves running install.sh, a small shell script that unpacks the binary package in a way that loosely matches the Linux Filesystem Hierarchy Standard. The FHS arrangement is not necessary for personal unpack-and-run installs, in practice it is likely only used by downstream packaging (i.e. Spack). To avoid the user confusion that the install.sh script tends to cause, this MR removes the install.sh script, replacing the install instructions with literally just "unpack and run:"
$ wget https://.../hpcviewer.tar.gz
$ mkdir -p /path/to/hpcviewer/install
$ tar -C /path/to/hpcviewer/install -xaf hpcviewer.tar.gz
$ /path/to/hpcviewer/install/hpcviewer.sh
$ # Profit!The shell wrapper is now named hpcviewer.sh. It has the same functionality as the wrapper previously installed by install.sh, but can now be used directly after unpacking instead of requiring installation first. This also means the Viewer can "correctly" be run directly out of the Maven build without installation or unpacking.
For convenience when manually writing modulefiles, a bin/hpcviewer executable (script) is included that redirects to hpcviewer.sh. This bin/ directory can be safely prepended to the PATH to expose the hpcviewer command, without any operations other than unpacking.
To Demonstrate
$ mvn clean package
$ edu.rice.cs.hpcviewer.product/target/products/edu.rice.cs.hpcviewer/linux/gtk/x86_64/hpcviewer.shBackwards Compatibility
- User workflows that rely on the install.shscript and FHS-like install layout will need to adapt to the new layout. This is expected to primarily affect package recipes (e.g. Spack) and few actual users. It is trivial to create an FHS-like layout by symlinking the wrapper script:
$ tar -C /install/prefix/.../lib/hpcviewer -xaf hpcviewer.tar.gz
$ ln -s ../lib/hpcviewer/hpcviewer.sh /install/prefix/.../bin/hpcviewer