Open Source Adventures

SEO

I have been blogging (infrequently) for only about seven months now and I must
say I got more reactions already than I thought I would ever have. Still,
visitor statistics and Google showups remained fairly low. Especially after my
last post, I became quite surprised. When Googling
for “poor man’s NTP”
, the first result returned was Kris Buytaerts reaction.
Moreover, my original
article
was nowhere to be found in the search results.

This made me thinking…

For years now, my webpage is found by the keywords “Gentoo”, “Macbook” and
“ING”, mainly because of some articles I wrote. But none of
my blog posts seemed to get indexed.

I’m not going into detail here, but after 5 minutes of thinking, 5 minutes of
tinkering with my Apache setup (I removed a 301-detour towads my blog) a little
sed-action later (nanoblogger is great!), Google
seems to love me much more.

Try it! :-)

Posted in Open Source Adventures   1 Comment »

Poor man’s NTP

Yesterday I had to quickly (more or less) synchronize the clocks of a handful of computers I was working on. I didn’t have the time to work out an NTP based solution, so I came up with the following simple trick:


for i in `seq 1 6`
do
ssh root@192.168.1.20${i} date `date +%m%d%H%M%Y.%S`
done

Needless to say… it worked. :-)

Posted in Open Source Adventures, scripting   No Comments »

Listening to my Macbook

My Gentoo on a Macbook article,
although more than 18 months old now, is still attracting quite some eyeballs
and emails with questions and remarks. I was helping out someone getting
Gentoo configured on his Macbook, when he told me he saw a funny red light
coming out of his headphone plug. All I knew was that you could control the
light playing with the IEC958 switch in alsamixer.

Being reminded of it, I decided to give it a better look this time. I found out
that it actually is an optical
port
of the internal sound card. Hmmm… as I happen to own one of these 5.1 systems of
creative
(which I absolutey love, by the way). I checked available input
connectors, and yap… it had an optical in. Took me a while to find it, but
eventually, I got an optical
fibre cable
with a mini adaptor, so it fitted in my Macbook connector.

Five minutes of playing later, I had a fully working, remotely controlled, DTS
and Dolby Digital capable surround system, accepting AC3 pass through sound,
capable of doing movie and music up mixing and giving me the true 5.1 surround
experience.

Just the idea that I have been running around with this feature on my laptop
without even realising it!

Feels good to use the hardware you paid for just that little it more. :-)

Posted in Open Source Adventures   No Comments »

Open Nordic + eZ conference + midsommernatten = fun!

Live from the Gardemoen airport in Oslo. I’m
getting better and better in getting free internet access at airports lately. :-)

The last two days, the small town of Skien held three conferences at once: Open Nordic, the eZ conference (including the amazing eZ
awards
event) and the very first Mobile Open Nordic.

I learnt one interesting fact. Most of the current Web 2.0 revolution we see
now, happens on top of the LAMP stack.

Let’s have a look where these technologies come from:

Linux:
started in Finland (Linus Torvalds)
Apache:
mainly American, but apparently has many Nordic contributors
MySQL:
Swedish/Finnish company
PHP:
started in Denmark/Greenland (Rasmus Lerdorf)

Basically, the Nordic countries can be held responsible for 75% of the LAMP stack!
(ok, Norway isn’t in the picture here, but they have Opera, for what it’s worth ;-))

I was very happy to see that Nokia (+ Trolltech), Sun, IBM and other big
players were represented by technical people, not by marketing people. In fact,
the most interesting talks I attended, were presented by people of those larger
companies. They really are trying to keep up with current trends.

Most interesting was also the main keynote speaker and opener of the conference
on the first day: Bart Hanssens from the Belgian federal government (Fedict). He held a talk about the
recent ODF guideline
implementation at our federal government
.

Personally, I had a wonderful time. Met many new people,
mostly of the eZ crew and realised
the sheer joy of such an internationally orientated SME (especially at the
midsommernatten BBQ the last day). It felt great speaking 4 languages through
each other once more, especially increasing the level of my Norwegian again.
:-)

Yes, Norway… I completely fell in love with the country just once more…

Posted in Business, Life, the Universe, and Everything, Open Source Adventures   No Comments »

Fixing your laptop through init

Today, I ran into a pretty annoying problem with my laptop.
I booted up, and got one of these once-in-every-24-mounts fsck’s of my root
partition. Nothing to worry about, unless it turns out that there is a
non-trivially fixable problem which shows the well-known "enter your root
password to fix or press ctrl-D to continue" line. Again, nothing to worry
about… until you realise that your keboard isn’t available yet at that point
of time in the boot-process! (I don’t have USB support compiled into my kernel,
and Mac connects it’s laptop keyboards through USB.)

Important to note: I was at the airport at that moment, with no other hardware
or cables or whatever with me to help me out. And knowing that you’ll be away
for 4 days (I’m at Open Nordic now), you
really want your laptop to work.

After thinking about it for a while, I got the solution. For some reason, my
keyboard does work while in the GRUB menu. I found out that I could pass about
any script or command to the init kernel parameter.

kernel /vmlinuz root=/dev/sda3 init=/sbin/fsck -y /dev/sda3

did the trick. :-)

Note that there are no quotes around the parameter value.

init="/sbin/fsck -y /dev/sda3"

won’t work!

I’m compiling USB support into my kernel right now.

Posted in Open Source Adventures   No Comments »

The ideal (digital) world

As much a fan as I am of Free/Libre Software (and mostly Free/Libre Operating Systems), I don’t consider it a good idea to have one OS ruling a market segment to such an extent as Microsoft Windows does on the desktop.
Not even if it would be my favourite OS.

Anyway, an excerpt of the statistics of this blog shows how an ideal world could look like.
About 25% for each of the three major and 25% for some extra players.

[ideal world]

At least it seems that my blog readers are representing a little ideal world. ;-)

Posted in Open Source Adventures   No Comments »

First Open Source Expo was a mediocre success

The first Open Source Expo in Karlsruhe is coming to an end.
Yesterday and today, the Kongresszentrum in Karlsruhe hosted Webinale ’08 and Open Src Expo ’08.
I understood it was the first Open Src Expo.
Webinale is an established conference.
You could tell the latter was (treated as) the bigger brother of the former.

I must say I found it only a mediocre success.
Somehow, it reminded me of FOSDEM, but far smaller ans less professional.
A handful of Open Source projects were represented at their stand and a smaller handful of people were walking around, talking and watching demo’s.
I had a nice introduction to OFBiz, The Apache Open for Business Project and was very impressed by it’s functionality.
In the main hall which could host over 800 people, some talks were held, generally attended by 30-like people, more interested in their laptop than the speaker (a sad trend I see coming up unfortunately, although I must plead guilty as well).
I do believe Open Src Expo ’08 has some potential though.
Keep it up!

It was also nice to see some Belgians around.
Machtelt and Wim from OpenBSD were there to talk about ODF and BSD Certification.
The Belgian TinyOpenERP had a stand as well.

I was also contacted by Edward Wijnen of SpringSource to talk about a partnership or other collaboration with Zeropoint.IT.
Sounds good.
I’d love to get the world to know about our Java team which loves working with Spring 2.5!

Posted in Business, Open Source Adventures   No Comments »

Alef Arendsen on using Spring 2.5 with Java EE 5

Earlier this week, I attended the Pulse event organised by USG Innotiv. It was a very nice evening,
and I liked it very much. If your not familiar with Pulse, the evening consists
out of a nice dinner and 4 parallel talks (of which you get to choose one to
attend) about Java, .Net, mainframe and SAP.

I always go for Java, as, out of these four, it is the only relevant topic for
Zeropoint.IT. This time, an impressive
personality was invited as a speaker: Alef
Arendsen
, a prominent Spring
developer and principal consultant at SpringSource.

The session focused on the Spring 2.5 integration for working in a Java EE
5 environment. Support for components of the Java EE 5 specification were
discussed, as well as things like the common annotations from JSR-250 and using
JNDI. In addition to the various possibilities for integration, the 90 minute
session also included an overview of the similarities and differences between
the Spring component model and the EJB 3.0 specification, as well as the
options available for combining them.

Very interesting, both for me personally, as for our largest development team, which is currently
in the middle of a multiple man-year enterprise project in Spring 2.5.

Generally, the whole Pulse event
was very well organised and very interesting. Definitely going again next time!

Posted in Business, Open Source Adventures   No Comments »

Productive Again!

After one month of being forced to work
with Mac OS X (Tiger)
, I feel very relieved being back in my familiar
working environment (which mainly consists out of Gentoo Linux on a MacBook, urxvt, dwm, mutt,
amarok, firefox, pidgin and vim everywhere!).

In the end, I didn’t manage to really fix my laptop. I tried installing a
working grub stage 1, 1.5 and 2 in the dd-backup-image of my root-partition and
putting it back on my laptop’s hard drive, but that didn’t work out. I didn’t
want to spend too much time any more on figuring out why or what, so I decided
to play it rough. I booted my Macbook into FireWire target
disk mode
, (which, by the way, is the most awesome feature for a laptop to
have ever!), cleansed the hard disk completely, and performed a Gentoo stage 3
installation form scratch.

One problem. I only have one other Gentoo machine lying around, which is on
a PPC iBook. Can’t compile x86 binaries, let alone an x86 kernel for my MacBook
there (I don’t have any experience with cross-compiled Gentoo installations on
remote FireWire disks). I performed the installation from an Ubuntu machine
then, for which I first had to buy a FireWire PCI expansion card. Problem
again, this was a 64-bit machine, and I didn’t realise it until I had a bogus
kernel. So, rebooted the Ubuntu machine with an x86 Gentoo live CD (all of a
sudden I was happy that these “fake” 64 bit processors^Wnuclear power plants
from AMD and Intel have a 32 bit compatibility mode) to compile a kernel for my
MacBook, and performed the rest of the installation from Ubuntu again, as the
Gentoo live CD didn’t recognize the network interface in that machine.

What I found pretty cool was that, even though this is a fresh install, after
restoring my $HOME backup, everything felt so familiar all at once. Emerging
vim and having all your plugins and settings all setup is great. Emerging
firefox and seeing your bookmarks, stored passwords and URL location toolbar
autocompletion history all in place at once really made me feel like coming
home again after having been away for a long time. :-)

Mac may look nice, and have wonderful hardware… but after one month of OS X,
I just couldn’t manage to feel productive at all. Pity.

Posted in Open Source Adventures   No Comments »

dd to the rescue… again!

On my laptop (a macbook), I dual boot between Mac OS X and Gentoo.
Up to last week I only booted into Mac OS X once a month to see if there were
any firmware updates (which only come in .dmg archives), so in fact I was
single booting Gentoo.

Last week, of course in front of a customer, grub failed for no apparent reason.
I just shut down my laptop cleanly in the morning and in the afternoon it
didn’t want to work any more. Luckily, I could still boot into Mac OS X, so
not all was lost.

When I realised that I couldn’t access my Linux partitions from within Mac OS
X (due to imcompatible partitioning scheme types (GPT <vs> MBR)), I knew this
problem wouldn’t be that easy to fix, especially because of this extra
handicap: no CD-drive to boot a Linux rescue CD from. I had the same DVD stuck
into my macbooks internal superdrive for over 4 months (yes, Thomas, this was your qeimc DVD :-p). After having it surgically
removed by S&S they told me I would never be
able to use my internal superdrive again, because the drive itself got
displaced so it doesn’t fit with the opening in the casing any more.

Another thing I suddenly realised was that I did have good backups of all my
data… but not of my working environment (/etc, dotfiles, $HOME/bin, …).
That made me really want to get my Gentoo working again.

First try: boot into a rescue system. I tried with two bootable USB disks,
which work nicely on another PC at the office. My macbook choked on both with a nice
“boot error”.

Second try was at Barcamp.
Thomas (another one) was so kind to bring along an
external firewire cd drive, so I could boot into a resuce system and fix my
grub. No candy. I sure got the live CDs (tried multiple ones) in my rEFIt boot manager, but actually booting from
one was too hard a task for mr. macbook.

Third try: dd to the rescue! Here’s what I did.


$ fdisk /dev/rdisk0

Disk: /dev/rdisk0       geometry: 9729/255/63 [156301488 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
 1: EE    0   0   2 -   25 127  14 [         1 -     409639] <Unknown ID>
 2: AF   25 127  15 - 1023 254  63 [    409640 -   60817408] HFS+
 3: 83 1023 254  63 - 1023 254  63 [  61227048 -   54685260] Linux files*
*4: 83 1023 254  63 - 1023 254  63 [ 115912308 -   40384077] Linux files*

I knew the start and size columns were expressed in sectors.

Then there’s dd. I knew I needed something like


$ dd if=/dev/rdisk0 skip=... count=...

The manual explains that dd works with 512-byte blocks. So I
only needed to figure out what the relation was between 512-byte blocks and
sectors. df told me just that!

Filesystem              512-blocks     Used   Avail Capacity  Mounted on
/dev/disk0s2              60817408 54925160 5380248    91%    /

Seems like partition disk0s2 has 60817408 512-byte blocks and 60817408
sectors. Therefore 1 sector = 1 512-byte block.

The fdisk manual also told me that the start-column is 0-based
and the size-column 1-based. Bringing all this together brought me to


$ dd if=/dev/rdisk0 skip=61227048 count=54685260 | ssh bbbart@elisa \
"cat > mnt/tuxiwan-home.dd"
$ dd if=/dev/rdisk0 skip=115912308 count=40384077 | ssh bbbart@elisa \
"cat > mnt/tuxiwan-root.dd"

and yup… these dd images on elisa (another PC on our network) are
loop-mountable.

Okay, my laptop isn’t fixed yet, but now at least I can try out some things
without having to fear losing all my precious stuff! :-)

Posted in Open Source Adventures   No Comments »