diff --git a/README b/README new file mode 100644 index 0000000..c746149 --- /dev/null +++ b/README @@ -0,0 +1,84 @@ +Software Installation Tool (SIT) +-------------------------------- + +SIT is a simple software installation tool inspired by gentoo's emerge script. +It eases the installation process and helps to prevent errors during the +installation as well as helps with the documentation as it generates a lot of +log files and installes them together with the softwre package. + +In its current version it can only install a package using a package class file +including the necessary information + +The package tree resides per default in the directory $SITi_PATH/packages. For +convenience it should look like following + $SIT_PATH/packages/CATEGORY/PACKAGE-VERSION + + +The global configuration file of SIT is $SIT_PATH/etc/sit.conf +It includes a variety of default values: +PREFIX_BASE +SRC_POOL +SCLASS_DIR + +The installation process is currently controled with the following environment +variables: +* COMPILER +* COMPILER_VERSION +* MPI +* MPI_VERSION + + +To install a package simply call sit with the necessary information provided by +these variables: +> [VARIABLE_DECLARATIONS] sit PACKAGE + +e.g. + +> PREFIX_BASE=/opt COMPILER=gnu COMPILER_VERSION=4.5 sit mpi/openmpi-1.5.1 + + + +PACKAGE FILES: + +Package files should include all the necessary information for the installation +proces. The syntax of the package class files is inspired by gentoo's ebuild files. + + +A sit package file must contain at least the following variables + +A archive (source tarball) +P package (name of extracted source folder) +URL +INSTALLER + + +Optional varialbes to control the build process are + +CONFIGURE_OPTS options which will be passed to configure +MAKEOPTS options which will be passed to make (see sit.conf) + + +During the installation the following directory paths are used +WORKDIR working directory to which e.g. sources will be unpacked +SRCDIR source directory +BUILDDIR directory in which the package will be build ($SRCDIR/build) +LOGDIR directory storing the temporary logfiles ($WORKDIR) + + +For fine tuning of the installation process the user can overwrite the following +functions. If not other mentioned they are executed in $BUILDDIR + +src_unpack extract $SRC_POOL/${A} into $WORKDIR +src_configure configure +src_build make +src_pretest +src_install make install +src_posttest + + +The following helper functions can be used + +unpack recognize and extract a compressed tar file + + +