Ease of Use: Software Installation on Linux

by Harold Martin

Related link: http://freshmeat.net/articles/view/774/



There have been plenty of articles about Linux's ease-of-use. Everyone from developers to end users to the ever-commenting media pundits has something to say about it. Of all the articles, it's generally someone who has used Linux as an new user whose opinion needs to be given the most value. This isn't to say developers opinions aren't valuable, but most average users aren't developers. And even some developers are frustrated.

So what's all this frustration complaining about? I would hypothesize that it surrounds two thing: difficult software installation (which I'll focus on today) and too much half-baked software. Bad software design is on every of course and even some platforms themselves are poorly designed, but it's particularly frustrating when you just spent an hour trying to install it.

There are two basic ways to install software on Linux: building from source and installing from using a packaging system. They each have their faults:

Average users simple can't/won't install from source.

The packaging systems are too fragmented too provide a compelling anough experience for the end user. Most importantly, perhaps, is that almost all but the "really big" software developers don't provide easily downloadable packages (I'm particularly speaking to rpms here, since RedHat is the distro most users will probably use, or at least start with).

So why can't simple binaries be provided, which would seem to be the simplest way to install software? I came up with two possible answers:

Developers are too lazy/indifferent to compile software for the users (this obviously isn't the case).

Developers can't have access to and compile for every availible platform.

Developers can't be sure that any one user has the libraries needed to use his software. Be sure to note that this problem also plagues packaging systems.

So what's the solution? The answer is not another packaging system. I can only believe the solution lies in standards. Here's an outline of what would happen:

There would be layered, cross-platform standards for different purposes. So there could be:

The GUI standard (where X and interfaces to GUI libraries were availible)

The Sound standard (where interfaces to sound libraries were availible)

The 3D standard (interfaces to 3D libraries)

and so on.
There already are example of this (such as ODBC).

There are already the beginnings of this type of system (LSB).


There are projects that would die.

There is a huge rift along the desktop environment lines.


But the end user would benefit.

Is software to hard to install on Linux? Are multi level standards a possible solution?


8 Comments

anonymous2
2003-04-05 17:58:06
The Debian packaging system is good

In my opinion the "apt" style packaging system works well.


Newer GUIs for apt are getting easier to use.

kollivier
2003-04-05 22:02:25
Standards don't resolve the problem
I don't think more standards are the answer. What I don't understand is why Linux folks are all using a client/server (mainframe?) filesystem for a desktop. What desktop user can maintain a filesystem where things go to /bin, /etc, /usr, /var, /opt, etc.? Only people who really, really know their filesystem and have a deep understanding of the OS. (In other words, sys admins and programmers.) This practice is non-intuitve and it necessitates complex package managers to work with a complex filesystem.


Yet, almost all the solutions proposed so far do not address this issue. People talk about "consolidating" and "standardizing" but these solutions avoid the complexity issue rather than dealing with it. In fact, it treats the filesystem as if it's set in stone and is something people need to "work around". As long as the Linux filesystem is this complex, IMHO, it will never really hit off on the desktop.


Fortunately, one project is developing an OS X (and before that, RISC OS) approach to file management and program installation. It's called the ROX desktop. (Link: http://rox.sourceforge.net/) Here's how you install a ROX program:


1. Double-click on the .tgz tarball to extract. A program folder appears (with all files necessary bundled inside that folder)
2. Double-click on the folder icon to start the program.
3. There's no step 3. =)


If you like the program, drop it into your "Apps" folder with the rest of your programs. If you don't, trash it. (Deinstallation is easy too!)


End users can understand this, and more importantly, they actually have *control* of the process. The computer isn't doing all sorts of magic tricks for them or treating them like they are too dumb to figure out how to install a program. Heck, it's easier than Windows!


I personally think this is an adequate, if not ideal, solution to the problem of program installation being so difficult.

anonymous2
2003-04-05 22:28:42
Problem with Packages
The systems that taught easy package installations usually assume your able to shell out $30-50/month for broadband.


Whatever happened to the "software on tape clubs" of the "toy" computers of the early 80's??


I think I'd pay $5/month for a DVD packed with the latest stable release packages...$10 for 2, etc.

kbixler
2003-04-06 14:55:52
Look to OS X for the solution
What I would really like to see is a method of installing software on Linux that is as easy as installing on OS X.


A lot of newer software for OS X is delivered on disk images. You double-click the disk image and the virtual disk is mounted. You then drag the application from the virtual disk to wherever you want it to be installed.


Since OS X bundles resources and custom libraries within the app you don't have to run a installer. What appears to the user to be an app is actually a folder with a well defined set of sub-folders containing all the bits and pieces that are actually needed.


Like I said, I'd like to see something like this for Linux, but I really doubt that you could get enough people to agree that it's a serious problem that needs fixing.

kollivier
2003-04-07 09:33:14
OS X/RISC OS-like desktop project
Actually, as it turns out there is a Linux desktop, called ROX desktop, that treats applications very similarly to .app bundles. Check it out at:


http://rox.sourceforge.net


This format resolves a lot of the usability problems I have with software installation on Linux. (extract the tgz, then double-click to start!) The major effort from here would be in converting Linux apps to work with the "App dir" format. If a decent portion of the Linux community were to get behind this project, it could make a user-friendly Linux desktop a reality.

anonymous2
2003-07-07 16:04:31
unix better
var, opt, and so on are`nt unintuitive. far worse is the seriously messy directory structure of windoze. Why does nt4 have a directory named inf, but place a number of inf files in system32?. It then of course complains when they`re moved. system32 is the biggest mess of all. This reflects the overall poor design of windows. os/2 has more specific directories for dlls and other files. By comparison with both, the unix method is a model of order and clarity, for all the ose`s other faults.


As for installation, obviously binaries must be provided as well because it`s really frustating to download something to test it and have to wait too long to run it. Neverthless, why should`nt everyone be encouraged at least sometimes to compile their software from source use the console, etc, instead of relying on the gui all the time, providing that it`s made quite clear what`s needed and how to do it? If new linux users could be gently and sucessfully steered towards being a bit more technical, it would naturally be good.

anonymous2
2003-11-15 08:09:13
Installing software on Linux
About amonth ago I tried to switch from Windows to Linux only to find out that installing software is almost impossible. In today's enviroment end users are constantly adding software, i.e. for digital cameras, scanners, video editing, etc. Linux will never be competative with Windows as long as software installation can only be done by system administrator or developers. Running Linux 4th Edition O'Reily dedicates an entire chapter to Updating Software, I thought computers were supposed to make life easier not more complicated. Needless to say I switched back to Windows. As much as I dislike it, Windows is easier to use and much better documented.
anonymous2
2004-01-12 15:57:49
Installing software on Linux

Who paid you to write this load of bullshit ?? Installing software under Linux is undoubtedly not as easy as under Windblows where any moron could install proggiez all over the place ... It takes a minimum of computer and OS knowledge to do dat ... which motivates users to read, do research and constantly learn new stuff about computers ... and anywayz Linux is not MEANT to make life easier it an development OS as opposed to WindBlows which is an OS that is as easy as pressing ctrl+alt+del ....