Disclaimer: this is an unsupported software, which was written to ease some pain with userspace installation. It is designed solely for developer testing.
Userspace Install Utility
There is a problem on SL4, which is being investigated.
This package is a generic userspace installation tool, by wrapping RPM and APT commands. It was written in gLite UI installation in mind, but you can use it to install any software!
The first script is glite-userspace-install.sh which sets up a basic 'system' environment for the packages. It configures the APT and RPM wrapper and creates some convenient envinorment (see the generated README) for the users and the administrator of this 'system'.
There are two other scripts, which are 'installed' into this userspace 'system' area: glite-userspace-apt and glite-userspace-rpm. Both are self-configuring: if there is no suitable configuration found, then they do everything necessary to be able to run.
glite-userspace-apt first checks if there is an apt package installed. If not, then it installs one itself. Then it creates the necessary working directories and configures itself by copying an existing configuration or creating one from scratch. The point is to replace the default backend (RPM library) with the glite-userspace-rpm command.
glite-userspace-rpm assumes that there is an RPM command installed (I still have problems on non-RedHat style systems, like Debian) and configures that. Unfortunately the command line switches are not allways enough to redirect the DB location, so the '$HOME/.rpmmacros' file is created.
Then, if it is an RPM based system, then it copies the existing RPM database, so APT does not have to reinstall everything from scratch.
The goal of this wrapper to add appropriate --relocate options to the RPM command upon installation, upgrade or refresh. The directory prefixes for the relocation are extracted from the RPMs themselves, so one can theoretically install any RPM. Even non-relocatable ones!
gLite UI Install
Example on how to install a gLite User Interface in a random directory:
GLITE_ROOT=/tmp/glite-ui
rm -rf $GLITE_ROOT
mkdir -p $GLITE_ROOT/root
cd $GLITE_ROOT/root
wget 'http://glite.cvs.cern.ch:8180/cgi-bin/glite.cgi/*checkout*/org.glite.data/bin/glite-userspace-rpm?rev=HEAD&content-type=text/plain' -O glite-userspace-rpm
wget 'http://glite.cvs.cern.ch:8180/cgi-bin/glite.cgi/*checkout*/org.glite.data/bin/glite-userspace-apt?rev=HEAD&content-type=text/plain' -O glite-userspace-apt
wget 'http://glite.cvs.cern.ch:8180/cgi-bin/glite.cgi/*checkout*/org.glite.data/bin/glite-userspace-install.sh?rev=HEAD' -O glite-userspace-install.sh
chmod +x *
export GLITE_APT_REPOSITORY='rpm http://lxb2042.cern.ch/gLite/APT/R3.0-pps/ rhel30 externals Release3.0 updates'
./glite-userspace-install.sh $GLITE_ROOT
bash <<EOF
source $GLITE_ROOT/root/env_settings
glite-userspace-apt-get update
glite-userspace-apt-get install --yes glite-ui-config
EOF
An alternative to the last
bash
session is to enter 'root mode':
bash --rcfile $GLITE_ROOT/root/env_settings
root@glite:~# glite-userspace-apt-get update
root@glite:~# glite-userspace-apt-get install glite-data-hydra-cli
The steps above create a generic environment, which could be used to "install" any userspace friendly
package, not only the UI.
For APT source lines look at the
gLite APT
pages!
(or to
this
URL)
For the most recent version of the utilities you can also fetch the files directly from CVS:
Local APT Repository
If you create a new package and you want to test it, mixed with normal packages,
then the easiest way is to install the official packages (see above) and create
a new APT RPM repository for your fresh ones:
mkdir -p /tmp/localrepo/RPMS.mine
cp $WORKSPACE/org.glite.data.catalog-api-c/RPMS/glite-data-catalog-api-c-2.0.0-4.i386.rpm /tmp/localrepo/RPMS.mine/
genbasedir /tmp/localrepo/
echo 'rpm file:/tmp localrepo mine' >/tmp/obsoletes/glite-wn/etc/apt/sources.list.d/mine.list
glite-userspace-apt-get update
# see if it worked
glite-userspace-apt-cache policy glite-data-catalog-api-c
# install the new package
glite-userspace-apt-get install glite-data-catalog-api-c
For more information see
https://moin.conectiva.com.br/AptRpm/Repositories
--
AkosFrohner - 13 Apr 2006