Re: New tazpkg installs busybox-pam for tazpkg

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


I think i have some ideas for your new scripts.

1) We may need to do a fork of the wok repo. This so we can work on making the changes need for slitaz wok to work. Most of the changes will just have to sed out $PWD/_pkg for $WOK/$PACKAGE/install. (Other option is to make a soft link call _pkg to $WOK/$PACKAGE/install in $WOK/$PACKAGE/$PACKAGE-$VERSION. That would allow backwards compatable i think.)

2) Maybe best we make new chroot folder when this is used on tank server so it can be tested without breaking current tank. (Even though it is broking in some way. Just don't want to make it worse.)

Here is some code i think the backward code will work:

if [ -L $WOK/$PACKAGE/$PACKAGE-$VERSION/_pkg ]; then
    _pkg=$WOK/$PACKAGE/$PACKAGE$VERSION/_pkg
elif [ -d $WOK/$PACKAGE/install ]; then
    _pkg=$WOK/$PACKAGE/install
fi

At least this my idea on how the code should work. Doesn't mean its the best.

PS I only want you to update so you will not lose your current progress.. Like hard drive crash or something. Also you can also keep the older versions and added the newer ones to a new folder on your account. I maybe able to help you. If anything it will let me sleep easer know i have backup too.. Not just tank.

On Fri, Dec 10, 2010 at 5:34 PM, GoKhlaYeh <gokhlayeh@xxxxxxxxxx> wrote:
On Fri, 10 Dec 2010 16:41:27 +0000
Christopher Rogers <slaxemulator@xxxxxxxxx> wrote:

> Thanks for explaining it for me.
You're welcome

> PS Can you update your scripts in your people.slitaz.org account? I want to
> test the latest scripts of yours since they could be very different now.

For everybody : It's about tazwok-testing & libtaz. I work on it since few months. The goal is coding some build-bot wich handle auto-recook when libraries are updated, cook in minimal chroot and making rolling-release style possible. It's also about having the same cook tool on tank and on SliTaz systems, too make contributors works simpliest. This was discussed several times on mailing list and IRC.

Christopher: You're right, but actually there's some reasons which lead me to not update them now :
* I modified $DESTDIR/$src/_pkg behavior to make all receipts install in $WOK/$PACKAGE/install instead of $WOK/$PACKAGE/$PACKAGE-$VERSION/_pkg in order to be able to remove sources without removing installed folder. This need a lot of modifications to the wok to works and I'm working on a script which does that well. I plan to make this feature optionnal to ensure backward compatibility before update the scripts.
* I added optionnal source tarball recompression into lzma - after some benchmark it appears that lzma legacy has better results than xz, xz -e (extreme option) or xz-lzma -; by the way the tarball are **always** (actually non optionnal) extracted to $WOK/$PACKAGE/$PACKAGE-$VERSION; this will simplify receipts writing, but actually it has some incompatibilities with current wok. As the previous point, I'm working on a script to make the changes well, and also plan to make this optionnal to ensure backward compatibility before update.
* I added a cook-toolchain function which can (cross-)compile the core toolchain packages from scratch for various architecture, using some new functions in few receipts. It needs a very fine tuning and take me a lot of time to improve/test/debug. After a month of works it starts to give good results - it's why I progress slowly on other points.

New features since last update :
* CFLAGS/CXXFLAGS/MAKEFLAGS(-j x) exported to environnment variable; -j 4 is no more needed, but some receipts needs -j 1 to works (not only javaVM). MAKEFLAGS can be set to -j 1 to mimit the legacy tazwok behavior using legacy wok.
* build-depends doesn't include build-depends of build-depends any more (we spoke about that); they no more include all reverse wanted but only build-depends+depends+depends tree+all related -dev packages. This setup make most receipt compile in minimal chroot without modifications and keep the process light.
* gen-wok-db is improved and more speed, gen-lists with light woks too with a just-update option. New improvements are planned here.
* using two packages repository (the normal one and the incoming one) works well at compilation time using the priority feature of tazpkg - it prioritize install depends from incoming packages. (Note : incoming packages repository is where the packages goes after cook; after a delay - and if all depends/rdepends compile fine too - they can go in the main package repository; it's like unstable and testing in Debian)
* support of undigest wok is greatly improved, using the new priority feature of tazpkg.

There still major issues :
* transfer incoming packages to main packages repository doesn't works well.
* recook all rdepends when libraries are updated doesn't works well (it includes all libraries update but should only take care of minor/major updates, not micro).
* remove_old_package have some issues too.

I've a task list containning some improvement to made before releasing alpha, I don't list them here - it's mainly technicals points about improving speed/stability/configurability/simplicity of the tool. There's an important one : make possible to use SliTaz in gentoo-style, which means compile the full system from scratch - eventually optimized for a given architecture - then compile updated packages with an accessible tool to handle that.

Release plan :
step 1 : make it backward compatible and uptade the pre-alpha scripts on people.
step 2 : finish the cook-toolchain part, the compat-wok script, fix the major issues and push an alpha version on people, along a partial wok too cook updated toolchain & various SliTaz flavors from scratch. It's for testing the tool in manual or build-bot mode and check the results.
step 3 : at home for all thoses who are interested - recook full wok and check if all is fine.
step 2 & 3 include reports, bugfixes etc. with the goal of making the tool fully fonctionnal -> beta then RC releases on hg + documentation release.
step 4 : if everybody agree, temporaly freeze the package repository, update the wok to new toolchain and modified receipts and recook-all. Packages will be stored in a different packages repository so rolling-back should be possible. If previous steps are well executed all should works directly here.

I hope make this speedly enough to have the tool released with SliTaz 4.0, but delays are short as a wok freeze is planned soon (I do't know exactly when).
In fact, I don't want to merge the wok changes and update the toolchain alone until SliTaz 4.0 release (planned end march) before pushing this tool in new cooking (5.0). I will do it if there's no other solution, but I'm feared that will be a pain.

I think all is there,
Obviously all comments are welcome.

--
GoKhlaYeh <gokhlayeh@xxxxxxxxxx>


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




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