LWN.net Logo

Does the Linux Desktop Innovate Too Much? (Datamation)

Bruce Byfield wonders if the Linux desktop is evolving too quickly. "Is there a compelling argument for innovation? Or has the free desktop reached a point where it satisfies most users and any attempt to change its current state is going to be regarded as an unwarranted intrusion on the average person's activities?"
(Log in to post comments)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 19:31 UTC (Mon) by muwlgr (guest, #35359) [Link]

Hell, let's first fix memory leaks in our flagship video driver (Xorg-Intel), only then discuss higher matters. You could more or less easily ignore these innovations desktop developers are trying to inflict on you. But when your X server's VSZ bloats above 2GB in the first day of use, this is much harder effect to ignore.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 20:11 UTC (Mon) by christian.convey (subscriber, #39159) [Link]

Feel free.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jul 2, 2009 21:01 UTC (Thu) by gvy (guest, #11981) [Link]

Did you ever understand "don't fix what ain't broken"?

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 20:37 UTC (Mon) by pheldens (guest, #19366) [Link]

I wholeheartedly agree, for ATI. And in general.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 6:22 UTC (Tue) by aseigo (guest, #18394) [Link]

well, we need to both.

we need to tighten down the weak points, but we also need to innovate. we are big and determined enough, as a group, to do both. and it will take both.

now, if people held the Intel x.org team or the PulseAudio project's feet to the fire half as much as they do the KDE project, we might see some _real_ progress. ;)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 0:11 UTC (Wed) by MattPerry (guest, #46341) [Link]

> We need to tighten down the weak points, but we also need to innovate.

Do you need to innovate or just want to innovate? What are the risks of not innovating at all?

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jul 27, 2009 9:43 UTC (Mon) by jospoortvliet (subscriber, #33164) [Link]

Twofold. First, innovation is good for the developer community - keeps
things interesting and fun. And we need developers... Secondly, if you
want to beat your competition, you have to be better. And copying is a
sure way to never be really better. If you're Microsoft, you don't have to
cuz you can use your market power, smart marketing and other tricks to
still outsell your competition. We don't have those, so we have to have
something which is clearly ahead.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 16:26 UTC (Tue) by pr1268 (subscriber, #24648) [Link]

Didn't you know that the Xorg-Intel memory leak is one of the innovations Mr. Byfield is commenting on?

Just kidding. :)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 19:44 UTC (Mon) by pr1268 (subscriber, #24648) [Link]

I think that the Linux desktop tries too hard to please everyone (thus the over-innovation claim), but then again this isn't always a bad thing. With developers all over the world contributing, and a huge diversity of ideas and wish list items, it seems natural for the Linux desktop to try out every new idea that someone thinks up. The real benefit is when the not-so-good ideas are filtered out leaving the best ones (I'm thinking mostly of user interfaces here).

As for Mr. Byfield's comment that "KDE 4 users will likely say that KDE 3.5 was better...", well, I would claim that this is because of all the bugs in KDE4 (at least what I've read here at LWN, KDE 4.0 was at best an undercooked "beta" release). DISCLAIMER: I'm a satisfied KDE 3.5 user who hasn't (yet) tried the latest KDE 4.x release.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 21:02 UTC (Mon) by horen (subscriber, #2514) [Link]

With dual 1.4GHz CPUs and 2GB RAM, turning Desktop Effects "ON" (Linux Mint 7 + KDE/4.2.2) in order to get translucent panels causes system response to stutter 'n stop. What is this... M$Windows??

Sure, KDE/3.5.10 doesn't have this issue, or other, more important ones; but I guess I'm just an optimist.

Actually, I moved to KDE/4.2.2 so that I can assist my much-less-savvy Linux-user friends.

Do we really need KDE4? desklets? widgets? thingamabobs 'n gimcracks? I don't think so, but what's done is done.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 21:11 UTC (Mon) by Kit (guest, #55925) [Link]

And what video card/drivers do you have? That'll make a much larger impact that the stats you listed. Have you also tried switching to using XRender instead of OpenGL?

>Do we really need KDE4? desklets? widgets? thingamabobs 'n
> gimcracks? I don't think so, but what's done is done.
Do we need a desktop? Do we need X? Do we need this fancy-pants 'Linux' kernel? Do we even need computers! 'Need' isn't a very good way to judge this things, because everyone has different needs, wants, and desires.

>Sure, KDE/3.5.10 doesn't have this issue, or other, more
>important ones; but I guess I'm just an optimist.
KDE 3.5.10's version of the feature is highly primitive, dating back to basically nothing more than the very early version of XComposite and xcompmgr. Kind of hard to compare the two when 4's version is capable of so much more (including countless non-eyecandy things, like accessibility improvements).

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jul 3, 2009 12:06 UTC (Fri) by Duncan (guest, #6647) [Link]

Heh, yeah, KDE's 3.5.10 version of the translucency feature may be
primitive, but at least it actually works, without bringing the whole
desktop to a crawl, or worse yet, killing it.

Graphics card? I have what was for years top of the line for freedomware
support, a Radeon 92xx, near the last of the r200 chip series. I'm
running at dual 1920x1200, stacked for 1920x2400. It works well in
2D/exa/composite, but OpenGL is limited to a 2048x2048 square, so the
bottom half of my main (bottom) monitor doesn't get OpenGL support.

But it doesn't appear KDE4's system can deal with that, so it disabled the
OpenGL effects for the entire thing. Well, that wouldn't be that much of
a problem, except for two things (as of KDE 4.2.2, I haven't tried newer
tho I have both 3.5.10 and 4.2.4 installed, I use 3.5.10 pretty much all
the time).

1) Switching to xrender only effects doesn't disable or otherwise indicate
that the OpenGL effects won't work, so the only way to find out what works
is by trial and error, with most effects apparently being OpenGL-only and
thus doing absolutely nothing. Perhaps this is fixed in 4.2.4, or at
least hopefully will be in 4.3.0. But that has been one of the biggest
frustrations, having all these effects to choose from, but no indication
of what will actually work in xrender mode, with most of them doing
nothing.

2) Xrender effects themselves sllllooooowwwww ddddooooowwwwnnn ttthheee
dddeessssssskkkkktttoooppppp
ddddrrrraaassstttttiiiiccccaaaallllllllllyyyy !! If the supposed
primitive KDE 3.5.x can handle it without serious slowdowns, what's wrong
with KDE 4.x that it can't handle exactly the same basic features
(transparency, no drop-shadows, no fade) at at least the same speed, if
not faster, since it's supposedly new and improved? Yes, that's as close
as I can get to apples2apples comparison, only transparency enabled not
the other effects, same xorg config and hardware, etc, yet the 4.2 version
has been terribly slow. Actually, it's so slow the system automatically
disables it at times, which it should if it had to be that slow, but that
the same features on 3.5.10 work with little slowdown (as long as I'm
running exa not xaa, which I am), while 4.2 is so slow the system is
automatically disabling it, says a lot about the issues 4.2 still has, or
at least had at the 4.2.2 stage when I last tried booting it.

The biggest other problem isn't desktop performance, but an apparent lack
of a decent replacement for the kicker ksysguard applet. As I mentioned,
I've a decent amount of screen real estate, and on 3.5 (and from 3.3 or so
I think before that), I run a big kicker panel at the top, mostly filled
with system performance plotters (4x core usage, 1 min load average,
physical memory usage, swap, multiplexed disk activity, downstream and
upstream network, 4x core temps, 2x other system temps, 16 plotters @ 93
px wide each, 300 px high, total width 1488). I've yet to find a similar
working solution in KDE4. It has ksysguard, but I don't see a plasma
applet for it, and a standard app just doesn't work like a panel applet in
terms of interaction with other apps (always visible, maximize comes to
the edge of it only, not covering or being covered).

I've been going to try to code up a karumba/plasma applet to handle it,
but haven't gotten the appropriately rounded tuit, yet. I keep hoping
there'll be a ksysguard plasma applet appear, but haven't found it yet if
it has.

But KDE 4.2 was vastly better than previous 4.x versions. It's getting
there. I don't know if I'll get around to trying 4.2.4 before 4.3 comes
out, but I'm hoping with 4.3, it'll work well enough to actually finally
switch, even if I do have to spend some time adapting. I also expect to
upgrade to an r500 based Radeon sometime soon, which should eliminate the
OpenGL and other graphics performance issues, I hope. We'll see. With
that and KDE 4.3, I'll have some serious recustomizing and habit changes
to do, but I expect/hope it'll be worth the pain of the switch, once I get
used to it.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jul 3, 2009 20:18 UTC (Fri) by nix (subscriber, #2304) [Link]

2) Xrender effects themselves sllllooooowwwww ddddooooowwwwnnn ttthheee dddeessssssskkkkktttoooppppp ddddrrrraaassstttttiiiiccccaaaallllllllllyyyy !!
sysprof the sloth (on an otherwise-idle system) and post the profiles on the xorg list. I had a problem like this with text repainting and scrolling with a 9250 and KDE 3.5.10's Konsole, and it turned out to be a combination of XAA sucking and (when I switched to EXA) the EXA glyph cache needing a defragmenter.

In typically amazing style, Michel Dänzer had a patch by the end of the day (though it took a few months to shake the bugs out).

If you provide enough info for people to diagnose problems, it's amazing how fast they can get fixed. But providing the info is *crucial*.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 2:43 UTC (Tue) by qg6te2 (guest, #52587) [Link]

Do we really need KDE4? desklets? widgets? thingamabobs 'n gimcracks? I don't think so, but what's done is done.

I wholeheartedly agree with your sentiment. Out of all the linux users in my workplace (roughly 100+ people), the vast majority really do not see the point in "widgets" etc. They just want an integrated desktop that's not full of bugs! In fact, many have simply given up on KDE or stayed with the 3.5 series.

My own personal view is that KDE 4 is an example of how _not_ to do software development. Yes, it's starting to stabilise now, but why did it have to get so broken in the first place ? While a lot of useful under-the-hood work has been done, this could have been done much smoother -- i.e. one step at a time, instead of effectively rewriting everything.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 6:20 UTC (Tue) by aseigo (guest, #18394) [Link]

realize that everything on your kde4 desktop, from the "start menu" to the pager to the taskbar to the clock to the .. is a "widget". the first step to understanding is to realize that there is no "widget" as a separate concept, and that people may want more than a list of windows and desktops to use, and that for _most_ people the idea of having things that can't move between their panel and their desktop is a bit odd. (very "geeky")

the second important thing to understand is that the widget approach allows us to take the efforts from one context, e.g. the desktop, and apply it to other contexts, e.g. a netbook or a phone.

what we ended up with in kde3 was something very compelling for a very specific use case on a very specific sort of hardware that was pretty much incapable of going forward from there.

we kept all the core engineering that remained useful, the bulk of kdecore/kdeui/kio/etc, added things that were missing (phonon, solid, threadweaver, sonnet, etc), and rewrote only what was absolutely stuck by design.

.. and it's now rather beyond what the replacement, that took some 8 years to develop, could do.

to sum up "KDE4" as "widgets" is a rather inaccurate statement (he says, looking at all the applications), but if we consider the concept of widgets, they allow us to give you your precious traditional desktop while not being anchored to big laptops and desktops and office worker geeks.

an interesting phenom amongst the geek culture is the tendency to reason themselves, using self-apparent but mostly guesswork logic, into positions that don't actually match the reality.

i remember, for instance, my friends who _swore_ by SGI in the 90s. yeah, great stuff. but no chance in hell in the real world. it's that same kind of analysis that i see far too often on these kinds of geek oriented web boards that makes my blood run cold.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 7:12 UTC (Tue) by qg6te2 (guest, #52587) [Link]

an interesting phenom amongst the geek culture is the tendency to reason themselves, using self-apparent but mostly guesswork logic, into positions that don't actually match the reality.

Aaron, I do not mean to belittle the phenomenal amount of work put into KDE. At the same time the above quoted comment can be applied to the direction that KDE has taken.

to sum up "KDE4" as "widgets" is a rather inaccurate statement (he says, looking at all the applications), but if we consider the concept of widgets, they allow us to give you your precious traditional desktop while not being anchored to big laptops and desktops and office worker geeks.

It wouldn't be a far stretch to say that most of the userbase is only interested in the "precious traditional desktop". I have no problem with innovation, as long as it doesn't go around breaking everything all at once.

Trying to engineer a swiss-army knife equivalent of desktop-cum-everything-else environment is fraught with complexity and associated code overkill. The generality of such an environment/approach is simply not warranted -- it's far better to do only one thing well rather than 10 things badly.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 9:38 UTC (Tue) by modernjazz (subscriber, #4185) [Link]

While I agree that there has been some degree of user-pain, overall I
think it's something we need to put up with if we want to have desktops
that remain relevant. Anyone remember the first few releases of Mac OS X?
And yet I bet Apple feels that the gamble it took, with a complete rewrite
of both "their" "kernel" and the desktop environment, has paid off
handsomely. Do you honestly think they'd be where they are now if they'd
restricted themselves to incremental improvements to the Mac classic
environment? Do you honestly think they could have survived as a company
if they'd waited the extra 2.5 years to release OS X until it was "ready"?
And free software has even more reasons to release early & often.

For me, the key test is this: do I have to cross my fingers when I
upgrade, hoping that things don't get worse rather than better? Along
those lines, I'm going to be very happy when X.org, audio, suspend, and
wireless become "boring" because all the important bits are done---I've
had a few too many breakages in these areas over the years. I completely
understand why those areas have been under heavy development, and support
what's being done, but I confess I am looking forward to a day when things
in those areas have settled down.

I actually hope KDE keeps being innovative, as I have no doubt at all that
the next release of KDE4 will be even better than 4.2 (which is far from
perfect but is quite good already), and the KDE3 series proved to be
beautifully-predictable in getting better with each release.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 10:34 UTC (Tue) by modernjazz (subscriber, #4185) [Link]

It's rather off-topic, but speaking of regressions...

Can any of the kernel-savvy people here tell me why my machine becomes
completely unusable when it goes into swap? Meaning, the kernel scheduler
(?) spends an infinitesimally-small portion of its time working on my
frantic request to close the application that's causing the problem. Thus,
I'm faced with wait times of ~1hr for it to finally get around to my
window-close request; with delays like this, a more attractive option is
to hit the power button so I can get back to work. It didn't used to be
this way---the fact that a single application couldn't crash the system
(well, not often anyway) is one of the things that brought me to Linux in
the first place.

My suspicion is that the code that needs to be run in order to close the
window is getting swapped out, and that different pieces of that code are
never loaded into memory at the same time, so that it takes a lot of
swapping in order to close the window. Still, can't there be some sort of
penalty applied to the application relative to the window manager?

And to forestall "get more RAM!" comments: I do a lot of numerical
analysis, and have forced machines with 36GB of RAM into heavy swapping.
The apparent "rule" of numerical analysis is that the size of the problem
tackled will scale to the available resources.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 7:46 UTC (Wed) by Pc5Y9sbv (guest, #41328) [Link]

While not experiencing the exact problem you describe, I've experienced similar. My take is that it's a statistical result of the much expanded amount of memory compared to the page size since those early Linux systems, combined with the huge software bloat in userland. Also a factor, ironically, is the much increased speed of disks and increase in request queue depths etc to optimize bandwidth, because there is so much more going on in the system in the relatively unchanged time interval of human interaction.

There are ludicrously many more pages of code and data involved in processing those window management buttons and mouse events than there was in the old days of twm or fvwm. There are also ludicrously more opportunities to allocate pages and purge "stale" pages from RAM while the human ponders what to do next.

By the time you get around to trying to click, all the pages you want to exercise are swapped out. Plus, while the system struggles to make space and move your page back in to process the click, the non-interactive application continues to force page-out as fast as it can. So the system is making these slow round-trip fetches of one page at a time in between this utter storm of page requests from your numerical code or what have you. The code executing your click is jumping sparsely through a huge number of pages and process contexts before the kernel ever receives a system call requesting a process to be killed.

As a system architect, I think the obvious statement is that there is a dire need for differentiated service classes. But the involved developers are (rightly) afraid of the messy world this implies, and they cling to the hope that over-provisioning can allow simpler "fair" algorithms to work well enough. The core challenge of differentiated services is to create policies that properly distinguish the more important activities; it is much easier to enforce the policy that it is to write it in the first place.

Ideally, you could imagine a system that understood in totality which pages were necessary for the control interfaces (like the mouse, keyboard, screen, and window manager, and window manager buttons) so it could protect them from interference by bulk app and filesystem pages. Whether protection means locking them in RAM or just prioritizing their swap behaviors is really not important, so much as the system even knowing that these infrequently used pages and code execution paths are qualitatively much more important than one more iteration of the inner loop of your numerical code.

But this is not just a kernel problem. You would need to structure all of your apps to isolate the important low-latency stuff from the rest, e.g. the stop or kill application buttons should be protected, but not by locking in a huge amount of mostly unrelated image cache to provide fancy animated window animations! What is high priority to you, the user, is a very fleeting and contextualized notion---very difficult to map into actionable QoS policies or compensation behaviors in the system.

Sorry for the long, rambling response. This is pretty much _the_ classic systems problem, to manage sharing of limited resources according to complex global utility metrics.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 25, 2009 2:00 UTC (Thu) by modernjazz (subscriber, #4185) [Link]

Thanks for the "long, rambling" response! It's kind of what I thought was
happening, but it's nice to hear it's not a figment of my imagination.

Well, here's to hoping someone has a bright idea about how to solve it!

Make the problem go away

Posted Jun 25, 2009 2:14 UTC (Thu) by xoddam (subscriber, #2322) [Link]

Turn off swap.

You can't prevent memory overcommitting (and you would waste much of your expensive RAM unused if you could), and you will likely see more of your processes unpredictably killed 'OOM', but you can *completely* avoid the issue of thrashing swap killing performance, and therefore being unable to shut down a memory hog.

This is *not* a solution -- swap has a purpose and it should be possible to use it without such complications -- but turning it off will definitely make the thrashing problem go away.

Make the problem go away

Posted Jul 2, 2009 4:12 UTC (Thu) by lysse (guest, #3190) [Link]

Not exactly. The same mechanism that drives swap, as I understand it, also drives the loading of executables into memory... and if this is the bit that's thrashing, if you're trying to have every piece of code you're executing share the same 4k page because all the others are dirty, then you'll end up in the same hole as before. You'll just get there faster (and end up deader) without a swap partition... on the other hand, assuming you can wrest a command line from the machine, you can add a temporary swapfile, which should alleviate the pressure enough to allow you to bail the system out.

Make the problem go away

Posted Jul 3, 2009 2:33 UTC (Fri) by xoddam (subscriber, #2322) [Link]

Good point, thanks. Clean file-backed pages (not just executable ones but anything that's mmapped) are indeed pushed out to make way for other pages and can 'thrash' back in to a limited space in exactly the same way as swap-backed anonymous pages.

Therefore we are indeed still likely to see some 'thrashing' behaviour well before the OOM killer 'picks a guy'.

I wonder is this behaviour affected by /proc/sys/vm/swappiness, or does that only apply to swap? Is there another way to discourage or prevent the vm from evicting some class of clean pages (eg. executables), or is that too much to ask for?

I do find that running swap-less has pretty much eliminated such churning, ever-increasing-latency situations for my desktop use as memory gets tight: sure it slows down but in practice the system is responsive enough that I can kill stuff with the window manager, sometimes even cleanly shut down the offending process (usually a long-running browser). I suppose therefore that the pool of physical pages available for clean file pages doesn't get too small in my specific use cases.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 9:30 UTC (Tue) by ms (subscriber, #41272) [Link]

Do we really need cars, washing machines, dish washers, air con, guns, etc etc etc? No, but by having them, our lives have adapted to take advantage of them, for better or for worse. Sure, you're seeing new features now and you're not able to see the immediate benefit of them. But go forwards a few years and you won't want to go back.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 12:30 UTC (Tue) by spinochet (subscriber, #23939) [Link]

Precisely. There was a time when only "geeks" thought carrying all your music around was desirable at all, much less feasible, but now most people do. Innovation doesn't wait for acceptance; it's always innovation first, acceptance later. Sometimes it fails; that's the way it goes with guessing games.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 20:22 UTC (Mon) by kragil (guest, #34373) [Link]

Linux needs clear goals and standards. I think the Linux foundation should say something like:

We want:
An working OpenGL based desktop (incl. OpenGL and OpenCL FOSS support )
Based around activities
With BtrFS & Realtime

And then all its members should direct the resources they can direct (their devs) to archive those goals.
And once those goals are met it should stabilize and polish for a few years and then repeat.(Mark Shuttleworth suggested something similar.)

And it should pick clear favorites. Pick one soundsystem and polish it etc and _communicate_ it. (Avoid the paradox of choice.)
Jim Zemlin made remarks towards something like that. Maybe the LF should build a meta desktop distro. Intel did something similar with Moblin and at the moment it seems to have worked quite well.

And Distrowatch or the LF should provide good comparison data for distros. (How long they need to fix security, how many updates, do they offer commercial support etc.) If those _facts_ about most distros would be available in realtime people wouldn't say that there are 500 different distros, because there are only a handful that really walk the extra mile and offer real long term value.

We need a stable grounded island in the sea of innovation that is FOSS... (Ok .. that sounded corny ;)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 21:42 UTC (Mon) by Tara_Li (subscriber, #26706) [Link]

I have to disagree about the paradox of choice - I'd like to *SEE* the choice available, even if the defaults are something I use regularly. I recently fixed someone's problem with a program not playing a media stream - because none of their tools they used to play the stream bothered to show what format the stream was in - or at least, no easy way to get that information. It was curious - SecondLife wouldn't play it, xmms liked it just fine! wget pulled a nice long stream of data... xine, however, actually bothered to reveal that the stream was AAC, and not MP3.

By hiding bothersome details from the users, you're making things easier for them as long as everything runs right. Which makes no allowance for the One Law That Rules The Universe - MURPHY'S! You need something that will tell you that someone's sending you AAC audio, Ogg Theora video, and encapsulating it in MKV. Everything doesn't have to be the same - it just needs to be discoverable. Things like the play, stop, forward, and rewind icons are fairly standarized - let's add at least one more standard icon - configure (I rather like the little wrench that many applications use). Once you're in the configuration screen, include tooltips - and not just short one-word tooltips that repeat the option name.

I'm still trying to find an easy way to replace Metacity with Enlightenment 16 on my Gnome desktop. Why did they get rid of the picker on the GDM screen for that? Why did they get rid of the nice little "Configure" button? Isn't that attitude of "We know what you want, so we'll give it to you and you'll like it" rather reminiscent of Microsoft?

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 22:15 UTC (Mon) by kragil (guest, #34373) [Link]

First and foremost it should work. Being easy to fix should only be a lower priority objective.
Picking strong standards and reference implementations (a parent distro) will make the likelihood of it working much greater.
Most people are not able to fix stuff.
It has to just work(tm).

We already have one such system

Posted Jun 23, 2009 0:35 UTC (Tue) by khim (guest, #9252) [Link]

First and foremost it should work. Being easy to fix should only be a lower priority objective.

If I want something which "mostly works" but is unfixable - I can use Windows. I like the fact that Linux is debuggable - if something breaks, I can fix it. Sadly recent trend is to go wrong direction: people are adding more and more "magic" and less and less accountability to the system. It becomes poor, hardly useable (because it breaks more often then Windows as was always the case - but now without debuggability and fixability) sort of the thing I already have.

This is the case where money talk: to make things usable on wide range of systems you need enormous Q&A department and access to lot's of quirky hardware and software. The things Microsoft has and Linux companies don't have because they don't have enough money.

Why Linux companies are trying to play the game they can't win is beyond me... Make the damn thing fixable first, then go for "magic"!

We already have one such system

Posted Jun 23, 2009 12:36 UTC (Tue) by tuna (guest, #44480) [Link]

What is this "magic" you are talking about? I have no idea what you mean.

We already have one such system

Posted Jun 23, 2009 15:52 UTC (Tue) by nye (guest, #51576) [Link]

Nothing really to add to this except to say that I couldn't agree more.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 7:23 UTC (Tue) by dgm (subscriber, #49227) [Link]

I couldn't disagree more.

Software that's unfixable is to be avoided at all costs, even if it seems to work. There are a couple of reasons why:
- if it's unfixable, it's not working in fact. It's secretly eating your personal picture collection, and you will only realize too late.
- it will fail on Thursdays and Saturdays on certain phases of the moon, precisely the day you will need it the most. The only solution will be reinstall.
- it will allow your neighbor's kid to crack into your computer and store in his porno and virus collection.
- it will be full of quirks that will force you to do the strangest things just to get stuff done.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 8:00 UTC (Tue) by kragil (guest, #34373) [Link]

Where do I say it should be unfixable??

I said the priority should be the working part. It should also be fixable (which all FOSS is in the end) but that shouldn't be the priority.

Interesting that people would argue with the statement that "Software should work"

Maybe there are deeper issues at work here...

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 13:24 UTC (Tue) by dgm (subscriber, #49227) [Link]

>Where do I say it should be unfixable??

"Being easy to fix should only be a lower priority objective."

In my experience, "lower priority" means unimportant, and thus probably never addressed. It's a consequence of the limited availability of time and resources.

I was not arguing if software should work. Of course it should, otherwise what's the point of it? But, focusing on making things work at the expense of everything else has its perils. I merely tried to point that out.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 8:00 UTC (Tue) by Janne (guest, #40891) [Link]

Paradox of choice is a real problem. But it's devious in the way that we
don't even know that we are unhappy.

If you are presented with lots of choices, you will also present stress.
First you expect the user to make a choice. But the user most likely does
not have to skills and knowledge to make the best possible choice, so they
more or less guess.

After that is done, they start second-guessing themselves. "would this
thing work better if I had made some other choice instead? What is the
difference between these things?". So either the user starts to go through
all the options, or he worries that he's not getting everything he could be
getting from the system.

I use many desktops and OS'es. My Linux-box runs GNOME at the moment, and I
don't really miss those options. My main machine is a Mac, and it too is
limited in the config-area. And the thing is that I don't really miss them.
The OS works for me, and I don't have to worry "should I change these
settings so that the system would work even better?". I don't worry because
there really isn't anything to change. I don't have to second-guess my
choices, since I haven't really made any choices. End-result is less stress
and more user-enjoyment.

For an excellent talk about "Paradox of choice", I recommend this:

http://www.ted.com/talks/lang/eng/barry_schwartz_on_the_p...
tml

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 8:16 UTC (Tue) by kragil (guest, #34373) [Link]

I saw the same talk. It is enlightening. And the paradox of choice is a real problem for Linux. That is why I think we need the FOSS vendors to pick favorites.

At the moment it seems they have picked Gnome, Xorg, Ext4 (with BtrFS coming), Pulseaudio, OpenOffice, Firefox, Linux, Apache, Eclipse...

But I can only name those by observation. It is not like that those choices are clearly communicated. I think the LSB needs to be extended or something new that picks certain choices and say: "This is the Linux desktop we think you should use. It uses Gnome, Gstreamer, Pulseaudio (hopefully a fixed version) and Clutter and bla bla.

Disclaimer: I am writing this from a Debian Testing KDE4.2 box and I think KDE4 is pure awesome, but I am also a realist and think vendors minds are pretty much made up. No harm in being honest.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 11:01 UTC (Tue) by dlang (✭ supporter ✭, #313) [Link]

there was a time where every one of the things that you list as being the favorite that should be explicitly picked (and therefor all alternatives be eliminated) was itself a small alternative to the 'standard' at that time.

if your policy had been put in place then, the choices that you are advocating would never have been created.

the BSD distros tried to do exactly what you are advocating, and they fragmented due to the demand for different choices.

each linux distro is free to make it's own choice, some distros make a strong choice (the repositories for that distro don't contain alternatives), some make a weak choice (ubuntu/kubuntu/xubuntu), but it's really hard to point at any one set of selections and make a real claim that 'this set is right, everyone else should scrap what they have and just copy this'

in any case, I don't think it's the right thing to select specific applications,I think it is much more useful (and flexible) to select a set of APIs. the reason the xfree86 -> Xorg transition went so smoothly is that the underlying API didn't change, so the move from one set of software to another was (almost) transparent to the end user.

in the 'desktop environment' world the standards are not nearly as well defined, but gnome and kde _are_ working togeather (through the freedesktop group) to define common APIs. you will never get to the point where _everything_ will work across the different envrionmenets, but you really are getting to the point where you can have both sets of libraries installed on the system, and use (most) programs from either desktop environment while running the other environment.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 11:29 UTC (Tue) by kragil (guest, #34373) [Link]

there was a time ...

sure, but for FOSS alternatives to Linux, OpenOffice and Eclipse that time was long ago ..

And I didn't say they should carve those choices in stone. Just stick with them for a few years and communicate that you are committed to these components and if you decide to change your choices tell people in advance and make it a very smooth transition.

And we are talking about just the desktop here, so your BSD example does not apply.

One commercially supported and specifically defined recognizable Linux desktop that can be targeted by different vendors would be great thing for FOSS. And the way I see it we are getting there.(This unspoken consensus may be one of the reasons Google picked GTK for Chrome, although Qt might have been the better option.) Most geeks won't 100% agree with all the choices, but the world could care less.(_I_ as a KDE user have come to terms with that .. )

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 12:20 UTC (Tue) by da4089 (subscriber, #1195) [Link]

Since you don't like the BSD example, let's move the analogy to automobiles:

Applying the same logic, the suggestion is that each manufacturer (Linux, Windows, MacOS) provide a single model (oh, ok, you can have a Desktop and a Server version).

Limiting our discussion to passenger cars (~= Desktop), there are many different varieties of vehicle available, often built on the same underlying platform but with different branding and minor feature differences. No-one seems to complain that they're suffering a paradox of choice in that market ...

I don't buy it.

What I think we can learn from the automobile industry is that all the very slightly different models actually *work*, and have sufficiently common UI that users are easily able to switch if necessary.

IMO, the problem isn't choice, it's bugs.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 13:12 UTC (Tue) by kragil (guest, #34373) [Link]

I love the cars example.
Cars have strong standards. You have one steering wheel, one gearbox, one windscreen and other things that are regulated.

If I can drive a VW beetle then I can also drive a Toyota Hilux. No problem there.

That is not true for different distros. They behave totally different. To the point that the steering wheel is somewhere else or it is hidden etc.
Or the way you put fuel into the thing .. the list goes on.
In the way you operate them cars are so much more similar than todays Linux distros.

Total chaos for your average user. That is why we need a _recognizable_ base distro that defines the lowest common denoninator. You can add your V8, fins and fox tails.

Let's just tell Intel to start Desklin.org, shall we?

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 14:39 UTC (Tue) by jzbiciak (✭ supporter ✭, #5246) [Link]

I love the cars example. Cars have strong standards. You have one steering wheel, one gearbox, one windscreen and other things that are regulated.

Where's the wiper control? Headlights? Cruise control (if equipped)? Stereo controls?

The basics are pretty well standardized, but within bounds.

  • Automatic vs. Manual
    • Automatic
      • With or without overdrive?
      • Shifter on the column or in the center?
      • Interlocks with brake to shift from Park, or no?
    • Manual
      • How many speeds?
      • Reverse:
        • Upper left?
        • Lower left?
        • Upper right?
        • Lower right?
        • Do you have to do something extra to get in reverse (ie. push in on the stick)?
  • Wiper controls
    • Left control arm or right control arm?
    • Rotate to spray wiper fluid, or press button on end?
    • ...
  • Headlight controls
    • Left control arm, right control arm, or on dash?
    • Rotate, push, pull or slide?
    • Pull for brights, push for brights, or floor switch?
    • Integrated with fog lamps (ie. brights disable fogs) or separate?
  • Cruise control (if equipped)
    • Left control arm, right control arm, on steering wheel face, below steering wheel, or other?
    • Separate increase/decrease speed buttons, or overloaded on set/resume?
    • Separate "arm" vs. "set", or combined?
  • Horn
    • Separate horn button(s) at edges or "floating switch"? (Floating switch means entire center area serves as horn button.)
  • Window controls
    • Manual on door
    • Electric
      • On door vs. center column
      • Automatic down on driver's side vs. no automatic down
      • Automatic up... doesn't seem to be available in US?
  • Instrument cluster
    • Speed
      • MPH, km/h, both, or selectable?
      • Analog, digital, or both?
      • Behind steering wheel, above steering wheel, in windshield (head-up display) or center console?
    • Fuel
    • Coolant temp
      • Marked in degrees or just vague "hot/cold"?
      • If marked in degrees, Fahrenheit or Celsius?
    • Transmission temp
    • Battery voltage
    • ...

And I didn't even get to the media playerstereo, not to mention innovations over the years such as mid-80s Japanese cars that required you to hold the door latch up while closing so that it would lock, or those silly "automatic seat belts" that slid along the door frame in some late 80s cars...

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 17:16 UTC (Tue) by rsidd (subscriber, #2582) [Link]

All true, but if you can drive one car, you can still drive another with about half a minute of looking around, and feel entirely at home in it within half an hour. If you're used to GNOME -- much less Windows or Mac -- you'll be unproductive on KDE for days.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 17:35 UTC (Tue) by martinfick (subscriber, #4455) [Link]

That used to be true. But seeing as I own for vehicles, and all of them were made last millenium, I cannot agree with this statement. When I rent a vehicle these days, I am thoroughly confused and uncomfortable driving/using it for the entire time I am renting it. The vehicle does things I do not expect, and it does not always do the things I do expect.

Even something as essential as blinkers have been insanely altered these days, I trigger an instantaneous left and the thing continues to blink for a while after I let go of the button! Don't get me started about figuring out whether the lights will go off or not (how long do I wait in the parking lot staring at the car at night)? And why do they chose to sometimes randomly lock my doors for me? Did the designers ever uses these vehicles? Come, on, the passenger doors lock on you while you are loading/unloading your kids in and out of their seats. With the proliferation of buttons, one of the last things you will figure out (which should be the first, before you even start a car), is how to adjust the seat. Just like with computers, vehicle basics are no longer sane. :(

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 20:49 UTC (Mon) by bferrell (subscriber, #624) [Link]

I tried KDE4. It'd not all that bad, but it's underpinnings are half done and at least the distro I use, has followed along quite blindly. BlueZ4 Bluetooth is not complete in it's use of DBUS, although I can see what they're trying to do. so far it's a half built tinkertoy

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 21:07 UTC (Mon) by mmcgrath (guest, #44906) [Link]

> the Linux desktop

There's a bunch, some move fast, some don't. Pick the one that's right for you.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 21:53 UTC (Mon) by Tara_Li (subscriber, #26706) [Link]

Love to. Now, how do I uninstall PulseAudio, so that my music player, my flash plugins in my browser, and my Second Life will all allow sounds at the same time? Click the PulseAudio from the System menu and select "Let someone else handle this stuff"? Nope - not there. System -> Hardware -> Sound ? Ok, all that says ALSA - why is PulseAudio still getting started? Let's start up XMMS - Whoops, sound card in use! Output plugin? Huh! PulseAudio. Change to ALSA? Why is the sound card still in use? Why isn't dmix handling it, like all of the documentation I've been able to find says it should be? Ok, PulseAudio is going to start up - I'll just uninstall it. WAIT! Why are you trying to uninstall XMMS also? XMMS shouldn't give a flying flip about PulseAudio being installed! What's going on here? And why can I sometimes convince mpg123 to play *IF* I put -o esd on the command line? Sure, it comes out the USB headphones, instead of the speakers... maybe I can live with that... I'd still like my RH9 system back, where ESD just *WORKED*. Everything, as long as I *CONFIGURED* it to output to ESD, blended perfectly!

Bah - we *NEED* the choice so we can occasionally get the stuff *WORKING*!

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 22:04 UTC (Mon) by mmcgrath (guest, #44906) [Link]

> Love to. Now, how do I uninstall PulseAudio,

If you need to uninstall pulseaudio, I'd suggest you've picked a desktop that's a bit over your head (no offence). Perhaps something that moves more slowly is likely more your style. RHEL/CentOS for example. Like I said, there's lots of options available, picking the wrong one is just as bad in desktops as it is with anything else (a car, house, etc)

Over our collective head?

Posted Jun 22, 2009 22:56 UTC (Mon) by man_ls (subscriber, #15091) [Link]

But PulseAudio's point is to have everything work without hassle. And Ubuntu's point too -- people choose it to avoid low level tinkering. If e.g. Tara_Li (who displays an above average knowledge of configurations) cannot configure the thing then it is already broken. But the worst part is that configuration options are removed so that it works magically! Only that there is no way to configure the system to actually work.

A slow moving system is impractical for a number of reasons including hardware support or application choice. I hope you are using a rhetorical figure here. If you really think that this supposedly foolproof audio system is above someone's head, then you are just showing that you don't get the point. A system builder can take two legitimate routes:

  • Either hide the system guts, MacOSX-style, but then everything has to work perfectly -- the slightest glitch and it all falls apart.
  • Or expose the guts so that users can tinker and self-repair, something like Windows. In this case you should show the knobs and let people play with them; they might even make do with a less-than-perfect system.
But mixing both is a recipe for disaster. When everything works perfectly then you can remove the internal knobs; until then keep them (maybe hidden under an advanced setting).

And first option is not an option

Posted Jun 23, 2009 0:39 UTC (Tue) by khim (guest, #9252) [Link]

Either hide the system guts, MacOSX-style, but then everything has to work perfectly -- the slightest glitch and it all falls apart.

Like users of Hackintosh discovered it only works if all your hardware and most of your software comes from single source. Since most Linux companies are not in hardware business it's not an option for Linux.

Over our collective head?

Posted Jun 23, 2009 3:58 UTC (Tue) by drag (subscriber, #31333) [Link]

Linux audio is one of those things that has a fundamental broken design from the outset.

Here is the sucky shit of configurability:

OK. Linux audio... Lets see.. Here is my experiences for the past decade of using Linux

OSS vs Alsa? OSS kinda sucks because it's a pain to install, alsa drivers are installed by default. But OSS drivers are better with certain sound cards then Alsa. But using OSS causes problems with many applications... so generally choose Alsa.

Manual Asoundrc. Used to be dmix was not enabled by default. Dmix helps, but holy shit I run into problems my quake game. If I play quake3 (or any quake based game) I will get no sound if I have a application running.

My game audio breaks if:
1. I accidently start up any KDE program since my computer's last reboot. (usign any kdelib program forces the loading of artsd)
2. I have something that launched esd
3. I have a media player open anywere that I have forgotten about.
4. I have a browser open that has some sort of flash animation that has any sort of sound output at all.

Ok. So I have to make a ~/.asoundrc file. I enable dmix. I play around with various settings such as and buffers and whatnot since my driver sucks and allows incorrect timings and periods to be sent to my audio card causing performance problems.

Of course since each person can get a way with hacking around with the asoundrc file then the driver never really gets fixed. Also it's nearly impossible to tell if a problem is with the actual driver or some mistake I've made so far.

Ok.. so then audio mostly works.

Except artsd kills my sound still. Also oss applications break my sound.

So I have to go back into the asoundrc file and create a entry for the dsp stuff so that 'aoss' wrapper then can take the OSS stuff and send it through the dmix stuff. Ok. So a couple hours of screwing around and that works.

Then I have to go into KDE and configure artsd not to use oss. Of course it's going to be very difficult to make artsd use aoss, but that is ok since artsd supports alsa and thus I can configure it to go through the alsa. Now KDE problems have stopped breaking my operating system's sound system.

Ok...

Of course now I decided I want a nicer sound card then the onboard stuff which never sounded that good. I have a Creative Soundblaster Audigy which while works effectively... is still not sounding that great since the internal hardware mixing is not the best quality and all the sound from my audio card is forced to be remixed and whatnot. Not cool..

So I get a M-audio 2496 which sound great. No forced remixing, has high quality D-A stuff and all is cool.

Except, of course, Linux being linux I can't really use the default mixing stuff.

And I have to totally re-do the asoundrc file since I have a new audio card.

No big deal.. some editing, some testing, some editing, some testing and now after about 2 hours of screwing around I have a setup again that is mostly non-broken.

Oh, snap! I can't play quake3-style games anymore. That darn ID used a old audio system originally designed in dos-days were they use mmap to communicate with the audio card. The Audiophile does not support that sort of thing.

So Aoss is now broken again. That sucks.

Of course the majority of OSS only applications I run across still work, well they sort of work. They work after I hack around wrapper scripts and whatnot. But unfortunately the apps I care about don't anymore.

Asoundrc maybe has some magic still. There seems to be some 'mmap' option to dmix and some other plugins that hold promise. To bad everything is so poorly documented. Otherwise I might have a clue on how to get the stupid thing running, which after about another 2-3 hours screwing around with it in a on-of basis I give up.

Now the artsd has a form of OSS wrapper that does end up working wht things like 'Return to Castle Wolfenstein'. Now that works... sorta. The performance is so poor that I give up after about 15 minutes of game play. Even with tweaking and working with artsd I end up with either something that sounds like utter shit, or something that produces sound 1/4 to 1/2 a second after it happenned in-game.

So that is unsuitable.

So now I have to reboot and re-enable my onboard sound. This way I can use the onboard sound for gaming and the rest for music listenning.

Which works out pretty decently. After some more asoundrc hacking, of course. Now I can setup the Audiophile to work as default and use aoss with the old games and things like that.

For a while. Of course next time I upgrade the system and reboot it re-orders the alsa configuration.

Which sucks and breaks my asoundrc and pretty much eliminates any sound capabilities I prevously had obtained. After some more google'ng then I can find some magic modules configurations that enable me to specify which sound card is 0 and which is 1.

After a few more reboots and playing around with configuration files and un-doing some previous damage I did to my system I other vain attempts to get my sound working then it's pretty good again.

'Pretty good', which means that occasionally my browser crashes. I can't use skype without major surgery, I can't use in-game VoIP stuff. Ekiga still performs poorly and is a crapshoot if I can actually get any sort of recording working at all at any time.

Then I want to get Jack gound. Jack is a good guy, a friendly person that helps re-route sound from different applications. This works pretty well. Of course the 2.6 kernel has gradually introduced some high-latency misfeatures which needs to be corrected with some kernel compiles (never get it right on the first try of course.)

Previous attempts were twarted, of course, by the lack of stability when trying to use 3D acceleration with the nvidia card. Which is kinda irritates me since originally I spent so many weeks farting around with the audio to get games working and now I needed to choose between low-latency performance and 3D acceleration. Moving to Intel graphics fixed that, more or less.

Oh what fun.

--------------------------------

PA is one those things that is a major move in the right direction.

It's not perfect and has the effect of exposing lots of brokenness in Linux drivers and APIs... which instead of forcing each and every user to configure around hopefully will be fixed.

Over our collective head?

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

You do know artsd is no longer used by KDE, right?

Over our collective head?

Posted Jun 23, 2009 20:38 UTC (Tue) by drag (subscriber, #31333) [Link]

Which KDE? The one people actually use (KDE 3.5) or the latest development-called-stable release of KDE 4?

Personally I've solved my KDE problems long ago by simply avoiding to use any programs that use KDE. It's gotten quite a bit easier to do that lately, of course.

But when KDE uses PA (either directly or through one of the dozen commonly used libraries which in turn can use PA) all of this will be a non-issue.

Over your head?

Posted Jun 23, 2009 21:45 UTC (Tue) by kragil (guest, #34373) [Link]

Bitter much?

What was the purpose of your comment besides hitting on KDE for giving you grief in the distant past?

And besides other people obviously have different opinions than you about PA. I would argue that a lot of people say(troll) the exact same thing about PA that you say about KDE.

Think about it.

Over our collective head?

Posted Jun 24, 2009 2:50 UTC (Wed) by Kit (guest, #55925) [Link]

KDE can use PA in 4.x through GStreamer, and likely the other backends as well (not sure which of the others support it, I think at the very least Xine does as well).

And in the 3.x series, you could easily disable aRts with basically the only application impacted being KNotify, which just requires you to tell it a different command to use to play the audio if you still want the audio notifications.

Over our collective head?

Posted Jun 23, 2009 9:15 UTC (Tue) by ledow (guest, #11753) [Link]

I have had just about every problem you've mentioned. However, I use Slackware, and crappy sounds cards, so I assumed it was "just me". But I've yet to see a LiveCD or something more user-friendly that didn't correctly pick up all my sound cards and just use them properly from the outset (hell, a lot of the LiveCD's get ambitious and play a sound on X starting).

The wrapper layers are annoying in some cases but pretty much everything handles itself now. I haven't had an audio problem in several releases of my distro - it "just works", with whatever I throw at it. The ones that are left are those cases that are caused by external factors. As a case in point, DOSBox and most SDL apps delay their sound by about a second for me in Windows every time (I can manually update all their SDL dll's to a version that doesn't) but on Linux, the same DOSBox/program versions with the same hardware and the same SDL version have never showed a problem.

I think audio was one of the last things to actually be "fixed" in my opinion. I have bad memories of loading soundfonts, editing .asoundrc, fighting with default volume levels, and the volume sliders changing between kernels etc. but everything settled down about two years ago. There'll still be problems, sure, but it's stablised. Hell, I can remember fighting to get automatic recognition of USB keys in KDE and that was the same sort of thing - one upgrade and all my work was in vain.

Sound took longer than it should have, of course it did, but now I don't think there's anything *near* a modern computer that you can't just throw a LiveCD or basic distro at and not have everything "just work". My cheapy-Taiwanese, new-design laptop was fully working in Linux from day one despite obviously never having been designed for Linux (ACPI errors, etc. a wireless card that was only supported in Linux days before the laptop was released, nVidia graphics etc.).

The last four or five major kernel releases, I look at and think "Well, it doesn't support any more hardware, it doesn't do anything I really need, it doesn't change much at all" and only upgrade if I need the security of a more up-to-date kernel.

It'll never be magic and perfect and work for *absolutely* everyone but I think that it's pretty damn good, especially when you compare it to the nightmare of trying to install the right Realtek HDA driver on Windows or similar without a disk.

The simple case just works

Posted Jun 23, 2009 9:36 UTC (Tue) by knan (subscriber, #3940) [Link]

The simple case Just Works these days, with or without the infamous pulseaudio. The complex case slowly improves. Dave Phillips steadily educates us about pro audio in LJ. OSS died years ago and so gets steadily less relevant in its zombie state, while we get better at emulating its behaviour - see Takashi's work on CUSE. Life is pretty good.

Over our collective head?

Posted Jun 23, 2009 16:15 UTC (Tue) by nye (guest, #51576) [Link]

I have no idea how so many people have had all these problems with sound.

When I assembled a computer in 2001 I used a sound card that cost less than £30 at the time (this is before all motherboards had sound on-board), which was about the cheapest I could find. With all the hardware and software I've used since then sound worked perfectly and without effort until the advent of the hated PulseAudio, which brought everything back to 1997 again. I chose to switch back to Debian where I can remove PulseAudio without having to wrestle with a system that Knows Better.

Over our collective head?

Posted Jun 23, 2009 20:36 UTC (Tue) by drag (subscriber, #31333) [Link]

> I have no idea how so many people have had all these problems with sound.

Probably because you never tried to do any more complicated then music playback.

Anything beyond that things begin to fall apart rapidly. Beleive me, I've helped dozens of people with Linux on their systems and sound performance is a cronic problem. Go look at the error messages in mplayer if you don't beleive me. For them they claim the majority of performance problems are going to be related to audio sync.

I've put a huge amount of effort in the past trying to understand sound in Linux and it's no easy matter.

PA is definately a improvement and is the only 'solution' that has come along so far that even pretends to address the majority of problems linux audio faces. Everything else I've seen has been 'rewrite your program to this new API', if even that.

Over our collective head?

Posted Jun 24, 2009 8:36 UTC (Wed) by Pc5Y9sbv (guest, #41328) [Link]

Unfortunately, there is a lot of cyclic reinvention of simple stuff and not enough analysis of the real hard problems to actually "innovate" a better user experience.

For example, it is hard to argue that the perpetual stream of userland "mixing daemons" of one sort or another have really been a good use of developer or user time, or really improved the range of operations that are possible. It seems patently obvious that the system abstraction for sound should allow an app to generate sound and it is the kernel (as hardware abstraction layer) which ought to mediate the sharing. It was wrong-headed to leave out driver-based multi-app mixing on devices that became simpler over time, and this set us back a long way. Imagine if we had spent the decade never having MD, LVM, or loopback block devices but instead a procession of userland block-mixing daemons!

I find it very troubling that people keep trying to create a new OS within the OS, where things only work properly when they are all in the same userland ghetto, whether that is KDE and GNOME, ALSA, Java, etc. We have an OSS system, and we should be collaborating to improve how the layers work together, rather than having these turf battles where the layers try to work around each other. The FUSE layer is cute and enables some nice user experience in the filesystem space, but it would have been a disaster if this had been favored to the exclusion of proper kernel-level block devices and filesystems...

Instead of reinventing mixing daemons over the past decade, somebody could have been focusing that effort on separating the policy problem. What is the range of behaviors that people would want? Let's make the kernel device abstraction support that range, and let some userland policy daemon configure the more complex behaviors like alternate mixing modes and signal routing. Meanwhile, the kernel could have sensible default/failsafe behaviors to satisfy all app requests in some way in case the userland policy daemon is not present.

Over our collective head?

Posted Jun 24, 2009 13:04 UTC (Wed) by nye (guest, #51576) [Link]

>> I have no idea how so many people have had all these problems with sound.

>Probably because you never tried to do any more complicated then music playback.

I don't really know what counts as 'more complicated than music playback'. Thing I was doing at the time included playing music, watching DVDs (so the audio needs to be synced), and being able to play more than one sound at once (or, similarly, be able to play sound while some other audio application is paused). All those things still work for me with ALSA (though I had some latency issues with ALSA in the early days), which also supports hotplugging quite happily.

(Can't really comment on PulseAudio now since I haven't tried it since last year, and by all accounts it's improved dramatically in that time)

So no, I'm not trying to snychronise A/V over a network, or use any audio manipulation applications with sub 20ms latency. Nor do I have any hotplugging requirements that go beyond 'I plug in this headset and now I can use it'. Is that the sort of thing you're talking about? Have I just had an unusually lucky selection of hardware or do large numbers of people really have more complex requirements than that?

Over our collective head?

Posted Jun 23, 2009 7:30 UTC (Tue) by dgm (subscriber, #49227) [Link]

>A slow moving system is impractical for a number of reasons including hardware support or application choice.

Only if your system is monolithic. If you have clean and stable APIs for applications and drivers you can have both.

Over our collective head?

Posted Jun 23, 2009 22:14 UTC (Tue) by man_ls (subscriber, #15091) [Link]

Sure; that is a different (but related) problem. A stable API is a stake in the ground for innovation -- can be worked around but always keeps you from straying too far. Actually for applications there is POSIX, but it lags behind in areas like precisely audio. And for graphical toolkits there is GTK 1.x, which is a fairly stable API.

Anyway in many areas we don't have that stable API. GregKH and others have explained their reasons for this lack in Linux (the kernel), but I think that the actual explanation is simpler: Linux simply does not have the resources. It could choose to keep supporting the vast amount of devices available, or it could support a limited number of devices with a stable API. But it does not have the mastodontic resources and vendor support that Windows has, so it cannot support everything with a stable interface. So it selfishly chooses the first option, support more devices with less stability, because it is more gratifying and more fun. This explanation might also be applied to other areas like graphical toolkits or audio.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 22:08 UTC (Mon) by jordip (guest, #47356) [Link]

PulseAudio is my number one complain about Ubuntu.
Except for the own Pulseaudio developers I have not seen any single high profile person (in KDE camp, multimedia camp, etc.) not complaining about its overengineering design and how much we DONT need it.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 22:52 UTC (Mon) by luya (subscriber, #50741) [Link]

PulseAudio is working great on my both desktop and netbook. Another classic YMMV.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 22:54 UTC (Mon) by luya (subscriber, #50741) [Link]

In additioi, those complains are not much different than gstreamers years ago.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 23:20 UTC (Mon) by fergal (subscriber, #602) [Link]

It was easy to avoid gstreamer. I used mplayer and vlc before gstreamer came along and I continued to use them as gstreamer matured stabilised and I still use them but I might also use gstreamer bsaed apps at the same time.

I tried ubuntu jaunty which has pulseaudio turned on by default and I found myself not only without sound but with /usr/bin/pulseaudio and pactl forkbombing my system every time I unsuspended!

It's working just fine on another of my machines but that doesn't help me with my laptop (which is back running hardy again).

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 13:30 UTC (Tue) by nix (subscriber, #2304) [Link]

The forkbombing is a distro bug: pactl doesn't execute itself, so something is foolishly rerunning it time and time again. I don't see what PA can reasonably do about that.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 13:45 UTC (Tue) by fergal (subscriber, #602) [Link]

I'll take your word for it but as an end user I don't really care whether it's PA or poor integration of PA in my distro. I imagine that most complaints against PA have exactly that as the cause and so a lot of the criticism would seem unfair. The again, perhaps PA should have been designed in a way that makes it hard for distros to screw up.

I had other reasons not to stick with Jaunty, the PA problem was the only one that tried to crash the whole computer.

Does the Linux Desktop Innovate Too Much? (Datamation)

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

I don't see how *any* design could have made an ordinary command-line
program resistant to forkbombing. It can't tell something is running it
over and over again!

PA the *daemon* *does* have a lot of requirements --- working sound with
relatively bugfree drivers, working hrtimers from userspace, working
capabilities, working HAL, working PolicyKit...

... but except for the drivers (which it can't avoid requiring) and
perhaps the hrtimers *none of this is radical stuff*. A distro which
breaks PA is going to be breaking other stuff too: PA is just the most
noticeable example.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 10:41 UTC (Wed) by fergal (subscriber, #602) [Link]

I don't see how *any* design could have made an ordinary command-line program resistant to forkbombing. It can't tell something is running it over and over again!

I don't know the design of pulseaudio but it seems like a user should never have more than 1 pulseaudio process running, yet somehow I ended up with 1000s. Yes it's probably a bug in the distro but really it should be very difficult to produce such a situation. Looking in pulseaudio's man page I see --kill, --check, --fail. Presumably multiple invocations using some combinations of these is necessary to correctly start up the daemon and conversely there are many ways to invoke it that go horribly wrong. Good interfaces make it easy to do the right thing and hard or impossible to do the wrong thing.

Rummaging around a bit further I suspect that autospawn was the real problem as every command I ran sent some pulse audio errors to the terminal. It seems like autospawn is only there because the daemon is expected to crash.

To look at it another way, the distros have already managed to get esd and artsd run stably, why is it that they haven't yet managed it for pulseaudio? It was in Ubuntu 8.04 but 2 releases later it's still flaky (and this is not a quirky hardware problem, hardware problems should not lead to 1000s of processes if the setup is correct). It's not as if Ubuntu and Fedora are inexperienced amateurs and have never before transitioned to a new core software system.

Does the Linux Desktop Innovate Too Much? (Datamation)

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

The PulseAudio site's 'Perfect Setup' has for *years* stated the preferred way to use PA, which is simply to start a single copy at session-startup time and kill it at session-shutdown time. The startup involves a simple

/usr/bin/pulseaudio

no parameters, no nothing needed.

If Ubuntu chose to do something more elaborate and it went wrong, then they shot *themselves* in the foot. PA is likely not to blame.

(Another configuration is possible --- a single systemwide PA instance. This is lower-performance and lacks features for security reasons, plus allows people to interfere with each others' sound playback, so is deprecated.)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 24, 2009 14:40 UTC (Wed) by fergal (subscriber, #602) [Link]

I think when they say "perfect" they actually mean "ideal" or "utopian". If that actually worked perfectly then everyone would just do that. There would not even be an autospawn feature and it wouldn't be on by default in Ubuntu Jaunty. I suspect a search for "pulseaudio" and "hang" or "crash" or "silence" would explain why the "perfect" solution is not actually deployed.

To get back to my original bug, as far as I can tell, if I start pulseaudio with no options, it will quit immediately if it finds another instance of the server. This makes sense but now I really have no idea how I ended up with 1000s of them running at the same time.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 22, 2009 23:49 UTC (Mon) by jspaleta (subscriber, #50639) [Link]

I'm definitely enjoying the pulseaudio and bluetooth integration when it comes to my bluetooth headset on my Fedora 11 laptop. Using the headset with SIP based VOIP is less of a chore now. I wish my nokia 810 had this level of bluetooth audio integration.

-jef

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 2:51 UTC (Tue) by ejr (subscriber, #51652) [Link]

Last time I checked, pulseaudio's bluetooth support did not include the microphone part (source). Has that changed? If not, then pulseaudio has nothing to do with your VOIP use.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 4:51 UTC (Tue) by jspaleta (subscriber, #50639) [Link]

Well I guess PulseAudio in Fedora 11 is lying to me when its letting me choose my Plantronics headset for sound input.

and I guess sound record is also lying to me when its recording my voice while I'm walking across the room from the laptop using the bluetooth mic at the same volume as if I'm sitting right next to it.

If its a conspiracy to fake support for bluetooth audio input in the UI...its a really good one.

So uhm, when exactly was the last time you checked?

-jef

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 12:18 UTC (Tue) by ejr (subscriber, #51652) [Link]

> So uhm, when exactly was the last time you checked?

Last week. I would love to be wrong. I use pulseaudio, but I have to set up my headset (Jabra) in ~/.asoundrc.

Aha! Checking the git sources, src/modules/bluetooth/module-bluetooth-device.c does define a source now! Woo-hoo! Looks like it was added in the past week.

Sorry. That's what I get for reading release announcements, documentation, and the mailing list rather than the source.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 19:33 UTC (Tue) by ejr (subscriber, #51652) [Link]

Just verified it's working with Debian now, too.

(And strike the "added last week" part. I only looked at the shortlog, and it's not mentioned.)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 0:06 UTC (Tue) by alecs1 (subscriber, #46699) [Link]

:) The range of small (and some bigger) glitches I had after Debian defaulted to install PulseAudio 2-3 months ago was so various that I decided it's unfinished enough that it's not yet worth reporting bugs.

Normal example: SMPlayer and Amarok no longer output sound until some restart.
Funny example: doing a multiple desktop logins, the music (sound) was cut when switching to the other user.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 10:11 UTC (Tue) by ariveira (guest, #57833) [Link]

So to not let the "only people for whom it does not work speaks up" make
PA looks worse than it really is i can tell that It works for Me (tm)
Including quake 3 based games ;P

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 16:04 UTC (Tue) by leoc (subscriber, #39773) [Link]

Here's another positive vote for PulseAudio. Works great for me on all the machines I've tried it on.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 0:16 UTC (Tue) by marduk (subscriber, #3831) [Link]

> how do I uninstall PulseAudio

If you were using Gentoo Linux you would be able to disable the "pulseaudio" USE flag (which I believe it is disabled by default) :P

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 0:39 UTC (Tue) by horen (subscriber, #2514) [Link]

"Now, how do I uninstall PulseAudio?"

sudo apt-get remove pulseaudio

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 10:17 UTC (Tue) by sdalley (subscriber, #18550) [Link]

Alas, that will remove gnome-desktop as well (on ubuntu anyway).

Sure, there's going to be jam tomorrow - PA's going to be great, one day. For the moment, you can pull its teeth without actually uninstalling pulseaudio - see
http://idyllictux.wordpress.com/2009/04/21/ubuntu-904-jau...

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 14:17 UTC (Tue) by Darkmere (subscriber, #53695) [Link]

My solution to this is a lot simpler and also restored every time an upgrade happens to pulseaudio that makes me want to re-iterate my testing of it. (Happened a lot in the Fedora 10 time, and more in the Ubuntu 9.04 alpha) Leave all configurations as-is, system default. If you have meddled with them, wipe them and re-install it.
And if it still doesn't work, `sudo chmod -x /usr/bin/pulseaudio` , problem goes away.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 25, 2009 21:49 UTC (Thu) by alankila (subscriber, #47141) [Link]

"Bah - we *NEED* the choice so we can occasionally get the stuff *WORKING*!"

I'm fond to argue exactly the opposite.

If there is just a single solution there's a lot pressure to get that single solution do what everyone wants. If there are multiple solutions in the same problem space, this push to get one thing that works for everybody tends to vanish. People start to talk about "right tool for the job" etc. Soon there are 10 different solutions all targeting the same problem space---sort of like what we have with audio now, and then nothing really works properly anymore.

At this point it would be quite helpful if people would stop championing putting OSS back into Linux. It's not likely to happen given the investment already put into ALSA.

If would also help if people stopped pining after dmix. High-quality audio mixing, resampling and effect processing is a complicated enough problem that it should be solved by userspace. Given the lack of reliable hardware-assisted mixing and resampling, it's clear that we need some kind of software solution to paper over what hardware used to be able to do and isn't able to do anymore.

I wish that application developers just got with the program and made pulseaudio plugins for their software. I've written pulseaudio driver for one thing I care about and it was ridiculously easy.

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 4:06 UTC (Tue) by flewellyn (subscriber, #5047) [Link]

I'm struck hard by the irony here. Not long ago, the perennial complaint about the "Linux" desktop was that it wasn't innovative, just imitative.

Now it's TOO innovative?

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 9:19 UTC (Tue) by MathFox (guest, #6104) [Link]

That's called progress!

The Linux desktop developers started later than Apple, so they had to work hard catch up... now Linux is nearly there, it is time to experiment and find better ways to do things. "Innovate too much" sounds like a complaint from the competition that can't keep up.

Solving communication

Posted Jun 23, 2009 10:57 UTC (Tue) by engla (guest, #47454) [Link]

Ingenious with new technology and innovation means we have to be ingenious with project management and communication.

Linux could benefit from even more focused collaborations, such as Moblin or Sugar(!). Each of these know exactly what they do, they select exactly what is going to work, and can work with focus on these components.

The challenge for Linux is to keep it coherent-- we should innovate, but do it together. Don't patch the smallest things in the distribution, push it upstream and work cross-distribution. Freedesktop is great for this. More shared development of important and shared packages is important, even when it's just a shared middleman to the real upstream.

Ideally it would be easier to pick and choose innovative components developed by distributions, easy to see what there is and to pick the components you'd like. More remixes!

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 11:18 UTC (Tue) by dkite (guest, #4577) [Link]

First, as users we limit ourselves to what works. I've experienced this
numerous times in development. We learn to work around bugs and flakey
bits, and unless we write them down as we run into them, we forget. We
limit ourselves. Same as users. I know I work the way the tools I use
work. And right now the Linux desktop is very limited.

Second, The structures that the current working linux desktop is based
upon is somewhere around a decade old.

New stuff breaks old stuff. New stuff has bugs.

Some suggested some kind of established, safe, stable base. It is already
there, all you have to do is package it and distribute it. Bleeding edge
stuff is always unstable and different.

The real problem with that approach is that the old, established, stable
base didn't work either. All those pining for the kde3 days seem to forget
that sound didn't work half the time then either.

Derek

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 16:58 UTC (Tue) by nye (guest, #51576) [Link]

>First, as users we limit ourselves to what works. I've experienced this numerous times in development. We learn to work around bugs and flakey bits, and unless we write them down as we run into them, we forget

So true. It's very easy to get so used to the problems with something that you don't even notice them any more, and honestly think it's ready for general consumption. The result of this is that a new user tries the software and they find it unusable because of problems that you didn't even think about, or thought were trivial. (Or to put it more succinctly: a hundred minor bugs add up to a major usability problem.)

Does the Linux Desktop Innovate Too Much? (Datamation)

Posted Jun 23, 2009 19:27 UTC (Tue) by cantsin (subscriber, #4420) [Link]

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.

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 (guest, #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 © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds