summaryrefslogtreecommitdiff
path: root/examples/build_gold_image/build_centos6.sh
blob: 8a64f5750d654d87c941de4171a409d907999051 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#!/bin/sh

# Centos 6

export PATH=/bin:/sbin:/usr/bin:/usr/sbin:${PATH}

ARCH=$1

case $ARCH in
	i686)
		PACKAGE_ARCH=i386
		ARCH_SWITCH=linux32
		;;
		
	x86_64)
		PACKAGE_ARCH=x86_64
		ARCH_SWITCH=
		;;
		
	default)
		echo "Unsupported architecture '$ARCH'"
		exit 1
esac

CHROOT_DIR=rhel6-${ARCH}

rm -rf $CHROOT_DIR

mkdir $CHROOT_DIR

mkdir -p $CHROOT_DIR/var/lib/rpm

rpm -v --rebuilddb --root=`pwd`/$CHROOT_DIR

wget http://mirror.centos.org/centos/6.6/os/${PACKAGE_ARCH}/Packages/centos-release-6-6.el6.centos.12.2.${ARCH}.rpm

rpm -v -i --root=`pwd`/$CHROOT_DIR --nodeps centos-release-6-6.el6.centos.12.2.${ARCH}.rpm 

rm -f centos-release-6-6.el6.centos.12.2.${ARCH}.rpm

wget http://mirror.centos.org/centos/6.6/os/${PACKAGE_ARCH}/RPM-GPG-KEY-CentOS-6

rpm -v --root=`pwd`/$CHROOT_DIR --import RPM-GPG-KEY-CentOS-6 

rm RPM-GPG-KEY-CentOS-6

${ARCH_SWITCH} yum --installroot=`pwd`/$CHROOT_DIR install -y yum
${ARCH_SWITCH} yum --installroot=`pwd`/$CHROOT_DIR install -y coreutils procps net-tools wget

# rebuild the RPM database with the rpm inside the chroot
${ARCH_SWITCH} chroot $CHROOT_DIR /bin/rpm -v --rebuilddb

mknod -m 666 $CHROOT_DIR/dev/null c 1 3
mknod -m 666 $CHROOT_DIR/dev/zero c 1 5
mknod -m 666 $CHROOT_DIR/dev/random c 1 8
mknod -m 666 $CHROOT_DIR/dev/urandom c 1 9
mknod -m 666 $CHROOT_DIR/dev/tty c 5 0

cp /etc/resolv.conf $CHROOT_DIR/etc/

cp $CHROOT_DIR/etc/skel/.bashrc $CHROOT_DIR/root
cp $CHROOT_DIR/etc/skel/.bash_profile $CHROOT_DIR/root
cp $CHROOT_DIR/etc/skel/.bash_logout $CHROOT_DIR/root

cat >> $CHROOT_DIR/root/.bash_profile <<EOF
export PATH=\$PATH:/usr/sbin:/usr/bin:/sbin:/bin
EOF

# development stuff

wget http://mirror.switch.ch/ftp/mirror/epel/6/${PACKAGE_ARCH}/epel-release-6-8.noarch.rpm

rpm -v -i --root=`pwd`/$CHROOT_DIR --nodeps epel-release-6-8.noarch.rpm 

rm epel-release-6-8.noarch.rpm

wget http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6

rpm -v --root=`pwd`/$CHROOT_DIR --import RPM-GPG-KEY-EPEL-6

rm -f RPM-GPG-KEY-EPEL-6

${ARCH_SWITCH} yum --installroot=`pwd`/$CHROOT_DIR install -y make gcc gcc-c++ rpm-build tar ccache distcc