Hixie's Natural Log

2003-08-04 19:27 UTC How to install X-Chat in five hours (or more)

Inspired by Mark's story, I have decided to let you all know how I spent one half of my weekend. This is the boring half. The other half of my weekend was much more fun, and much more relaxing, and was spent in the company of much more of the colour red.

Anyway. As I was saying.

I got a new (work) laptop the other day. It's an IBM Thinkpad X31. Quite a nice machine. Small. Light. Hot. Fast. Has built-in wireless, infra-red, and bluetooth.

I asked for a GNU setup. The distribution picked was Debian. It came pre-installed. Lovely Jubbly.

The first thing I did was download a Mozilla nightly (binary, since I didn't really want to go through the pain of pulling and building again). That didn't work. It needed libgtk1.2. I didn't have anything remotely resembling GTK installed.

Having not used Debian for about 8 years, I didn't know what to do. Let's try asking people, I thought. So I fired up X-Chat.

No X-Chat.

Fine. I'll do what I usually do, I thought. I'll download the source.

No wget.

Ok, ok. lynx wget.org, look around, download the source tarball.

tar xvzf wget.tar.gz




make install

I then used wget to download the source for X-Chat.

Turns out X-Chat needs libgtk2.0. Unfortunately, GTK had not magically appeared on my laptop in the intervening time. Now I was in a bit of a quandry at this point. In order to work out how to solve my libgtk1.2 problem, I needed libgtk2.0. Which of course I also didn't know how to get. So I turned to Google. With Lynx.

I quickly got tired of that.

This is the point where I realised that it would probably be worth investigating using my own company's product, so I got a recent build of Opera for Linux over ftp. It came in a tarball with a configuration script, which I ignored, since as far as I can tell all it does is set up Java, and I don't want to use Java. I ran the executable instead.

It worked. Excellent. I could browse the Web, I could open pages in the background, life was good.

Next I found the sources for libgtk2.0.


You need glib.

Next I found the sources for glib.




make install

That worked. So I tried libgtk2.0 again.

You need pango.

Do I indeed, I thought. To cut a long story short, I followed this dependency chain all the way back to FreeType, before I realised what the time was.

Friday evening. Opera has a social gathering on Friday evenings. So I took a break and went to that. Not many people, though, since so many are on holiday these days. It was during this break that Eddy mentioned aptitude.


Such an innocent name. Who would have guessed that it could make life so much easier?

I used apt-get to get aptitude. I fired up aptitude.

Ok. Here's xchat, I thought. It installed in seconds. Including installing pango, freetype, libgtk2.0, libatk, glib, and about seventeen other packages I'd never heard of but which were apparently key to the operation of this productivity tool.

XChat! It ran! Unfortunately the screen on my laptop is too narrow to fit the tabs for the 16 channels I'm always in along the bottom as I'm used to, so I had to configure it for vertical tabs. But other than that, it worked.

At this point I tried installing libgtk1.2. That was to prove to be a bad idea.

It turns out I was using an unstable version of the debian package for xlibs, and the libgtk1.2 package wanted a stable version.

After much wrangling, and with help from kind folk on #mozilla, I decided to uninstall all of X, remove the unstable line from my sources.list, clear all the caches, and try again with a stable X.

Nice idea in theory.

In practice, it failed rather badly, because I had left my configuration files there when uninstalling, and so I was using the unstable config files with the stable X.

Mark II. Try again, this time, removing all the config files too.

What video chipset are you using?


What is the vertical refresh rate of your LCD monitor?


What is the maximum air speed of a European swallow carrying three fish in a 5kph head wind?


Google helped with some of those questions. But not enough of them, unfortunately. I got the swallow question wrong (or was it the video chipset one? X didn't give me my exam paper back, only a pass/fail grade, so I'm only guessing here) and this resulted in X having spasms when it next started.

I had a few other attempts at answering the questions, but they failed too. At one point the kernel was informing me on a regural basis that I had run out of MTRRs. This somewhat surprised me since I didn't know I had any to start with, didn't know I needed them, and didn't know where to get more from. So I did some more research. Turns out the X31 has a Radeon chipset.

There was no "radeon" option in the list.

This is when it dawned on me that maybe the sysadmins who set up my laptop had a good reason to be using the unstable X packages.

Uninstall. Purge. Clear the cache. Update the sources.list file. Update the packages. Purge the packages again just to be sure.

Reinstall X.

Configuring X. Yes, or No?


Configuring X. Yes, or No?


Configuring X. ?

I'm not kidding. dpkg had decided to ask me the questions, without the prompts. This was rather confusing to say the least.

I muddled my way through (trying to remember if it asked about middle mouse buttons before or after it asked if you had an LCD screen). There it was, in the middle of the list, just as I had hoped: radeon.

A few minutes later, I discovered that I had done something wrong. Drunk with the power that aptitude gave me, I just went ahead and purged X again.

This time, no radeon.


About 5 reinstalls later, I tried not reinstalling, just re-running the configuration program.

Amazingly, radeon had mysteriously appeared on the list. How lucky.

It worked.

Admittedly, I'm now using twm, not the spiffy stuff that was set up originally. But it works, for some definition of "works". I even managed to install some decent fonts. (Thanks Microsoft!)

I still don't have libgtk1.2 installed though. I think I'll just compile my own Mozilla after all, and tell it to use libgtk2.0.

Next on my list are trying to get the wireless working (wish me luck, I hear there are no drivers for this particular card yet). I also need to configure the console, and X, to recognise the various magical keys that currently say keyboard: unknown scancode e0 63 and so forth.

It's so sad that there are no operating systems that manage to get everything right. Stable. Secure. Usable. Powerful. Free. Pretty. At the moment, you only get to pick three, maybe four if you're willing to compromise a bit.

Pingbacks: 1

2003-08-03 21:06 UTC I hate X

Someone needs to explain to the XFree86 installation folk the meaning of "usability".

2003-08-01 23:28 UTC My meeting with the black mowmow

On my way home tonight I met a cautious black mowmow. He dived for cover under a van as I approached, so I sat on the curb and waited, casually flirting with him by scratching the road surface and making peaceful motions with my hand.

Within a few minutes, the cat carefully approached me to investigate, and after a few sniffs, decided I was safe and started marking me as his own (by rubbing his cheeks against me — this is what cats do to leave a scent), and generally asking me to stroke it.

This is when it dawned on me that that is how I should be tackling my current bug. Actually it's roughly what I've been doing for the last few days anyway, but more by repeatedly stopping myself rather than by a conscious attitude change. As of now, it's the latter.

2003-07-29 18:55 UTC Yet another simple entry detailing my recent exploits

I spoke with Jon today. That would be our CEO. Apparently he reads this Web log occasionally.

By the way, on a completely unrelated note, Opera is really cool. I love the product, I love the company, horrah.

In the background I can hear Tim arranging his girlfriend's birthday present(s). Sounds like quite an involved procedure.

He just got asked, I presume, how life was here. His answer involved a mention of the fact that we eat on the balcony at lunch time (we're on the fifth floor). It's nice. He also said various other things but I'm not used to this keyboard (it's a Norwegian QWERTY keyboard; I'm used to the Kinesis Prefessional US DVORAK layout...) so I couldn't keep track. Serves me right for blogging in someone else's office.

Today was a BTS day for me. BTS would be our Bug Tracking System. A BTS day for me is pretty much the same as a Bugzilla day used to be for me. That is, I go around the database, filing bugs, confirming bugs, etc. Corrected a few test cases. You may remember I recently went through some 1500 CSS tests. We failed a few (I won't say how many — those of you who have read The long dark tea time of the soul can probably appreciate why if I mention "pebbles" and "Wales"), and I also found a few that were incorrect. So I've been going through some of those correcting them. A couple were ridiculously wrong (as in, not even remotely correct, even taking into account any permutation of errata or proposals that may have been in force at the time the test was written), so hopefully nobody filed any bugs on those anywhere...

Then this evening we (Herman, Anders, Ola, Eira, me, and later Eddy) went to a nearby park for a nice relaxing barbecue. I think I could get used to this life style. I'm told it'll change pretty dramatically in winter though.

Yesterday the CSS working group had another teleconference. We were quite productive, agreeing to changes in multiple chapters. I like it when we make progress like that! (What happens is someone raises an issue on the mailing list, I add it to the issues list, the relevant editor eventually looks at the list, updates his chapter to include the proposed change but using <ins>/<del> markup, then during the teleconference we go through all the changes marked up in this way and decide if we agree to them or not.) Unfortunately we're back up to about 15 issues (earlier we had 11), but then the count is always higher after a working group meeting, since while agreeing to the tentatively resolved issues (which are no longer on the list) we occasionally decide to reopen issues to get the text improved further, and we also sometimes spot other things that need updating.

Hopefully we'll have a last call draft of CSS2.1 published before our face-to-face in late August! (Of course we said that about 2 years ago too...)

2003-07-27 13:02 UTC What to do in Oslo

Here's a list of what I've found you can do in Oslo so far:

Having had enough of walking, I decided to go to Google for help. I've now found a list of activities available in Oslo. Let's see how far this gets me!