Merry Christmas, everybody!
I’ve been very busy the last couple of weeks. Time to reveal what I’ve been silently cooking up during that period of time: Welcome to “Arch Linux Epoch 5” or – in short – Arch:E5.
What is it?
It’s basically a handful of repositories which allow pacstrapping a clean Arch:E5 system or turning an existing mainline Arch into a more experimental system. It’s generally possible to “mix” mainline Arch and Arch:E5 packages. These are the key differences from Arch:
- Uses the Linux-libre kernel which has all binary blobs removed (yes, like Parabola GNU/Linux)
- Provides eglibc (the binary compatible embedded variant) instead of glibc as standard libc
- LLVM/Clang is the primary compiler used for package building; gcc with dragonegg is the second choice and pure gcc is the fallback option for some packages
- Whenever possible libc++ and libc++abi are used instead of stdlibc++
- Comes with the Runit init system instead of systemd
- Replaces some core components with light-weight alternatives (like pkgconf instead of pkg-config)
- Uncouples its packages from Arch’s rolling release process so that they won’t be overwritten automatically
- Slight preference of more liberal licenses than GPL
- There’s also a special “nucleus” repository which offers a minimal Arch system (without kernel, bootloader, etc.) meant for chroot environments. It’s using musl libc.
This is just the current status; more things are going to be changed eventually.
Why to give it a try?
Well, you’ve got to answer that for yourself. Perhaps you agree that Clang is cool/light-weight is better/systemd is playing bull in a china shop and rc.conf once was the very essence of Arch? Probably you have some more ideas in with other areas Arch could be modified and like to experiment with it? Or maybe you’ve got an additional Arch box (or VM) for playing around with, anyway? You decide.
Short version: It sounds pretty nice, doesn’t it?
Long version: Pacman provides the “epoch“ value which can be used to force lower version numbers to be treated as higher ones. It is separated from the regular version string by a colon.
EERIE starts with ‘E’, which is the fifth letter of the alphabet. To avoid self-built packages to be overwritten during updates thanks to Arch’s rolling release process, an epoch of five is used to prevent that. Hence the name.
What’s the current status? How to get it?
Arch:E5 is not currently available for downloading. The system is running nicely for a while now and I’ve got almost 1GB worth of packages in my local repositories. Currently I’m pursuing the goal of making Arch:E5 self-hosting. There should not be too many packages missing to reach that. The next step is to rebuild the whole thing (which comes at the right moment since LLVM 3.4 is to be released these days) and prove that it’s self-hosting.
Once I got through with that, I’ll have to decide how to make the derivative available. I’ll probably set up a publically available install repository on my site (elderlinux.org), but I don’t have the bandwidth to share the whole thing. I might upload the other repositories on some share-hosting service, though. Maybe I can organize something better at a later time. We’ll see.
What are the reasons for E5?
The primary reason for most of my computer projects is simply that I want to get familiar with Linux in-depth. And surely the best way to do so is by actually getting your feet wet and just try things out. You could say: For educational reasons.
Of course there are more specific reasons for E5. While I’m a happy Archer in general (using the OS both at home and at work) there are still a few things I’d do differently. But hey: this is FOSS – and therefore I actually can. Great, isn’t it?
Oh, of course everybody is invited to join the playground. This isn’t meant as a “one man show”. You like (some of the) idea(s)? Get in touch! I’m pretty open to any comments, proposals or offers.
Anything to show off, yet?
Yes, of course. I’ve got a screenshot from this morning for you. It’s demonstrating what E5 can actually do right now.
Just in case you care: DooM (considered the real father of FPS games by many) had its 20th anniversary this month. This good old game is still very much alive and thus we recently saw the release of a lot DooM related material – including a new version of the Chocolate DooM source port. And since I wanted to give it a try anyway, I thought, I might as well do it on E5!
So what you can see here is Arch:E5 running X11 with the FLTK-based EDE desktop, the GTK+2-based LWT terminal and the SDL-based DooM port “Chocolate Doom”.
As you can see, quite a few things are actually working already. I haven’t made any statistics, yet, but I think that >90% of all packages were built successfully with clang. In general I’m pretty happy with the project and I think it was about time to announce it to the public. 🙂
I’ll write one final post in 2013, providing a retrospect of this year. And in January I hope to have some news regarding Arch:E5.