Slashdot Mirror


Lennart Poettering: BSD Isn't Relevant Anymore

halfaperson writes "In an interview with LinuxFr.org, Lennart Poettering speaks freely about his creations, PulseAudio, Avahi and systemd among other things. Naturally, what has stirred up most of the discussions online is Lennart's opinions on BSD. Following the recent proposal to make Gnome a Linux-exclusive desktop, Lennart explains that he thinks BSD support is holding back a lot of Free Software development. He says this while also taking a stab at Debian kFreeBSD: 'Debian kFreeBSD is a toy OS, people really shouldn't misunderstand that.'"

38 of 460 comments (clear)

  1. BSD Isn't Relevant Anymore by Anonymous Coward · · Score: 5, Funny

    It is official; Lennart Poettering now confirms: *BSD Isn't Relevant Anymore

    One more crippling bombshell hit the already beleaguered *BSD community when IDC confirmed that *BSD market share has dropped yet again, now down to less than a fraction of 1 percent of all servers. Coming close on the heels of a recent Netcraft survey which plainly states that *BSD has lost more market share, this news serves to reinforce what we've known all along. *BSD is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent Sys Admin comprehensive networking test.

    You don't need to be Lennart Poettering to predict *BSD's future. The hand writing is on the wall: *BSD faces a bleak future. In fact there won't be any future at all for *BSD because *BSD is dying. Things are looking very bad for *BSD. As many of us are already aware, *BSD continues to lose market share. Red ink flows like a river of blood.

    FreeBSD is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time FreeBSD developers Jordan Hubbard and Mike Smith only serve to underscore the point more clearly. There can no longer be any doubt: FreeBSD is dying.

    Let's keep to the facts and look at the numbers.

    OpenBSD leader Theo states that there are 7000 users of OpenBSD. How many users of NetBSD are there? Let's see. The number of OpenBSD versus NetBSD posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 NetBSD users. BSD/OS posts on Usenet are about half of the volume of NetBSD posts. Therefore there are about 700 users of BSD/OS. A recent article put FreeBSD at about 80 percent of the *BSD market. Therefore there are (7000+1400+700)*4 = 36400 FreeBSD users. This is consistent with the number of FreeBSD Usenet posts.

    Due to the troubles of Walnut Creek, abysmal sales and so on, FreeBSD went out of business and was taken over by BSDI who sell another troubled OS. Now BSDI is also dead, its corpse turned over to yet another charnel house.

    All major surveys show that *BSD has steadily declined in market share. *BSD is very sick and its long term survival prospects are very dim. If *BSD is to survive at all it will be among OS dilettante dabblers. *BSD continues to decay. Nothing short of a cockeyed miracle could save *BSD from its fate at this point in time. For all practical purposes, *BSD is dead.

    Fact: *BSD Isn't Relevant Anymore

  2. Holding back? by Anonymous Coward · · Score: 3, Interesting

    Innovation is still happening on the OpenBSD and DragonFly fronts.

    FreeBSD is all about incorporating other people's software at this point (ZFS, DTrace, LLVM), and hasn't really originated a good idea in a decade. Coincidentally, that is where DragonFly split off. That's what happens when Apple buys the FreeBSD development team...you get a bunch of core developers running FreeBSD in a virtual machine on MacBook Pros. They can't be bothered to get basic functionality like suspend/resume to work, and all new wireless drivers are lifted from OpenBSD.

    NetBSD is dead.

    Regarding the summary, PulseAudio adds nothing to the *BSDs...OSS has always been able to have multiple programs access the sound card at the same time. Avahi runs fine at least on OpenBSD, and systemd....well there are only about two Linux distributions even using it at this point.

    1. Re:Holding back? by Anonymous Coward · · Score: 5, Informative

      Regarding the summary, PulseAudio adds nothing to the *BSDs...OSS has always been able to have multiple programs access the sound card at the same time. Avahi runs fine at least on OpenBSD, and systemd....well there are only about two Linux distributions even using it at this point.

      PulseAudio is a useless piece of shit. It's like ALSA with a bunch of stupid complications. How it got to be the standard sound system for so many mainstream distros is a real mystery.

      It lends credibility to the idea that Open Source developers don't really want to achieve a mature, working codebase and stick with that unless there are serious problems that really do require moving to something else. There is a perception that it has to be hackish and in perpetual beta to be considered sexy and cool for an Open Source OS. PulseAudio is a big example of why this perception exists.

      Just answer me one thing. ALSA has had Dmix for nearly ten years. It has enabled Dmix by default (as in it just automagically works) for about seven years. What glaring need is there for adding a second software layer to a sound system that already does what you need it to do? No, playing sound over the network isn't a good reason. That's what application-level streaming software is for. What does PulseAudio contribute other than needless complexity and several FAQs dedicated to replacing it with ALSA for various distributions that ship with it?

      Oh, and in the case of Mandriva, a petition to remove PulseAudio by default since more than 90% of users are disabling it and replacing it with ALSA. Yeah, that's not for no reason.

    2. Re:Holding back? by mevets · · Score: 5, Insightful

      Too bad they didn't port the FreeBSD audio. It actually works.

    3. Re:Holding back? by Wonko+the+Sane · · Score: 5, Interesting

      Before PulseAudio it wasn't possible to turn on a bluetooth headset and have any audio that was playing through your speakers automatically start going to the headset instead.

    4. Re:Holding back? by causality · · Score: 3, Insightful

      As for Alsa/another sound server replacing OSS, OSS do the mixing (and resampling?) in the kernel space, citing latency is one of the reasons, while alsa let userspace programs the jobs. IMO, that kind of works does not belong to kernel space, so I prefer alsa.

      Regarding to pulseaudio, dmix is fine, but pulseaudio is better with features like glitch free playback (ironically, this is the reason why pulseaudio glitches so bad on some systems with broken drivers), you can set the resampling algo, per stream volume control, flat volume (another problematic feature), and as some people said, it is the only setup that allow output via bluetooth devices but I haven't tried it yet. The main reason for many problems related to it is the horrible audio drivers on Linux (as always), so you can't exactly blame pulseaudio, at least it always has fallback mode, and the distros never set them as default. Back when pulseaudio was first integrated into Ubuntu (around 8.04, right?), it didn't work well for me and stop working for many other. But now, most people I know have absolutely no problem with pulseaudio. PS: Aside from dmix, there are several other sound servers like arts, esd etc.... too, I'm glad that we get rid of all that and now pulseaudio on alsa is the standard.

      The in-kernel audio drivers have always worked flawlessly for me. I have never had problems with latency, glitches in playback, etc.

      But let's just assume, for the sake of argument, that I just got lucky. Let's assume most users have problems that can be directly attributed to shoddy in-kernel drivers (as highly unusual and unlike the typical linux kernel experience as this is...). The solution to that is to put available development effort towards fixing those drivers. They are, after all, the low-level foundation of the audio system. The solution is emphatically NOT to add a redundant software layer on top of broken drivers. You do like to solve problems by fixing things where they are actually broken, right? That's the sensible thing to do. That's the correct use of the talent of developers who specialize in programming sound systems.

      Arts (what a piece of vulture shit that was) and ESD are not on equal footing with Dmix. Dmix is a small, relatively efficient, rather problem-free mixer for sound cards that do not have a hardware mixer. It just works and it actually serves a purpose, unlike the sound daemons. ALSA will use a hardware mixer instead of Dmix if you have high-end hardware and one is available. I have never known Dmix to introduce playback stuttering, idiotic problems with multiple users, or any of the other problems you can easily find when you do a Google search for Arts or PulseAudio. I have also never known Dmix to use any noticable amount of CPU.

      Again I will reiterate. PulseAudio is a middleman standing between the applicating wanting to play sound, and ALSA. How exactly is that going to fix an inherent flaw in the underlying ALSA system? Hint: it will not and cannot. If there are such horrible problems with Dmix (that somehow I won the lottery of never personally encountering), that kind of development effort should be put towards fixing Dmix. Doesn't that make a lot more sense?

      --
      It is a miracle that curiosity survives formal education. - Einstein
    5. Re:Holding back? by Electricity+Likes+Me · · Score: 3, Insightful

      PulseAudio isn't a bad concept, it's just that it doesn't work properly for far too many people. But the widespread adoption of tablet, smartphone and other "slim computing" devices does kind of speak to a need for a software-agnostic way to stream audio from server to client - requiring every application that wants to do this to implement streaming isn't a very sensible solution to the problem IMO.

    6. Re:Holding back? by Anonymous Coward · · Score: 3, Interesting

      If the goal is to get rid of problems caused by ALSA (I'd love to hear what those are, by the way) ...

      Not that PulseAudio would necessarily solve these, but here's my list:

      (1) The default dmix resampler sucks. The "high-quality" one is better, but that one uses up significant chunks of CPU time. I haven't had a chance to look at the code (been meaning to) but it seems to me it should be possible to maintain quality without using so much CPU.

      (2) Semi-pro home-studio type soundcards are poorly supported. Currently my ENVY 1712 does not come up right on boot and it takes an iteration or two of unload-modules and restart alsa before it "catches". Seems something broke somewhere between 2.6.32 and 2.6.38. Alas I need the latter to support this motherboard.

      (3) After audio's been playing for an hour or two, I'll start to get some crackling in the left speaker. Unloading modules and restarting alsa fixes it.

      (4) The resampler/dmix semantics are dumb given that many soundcards can run at any of the popular sampling rates up to 96K. A smarter way to do the mixing is: when no other sound is playing and an application asks for audio, set the card to run at the same rate as the source to be played. No resampling required. If and only if a second sound source wants to come in while sound is currently being played; and if this second source asks for a rate different than the one currectly being used, then and only then the resampler is started and used to match the second sound's rate to the first.

      Most the time this does what you want: music being played will sound as clear as possible. Any ancillary system boops and beeps and desktop sounds that come in the middle will get resampled if needed. And you won't be burning CPU except when needed, and only for the relatively short ancillary sounds.

      (5) Perhaps there's a way to configure the behavior desired in (4), but the alsa configuration language and options are so dense and (to me) counterintuitive I don't know where to start. It is like a programming language onto itself but there's no idea of what options are relatively efficient to use, and what should be avoided if possible.

      (6) Related to (5) and indirectly to (4), there are time I _want_ exclusive use of the audio, without any mixing. I live with several roommates; we rotate around who plays mood music in main room. When I'm playing audio in this manner, the _last_ thing I want is to be shocked out of my seat when I inadvertantly visit the "wrong" web-page that blasts some sounds. What's the best way of expressing this in alsa-lingo?

      (7) The Jack-audio-connection-kit realtime audio router seems to solve a lot of the same problems as dmix, and as PulseAudio. Why didn't they just use that? I get much better results when using Jack. Admittedly, Jack runs on top of alsa, so what's Jack doing that the apps aren't outside of Jack?

      Some of these may well be PEBKAC. I apologize but find the documentation is simply too dense and obscure for someone who doesn't yet have a grasp of just how all the pieces interact that I may know where to look and what to tweak - or, even - what pieces are available. It didn't help that I was trying to set up audio right around the time dmix entered the picture and what I thought I knew one week no longer worked the week after, which has put a rathar sour taste in my mouth over the whole thing.

    7. Re:Holding back? by gilboad · · Score: 4, Informative

      Actually, I -really- like Pulse.
      For the first time since, err, RedHat 5?, I can actually hear music on amarok, watch a movie on youtube and get a call using skype without blocking the system.
      I can dynamically reduce the volume of streams that I don't like (E.g. flash) without dropping the volume on other applications (E.g. amarok) or dynamically move streams from one device to another (E.g. Switch music stream from on-board / headphone to SB Audigy / 5.1).
      I could never achieve that, not with Alsa (Linux w/ or w/o dmix) nor with OSS (under both Linux and FreeBSD).

      Now, ***you*** may not appreciate or need it, but calling a very stable (at least on Fedora) a useless piece of shit just because ***you*** don't use it, should have earned you a -5 troll.

      - Gilboa

    8. Re:Holding back? by Anonymous Coward · · Score: 3, Insightful

      The right way of dealing with it, IMO, is more or less the pulse-audio way. ALSA is doing a lot of stuff in the kernel that probably should be in userspace, and cramming your entire bluetooth stack (plus any other audio sources and sinks that might be hotplugged) into the kernel just to handle audio is architecturally the wrong fix. You want to take a step back, figure out what needs to be done in the kernel (analogous to kernel modesetting for video), and pull the rest of ALSA's functionality into a userland daemon analogous to an X server.

      But PulseAudio is (still) immature, and in some ways (particularly its braindamage pertaining to multiuser systems) just plain wrong; I'm in no way advocating for its adoption now, much less back when distros started adopting it.

    9. Re:Holding back? by gilboad · · Score: 3, Insightful

      Sounds like everything you could do with JACK years ago. Pulseaudio was written because... well... there is no good reason for pulseaudio to be written in the first place. Lennart simply didn't like JACK, or ESound, or aRts, or any of the other existing sound servers. It's the age old open source dilemma of rewriting from scratch what could otherwise be fixed in the existing systems..

      .

      I can only speak from my own personal experience, but at least in my case, ESD and Arts never really worked when trying combined non-native applications (E.g. KDE under GNOME or vice versa, let alone running OSS games/flash/etc under both) and as for JACK, well, tried it a couple of times, never really worked for me, dropped it.
      Pulse marked the first time both me and the people around me can reliably mix multiple streams from different applications while getting expected results. (E.g. Mixing Amarok, skype, qemu running Windows VM w/ audio and a native Linux games that uses OSS)

      Granted, both me and my friends/coworkers use Fedora which doubles as PulseAudio test-bed (which may be the reason to better out-of-the-box experience), but at least for us, PA simply, err, works?

      The problem is that it got shoveled down the rest of our throats long before it was ready for public consumption, and without any real pressing need.

      I fully agree, even though I understand Lennart's reasons for doing it (AKA KDE 4.0 release limbo).
      Heck, I used to automatically remove PA as the first post install phase up-until Fedora ~8-9.

      As I see it, PA had a rotten beginning and has improved tremendously since then but much like KDE 4.x, it still suffers from the bad reputation that trails it since the initial troubled release.

      The irony is that a lot of people here praise Alsa... anyone that's old enough to remember the first years after the move from OSS to Alsa would easily remember that Alsa attracted more-or-less the same hateful reaction that PA now draws. ... One can only wonder what will be said on GNOME 3 and KDE 4 when GNOME 4 and KDE 5.0 will be released :)

      - Gilboa

    10. Re:Holding back? by smash · · Score: 3, Insightful

      The other linux problem: Not Invented Here.

      See DTRACE vs Systemtap

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    11. Re:Holding back? by gmueckl · · Score: 4, Insightful

      I hate audio demons. These crutches never worked properly and never will. Someone needs to actually make a lot of absolutely breaking changes to ALSA. Why?

      When I plug in my USB headphones in Windows, all programs using default audio output automatically move from my 5.1 speakers (onboard sound) to the headphones the moment I plug them in. When I pull the plug, the reverse happens automatically. It just works! MacOS supposedly behaves the exact same way.

      On Linux, this is broken in ways you cannot even imagine. When I plug in the USB headphones after booting, they are treated as the second sound card (hw:1) when everything uses the first one (hw:0) by default. So in order to have anything use the headphones I have to reconfigure the applications one by one and probably restart them (xine needs a restart). Same when I change back. When I leave the USB headphones in when booting, it is totally random which sound device will be hw:0 and which will hw:1. Great. To make matters worse, when I leave the webcam plugged in, the internal microphone also gets registered as a different sound device. Plus, when it is plugged in when booting it gets a number one below the headset. So sometimes the webcam microphone ends up as hw:0 during boot and every program attempting to use hw:0 as output device will throw up confusing error messages about how everything stopped working (if they even detect that). A normal user would have given up on this mess already!

      The really proper fix would be the following: break the ALSA interface in a big way: don't number sound devices, but name them after the hardware they contain (not the bus location, esp. in the case of USB devices), and make the current default device queryable somehow. Programs must then query ALSA for the default device and be aware that this may change at any moment. ALSA must be extended by a mechanism to report such changes to programs, which absolutely have to respond to this in order to not crash and burn (it'll be a PITA for the programmers, but it's absolutely necessary to enforce all of this). Also, ALSA must be able to report the speaker configuration connected to a certain device.

      Why? Programs that are capable of generating two or more channels of output sound need to be aware of how many channels are going to be audible. It's not enought to know that the sound device has a 5.1 analog output. It is equally important to know whether all outputs are actually connected to speakers (e.g. a headphone connected to the onboard 5.1 analog output) or the program will play sound on channels that are inaudible and will not be heard by the user. Really great programs even should distinguish between stereo speakers and headphones or different setups for the same set of speakers (I guess most OSS Linux app devs won't even know why that is). Automatic downmixing inside ALSA when the output channel count decreases on a device change should not happen because the program almost always has additional information and thus can do a better job.

      I know that programmers will cringe when they read this because it makes using ALSA much more difficult, but that's what is missing to get consumer desktop audio up to par on Linux.

      --
      http://www.moonlight3d.eu/
    12. Re:Holding back? by TheRaven64 · · Score: 5, Interesting

      Working audio was what made me switch to FreeBSD in the first place. This was back around 2001. The state of the art was something like this:

      Applications played sound by writing writing to /dev/dsp. This was a fairly standard way of playing sound, based on the Solaris, and supported by most *NIX systems. OSS defined a set of ioctls for controlling playback, and these worked everywhere. There was one slight problem: most implementations didn't support software sound mixing if your hardware (like most cheap AC97 CODECs) couldn't do mixing in hardware. This meant that only one device could write to /dev/dsp at once, meaning only one application could play sound. KDE and GNOME both had their own (incompatible) sound daemons, so multiple KDE or multiple GNOME apps could play sound at once, but not both. I was using a KDE Jabber client, a GNOME email client and wanted to get audio new message notifications from either. I also wanted XMMS (which wrote directly to /dev/dsp) to play music in the background, and I wanted to play BZFlag! sometimes and have its sound work without breaking anything else.

      In Linux land, there was ALSA. ALSA did sound mixing, but it required your applications to be rewritten to use it. Some sound cards only had ALSA drives, some only had OSS drivers. A few had both. ALSA had a half-arsed OSS emulation mode, but that broke various other things, and still didn't let multiple OSS applications play audio at once.

      FreeBSD 4 had a virtual channel (vchan) mechanism. You had several /dev/dsp.n devices. /dev/dsp was a symbolic link to one of them. I set the KDE sound daemon to use /dev/dsp.1, the GNOME one to /dev/dsp.2, XMMS to use /dev/dsp.3, and whatever other app tried to use /dev/dsp got the /dev/dsp.0 channel (typically games, running in the foreground). All of my running apps could play sound at once and, after a small amount of initial configuration, it Just Worked.

      I didn't stay with FreeBSD 4 for long on the desktop, I started using the FreeBSD 5 betas. This was a really unpopular FreeBSD release, because it was only about as stable as Linux at the time, which most FreeBSD users felt was completely unacceptable. It improved the sound system so that the vchans were automatically allocated. Now, things worked just as well as they did with FreeBSD 4, but I didn't need to configure anything. Apps could just open /dev/dsp and they'd each get a new vchan, up to a configurable limit (I set it to 16, which seemed to be more than I needed).

      Now I use FreeBSD 8. As well as the earlier features, it has a new low-latency sound mixing path, per-vchan volume controls, and full OSS 4 support. Oh, and it even has a compatibility layer, so if I run old code that uses the OSS 3 APIs and tries to modify the global volume control via /dev/mixer, I can make it only modify its own vchan's volume.

      Meanwhile, Linux developers were told that, actually, they shouldn't use ALSA, they should rewrite their sound code yet again, this time for PulseAudio. And people wonder why I hate having to support Linux...

      --
      I am TheRaven on Soylent News
  3. In related news by ArchieBunker · · Score: 3, Insightful

    Apple claims HTC is no longer relevant and Ford also claims GM is no longer relevant.

    Seriously you're asking a linux developer his opinion on BSD? What answer were you expecting?

    --
    Only the State obtains its revenue by coercion. - Murray Rothbard
    1. Re:In related news by dgatwood · · Score: 4, Interesting

      Seriously you're asking a linux developer his opinion on BSD? What answer were you expecting?

      Something that doesn't make him sound like a complete idiot?

      The core of Mac OS X borrows heavily from BSD, so one could legitimately argue that BSD is now the most widespread UNIX variant. In fact, I wouldn't swear to it, but I suspect that makes BSD (and Mac OS X, specifically) more popular than all of the other Linux and UNIX variants put together.

      You'd pretty much have to be living under a rock to think that BSD isn't relevant. Either that or you have to believe that Windows is the way of the future. Take your pick.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    2. Re:In related news by Tom9729 · · Score: 5, Informative

      TFS is flamebait.

      LinuxFr.org : Systemd use a lot of Linux only technologies (cgroups, udev, fanotify, timerfd, signalfd, etc). Do you really think the Linux API has been taking the role of the POSIX API and the other systems are irrelevant ?

      Lennart : Yes, I don't think BSD is really too relevant anymore, and I think that this implied requirement for compatibility with those systems when somebody hacks software for the free desktop or ecosystem is a burden, and holds us back for little benefit.
      I am pretty sure those other systems are not irrelevant for everbody, after all there are people hacking on them. I just don't think it's really in our interest to let us being held back by them if we want to make sure Linux enters the mainstream all across the board (and not just on servers and mobile phones, and not in reduced ways like Android). They are irrelevant to get Free Software into everybody's hand, and I think that is and should be our goal.
      But hey, that's just me saying this. I am sure people do Free Software for a number of reasons. I have mine, and others have others.

      He's saying BSD isn't really relevant on the _desktop_ (and sorry but no, OS X is not a counter-example to this) and that if developers want Linux to succeed on the desktop then they need to worry less about other platforms. In other words, don't cater to the lowest common denominator.

    3. Re:In related news by kc8apf · · Score: 5, Insightful

      It's interesting that the question implies that Linux is leading the charge in defining new APIs. Everything listed has a FreeBSD equivalent that predates the linux version:

      cgroups -> jails
      udev -> devfs
      fanotify, timerfd, signalfd -> kqueue

      Of course, the Linux developers decided to reinvent them all making compatibility impossible. I guess you could argue that the Linux versions offer some extra features over the FreeBSD versions, but from a user and developer perspective, the FreeBSD versions seem more complete and stable (see jails vs cgroups).

      --
      kc8apf
    4. Re:In related news by Moridineas · · Score: 3, Interesting

      Apple is due to report quarterly earnings next week. Guesses are that they will have sold around 18 million iphones and 8 million ipads, maybe 5-6 million iPod touches. Comes out to a ballpark of roughly 360k activations a day.

      Is it just me or is it almost unbelievable that between iOS and Android there are almost a million devices being activated every day? Amazing...

    5. Re:In related news by MacGyver2210 · · Score: 5, Funny

      Lennart is trying to make Linux more like OSX

      Thank you for clarifying that. Now I understand that he is to be stopped at all costs.

      --
      If the only way you can accept an assertion is by faith, then you are conceding that it can't be taken on its own merits
    6. Re:In related news by 0x000000 · · Score: 4, Interesting

      This issue has been going on for a long time, and each time a BSD developer asks to see solid docs so that he/she can port the API to be used on FreeBSD they get a bunch of incomplete specs that are absolute shit.

      http://gezeiten.org/post/2011/01/Xfce-4.8-on-BSD-flavors#c14587

      Warner Losh asking for good specs to implement udev on top of devd which has done the things that udev now does for years.

      --
      cat /dev/null > .signature
  4. PulseAudio? by 0100010001010011 · · Score: 4, Insightful

    This guy needs beaten just for this.

    1. Re:PulseAudio? by causality · · Score: 4, Interesting

      This guy needs beaten just for this.

      I don't blame him for creating PulseAudio. I blame the distribution maintainers for having the poor judgment to make it the main sound system for so many distributions. It would be one thing to have a sane default like ALSA and then have PulseAudio available in the repositories for those who really want it.

      For my friends who use Linux, the first thing I do whenever a new distro is installed is to check if it is using PulseAudio. If so, I remove it and replace it with ALSA. Suddenly issues related to audio playback go away and everything just magically works. Oh and they easily have a proper mixer without jumping through hoops, too, which is handy considering some of them are using 5.1 surround sound and/or bluetooth headphones.

      The first headache I had with PulseAudio was when I tried to run something as a different (normal) user account and audio wouldn't work. There was no meaningful error message. There was only a "connection refused" error in the terminal. As it turns out, this is because PulseAudio has to be run by the user and it is recommended not to run it as a system-wide daemon. User A was running the user-daemon and User B was denied access to it as a consequence. They both could not run their own, well they could but it wouldn't work, as that'd be far too easy. Rather than screw around trying to get that to work I just used ALSA since PulseAudio didn't do anything I needed it to do that ALSA couldn't do with none of the hassle.

      In case you wonder why I was running something as another normal user, it was for using Windows programs in WINE. I always prefer to do that with a separate user account that isn't used for anything else. This special WINE account has additional restrictions because I do not trust Windows programs -- they might phone home, they might contain malware, they are binary blobs that cannot easily be inspected, etc. The point is, Unix and therefore Linux are multi-user systems. You expect to be able to have multiple concurrent users running programs without issue.

      PulseAudio smacks of the walled-garden model, where as long as you are a very average user who does extremely predictable things that they have decided to allow for, such as only having one active user on the local system, then you have few or maybe no problems. As soon as you do anything even the slightest bit unusual (which multiple users on a *nix system hardly is) you start running into brick walls. To that I say "no thanks, not for me". If I wanted that experience I'd use Windows. If ALSA were a barely-functional, poorly designed sound system I could at least understand why PulseAudio exists and why it is becoming so popular. As far as I can tell it's a burdensome solution to a problem that doesn't exist.

      --
      It is a miracle that curiosity survives formal education. - Einstein
    2. Re:PulseAudio? by fnj · · Score: 5, Insightful

      Word. Systemd. What a pointless masturbatory waste of effort. That's just one area where BSD, far from not being relevant, is right. They don't fuck with what works fine.

    3. Re:PulseAudio? by Chris+Mattern · · Score: 3, Informative

      "Oh something new and shiny that breaks backwards compatibility! Therefore it must automaticly be bad!"

      Well, yes, actually. Breaking backwards compatibility is always bad. It may on occasion be necessary to do so to gain a greater good, but it's still bad.

  5. Does Netcraft confirm this? by mlts · · Score: 5, Funny

    Just curious... does Netcraft confirm this?

  6. Pulse Audio by Beelzebud · · Score: 5, Interesting

    I don't take anything from this guy seriously after dealing with Pulse Audio on a few systems. The shit never improved and only added a layer of incompatibility to systems that ran just fine using ALSA by itself.

    1. Re:Pulse Audio by Anonymous Coward · · Score: 5, Interesting

      He has a tendency to develop things halfway, without taking any input from any users, and then everyone using Fedora has to end up using it even if it's complete shit. If you criticize him, he's got some staunch defenders that will call you out on it, mostly the people who have only ever used Linux on a laptop... that really does seem to be the only thing he cares about.

      PulseAudio - a useless NIH layer. ALSA was just fine. He lists a bunch of other problems with Linux audio, but everyone was just using ALSA directly, nobody was using his straw men really (Jack? OSS? Really?) This is the first thing I remove on my Linux boxes.

      I predict systemd will be his next "hit". He named the control command "systemctl" even though every Linux has a "sysctl" command already... one of the most easily avoidable CLI namespace problems I have ever seen in over 20 years of UNIX and 18 years of Linux administration. I think systemd is because he really really wants to make Linux into MacOS X. If you want MacOS X, then great, it's a fine desktop OS, have at it.... but Linux is still mostly used on servers, and there is nothing wrong with that at all. Anyway, systemd just throws out everything that was good about init and even upstart, and starts over, and he is busy adding the features of cron and inetd to it for some reason. Because saving some tiny amount of space in the process table is somehow useful.

      I just wish there was some review of features that make it into Fedora, etc, to see if they're really worth it.

    2. Re:Pulse Audio by gmueckl · · Score: 3, Interesting

      From what I've read about systemd the most irksome part is that every daemon that wants to really work well with systemd must undergo quite some code changes. Otherwise, that particular demon will be handled like in the old init system. So, in order to bring any benefit at all, the whole system (which worked) must be adopted to systemd in some way. Given that some of these demons are really there to be run on servers where systemd has no place, this thing does not seem like a very good idea.

      But unlike PulseAudio, i haven't had a chance to see systemd fail spectacularly.

      --
      http://www.moonlight3d.eu/
  7. Re:Linux itself isn't relevant anymore by hedwards · · Score: 3, Insightful

    That was my thought, BSD gets a bit of a license in that regards because it isn't trying to take over the desktop space. There are a small number of OSes that are related, some are focused on the desktop environment, but they're more focused on polish and actually working reliably from release to release and evolving the experience over time.

    Linux OTOH varies enough that I can't really make a particularly fitting statement on that. Some distros are run by people that know what they're doing and focus on fixing things that are broken, others like Ubuntu are clearly run by crack smoking monkeys and you end up with unusable garbage or releases that have nothing in common with previous releases.

    But with the dozens of distros and all the talk of being relevant to the majority of users, it's hard not to view it like the short bus kid that thinks he's going to be valedictorian. At the end of the day, most of what's wrong with Linux is the direct result of trying to copy Windows and scoop up the users even if things like automounting were stupid to begin with.

  8. Re:Linux itself isn't relevant anymore by camperdave · · Score: 3, Funny

    Linux on the desktop is so last year...

    --
    When our name is on the back of your car, we're behind you all the way!
  9. Re:Um... Pardon Me, But... by TheGratefulNet · · Score: 3, Informative

    not sure about today, but years ago, Juniper networks used freebsd inside, to run the userland side of their core routers.

    netbsd was used (also about 10 yrs ago, a lot) for non-intel style embedded network devices. I was at a router/switch company and we used netbsd (ppc arch. at the time).

    can't say I ever ran into a bay area company, during my travels, that used openbsd. but back about 10 yrs ago, freebsd and netbsd *were* quite popular in the enterprise. corp people didn't like the GPL (at least at the time) and bsd was the most business-friendly license they could find.

    --

    --
    "It is now safe to switch off your computer."
  10. always wondered why PulseAudio sucked by decora · · Score: 5, Insightful

    now we know.

    the developer lacks humility.

  11. redhat audio people on irc by decora · · Score: 4, Interesting

    back in the late 1990s, i had a flamewar on an irc channel with a guy from redhat, screaming at me that there was no reason anyone would want to have two programs play a sound at the same time.

  12. ha ha by Weezul · · Score: 3, Insightful

    Linux's vaguely meritocratic approach has obliterated the BSD cliquish approach, period.

    Does any other OS have multiple competing teams writing the scheduler? How could anyone possibly compete with that? Seriously!

    Conversely, the LLVM will eventually obliterate GCC for the same reasons, multiple participants engaging in healthy competition. Oh, plus the LLVM simplifies writing compilers for virtually any language.

    p.s. Does APL/K/J have an LLVM based compiler yet?

    --
    The Christian religion has been and still is the principal enemy of moral progress in the world. -- Bertrand Russell
  13. Lennart by DaMattster · · Score: 3, Insightful

    Why does he have to spread crap like this around? Really, there should be cooperation between the Linux and BSD camps. They interoperate very well because, for the most part, they share some common userland tools and are also semi-POSIX compliant. One of Sun Tzu's principles in the Art of War is to divide and conquer. When FUD gets spewed from the OS camps, it simply shows how divided Open Source really is and makes it easier for proprietary OSes to gain inroads.

    1. Re:Lennart by Alcoholic+Synonymous · · Score: 4, Insightful

      Poettering is a zealot for a religious cause. It has nothing to do with truth or facts or even logic. His chief gripe isn't actually that BSD isn't keeping up with Linux, it's that BSD does things different from Linux and he doesn't like it. He tries to spin different as not keeping pace, but that's based on the assumption that the way he wants to do things is the One True Way. Mind you, he says this while simultaneously and purposely trying to keep BSD out of the party by refusing any and all compatibility patches that would make his One True Way usable on BSD.

      Amazingly, the BSD people have a way of fixing this crap themselves. It's just more of a pain in the ass when people like Poettering actively work against their efforts.

  14. Further pulseaudio reasons by Sits · · Score: 3, Informative

    Many of the things that pulseaudio provides:

    • When I log into GNOME I don't have to have the same volume as the last user who logged into GNOME- it's restored on a per user basis
    • Simplified volume interface. Pulseuadio multiplexes things like the Master volume and the PCM volume into a single control thus allowing better granularity than the Master volume alone
    • When I plug a USB webcam in, pulseaudio now remembers that I prefer it as my default microphone and applications switch to using it rather than the built in one without forcing programs to be reconfigured
    • The per app volumes are also useful - sometimes a Flash app in the browser doesn't have a volume control but I can use pulseaudio to make it quieter
    • esd has been allowed to retire
    • Using pulseaudio allows the kernel to sleep longer when audio is playing by sending a bigger buffer when possible. When not possible (because a quicker response is needed) it sends a smaller buffer. This enables power savings to be made.
    • Easier to apply volume boost (artificially making quiet audio "louder")
    • Easier to switch between audio setups (e.g. from stereo to 5.1)

    There were introductory issues too:

    • When it was introduced most programs didn't use pulseaudio directly. Some programs still wanted to use OSS. Pulseuadio can emulate a subset ALSA but some programs were using more than that subset
    • Not all distributions enabled ALSA emulation when they first enabled pulseaudio. This created fights between ALSA using programs and pulseaudio using ones
    • Bugs in audio drivers were uncovered. Like a tree falling in a forest with no one around to hear it, you can create a philosophical debate as to whether a bug is a bug if no one hits it. Regardless, the result was pain for some users.
    • Bugs in the userland audio stack. Bugs in gstreamer and pulseaudio have caused issues like the volume going to 0 every time a track was changed or huge CPU usage that caused pulseaudio to be killed off.
    • Choice of audio mixing methods which make use of floating point

    These issues seem to have been mostly solved with time but caused a lot of heartache along the way. The problem is whether it was a chicken and the egg issue where these issues wouldn't have been uncovered until people started testing these things but you can never get enough testers so...

    Then there are issues that are still with us. If you have a creative sound card your life is going to be difficult. Pulseaudio doesn't make use of hardware mixing so if you have such a card, you may have noticeably higher CPU usage than ALSA alone (even though the audio mixing is no better). Two steps forward, one step back?

    ALSA was never going to be able to introduce all the features mentioned in the first part of this mega post, mainly because it is too low level. Even OSS on the BSDs doesn't present an easy GUI for all those features (it does do mixing and per program volumes) yet Windows and OS X have many of these features. The big picture is that I can do things that I couldn't before and sometimes a lot simpler (remember esd and artsd?) but there was a cost. You may not find the cost was worth it but my feeling is that it will be around on "big" Linux (e.g. machines similar in power to desktops) for the next 10 years.