Archive for November, 2009

KDE-4.3.3 on SPARC

November 29, 2009

For all the SPARC users,

KDE-4.3.3 has been marked ~sparc. Will try to stabilize it next week, as we don’t have any KDE stable 😦

I would like to thank Jack Morgan(jmorgan) as he has helped me testing it. I also would like to kick the KDE team.

PS: gnome-2.26 was marked stable yesterday



November 29, 2009

Since long time ago we have been providing binary packages for almost all the architectures. The main architectures are done by our own build boxes, while others are contributed by non-developers. Before you think about using these binary repos, please take note that we *DON’T* support them. We have them in case of emergency and also to check if something builds.

The repository is accessible in the following link: It’s accessible through FTP and HTTP, along with RSYNC. Under the directory default-linux you’ll find the binary packages for the normal profiles. But under hardened you can checkout the hardened binpkgs, under uclibc the uclibc binpkgs…etc. Also under the embedded directory you’ll find binpkgs for embedded devices. We have prefix binpkgs as well…but those are out of my scope as I’m not part of the prefix team.

This work has been done by solar, who wrote all the scripts to keep the tinderbox running. So all the props goes to him πŸ™‚ Unfortunately we don’t have any fancy web interface.

One of the important repos are the one for ARM, which i set up for ARM EABI. For both armv4t and armv5te we have two repos, one stable with a lot of packages, and one unstable with just system packages. We have two repos for it because the ARM machines people have will take a bit to compile gcc for example(around 3-5 hours depending on the machine).
Talking of which, i did a table with the help of different people:

Needless to say we build *ALL* the default-linux, hardened repos under _REAL_ machines, not using qemu or whatever…
What I really like about tinderboxing with unstable packages, is that I can check that all the system packages that get included in the portage tree, are able to build. From time to time I also do a rebuild of world, for example when a new version of gcc makes it to the tree, so i can look if something fails or not. I believe having a repository of that kind of packages, built natively, is nice. Mainly because that way people not using Gentoo can get a binary package they need for an emergency.

Thats more or less getting a binary package from Debian or any other binary distro, with the difference that in the case of ARM, we have all kinds of subarchitectures available as the hardware allows(which we only have an ARMv5te board capable of doing the following).

For ARM we have the following repos:

ARM EABI (armel on Debian)

Marvell Sheevaplug and Gentoo

November 27, 2009

In March of this year, we got a Sheevaplug from Marvell. The Sheevaplug is a really powerful device, which gets described with the word plug-computer. It can be considered a full computer except because it doesn’t have any kind of video output nor video card.

For the normal user, this device can be used for creating a media server, putting your USB HDD, flash drive or SD/SDHC cards on the network easily. But for the more advanced user its just more than that. The specs are as following: 1.2GHz Marvell “Kirkwood” CPU (ARMv5TE) with 256KB of L2, 512MB of DDR2 RAM, 512MB of NAND flash, 1 USB 2.0 port, 1 SHDC reader, integrated JTAG+serial through miniUSB and integrated power supply. Comes with Ubuntu 9.04 “Jaunty”(not supported by Canonical, though).

Obviously we got it to put Gentoo on it and document it so all future owners of the Sheevaplug could have Gentoo on their plug. I created the installation docs in just some days after booting Gentoo on it. You can find it at, along with some info about it at and

Unfortunately a normal Gentoo installation doesn’t fit in the 512MB NAND, so I based the documentation and procedure on using an external USB device.

One of the important things of the Marvell Sheevaplug(please note that there are other plugs which aren’t the same as the one i’m talking about, and lack some of the features commented avobe), which that it includes a JTAG. That means that you will always be able to repair your Sheevaplug in case you erase the bootloader(which would make it unusable without JTAG).

I’d like to remind my ARM buildtimes table, which may help you to understand the difference of speed on another kind of boards/processors.

I would like to thank Marvell for their contribution to Gentoo.

QNAP TS109/TS209/TS409 and Gentoo

November 27, 2009

Last year i got a TS409(board only) from QNAP Inc., they provided it to us for provide support for it, including ARMv5TE stage3s and the documentation for installing it.

The QNAP TS409 is a NAS(Network Attached Storage) server, although they don’t make it anymore(but they produced it when they provided it to us). It has been superseeded by the TS419 model. The TS409 had a really powerful specifications back when it was launched. It had a Marvell “Orion” 5281 (ARMv5TE) working at 500MHz, with 256MB of DDR2 RAM, 8MB of flash and 4 SATA ports. It was a really complete device.

In some days I got it working on Gentoo, i published the documentation at my dev space and they opened a subforum on their forums.

Different users of Gentoo contacted me about putting Gentoo on the more cheaper and feature-reduced TS109 and TS209. Those two had a different processor model, yet same speed. They also had 128MB DDR2 RAM instead of 256MB of the TS409. Unfortunately QNAP didn’t provide us with any of those models(they use the same specs/configuration, so the same stuff that works on the TS209 works on the TS109) and we had to create the installation blindly here:

Those three models i’ve talked about got replaced by new models: TS119, TS219, TS419. They feature a Marvell “Kirkwood” 6281 1.2GHz processor and 512MB of DDR2 RAM, with 16MB of flash. Unfortunately and although we got asked by users, we can’t create the documentation and installation software because we haven’t been provided with the hardware.

So if you didn’t know that you could run your favourite distro on your QNAP TS109/TS209/TS409, now you do! And as always, feel free to contact me if you have any question!


November 25, 2009


(Please note that the following comments are just thoughts and i may be wrong. You’re free to correct me)

-So whats this ARMv7 i keep talking about?
-Well, its just the latest version of the ARM processor.
-What’s so important about it?
-It contains some CPU instructions that the previous ARM CPUs don’t have. Those instructions provide a really good performance and more power efficiency on which the previous CPUs(ARMv5,v6) can’t provide.
-What are ARMv7 processors going to be used for?
-Mainly smartbooks and nettops.

Almost all the bigger distros have ARM support for a long time ago. Debian was probably the first distribution to offer support for it, back in 2001 or 2002. Gentoo started on 2003-2004. Ubuntu, for example, started working on its ARM support since last year.

There’s a problem with binary distros, though. For example, Debian and Ubuntu support i386. For doing that, they have to build everything to work for i386, meaning that all the performance improvement you could get using i686-exclusive CPU instructions is lost. I’m no expert and I’m not proving anything, i’m just using an example. As I said before, ARMv7 provides some cpu instructions that with Debian or Ubuntu won’t be used, since they build to the lower of the CPUs available. In the case of ARM EABI, that is armv4t(i think on Ubuntu the minimum was armv5te). I won’t say whether thats going to matter on the performance or not, as i can’t test it, but I’ve been told it does due to the following thing I’m going to explain:

The first release of Ubuntu “supporting” ARM was Jaunty. I wrote “supporting” because they only offered installation and support for a development board called “babbage”, which is a Freescale i.MX51-based Pegatron-built development board. Which at the time of the Jaunty release, it *wasn’t* available for purchase(it was a prototype), at least it wasn’t on its webpage.
Fortunately, all the users that had an ARMv5te processor could run Ubuntu on their boards, yet obviously with their own kernel, with no installer, and with no support from Ubuntu.

The next release of Ubuntu “supported” another prototype-not-public board, this time from Marvell, with the name “Dove”. And as of now, thats the boards they are supporting. Also, this release let the armv5te users with no upgrade, as Karmic(the release i’m talking about), is built with armv6+vfp as minimum requirement. That left out users of the Sheevaplug, which funnily enough, comes with Ubuntu. The next Ubuntu release will be Lucid, will only support armv7. So if anyone with a Nokia N800 was running Ubuntu on it, on the next release they’ll be alone in the dark as well.
By the way, Ubuntu doesn’t support the Beagleboard…I have no clue why.

Since we’re a source-based distribution, and we don’t depend on the minimum CPU, thats why we would like to have armv7 hardware capable of doing the kinds of build(like ubuntu are) we require. Unfortunately neither Marvell nor Freescale contacted us regarding ARMv7. Needless to say we also contacted them…
We’re also happy with just SSH access and non-networked storage of around 8GB.

This makes you kinda sad, as on Gentoo we don’t do this for profit, we only do it for our users, or at least thats what I do.

If anyone can or want to help us, you’re free to contact us at arm -at-


November 24, 2009


Just wanted to let everyone know about the status on the autobuilds. As you probably know, Gentoo now offers autobuilt stage3s and installcd’s, that means you’ll always have recent stuff to start your Gentoo installation. Those are built automatically in some cases, and some other cases are built manually(as in needing someone to tell it to build them).

I did this page some time ago, so the people asking about when the builds get done could have an answer:

I know i’m a bit repetitive, but I still want to offer armv6/armv7 stages, which as i said on the previous blogpost, we’re unable to provide due to lack of reliable hardware. I’ll write about ARMv7 on another blogpost πŸ™‚

As you can see in the link, we have pretty much all the arches covered except m68k and mips, along with the bsd’s.
We don’t have hardware for m68k, and the autobuilds for mips and bsds are up to the respective teams. It would be nice to have mips stages, as the current ones are from 2006 and you have some serious issues upgrading them… I could help with an O2 i got from work, but it came with a 2GB SCSI hdd, and i ran out of space. I have some SCSI disks, but they aren’t SCA, which it looks like the O2 needs.

Have fun

Status @ 2009-11-23

November 23, 2009

What I’m doing during this days:

-Test KDE-4.3 on SPARC.
Six months ago or so, the KDE team asked to the archteams to keyword KDE-4.2. SPARC was left out because one of its dependencies, webkit, sigbused. I remember some person told me that they were dealing with that upstream, I don’t remember who tbh. At the end nothing came from that, and some weeks ago KDE-3.5 got masked.

Unfortunately no one told me KDE-3.5 was getting masked, leaving the users of all arches except amd64/x86 without a stable KDE. Since on the KDE-4.3 stabilization bug there was only amd64 and x86 CC’ed. I expressed my (bad) thoughts about that to the KDE team. I didn’t expect they would mask KDE-3.5 without caring for the other arches, or without telling me, considering i’m on three of the six affected arches(alpha hppa ia64 ppc ppc64 sparc).

Anyway, the patch from Debian for SPARC not sigbusing on webkit/qt-webkit was applied, since webkit’s upstream hasn’t fixed the problem yet. Both webkit/qt-webkit got ~sparc. ATM i’m still emerging 35 of 348 dependencies KDE-4.3 needs.

-GNOME-2.26 stabilization
Another surprise, the GNOME team dropped ia64 and sparc keywords on gnome-base/gnome. I just discovered this yesterday, but its been that way for a long time. As i said to the GNOME team, i remember keywording some packages, but they didn’t told in any bug that they dropped the keywords on the gnome meta ebuild. Anyway, they understood what i told them and they’ll take care of that next time πŸ™‚

For sparc there was a problem, xulrunner-1.9 wasn’t keyworded back when gnome-2.26 made it to the tree, it wasn’t keyworded because…i can’t remember…i think it was related to the included sqlite on xulrunner, which had unaligned accesses and made firefox, and everything using xulrunner sigbus. That mean that i was unable to keyword yelp, as it depends on xulrunner-1.9. But xulrunner-1.9 has been working on sparc for some time πŸ™‚ So i tested yelp and keyworded it ~sparc today, along with gnome-base/gnome

-Xulrunner-1.9.1/Firefox-3.5 on SPARC
I’ll write about this another day. But it should be working soon.

-ARMv7 stages
Yes! I'm working on this! How? Well, i'm still waiting for someone to provide me an ARMv7 board capable of doing 24h compiling. Once I get one, I will build them. Unfortunately, no one has offered me that kind of board. The Beagleboard is a nice device, but it needs an external power supply and an USB hub for plugging an USB hdd. I'm also waiting for the Efika MX i got assigned to arrive.

Thats it for today.

Salutations, Earth!

November 23, 2009

Hi everyone,

This is my first blog, and to be honest i don’t like it very much, as i’m not a person of writing stuff. But I’ve found this is the only way to spread around Gentoo’s planet what I’m currently doing, which tends to be a lot of things that don’t get published anywhere.

So what do I do in Gentoo? At the moment I am the lead of the IA64 and SPARC architectures, co-lead of Alpha and ARM, member of s390, sh and x86. I’m also member of the non-archteams Mozilla(I only do binary stuff), net-p2p and net-irc(not much time for those, tbh). And i think i’m not leaving anything… If you have any question or anything i’ll be happy to answer.

Let’s see how it goes!