Neil Williams: State of play in Emdebian ARM
Autobuilder Summary:138 packages built successfully. 19 packages failed to cross build. 2 packages are tagged for a manual upload. (Dependency issues - rather than break the archive, these packages will not be uploaded until relevant dependencies have been fixed and uploaded.)
Stats
87% built OK
12% failed
Notes:
- All these packages built previously and fail at the latest versions in Debian Sid. Many could be upstream errors. All exist in Emdebian at
previous versions (only 1 failure is known to contain bugs in the current versions in Emdebian and this only affects GUI installations. Two other GUI packages contains bugs but build OK.). - Some of the packages in the repository (including some of the failures) are not used in *any* of the default emsandbox configurations. Two need to be removed from the repository completely.
- Some fixes are waiting for updates in Debian, either new uploads migrating to mirrors or pending fixes awaiting upload by me. (Probably tomorrow.)
- The history of each package is now available via the Emdebian Autobuilder Report. The package name links to the history of previous build attempts for this package. The version string links to the repository data for the current version in Emdebian. The result of the build links to the build log.
- A comparison with Debian unstable is constantly updated.
- 254 source packages exist in Emdebian but only 137 are currently built by the autobuilder. The rest will be built when new versions are uploaded to Debian (in some cases, that won't be until after Lenny). If I get time, I'll add build logs for these packages.
- The repository contains a fair number of packages that we don't currently use. This is a reflection of the problems of determining the "path" through the dependencies when starting at the bottom (glibc uClibc etc.). Bear this in mind when considering new architectures and new package sets. The process involves a lot of trial and error, particularly as cross-building potentially alters the dependency path at each iteration.
Problems
- libselinux and libsepol have just been uploaded with a bug fix that is needed for e2fsprogs and file cross-builds, amongst others. Waiting
for the ARM mirror to receive the new builds, hopefully tomorrow. - gtk+2.0 fails to cross-build because the patches now try to build the udeb which comes up against a bug in dpkg-cross. I'll be uploading the new version (including a couple of other bug fixes) tonight. (Final testing currently in progress.). The Gtk package also needs some work to run /usr/lib/libgtk2.0-0/update-gdkpixbuf-loaders so that the icons can be read in the GUI.
- pango1.0 also needs a fix to update the pango modules. This is usually done at build time but it means running a cross-built binary. It is a minor task and not CPU intensive so I plan to do this in postinst. Without this fix, no text is rendered in the GUI, only empty glyphs.
- xfonts-base is way too large still. More work is needed here to optimise just what is meant by the 'fixed' font for X, precisely which font files can be removed, which might be needed outside C or English locales etc.
- Other packages not currently cross-building include: (NOTE: Some of these build logs are VERY large.)
- adduser - needs to be removed from the repository, it is perl and we implement it via busybox.
- cups cupsys - /usr/include/pthread.h:653: warning: '__regparm__' attribute directive ignored.
- gcc-4.2 - needs to be removed from the repository, it no longer builds libgcc1 which was the main reason for cross-building it.
- glib2.0 - more generated content: /bin/sh: line 2: /usr/bin/glib-genmarshal: No such file or directory
- gnomevfs - hasn't built for ages and isn't usable anyway due to dependency issues. Currently preventing the use of gpe-filemanager. Due to be replaced by GIO in Debian.
- libusb - build failure, so far resistant to usual fixes.
- ncurses - build failure - uses gcc in wide char support build.
- ntp - build failure - assembly error. authkeys.c:445: error: invalid 'asm': invalid operand for code 'w'
- pcre3 - build failure - apparently simply unresolved symbols resistant to usual fixes.
- slang2 - possibly needs a patch update, tries to build -pic archives and then fails.
- xorg-server - build failure: make[4]: *** No rule to make target -L/usr/arm-linux-gnu/lib', needed by Xprt'. Stop.
Of the problems above, only problems 2, 3 and 4 (gtk, pango and xfonts-base) are "critical" as these are the only ones where the current packages are sufficiently broken that the new version is essential before Emdebian can make a "release" of a series of three root filesystems for ARM. Sizes are still larger than desired - a fix for that requires changes in glibc which I hope to investigate during DebConf.
Any help on the above issues is appreciated.
Problem-solving:
$ emsource -c $package
$ cd /path/to/$package
$ emdebuild
If you have SVN access, use 'emdebuild --svn-only' to commit your changes (even if your changes don't solve all the problems).
Without SVN access, post the result of 'svn diff ../emdebian*' to this list (or 'svn diff ../debian*' if you have added a patch for the upstream code to debian/patches/).
Platforms:
All the above is based solely on Emdebian ARM for balloon3:
Linux balloon 2.6.25.2-pxa270 #1 Sun May 18 22:38:11 BST 2008 armv5tel unknown
balloon3 in CUED casehttp://balloonboard.org/gallery/300/balloon3-0v1-fpga.jpg
AFAICT no other ARM platforms have been tested.
I have a few fixes for the balloon3-config package that also needs an update in Emdebian - I've had some feedback from the touchscreen driver
upstream that we might be trying to use the wrong device (/dev/input/mice is the wrong target for the symlink, we can set whatever device we want in /etc/X11/xorg.conf and the driver will use that in preference to /dev/event0). As this is device-specific, /etc/X11/xorg.conf will be put into balloon3-config which is available via Emdebian SVN.
Warning: big rant ahead.
I received some comments on 
This passage
has been marked friends-only and you will not be able to view it
without logging in.
Moving hurriedly away from there, I headed upward. After a couple of
turns, I ran into Catholics. First there were dead Catholics. Then there
were Catholics pre-occupied with dead Catholics. Then there were
Catholics waiting to die. Then there were seminarians. Then there were
teens with prayer books. When I reached the next pinnacle, there were
more teens with prayer books. There were benches, and there were no
teens on them, for the teens were standing or sitting on the ground,
quietly contemplating the Word. Unfortunately, they had decided that
the benches were more suitable for holding all their bags, so there
was nowhere for me to sit.
I considered interrupting their reverie, but decided it wouldn't be very
Christian of me to disturb them, so I just placed an ancient Drasnian
curse on them and plodded down the hill toward a small beach. I really
didn't need any more sun, but at least there probably wouldn't be
anyone praying there.
The water was tempting, but I'm always paranoid about my belongings when
swimming alone, and if my phone were taken I wouldn't be able to call
anybody to come rescue me at the next crisis point, sure to come. So I
skirted the coastline and arrived at a much larger beach, one with
facilities and services.
Opting to save money but complicate things by using the public changing
rooms and showers, I made a discovery.
I spent Saturday at BarCamp Belfast. There were more people than I expected; I'm no good at judging exact numbers but the wiki lists 62. As it turned out not everyone ended up talking; this worked out well for me because I don't think I'm Web2.0 enough (is that a bit ironic given I'm writing this on a blog?). I don't really do user interfaces or website stuff and that seemed to be the primary focus of a lot of the attendees. Nice to know there's a fairly active crowd in
Even though I ve dealt with
So Obama will be (sorta) kicking off the general election campaign in
Using
For info, as I've been asked by a couple of people, I've been elected as a city councillor for King's Hedges in Cambridge
I gave Brenda a
It s easy to disassemble the connector. Take a close look at the attaching plastic hooks there are four of them: two outside, near the pins, and two inside near the cable. Last two are harder to detach, but once you ve detached the first ones, just hold the two pieces of the connector and easily shear them: one side will detach first.
The microphone have two terminals that already hold enough soldering tin. Beware to solder the blue cable (the one that goes with pin 16
I have dissolded the charging cables from pins 1, 3, 5, and 8, but that is up to you (you can just cut the main cable and leave the pins untouched). Also, while soldering the microphone cables to the connector, beware of using as little tin as possible. It ll be even easier if you remove the pin from the connector it s easy to do if you have small pliers and careful fingers. Try first with one of the other pins that will not be used. Solder the red one to pin 17 and the blue one to pin 16.
I cut a piece of an old earphone cushion to close the charging cable hole (and to protect the microphone). Here is the final result:
Now, for the recording software, there s a nice free software that does that perfectly for PalmOS: 
I wrote an essay several years ago called
I've just finished reading "Don't You Have Time to Think", a collection of letters written to and from Richard P. Feynman. A birthday present from my wishlist.
Previously I've read the collection of letters to/from Tolkien. (Several times actually. Very nice collection!)
It suddenly struck me that over my lifetime I've probably written <200 letters to people.
When I was young I had a couple of
Went to the