Building LinuxMCE 0810

From LinuxMCE
Revision as of 12:19, 28 February 2009 by Marie.o (Talk | contribs) (Setting up a chroot environment)

Jump to: navigation, search

Setting up a chroot environment

These steps are optional as you can just build on a clean Kubuntu-8.10 install. But required if you want to build using an existing 0810 core without ruining it's run-time database.

Start with becoming root as the following steps will need to be done using super user privileges.

 sudo su -

Create the environment

apt-get install debootstrap
debootstrap --arch i386 intrepid /media/kubuntu-8.10/

Steps after each reboot

Mount required directories

mount --bind /dev /media/kubuntu-8.10/dev
mount none /media/kubuntu-8.10/proc -t proc
mount none /media/kubuntu-8.10/dev/pts -t devpts

Change-root into the environment

chroot /media/kubuntu-8.10

Start MySQL Server

/etc/init.d/mysql start

Verify apt's list of repositories

Make sure /etc/apt/sources.list (inside the chroot) contains something very similar to:

deb       http://us.archive.ubuntu.com/ubuntu/ intrepid  main restricted universe multiverse 
deb-src http://us.archive.ubuntu.com/ubuntu/ intrepid  main restricted universe
deb       http://us.archive.ubuntu.com/ubuntu/ intrepid-updates  main restricted universe multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ intrepid-updates  main restricted universe
deb       http://security.ubuntu.com/ubuntu intrepid-security  main restricted universe
deb-src http://security.ubuntu.com/ubuntu intrepid-security  main restricted universe

The following line is added to the sources.list during the prepare script and should not be added before. posde

deb       http://debian.slimdevices.com/ stable  main

Installing needed packages

Important! Perform these also after chrooting.

apt-get update
apt-get dist-upgrade
apt-get install aptitude openssh-client mysql-server

Reconfigure MySQL to not open a TCP-IP network port:

sed 's/^[^#]*bind-address[[:space:]]*=.*$/#&\nskip-networking/' -i /etc/mysql/my.cnf

Building from source

For a more in detail description of all the steps involved see Building LinuxMCE 0804

Currently the focus is on getting the following to work completely.

Getting started

You should only have to do this part once initially.

The following steps will require superuser privileges, and it is always wise to refresh the packages list beforehand.

sudo su -
apt-get update

Obtaining the build scripts

apt-get install subversion
svn co http://svn.linuxmce.org/svn/branches/LinuxMCE-0810/src/Ubuntu_Helpers_NoHardcode

Installing the build scripts

cd Ubuntu_Helpers_NoHardcode
./install.sh
cd /usr/local/lmce-build

Configuring the build scripts

cat >/etc/lmce-build/builder.custom.conf <<EOF

# Uncomment to avoid DVD build step[s]
do_not_build_sl_dvd="yes"
do_not_build_dl_dvd="yes"


# Uncomment to create fake win32 binaries
win32_create_fake="yes"

# Point to the development sqlCVS server for 0810
sqlcvs_host="schema.linuxmce.org"
EOF

Preparing for build

cd /usr/local/lmce-build

The preparation steps one at a time (recommended):

prepare-scripts/install-build-pkgs.sh
prepare-scripts/cd1-prepare.sh
prepare-scripts/cd2-prepare.sh
prepare-scripts/create-diskless-debootstrap.sh
prepare-scripts/import-external-files.sh
prepare-scripts/preseed-build-pkgs.sh

Or, you could do them all in one go with:

./prepare.sh

Building from source

cd /usr/local/lmce-build

All the build steps can be executed seperately (recommended at least the first time):

build-scripts/checkout-svn.sh
build-scripts/import-win32bins.sh
build-scripts/build-replacements.sh
build-scripts/build-makerelease.sh
build-scripts/import-databases.sh
build-scripts/build-maindebs.sh
build-scripts/get-closed-source-debs.sh
build-scripts/create-repo.sh
build-scripts/cd1-build.sh
build-scripts/cd2-build.sh

Or the following script will run them all:

./build.sh