Tuesday, December 2, 2008

Fixing Linux: What's (Not Really) Broken And What To Do About It

This article made Slashdot, so I'm going to beat it apart section by section here. It's not that I think the system we've got is perfect -- see my rants on my specific printer, TV-out on a Radeon, and a crap=load of complaints about Ubuntu in particular, but these are not systemic problems. They are simply QC. They are details that slipped under the radar (or, in the worst cases, simply ignored). On with it, then.
or InformationWeak?

Package management

It works. Well. You use Yum if you are on an RH-style system, YaST if you are on a Suse-style system, and Apt for Debians. You don't need to know that, though. You just fire up your graphical package system (Add/REmove or Synaptic or whatever) and choose. It's downloaded and installed. You stay with your repositories. You don't add a bunch of stupid crap not made for your system. You definitely don't try to shoehorn stuff into the system if you want it to be stable.

Ubuntu was talking about a single-click repo add a while back. Really bad idea. Easy, yes -- dangerous, moreso.

Would it be nice if everyone just gave up years of work and standardized on RPM or Deb? No, not really. Heh heh. The truth is that it doesn't matter. Windows users that want to download a program need to look up in a table to find the one they need. If you want to download Skype as a Linux user, you do the same thing. No biggie.

But, really, we don't want individually downloadable applications. If anything, I want the $DISTRO store to handle that for me. I give my CC number to one group. I trust them. They check the binaries for nasties. I download from the store, and it has a nice built-in tool.

Configuration Files

I don't want the Windows registry on my system. He does. I wrote about someone on the FD.o list trying to make something like this. See where it went? People don't want it. Period.

Sure. Some files are Bash-style. Some are PHP-like. Some are XML. Who cares? I never need to edit them. I use a GUI. The guy wants "self-documenting config files." We have them. The files are well documented. Did he ever read one of them? It takes a lot of work and stupidity to fuck up a Samba file.

Kernel ABI

We don't want a stable ABI. Linus wants to "innovate." A stable ABI means that you can't go in some new direction. The unstable ABI means that it's really difficult for automated worms to propogate. Win-win. If you are a develpper and want to support multiple systems, recompile. Use a compile farm. There are several to choose from. If you are a minor distro with no chance of developer interest, use a kernel compatible with some major distro.

There. I fixed the problem for you.

Native File Versioning

File versioning is disk expensive. Very few people need or want it. Yeah, btrfs is going to have this. I'm pretty sure that it won't be used for most parts of the system. Who wants recoverable temp files? If you want to do this right now, use SVN for /etc and /home. You're done. I agree, though, that nothing exists like Time Machine (no, not the graphics). It would be nice to undelete one contact.

Audio on Linux

I think he cribbed LHB on this one. Yes, PulseAudio sucks right now. I have no idea why it went mainstream when it did. ESD, though, worked well for desktop use for years. There was no locking problem. espdsp solved any legacy problems. Very few people needed the kind of performance JACK offers. Plenty of people just used ALSA straight.

Pulse is now getting mature, though, and all this difficulty during change is going bye-bye.

Graphical User Interface

To that end, what's needed is a single steering committee for all GUIs that work on Linux, so that whatever GUIs are created -- be they GNOME, KDE, or not-yet-invented -- will have a consistency of implementation on the backend, and make it possible to have tight integration of features with the kernel, a la BeOS. 
We have it. At the desktop level, it's called FreeDesktop.org. The desktops you want are called "FD.o-compliant." Do your research before flaming.

Integration Of X11 With Apps

X shouldn't die. Let's not work around the problem by saying "When it dies, I want to recover nicely." Let's fix the problem with dying. Removing your NVidia or ATI binary driverwill probably go a long way toward that.

X is a networking system. I've done lots of forwarding (including early LTSP), but I'm not an expert. I'm going to guess, though, that what he wants completely destroys the networking aspect and one of the great features of X.

Commercially Hosted Backup And Restore

We have Box.net for Dell and for GOS. We have DropBox for others. Pretty much any distro can create a partnership with some of these folks. Some of the distros do it now. Some don't. Choose one that does to get the functionality you want. There. Easy.


Most of what's wrong with Linux is in the eye of people who want it to be something else. It's Free Software. Make it that something else, eh? If people want it, they'll come flocking. It worked for Ubuntu. It worked for Gentoo before that. It'll work for you.

Yeah, I said it: "if you want it, write it yourself." I broke the taboo. So sue me.


Post a Comment

Other I' Been to Ubuntu Stories