Deficiencies in resolving dependencies limit Linux’s appeal

I’ve been spending a lot of time lately trying to get a fairly sophisticated software package installed. I’ll fill you in on the specifics when I’ve succeeded (he said optimistically). My main stumbling block has been resolving package dependencies — what you need to have installed already in order to get the application you want to install to work. Dependency handling is a huge stumbling block Linux has to overcome if it hopes to gain wide consumer acceptance.

The dependency problem is a necessary artifact of software development. Developers take advantage of existing code libraries for common functions; it makes sense not to duplicate work that’s already been done. They depend on the same libraries being on end users’ target machines when their applications are compiled and linked there. If the libraries are missing, you can’t build executable code.

One distribution, Debian, with its apt-get feature, seems to work quite well at fetching and installing code fragments it knows about. But apt-get depends on available packages being packaged into DEB binary files, and not all developers bother to create these. Apt-get also relies on a file on each client’s machine that lists servers that hold available content. If you’re looking for a relatively obscure library or package, even if it’s available in DEB format, you may have to edit the list to help Debian find it.

Of course, you can install binary executables without building them, but these files often depend on the presence of external object libraries. However, binary packages such as Red Hat’s RPM format don’t work for every distro, and they don’t always solve the dependency problem. You still have to resolve install dependencies manually before you install the RPM.

Another way to avoid dependency problems is to install only programs already packaged for your distro. That limits your choices, however.

Guess who does it better?

I can think of one operating system that doesn’t have a problem with dependencies — Microsoft Windows. You typically never build Windows applications from source. Because a single company sets the standard code base, developers know that every Windows computer will have a certain set of libraries, which they can use with confidence. New versions of the operating system install new versions of the libraries, and the updates do sometimes break existing software — a syndrome commonly known as “DLL hell” — which goes to show how difficult it is for even a monolithic organization to solve this problem.

If only Linux had a single overarching authority that would demand, or even strongly suggest, that a certain set of libraries be installed by default with every distro. Of course that kind of authoritarian approach is anathema to today’s open source community, where freedom is the compelling value even at the expense of ease of use. Will projects like the Linux Standards Base improve the situation. We’ll see. Until the culture changes, I see little hope of resolving the problem of complicated software installation.

Absent a benevolent dictator’s decree, perhaps the parties responsible for the distros would take it upon themselves to load up on development libraries. They could offer a minimal install for folks still trying to run Linux on 486 boxes and a normal install for the rest of us that includes as many common libraries as possible.

Even if that were to happen, it would be only a first step toward a solution. Utilities like urpmi, up2date, apt4rpm and OpenPKG may be a step in the right direction, especially if they become widely adopted. Until we have a universal tool for resolving application dependencies, we can’t expect casual users to be able to install their own applications.

Free music celebrates 20 years

The concert hall lights dim. A bespectacled man in a tux takes the conductor’s podium and raises his baton. When he brings it down again, beautiful music starts to play. Welcome to a performance of the Musicians Open Source Artists Instrumental Collaborative (MOSAIC).

To a casual audience member, MOSAIC has the same look and feel as the dominant symphony orchestra. But in this organization members play only instruments in the public domain — no Moog synthesizers here. They don’t charge for their talents, though if you want to see them in person you may have to pay to rent a seat.

The orchestra can trace its beginnings to 1983, when composer Richard M. Straussman was gored by a large African antelope (“it’s a long story” is all he’ll say about the incident) and forced to spend time recuperating in Cambridge, Mass. Up to that time, Straussman was best known for compositions under the pseudonym “E. Max.” During this time when he was forced to associate with people in the real world (mostly nurses, “so it was a mixed blessing,” he says), Straussman realized how little appreciation people had for free music. “I considered that the golden rule required that if I liked a symphony I had to share it with other people who might like it.”

Straussman published what he calls his “gnu music manifesto” on a bulletin board at Boston’s Symphony Hall, signing it with his initials RMS. He attracted a few like-minded individuals and built a core set of woodwind and brass players that played old classics and developed a few new works. Their work was mostly relegated to the back alleys of musicdom for many years, however.

The project didn’t really take off until more than 10 years later, when Finnish conductor Linus Stokowski joined the project and somehow began attracting not only clarinetists and trombones, but strings, percussion, and even keyboards. MOSAIC’s numbers grew, as did its fan base. In recent years, MOSAIC has even attracted corporate sponsors, one of whom has spent more than $1 billion producing MOSAIC music.

Despite this, no one involved with MOSAIC is getting rich. This may be due to the organization’s unique distribution system. The orchestra makes its works freely available through FTP downloads and peer-to-peer file sharing. If, however, you want a CD of music, you can pay the company a modest fee to ship it to you.

Critics have questioned whether MOSAIC’s music is ready for desktop players. Some, feeling that you can only be comfortable with music that costs money, wonder whether there’s a place for MOSAIC at all. Others maintain MOSAIC recordings might have a role on room-size systems, but still feel music fans are generally better off with their own orchestra. Conductor Linus Stokowski maintains, however, that “MOSAIC is scalable from the desktop to the concert hall, and even plays well on handheld devices.”

MOSAIC has been attacked in the press and recently sued by the Symphonic Closed/Open Repertory Ensemble (SCORE), which says it owns the music MOSAIC has been playing. Linus dismisses the claims, saying, “They are smoking what jazz musicians smoke.” Still, critics are waiting for the courts to give their opinions before the critics themselves affirm MOSAIC’s worth.

Music users aren’t waiting, however. MOSAIC is growing in popularity monthly. There’s even a MOSAICworld conference in San Francisco every year, which includes seminars on musical techniques as well as booths for fans to popularize their favorite works.

Straussman recently looked back with pride at how his brainchild has taken off in 20 years. In recent years RMS has spent less time directly involved with music and more time on liberal social causes. Next month, for instance, he will head the Recall Schwarzenegger initiative in California.

Linus, on the other hand, still mounts that podium almost every night. He says he still gets a thrill out of knowing that free music, like free speech (not free wine spritzers), is alive and well.

WordPress Themes