Ubuntu on two out of three

I have three Linux computers that I use to varying degrees. Until recently, they were all the most recent Fedora Core version. I've tried a lot of Linux distros on the different computers—Debian Sid, Gentoo, Mandrake 10, etc. In the past I've always come back to Red Hat or Fedora Core. Honestly, the biggest reason is probably that I know the OS very well. Despite my always going back to Red Hat land, I've never been much of a Red Hat zealot. I don't try to convert people, or anything like that. I don't think any Linux distro is intrinsically superior to any other at this stage. Linux is too advanced, and too mature for fundamental superiority in any of its primary flavors. It all comes down to what fits your head the best.

Unfortunately, although Fedora Core still fits my head best, the community seems to have hit the doldrums, big time. I've always complained about the repository politics, and I always end up going first with the Fedora Extras faction, and then the RPM Forge faction (usually preferring the latter). Since FC4 came out, I've been very frustrated that I cannot get the combination of timely updates and stability that I've come to expect from Fedora Core. I switched from Fedora Extras to RPM Forge hoping for more dynamicism, but I think that was actually a change for the worse this time. At the same time, Ubuntu seems to have breathed a huge amount of energy into the Debian world. I tried Debian once and was very disappointed. Sid broke too often and woody updated way too slowly for my needs as a developer. I tried to learn enough of the system to be able to tame Sid, as Debian Gurus such as Edd Dumbill can, but that's when I discovered that Debian just didn't fit my head. I went back to Fedora. Edd tells me, and many others have corroborated that Ubuntu does an amazing job of dealing with these problems. "Ubuntu just works" is just about an axiom these days. Time to give it a go.

A month or so ago, as an experiment I installed Ubuntu on my third string computer. Besides the installer (which sucks) I was quite impressed with the Distro. Impressed enough that I'm installing Ubuntu on the second string computer as I type. That will bring me much more close and personal with Ubuntu: that's my main media computer: video, music, graphics, games, literary writing, etc. If I'm happy with that the last bastion of FC4 for me is my laptop—my very right arm. It's my main development and communications computer (programming, tech writing, e-mail, Weblogging, IRC, IM, etc.)

My first impression of Ubuntu is that the installer is laughably ummm...retro. I've been installing Linuxen since Red Hat 4.2, and I've see it all, from having to duck into the spare console during an install for workaround hackery to the steeplechase of the Gentoo installer (I swear they're deliberately placing a hurdle in front of users: if you can't complete the scavenger hunt of the install process, they don't want you as a Gentoo user). Ubuntu's installer might be the ugliest and least intuitive I've ever seen. Fedora Core and Mandrake have really nice installers, and honestly, I'm a bit spoiled in that department.

Once I got past the installer the default look of Ubuntu is a combo of really sharp fonts with a theme that's drab almost to the point of depressing. Who chose that brown/copper background and the dun theme? That got changed with the quickness. It's interesting that you only create a regular user, and never set a root password. On my first Ubuntu machine, I couldn't resist switching to single user mode and setting a root password. This second time I'll just leave that alone and see how it goes. Ubuntu set me all up in sudo, so I'll probably be fine for a good while.

I started with the default package manager and added a whole bunch of packages I needed, or wanted to play with. The package management experience is better than Debian's which was already better than Fedora's, but then again, that has always been Debian's well-known strength. I did run into a problem with non-existent "Multiverse" repository option provided in the package manager. For some reason I was not able to install, say Real from the default package manager. It said I needed to enable "Multiverse" but I was having problems with that repo entry. I tried Synaptic and it installed the problem packages with no problem. Synaptic is a real treat.

So far I'm definitely happy with the switch. Many more things just work than in FC4. I do have to look into a few things, for example:

  • Enabling mp3 play in Rhythmbox (I knew how to do this in FC)
  • Figuring out how to loosen the firewall chokehold and how to enable services. Wanting to print and SSH to the machine, I tried the various applets in System->Admin and Apps->System Tools and I can't figure out the equivalent of FC's "Security Level" and "Services" applets.

I'm confident I'll find answers because the Ubuntu community seems as full of useful info as the Fedora community used to be. I already addressed a couple of needs with some easily found resources:

[Uche Ogbuji]

via Copia

Ubuntu temptations

There were several comments to "Fedora and the repository politics" suggesting Ubuntu. Several of my friends and colleagues whom I respect a lot have suggested Ubuntu before that. This makes for temptation, but probably not one I'll succumb to just yet. It was also people I respect very much who suggested Debian, and there's no doubt that even though you may share a lot of technical tendencies with someone, you won't always share experiences with particular distributions. If Fedora Core ever becomes unbearable, Ubuntu will be my next stop, but as it is, I really like Fedora, and I'm very productive on it, largely because I know my way around it so well. I did complain about the repository split, but once I get over the switch to RPMForge setup, all usually goes well after that. There's not really enough pain to justify learning an entirely new distro right now.

I am very glad to hear that Ubuntu addresses a lot of the problems with Debian. It's good to have another viable choice.

[Uche Ogbuji]

via Copia

Fedora and the repository politics (and exploding inkscape)

My Fedora Core 4 upgrade has been remarkably smooth so far. Here are the first two complaints about Fedora Core 4. One big one and one little one.

The little one is that inkscape is useless in FC4, it seems. Segfaults when you blink at it. So just use apt or yum to update, eh? Well, then there is the big problem.

Fedora needs to fix its repository politics. All the following is my perspective as a user, not as a packaging expert. Just anticipating the nitpickers, let me say that I might be wrong on the factual background of of some things I get from my impressions, but I know for sure what I go through as a user. Third party apt and yum repositories for Fedora Core comes in two divided worlds. On one hand there is Fedora extras, considered the official repository, with FreshRPMs and Livna loosely certified as compatible. On the other hand there is the group of repositories coming under the banner of RPMForge (Web site still under construction), led by Dag and including others such as ATRPMS and Dries. You usually cannot mix these two worlds without screwing up your system.

This is the sort of thing that makes Debian folks laugh their heads off, and they're right to do so. (Of course my experience with Debian was so miserable that I'm not in the least tempted to give it another try). Worse than the lack of repository integration is the fact that the various parties have spent energy flinging mud at each other that might have been better spent in integration.

Most of the time, this doesn't matter to me. I choose one side of the fence and chug along. Every Fedora Core release I give yum and the Fedora extras world a try for a couple of weeks. I can never stand it longer than that. Yum is terribly slow. Fedora Extras and friends are terribly slow to incorporate new software. As an example, when I run a script to count the number of RPMs I've for from Dag, AT or Dries because I can't get reasonable fresh versions from Fedora extras and friends, I come up with 89. This is a sure sign that Fedora extras needs to work better with RPMForge. If I were happy with being six months behind the software curve, I would have had one less problem with Debian (I could have stuck with "stable").

So I go on to Dag and friends, and actually, I'm fine from then. Those guys do an amazing job of keeping up on new and updated software without constantly breaking my system (the constant breakage was my other problem with Debian when I went with "testing"). This big repository split only really smacks me in the face on one occasion: at the point after upgrading Fedora when I've been trying yum and Fedora extras for a couple of weeks and realize it's time to jump to apt and RPMForge. At that point I have to do all the apt set-up for the right repositories and co., and deal with the initial wave of conflicts. I'm about at that point now, and hence this rant.

How does this schism serve anything except ego? Fedora extras and co say the other side is uncooperative and will not submit to their hard-core QA. Dag and co say say the other side is uncooperative and insist on stomping on his repository all the time. Couldn't something be worked out so that in effect Fedora Extras is the equivalent of Debian stable and RPMForge the equivalent of Debian testing? I don't know if that makes sense, but surely some form of compromise is possible. The message boards are full of confused users and something really must change.

[Uche Ogbuji]

via Copia

First post from Fedora Core 4

This is my first post from Fedora Core 4. I grabbed the DVD ISO via bittorrent (I also seeded to a ration of 2:1, i.e. I served up twice as much DVD ISO goodness as I downloaded. Please do the same if you can). I then used the standard upgrade option to get my main desktop on point. It went so smoothly that I threw caution to the wind and did the same for my laptop (see my post on the upgrade from FC2 to FC3). It's looking good on the laptop as well. With the new kernel, 2.6.11-1.1369_FC4, my Centrino (Intel PRO/Wireless 2100) wireless worked right out of the box (unlike with FC3) and so did my Broadcomm B44 Ethernet driver (unlike with FC3). Now that's what software evolution is all about. Speaking of Evolution, this time it was a smaller jump, from 2.0.4 to 2.2.2, and it went schmoovely (unlike with FC3).

I'll keep reporting on my experiences as I go along, but at the moment, FC4 gets both my thumbs up. Besides giving me far fewer upgrade headaches than FC3, it looks a lot better and feels a lot snappier (the interminable boot process from FC3 seems to take half the time now).

[Uche Ogbuji]

via Copia

X-Chat and irc:// URLs

I was wanting to get to the CherryPy IRC channel and I had the handy URL irc://irc.oftc.net/cherrypy. I could fiddle with the URL bits in the server dialog box, but I wondered why I couldn't just get X- Chat to swallow the URL whole. Turns out this is not a capability that X-Chat is all that eager to present to users. Nothing on the FAQs, nothing in the menus, and nothing without a lot of digging in the on- line help. There is the command line: `xchat irc://irc.oftc.net/cherrypy`, but this doesn't seem very useful in practice if you already have IRC sessions set-up for autoload. It basically just launches a new X-Chat session with all your defaults, and seems to ignore the URL you specified on the command line (I'm using X- Chat version 2.4.0). I've seen others voicing similar complaints.

Anyway, the recipe I found that works for me is:

  • Create a new tab (Ctrl-T)
  • Type /server [irc-url] in the entry line (e.g. `/server irc://irc.oftc.net/cherrypy`

Works well, but shouldn't be such a deep secret. What X-Chat really needs is an "Open URL" menu item. Simple as that. And it really needs its command line behavior cleaned up if it wants to be the default handler for irc:// URLs clicked in other apps such as browsers.

[Uche Ogbuji]

via Copia

Media type for .xslt

Apache uses /etc/mime.types by default to map file extensions to Internet media types (IMTs), a.k.a. mime types. Unfortunately, for most Linux distros this file does not have an entry for .xslt, just .xsl (Fedora Core 3 doesn't even cover .dtd, though SuSE does). I prefer the .xslt, although I admit that preference is a crufty one, dating from before .fo because mt edominant extension for XSL- FO. I ended up hacking my IMT mapping to make sure it has:

text/xml                        xml dtd xsl xslt

I had to restart apache2 for this to take. I expect Apache caches the mappings.

Of course, in that move I sidestepped the whole debate over XML media types ( 1 2 3 4 5 6 7 8), etc. In particular, I chose not to use application/xml or `application/xml +xslt`, in part because I was unsure of UA compatibility. And don't even ask about Microsoft's rogue text/xsl, lest I embark on a long polemic about corruption and pestilence.

[Uche Ogbuji]

via Copia

Don't wait for your distributor; upgrade that Firefox RPM right away

"HOWTO: How to build Firefox 1.0.4 RPM from Nightly Build", Thomas Chung

This morning, I’ve been seeing a lot of “Firefox exploits” in various news sites including [SNIP LIST]. This makes me to think “hmm, how long do we have to wait until Fedora Project releases their official Firefox updates?” “Is there a faster way of getting the latest Firefox build like RIGHT NOW?”

Yeah, brah. Just what I was wondering. See also "More Details on Arbitrary Code Execution Vulnerability".

The answer is YES! We can build Firefox 1.0.4 RPM from Mozilla/Firefox Nighlty Build Tree.

Oh. Smack. Let's do it.

First, I followed instructions in "HOWTO: How to create rpmbuild directory". You can probably skip this part if you don't mind a root-based RPM build, but I'll be wanting to do some Fedora RPM hacking later on so I might as well. As root, I installed the rpmdevtools RPM

# wget ftp://download.fedora.redhat.com/pub/fedora/linux/extras/3/i386/fedora-rpmdevtools-1.0-1.noarch.rpm
# rpm -i fedora-rpmdevtools-1.0-1.noarch.rpm

Then as my own user:

$ fedora-buildrpmtree

There'll be no output, but you should now find:

$ ls rpmbuild/

$ cd ~/rpmbuild/SOURCES/
$ wget http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-aviary1.0.1/firefox-1.0.4.en-US.linux-i686.tar.gz

Right now this build is the same as the release candidate announced by Asa Dotzler.

$ wget http://fedoranews.org/tchung/firefox/nightly/20050509/firefox.desktop
$ wget http://fedoranews.org/tchung/firefox/nightly/20050509/firefox.png
$ cd ../SPECS/
$ wget http://fedoranews.org/tchung/firefox/nightly/20050509/firefox.spec
$ cd
$ rpmbuild -ba ~/rpmbuild/SPECS/firefox.spec
$ sudo rpm -Uvh ~/rpmbuild/RPMS/i386/firefox-1.0.4-20050509.i386.rpm

You might have to su to root rather than sudo on that last command, depending on your set-up. Now just checking:

$ rpm -q firefox

Bet! There goes that round of 'spoits (let's hope).

[Uche Ogbuji]

via Copia

4Suite 1.0b1 for Fedora Core 4 Test 3

Hooray! The 4Suite RPM shipped with Fedora Core 4 Test 3 release is "4Suite-1.0-8.b1.i386.rpm", according to the RPM list. As Dave Pawson and I found out a few days ago, this is 4Suite 1.0b1. I was worried it may not make it all the way through FC quality control in time, but seems it did. I need to try out FC4T3 on one of my non-critical machines this weekend. I also need yet another non-critical machine so I can check out all the hype about Ubuntu.

[Uche Ogbuji]

via Copia

4Suite 1.0b1 via yum?

Dave Pawson was asking how to grab 4Suite using yum. I'm still yet to post a follow-up based on Dave's earlier question, and thanks to Eric Gaumer for carrying on the thread in some of the direction I'd planned, and I'll try to get back to that topic today. Anyway, Dave and I weren't really successful getting 4Suite 1.0b1 yum. I'm posting here for reference to our journey, and in the hopes that someone can help.

I use apt rather than yum, so i had to remember the right yum mojo again, but I started by looking at what I had on my system:

# rpm -q 4Suite

OK. That's odd. 4Suite 1.0 is still in beta, so that's a strange version number. So I found out the real version number:

# rpm -ql 4Suite | grep "Xml/__packageInfo__.py$" | xargs grep

"^version" version = '1.0a3'

Ah. I see now. They omitted the "a" part. Well, it's one 4Suite release behind—not bad, but there are so many improvements in 4Suite 1.0b1 that you should really get the latest.

I went looking on google and found a promising candidate, 4Suite-1.0-8.b1.i386. This looks like it's in fedora-devel, so I tried looking at how to add that repository. I found help on aaltonen.us, where you can find the following yum repo spec:

name=Fedora Core $releasever - Development Tree

I handed this off to Dave to try out (turned out the magic incantation is yum install 4Suite.i386). But the resulting chain of dependencies was way too far out on the bleeding edge. Dave was seeing updates to the likes of "perl, python, libxml, mysql kde, gnome, k3b the list goes on!":

I can't see that this is a true dependency from 4suite Uche?
Error: Missing Dependency: libdb_cxx-4.2.so is needed by package openoffice.org-libs
Error: Missing Dependency: libedataserver.so.3 is needed by package openoffice.org
Error: Missing Dependency: libebook.so.8 is needed by package openoffice.org
Error: Missing Dependency: gcc = 3.4.3-22.fc3 is needed by package gcc-g77

Oops. Ouch. The problem with the RPMs seems to be that fedora core is still testing the transition from 4Suite 1.0a3 to 1.0b1, and that's quite understandable. I look forward to seeing the more recent version in fedora core base.

At this point I advised David to ditch yum, just use the .src.rpm from the official 4Suite download and use rpmbuild to make himself a package. That also turned out to be a dead end: the spec file in the 1.0b1 release appears to be borked. Our fault. Ay ay ay. One of those days. I'll make sure it's fixed before the next release.

In the end Dave installed 4Suite from source, using "setup.py install", and all was well. I should have just told him to do that from the start.

Meanwhile, some notes from the fedora-devel 4Suite-1.0-8.b1 RPM.

The description is way out of date. I think it's 2 years old or more. For one thing 4Suite hasn't included 4DOM in aeons. I suggest the Fedora maintainers take the description from 4Suite.org.

Also, it requires "PyXML >= 0.7", but we dropped that requirement in the 4Suite 1.0b1 release.

Finally, it says "python-abi=2.4" is required. I suppose that might be FC3 maintainer preference, but I did want to mention that Python 2.2.3 is sufficient (though we do recommend 2.3.5).

[Uche Ogbuji]

via Copia