LWN.net Logo

Does the Linux Desktop Innovate Too Much? (Datamation)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 19:27 UTC (Tue) by cantsin (subscriber, #4420)
Parent article: Does the Linux Desktop Innovate Too Much? (Datamation)

I dare to opine that the big Linux DEs "innovate" on the wrong end - trying to match (or outdo) the usability and appeal of Apple's and Microsoft's proprietary desktop offerings by essentially hiding the Unix/Linux-GNU operating system and giving users no access to and clue of its core strengths. It starts with such simple things as pipes: why do KDE and Gnome have to invent, throw away and reinvent their own incompatible interprocess mechanisms with every major release, while stone age X11 apps such as gv actually support standard Unix pipes? Why don't desktops natively integrate support for revision control systems like Subversion and git? Why don't their file managers use rsync to speed up file copying? Why can't a drag-and-drop printer icon map the lpr command? Why don't desktops make use of the power of regexs and tab completion, or have decent GUI wrappers for find and grep [instead of implementing their own sub-par file search and indexing software]? Why can't they interface with FUSE for virtual file systems? Why can't there be ultra-efficient desktop control of remote computers via ssh [just by sending Unix file manipulation commands over the line]?

The list could go on and on. Of course, I'll take the point that I should write or initiate such a DE myself for which I don't have the time or skills. Still, the disconnection between the quality of low-level tools of Unix/Linux and Linux GUIs is sometimes is quite depressing.


(Log in to post comments)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 21:15 UTC (Tue) by boudewijn (subscriber, #14185) [Link]

Many of those things you mention, such as wrapping "find" and "grep" were
wrapped, in the early days, and it turned out that wrapping them would
never give a satisfactory user experience. And that holds for nearly
everything in your list. It's been tried, and found wanting: and that's
the answer to your why's.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 7:34 UTC (Wed) by nix (subscriber, #2304) [Link]

Printing is a pretty good example. It used to map lpr, and still can: but
people expect to be able to e.g. control the doublesidedness of their
printing from a GUI, and there's no way lpr can do that. (It has options
you can set --- they differ on a site-by-site basis and many sites have
none. Great.)

They expect to be told when the printer is out of paper. They expect to be
told when printing has finished. lpr, even LPRng, can't do that.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 8:41 UTC (Wed) by cantsin (subscriber, #4420) [Link]

It's a good example indeed - if such issues exist, they need to be fixed in lpr (i.e., more generally, in the general operating system infrastructure), and not in the GUI.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 13:34 UTC (Wed) by nix (subscriber, #2304) [Link]

Er, they were fixed. The fix is called CUPS.

The GUI obviously needs to change as well, because it has to *ask* the user about things like duplex if the user is going to be able to configure that (and it's something the user might reasonably want to configure differently for each job). If you choose to use LPR (and in KDE at least you can choose your printing backend every time you print something: CUPS has an lpr command too), then you lose that functionality.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 16:21 UTC (Wed) by muwlgr (guest, #35359) [Link]

Eric Raymond wrote a pair of nice reviews about his CUPS experience, remember ? Do you think our continuous innovation has made these reviews less true with the run of time ?

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 19:17 UTC (Wed) by nix (subscriber, #2304) [Link]

Given that the CUPS author has said that every single complaint in that
review was addressed before the review was even published, sure.

(I still prefer LPRng for one major reason: file(1)-based scripting of the
translation pipeline is much easier because you can just use shell
scripts. As far as I can tell with CUPS you need C. Annoying.)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 25, 2009 21:03 UTC (Thu) by spitzak (guest, #4593) [Link]

I'd like to ask the opposite.

Why can't the command line "mail" run my mail setup?

Why isn't there an "open" command that "does what double clicking the icon does". (yea there is gnome-open but "gnome-open *" is not the same as selecting all those icons and typing ^O), besides why should I have to know what DE I am running (there is "kde-open" too...). Better yet, why not just have a filename be a "command" to the shells and it acts like double-clicking?

Why isn't there a reliable "ask question" command that pops up a dialog, or a more elaborate "construct this dialog box, let user fill it in, and return when they hit OK"? Then scripts could have GUI's. Better yet, lots of GUI programs could *call* these programs to do things. If Linux programs called something to do the file chooser and users could replace this program, I think within a few months it would go from having the worst file choosers in the world to having the best ones.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 26, 2009 4:15 UTC (Fri) by walters (subscriber, #7396) [Link]

Why isn't there a reliable "ask question" command that pops up a dialog, or a more elaborate "construct this dialog box, let user fill it in, and return when they hit OK"?
zenity --help-question

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 26, 2009 6:44 UTC (Fri) by cantsin (subscriber, #4420) [Link]

Why can't the command line "mail" run my mail setup?
What do you mean with "mail setup"? A configuration dialogue for your E-Mail client or MTA? (If you mean reading your mail, then "mutt" or "pine" does what you ask for. If you have no use for the traditional Unix mail command, you can alias "mail" to mutt.)
Why isn't there an "open" command that "does what double clicking the icon does".
There is - "run-mailcap" (respectively "see"), a command that's probably decades older than Gnome and KDE, or the more recent "mimeopen".
besides why should I have to know what DE I am running
Exactly.
Better yet, why not just have a filename be a "command" to the shells and it acts like double-clicking?
You mean, enter the filename in the shell and have the file opened with the associated program? That's already the default behavior of the shell I use, zsh.
Why isn't there a reliable "ask question" command that pops up a dialog, or a more elaborate "construct this dialog box, let user fill it in, and return when they hit OK"?
man dialog. Dead-easy - there is no simpler way of creating what you describe.
Then scripts could have GUI's.
They already can - see above. For more complex X11-based stuff, there are GTK and QT bindings for all major scripting languages.
Better yet, lots of GUI programs could *call* these programs to do things.
Sorry, but your posting really seems to be the practical proof that the current design philosophy of Linux GUIs cripples, hides and makes people forget what has been possible (and standard) in Unix since its earliest days. Unix is all about that any program can call any another program, redirect standard output and input, and even run nested programs to construct its input parameters.
If Linux programs called something to do the file chooser and users could replace this program, I think within a few months it would go from having the worst file choosers in the world to having the best ones.
Yes, GUI programs would only need to follow the Unix standard of runtime arguments and input pipes, and the file choosing mechanisms could be abstracted and generalized. On the command line, this has been standard since 1969. This is why, for example, all command line programs benefit from the advanced file completion ("choosing") mechanisms of bash and zsh, and not just a handful of hypothetical programs specifically written for one of the two. The nightmare of having a bunch of "bash-native" command line programs and a bunch of "zsh-native" tools, and another bunch of tools which could use neither the advanced features of any of the two shells, is exactly the kind of design fragmentation and usability nightmare existing on the Linux desktop today.

So, yes, KDE and Gnome have thrown out the Unix baby with their GUI bathwater, and created a mess. We still have to wait for a desktop/graphical shell that honors the standard OS mechanisms to give people the full power of Unix.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 26, 2009 6:59 UTC (Fri) by njs (subscriber, #40338) [Link]

> (yea there is gnome-open but "gnome-open *" is not the same as selecting all those icons and typing ^O), besides why should I have to know what DE I am running (there is "kde-open" too...)

'xdg-open *' works for me. (I recommend 'alias o=xdg-open'.)

Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds