OVM/Tools

Tools
Tools:
 * GCC / Make
 * Python
 * Mercurial

The trick being to not upgrade any existing packages that came with the base system (otherwise it compromises the validity of the base system).

Installing Tools on OVM 3.3.x
Install Oracle (oel6_5) Public Yum repository: cd /etc/yum.repos.d wget http://public-yum.oracle.com/public-yum-ol6.repo

Edit public-yum-ol6.repo (using 'vi'):
 * disable [ol6_latest], [ol6_UEK_latest]
 * enable [ol5_u5_base]
 * enable [ol5_u4_base] (possibly ol5_u5_base, and some stuff in ol6_latest but slow)

Or just use: [ol6_u5_base] name=Oracle Linux $releasever Update 5 installation media copy ($basearch) baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/5/base/$basearch/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle gpgcheck=1 enabled=1

Warning: the Oracle Public Yum repo is slow!

Exclude kernel from yum updates: echo "exclude=kernel*" >> /etc/yum.conf

Manually install Kernel headers: rpm -Uvh http://public-yum.oracle.com/repo/OracleLinux/OL6/4/base/x86_64/getPackage/kernel-devel-2.6.32-358.el6.x86_64.rpm rpm -Uvh http://public-yum.oracle.com/repo/OracleLinux/OL6/4/base/x86_64/getPackage/kernel-headers-2.6.32-358.el6.x86_64.rpm

Install Yum key??? cp /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle.original wget http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6 -O /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle

Install dependencies: yum install zlib-devel.x86_64 bzip2-devel.x86_64 bc # hg: zlib-devel bzip2-devel

Manual hack to get GCC dependencies: (PITA!) wget http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/getPackage/glibc-headers-2.12-1.107.el6_4.4.x86_64.rpm wget http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/getPackage/glibc-devel-2.12-1.107.el6_4.4.x86_64.rpm rpm -Uvh glibc-headers-2.12-1.107.el6_4.4.x86_64.rpm glibc-devel-2.12-1.107.el6_4.4.x86_64.rpm yum install gcc

Manual hack to get OpenSSL dependencies: (PITA!) yum install keyutils-libs-devel libselinux-devel # I forgot to check if these were still required

wget http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/getPackage/libcom_err-devel-1.41.12-14.el6_4.2.x86_64.rpm rpm -Uvh libcom_err-devel-1.41.12-14.el6_4.2.x86_64.rpm

wget http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/getPackage/krb5-devel-1.10.3-10.el6_4.4.x86_64.rpm rpm -Uvh krb5-devel-1.10.3-10.el6_4.4.x86_64.rpm

wget http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/getPackage/openssl-devel-1.0.1e-16.el6_5.x86_64.rpm rpm -Uvh openssl-devel-1.0.1e-16.el6_5.x86_64.rpm
 * 1) test later, after python install, with "import ssl"

Installing Tools on OVM 3.2.x
Install Oracle (oel5_5) Public Yum repository: cd /etc/yum.repos.d wget http://public-yum.oracle.com/public-yum-el5.repo

Edit public-yum-el5.repo (using 'vi'):
 * disable [el5_latest]
 * enable [el5_u5_base], [ol5_u5_base]

Or just use: [el5_u5_base] name=Enterprise Linux $releasever Update 5 installation media copy ($basearch) baseurl=http://public-yum.oracle.com/repo/EnterpriseLinux/EL5/5/base/$basearch/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle gpgcheck=1 enabled=1

ol5_u5 is now broken, so don't use this! [ol5_u5_base] name=Oracle Linux $releasever Update 5 installation media copy ($basearch) baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL5/5/base/x86_64/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle gpgcheck=1 enabled=0

Warning: the Oracle Public Yum repo is slow! A few times the repo has appeared to be online, but when attempting to download files you get a "File not found."" error.

Exclude kernel from yum updates: echo "exclude=kernel*" >> /etc/yum.conf

Manually install Kernel headers: rpm -Uvh http://public-yum.oracle.com/repo/OracleLinux/OL5/6/base/x86_64/getPackage/kernel-devel-2.6.18-238.el5.x86_64.rpm rpm -Uvh http://public-yum.oracle.com/repo/OracleLinux/OL5/6/base/x86_64/getPackage/kernel-headers-2.6.18-238.el5.x86_64.rpm rpm -Uvh kernel-devel-2.6.18-238.el5.x86_64.rpm kernel-headers-2.6.18-238.el5.x86_64.rpm

Install dependencies: yum install make zlib-devel.x86_64 bzip2-devel.x86_64 bc # hg: zlib-devel bzip2-devel

Manual hack to get GCC dependencies: (PITA!) wget http://vault.centos.org/5.5/updates/x86_64/RPMS/glibc-headers-2.5-49.el5_5.4.x86_64.rpm wget http://vault.centos.org/5.5/updates/x86_64/RPMS/glibc-devel-2.5-49.el5_5.4.x86_64.rpm rpm -Uvh glibc-headers-2.5-49.el5_5.4.x86_64.rpm glibc-devel-2.5-49.el5_5.4.x86_64.rpm yum install gcc

Manual hack to get OpenSSL dependencies: (PITA!) - OVM 3.2.7 yum install keyutils-libs-devel libselinux-devel

wget http://public-yum.oracle.com/repo/OracleLinux/OL5/latest/x86_64/getPackage/e2fsprogs-devel-1.39-33.el5.x86_64.rpm rpm -Uvh e2fsprogs-devel-1.39-33.el5.x86_64.rpm

wget http://vault.centos.org/5.5/updates/x86_64/RPMS/krb5-devel-1.6.1-36.el5_5.5.x86_64.rpm rpm -Uvh krb5-devel-1.6.1-36.el5_5.5.x86_64.rpm

wget ftp://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/55/x86_64/SL/openssl-devel-0.9.8e-12.el5_4.6.x86_64.rpm rpm -Uvh openssl-devel-0.9.8e-12.el5_4.6.x86_64.rpm
 * 1) test later, after python install, with "import ssl"

Manual hack to get OpenSSL dependencies: (PITA!) - OVM 3.2.6 yum install keyutils-libs-devel libselinux-devel

wget ftp://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/55/x86_64/SL/e2fsprogs-devel-1.39-23.el5.x86_64.rpm rpm -Uvh e2fsprogs-devel-1.39-23.el5.x86_64.rpm

wget http://vault.centos.org/5.5/updates/x86_64/RPMS/krb5-devel-1.6.1-36.el5_5.5.x86_64.rpm rpm -Uvh krb5-devel-1.6.1-36.el5_5.5.x86_64.rpm

wget ftp://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/55/x86_64/SL/openssl-devel-0.9.8e-12.el5_4.6.x86_64.rpm rpm -Uvh openssl-devel-0.9.8e-12.el5_4.6.x86_64.rpm
 * 1) test later, after python install, with "import ssl"

Install Python

 * 1) PYTHON
 * 1) PYTHON

mkdir -p ~/.src ; cd ~/.src wget --no-check-certificate http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz tar -zvxf Python-2.7.6.tgz cd Python-2.7.6 ./configure --prefix=/opt/python-2.7.6 && make && make install

export PATH=/opt/python-2.7.6/bin:$PATH echo -e "\n\nexport PATH=/opt/python-2.7.6/bin:\$PATH\n" >> ~/.bash_profile

Install Mercurial

 * 1) MERCURIAL
 * 1) MERCURIAL

MVER=3.0 mkdir -p ~/.src ; cd ~/.src wget --no-check-certificate http://mercurial.selenic.com/release/mercurial-$MVER.tar.gz tar -zvxf mercurial-$MVER.tar.gz cd mercurial-$MVER python setup.py install

Setup mercurial config cat > ~/.hgrc << "EOF" [ui] username = My User editor = vim
 * 1) ssh = ssh -l [USER]

[extensions] color = purge = transplant = rebase = mq = graphlog = pager =

[pager] pager = LESS='FRX' less EOF