site  contact  subhomenews

T2 project hosted by Bones

January 09, 2015 — BarryK
As I have mentioned many times recently, Quirky April has been compiled totally from source, using T2. I added an extra 105 new packages to T2. Here is the T2 homepage:

My local T2 has many differences, for the specific purpose of compiling packages to be used to build a puplet (Puppy Linux or derivative).
I will be attempting syncing with the official T2 sometimes.

I did think about merging my local T2 into WoofQ, my Quirky-builder (Puppy Linux derivative), however, have decided to keep it separate.

I have now made my local T2 available online, for anyone to download. I could have just uploaded a tarball. Certainly I did not want to get back into using Fossil or any of the other major version control systems (git, svn, etc.).

Instead, I have resurrected my old Bones project. This is an ultra-simple version control system. Well, more of just a way to efficiently archive old versions. I have made some improvements to Bones, and updated the web page:

The Bones web page uses T2 as the example of usage, so just follow the instructions on that page to download T2.

By using Bones, it should be easy to sync with my latest upload of T2, without messing up any customizations that the user might do to their local T2 -- such as adding support for extra packages.

Even if you have Bones in your Puppy, please get my latest version (0.3) from here (11KB):

Of course, the usual disclaimer of all responsibility, should T2 or Bones do anything unexpected. As with all my products, you use them with this understanding!


Just done a upload, dated '20150109173834'.

I removed the 'build-APRIL' folder, relocated 'build' folder back inside 't2-trunk-APRIL', where it is normally located.

I have added a new folder, 'check-build-order', that has a script to check that packages are being compiled in the optimum order.
The folder has package database information taken from Slackware.

The user can get the t2-trunk-APRIL/config/*/packages file, which has the packages to be built, and the script inside 'check-build-order' can analyse it and report any packages that are being compiled earlier or later in the sequence than they should be.

This mechanism is important, as T2 does not have any dependency management.

There are two relevant targets, "wary6" and "quirky64".

I used "wary6" to build April i686, and "quirky64" to build April64 (for am64 CPU).

Say, you choose "quirky64" target, then when you run this, compiling will start:

# ./scripts/Build-Target -cfg quirky64

...that will then compile for about 24 hours.

However, it will stop almost immediately, building 'linux-headers', with an error message, about having "written outside the base directory".

To fix, just do this:

# ./scripts/Cleanup -cache
# ./scripts/Build-Target -cfg quirky64

...then off it will go, hopefully no more errors until completion.

It does help if you are running a "compatible" Linux. For building "quirky64" target, you must be running a 64-bit Linux.
My April64, with 'devx' loaded, should be fine.
Fatdog64 can do it, but will need a few things added -- I don't recall exactly what.

For a 32-bit i686 build I built from a running Quirky 6.1.4, so that is verified. Any other x86 Linux may need something added, but you should be able to do it.
Probably most recent puppies will be ok.

The Bones page has been updated:

The target 'quirky64' is now a "bigX" build, with llvm, mesa, and heaps of xorg drivers.

I have rolled gstreamer back from 1.4.x to 0.10.x, partly because pidgin needs it, partly because it is very mature.

Have also compiled vlc and qt4, a special minimal build of qt4.

I fixed building of 'nbtscan' and 'xlockmore'.

As discussed in the Puppy Forum, there were syntax errors in some .conf files, specifically kmod, planner, libv4l and udev.
There was also a problem with hardinfo.

All fixed, and I have just now uploaded T2, commit number '20150121213535'.

If you have already downloaded T2, it is a simple matter to update. Open a terminal inside folder 't2-project' and type "bones download".

To check that an update has taken place, look at t2-project/t2-trunk-APRIL/package/base/kmod/kmod.conf
-- you will see that the hook function 'kmod_find_zlib' has been rewritten, changed from a "[ ... ] && [ ... ] && ..." structure, to conventional nested "if .... then".

Tags: linux