Re: Wok and packages status

[ Thread Index | Date Index | More lists.tuxfamily.org/slitaz Archives ]


On Thu, 17 Feb 2011 19:19:19 +0100
Christophe Lincoln <pankso@xxxxxxxxxx> wrote:

> Ok so let me know wat I need to do on tank to use new tools in the
> defaut cooking chroot to rebuill all packages. I will set-up the
> enviroment (shoul be Simple... Light...) and then the build bot will do
> the job when dev commit in the wok and I dont need to give root access
> to anyone on Tank... even Pascal (he is also a dangerous guy :-)

Here's how I will do (I will recook whole repository from last
experimental packages to minimize risks of failure).

Here's how I may do if I had to setup this server.
Maybe I can put the code into tazchroot to make it automatic.
This code can be used by everybody to setup an experimental cooking
environnment from a non-experimental SliTaz system... a possibility I
didn't think about :D

First, you need to setup an experimental sandbox to have last tools
available (tazwok/libtaz/tazpkg).

# Temporaly use experimental to install the sandbox.
sandbox=/home/sandbox
tazpkg setup-mirror http://mirror.slitaz.org/packages/experimental/
tazpkg get-install busybox --root=$sanbox
tazpkg get-install libtaz --root=$sandbox
tazpkg get-install tazpkg --root=$sandbox
tazpkg get-install tazwok --root=$sandbox
cp -a /etc/resolv.conf  $sandbox/resolv.conf

# Switch back to stable repository.
tazpkg setup-mirror http://mirror.slitaz.org/packages/stable/

# You probably want to mount /home/slitaz into the chroot
mkdir $sandbox/home/slitaz
mount /home/slitaz $sandbox/home/slitaz

# Enter in the sandbox.
chroot $sandbox

# All the following commands should be run into the sandbox.

# By default MAKEFLAGS is set to number of cpu +1, but on a server providing other services than cook it's better to use number of cpu. (important)
sed '/^MAKEFLAGS/ s/+1//' -i /etc/slitaz/tazwok.conf

# Create the cooking chroot and cook the last version of tools (important)
tazpkg recharge
tazwok chroot
	# Now you are in the cooking environnment (order is important)
	tazwok cook libtaz
	tazwok cook tazwok-experimental
	tazwok cook tazpkg
	tazwok cook tazchroot
	exit

# Make tazpkg use the local repository.
tazpkg setup-mirror /home/slitaz/experimental/packages
tazpkg add-undigest
experimental-incoming /home/slitaz/experimental/packages-incoming

# The packages you just cook are into packages-incoming,
# we need them so temporaly prioritize packages-incoming repository.
echo experimental-incoming > /var/lib/tazpkg/priority

# Install the new version of tools. (libtaz first is important)
tazpkg get-install libtaz
tazpkg get-install tazpkg
tazpkg get-install tazwok-experimental
tazpkg get-install tazchroot

# Remove the priority on experimental-incoming
rm /var/lib/tazpkg/priority

# The sandbox is setted up :)

After:
Do you have the backup of experimental repository ?
Do you want to recook all from scratch immediatly or no ?
I ask this because it's possible to re-create the experimental
repository using only the package (it contains all the necessary stuff
to regenerate lists and determine precisely from which changes has been
commited since last cook etc...)

Also, do you have the backup of .tar.lzma sources ? (usefull in all
cases - some WGET_URL doesn't works anymore)
Do you have the backup of cook logs generated during previous
cooks ? (usefull if you get back the previous repository)

-- 
GoKhlaYeh <gokhlayeh@xxxxxxxxxx>


---
SliTaz GNU/Linux Mailing list - http://www.slitaz.org/


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/