screen and UTF-8 (continued)

OK, since I last posted about my problems with screen and irssi being unable to handle unicode chars, I got a lot of feedback (here or on IRC), and actually it was Alexander who pointed me into the right direction. LANG=C doesn’t seem to support UTF-8 characters. So after adding

to my environment *everything* is just fine … 😯

screen and UTF-8

Since I got annoyed by umlauts being printed as β–‘, I figured I’d install a UTF-8 capable font on this box here and all my problems would be gone. But not so fast.

screen is a real fucked up thing. If you’re starting screen via screen -U everything is nice and cosy, and you get your UTF-8 goodness. But, don’t think you’ll get away with just enabling UTF-8 as default and enabling UTF-8 for each new window by doing this:

You won’t get any UTF-8 char (at least w/ irssi) out of that .. 😑

Turning a simple chroot into a binpkg repository

OK, since Alex asked me last Sunday what exactly needs to be done to turn a simple chroot (or even a bloody box) into a binpkg producing environment, here’s a little howto …

First, lets start from a freshly unpacked stage3.

With that single change you’re basically nearly finished with setting up the whole thing, the remaining things are just

  1. Making sure the binary packages get to a web-enabled (either ftp or http) box, from where you’re going to fetch the binary packages to their target
  2. Make sure you use binary packages on the target systems by default

But first, we’re gonna need to emerge something within that freshly created build chroot.

Since we now emerged some things we do have quite a few binary packages, which we are going to need on the target systems in order to avoid individual compile time.

Now, we just need to figure out a way to get the packages to a remote repository. That’s where bashrc, rsync and ssh come into play.

Take a looksie at my bashrc (or at solar’s if you can find it), especially at syncpkg. That’s the actual function doing all the work for us. It’s basically guessing what profile you’re using atm (by reading the info’s on /etc/make.profile (x86, amd64)), and the uploading it to the remote location given by REPO_HOST, REPO_BASE and REPO_TYPE (either via environment or by /etc/make.conf).

Sure the emerge takes a bit longer (since emerge forks an rsync process via ssh that syncs the just merged binary to our remote repository), but that way you have a nice repository, from which you can install one or 1.000 boxes.

git-lkml for stupid people (like me)

OK, as Stephen recently asked why there is a double inclusion of in kernel/sysctl.c (and I asked Greg and Randy); I finally decided to write a patch to the LKML for possible inclusion.

But, git ain’t easy for people like me (who are used to the easiness of say – subversion or even cvs). So here’s what I did (thanks to Fernando for the help earlier today):

Now you should have a mailable patch, ready to be sent upstream that looks like this:

And if you wanna delete the branch afterwards again, just do this:

Praise teh sed

Since my talk with Robin on Thursday regarding the autogenerated userinfo.xml, I finally found some time today to get all the info’s I need out of userinfo.xml.

Since I don’t really want to manually enter all those mail addresses from userinfo into LDAP manually, I figured sed might be my best friend. *BUT* sed ain’t easy .. But thanks to Fabian and Gilles, I learned something new about sed today ..

Basically I searched for a way to transform userinfo.xml into a datafile for ldapedit.

As most of you know, userinfo.xml would look like this:

So the first step would be to simply use egrep on userinfo.xml to filter only the things I needed ..

That looks more like a processable list to me. Now I only needed to convert the into dn, the into mail and be done with it.

This is what I applied on top of the above filter:

And that’s it, I just need to check the dn’s for all the users, and when I’m done with that, finito!

Progress with apache-2.2

We’re finally making some progress with apache-2.2. It left the package.mask on the 8th of May (that’s like 3 weeks from tomorrow), we split some helper scripts into a separate package (app-admin/apache-tools).

I already fixed a few screwup I did myself (like apxs missing from either apache and apache-tools, or the compatibility symlinks being missing), so we “just” need to fix all the modules in the tree before apache-2.2 is going to get the new stable version (and of course anything else depending on. What also remains to do, is committing the new-style virtuals for bug 11007.

Also apache-1* is going to get removed from the tree pretty soon now (like starting next month 12th iirc). Now if anyone is going to start again, about apache-1* being “sooo” great and “waaay” better then the 2.* series, it may be yes.

But the point is, we (as in the apache team) needs to maintain it. Some other points include:

  1. We don’t have the manpower and/or time to maintain it any longer
  2. We don’t have the slightest interest anymore in apache-1, which hasn’t seen a release in about a year (July 2006 was the last release)

So, if you want to keep it around, either grab it from the attic at anoncvs.gentoo.org/sources.gentoo.org or copy it to an local/whatever overlay now, as its still in the tree.

grub via serial console

As I have quite some trouble every time I need grub via serial console, here’s just my personal reminder on how to do it right:

Additionally the agetty entry for ttyS0 in /etc/inittab needs to be uncommented and changed accordingly to the serial speed

Saying thank you

As I’m way better writing stuff than saying it with my own words, here a short Thank you!

  1. Christel, you have been a gracious and honest person, thanks for all the advice and help in the last year
  2. Chrissy, thanks for the inspiring words, you really made/make me feel better
  3. Alec (antarus), you’ve been a real friend and to say it with your own words “It sucks to be you”; to phrase it differently, I’m really going to miss you
  4. Bryan, thanks for all the help, thanks for all the fun at FOSDEM (and after FOSDEM, hah)
  5. Ned, Alexander (pappy); you’ve both been an inspiration, thanks for letting me work on hardened foo; it has been real fun
  6. Mike (vapier), thanks for being a smart ass and inspiration at the same time
  7. Chris, thanks for the inspiration and for being a sarcastic person πŸ˜‰
  8. Andrew, thanks for trying to make a fun out of me πŸ˜› and thanks for warning me of Chris’s sarcasm

Post FOSDEM 2007 thoughts (do I know you ?)

Some of us attended this years FOSDEM in Brussels (thanks to Dimitry it was *really*, *really* great).

We (at least the ones attending) got to know each other a bit better (I even got to know some pre Gentoo devs .. yeah, you), and some time after FOSDEM (I think it was ~3 days afterwards), Petteri (betelgeuse) asked me why people all of the sudden start to call him with his first name on IRC.

I think the cause for that is just seeing each other for some time (like 2 days in a row), talking to the other(s) in person makes you feel closer to him/her (you hopefully know what I mean 😯 ). Or maybe that’s just me.

After FOSDEM the virtual bonds changed, I started to call quite some people by their first name as did others.

Gentoo/hardened and the new toolchain

OK, as some of you have noticed; I prepared my box for the new toolchain, recompiled the stuff Kevin mentioned in the exact same order wrote down in his README, and it looks like it actually works with all my stuff I have on my box; except sys-libs/grub! *sigh*

Apparently, grub segfaults at boot and/or while running it from the chroot in the exact same spot, the new QA warnings complain about ..

So, I unpacked the libc and grub debug files, to get a clue where it’s failing and fed the program execution into gdb and viola:

I’m not yet sure if it really is the same spot, but I’ll let Kevin have a shot at it …