5 ms·
I remember the Fedora 7 (?) days when PulseAudio was made default and nothing worked (silence is golden apparently). I routinely removed PulseAudio from my syst
by 72deluxe 10y ago
I remember the Fedora 7 (?) days when PulseAudio was made default and nothing worked (silence is golden apparently). I routinely removed PulseAudio from my systems and dropped to ALSA.
I observe that systemd has a plethora of other systems that you mention, including a DHCP server. Yes a DHCP server.
I do not understand it.
Edit: Yes I know Fedora 7 was ancient. Just my memories. I think the fact that PA was broken in it got fixed pretty swiftly, from memory. But I was plagued with glitchy audio releases after this - could be my incredibly lame hardware at the time (but worked fine in ALSA).
- belorn 10y agoDo you understand why the Linux kernel has a network stack and do encryption algorithms? Historically, its the difference between Monolithic vs Micro design. The linux kernel is not just a layer between the application and the hardware, it also support a bunch of extra things which the project want to have built in rather than as optional libraries. There is no TCP/IP or AES library, but there is non-supported alternatives to those that are libraries. If you wonder why systemd has a dhcp implementation, ask why the tcpip stack don't.
- i336_ 10y agoThat is a very good point, and I'd like to hear the arguments for why such capabilities wouldn't be added into the kernel. They'd probably go along the lines of saying that there are already millions of lines of code in there and adding these types of features would add to the codebase size and permanent maintenance requirements. But it would be really cool if all of these kinds of high-level features were available, yeah...
- lmm 10y agoYou don't want them in the kernel, that makes them much harder to replace/upgrade/tinker with. If anything you want to go the other way and move the TCP stack out of the kernel and into a normal userspace library.
- digi_owl 10y agoSomething that is in the process of happening, iirc. Linux is turning into something of a hybrid kernel, or perhaps will emerge a micro-kernel given time.
- i336_ 10y agoI read (unfortunately unsure where) that microkernels do have one fundamental issue: having servers do All The Things and then just making a kernel to dispatch calls to those servers horribly falls down if the messaging/dispatch implementation is single-threaded. And it inevitably always is, since if you're generalizing all system operations onto a single bus, that bus would either need to support some generic form of contextualization hinting or have some kind of theorem-solver-inspired system to determine what requests have no dependencies. I don't suspect Minix incorporates either approach... The problem I see is the need to put "these are audio frames" in a different queue than "here are filesystem request packets". (Ideally the filesystem queue would itself allow further sharding, since most filesystems are multithreaded now.) Writing such a generalized queue sounds like a rather fun exercise to me. That said, if any such implementations are out there or there are any counter-arguments to make to this, I'd love to hear them. I mean, AFAIK Mach is a microkernel, so it's clearly solved some of this.
- digi_owl 10y agoI am of limited knowledge regarding micro-kernels. As i have come to understand there is one successful such kernel out there, QNX. And that while both the OSX/iOS and Windows NT kernel started out as a micro design, both Apple and Microsoft have been moving things in and out of the kernel proper as they try to balance performance and stability (Most famously with Windows, the graphics sub-system).
- i336_ 10y agoQNX is such a mixed story of technical ingenuity and frustration. The OS was cautiously courting a "shared source" model where you could agree to a fairly permissive (but not categorically pure-open-source) license and get access to quite a few components' source code. It was anybody's guess what might develop from that, and an intriguing and hopeful time. And then BlackBerry came along and bought QNX and killed the shared source initiative. Really mad at BB for deciding to do that. Nowadays QNX is no longer self-hosting - no more of that cool/characteristic Neutrino GUI anymore :(
- i336_ 10y agoRight. Wow, Fedora 7 was a little while back. The problem with systemd's NTP and DHCP and whatnot is that they use their own systemd-specific APIs. Not using the APIs means that you don't talk to those components. And the thing is, if you're on a systemd-based system (which you can generally assume* to be the case now), you can 100% depend on those components absolutely definitely existing, regardless whatever else is(n't) installed. (* Unless your users are using Slackware (hi there :D), Devuan or something like that.) So of course things are beginning to depend on those services' APIs. Which are exposed via D-Bus. ("Desktop"-Bus. On servers. Facepalm, Inc.) Now, I do understand that when you use systemd-nspawn or LXC or Docker or whatever else you can generally assume that these components will interoperate and that's why they were implemented. That's the theory. In practice, things... don't work out so well. This was on here a couple days ago: https://thehftguy.com/2016/11/01/docker-in-production-an-history-of-failure/ https://thehftguy.com/2016/11/01/docker-in-production-an-his...
- digi_owl 10y agoTheir DNS "client" implementation was a tour the force of NIH wrongs, including screamers like not implementing security functionality that had been commonplace in other implementations for a decade or more. Damn it, they have a web server in there for the sole reason of displaying a QR code for the initial log signing key. A signing system that apparently Poettering's brother came up with as a doctorate thesis, with systemd-journald being the only implementation (that i know of). BTW, these days you find dbus inside the initramfs. Because systemd need it to be present during bootstrap. After systemd-pid1 is up, it will kill the initramfs version and fire up the one from the HDD instead. There are times i wonder if the Fedora maintainers grit their teeth and play along with Poettering and crew because they have the same paymasters.
- i336_ 10y ago> Their DNS "client" implementation was a tour the force of NIH wrongs, including screamers like not implementing security functionality that had been commonplace in other implementations for a decade or more. :( > Damn it, they have a web server in there for the sole reason of displaying a QR code for the initial log signing key. A signing system that apparently Poettering's brother came up with as a doctorate thesis, with systemd-journald being the only implementation (that i know of). Okay, that I didn't know. Actually let me read that backwards... > log signing key What on earth? Is the log encrypted? > QR code How are QR codes relevant to encryption? > web server Why do I need a WEB SERVER to display a QR code?! Uh... I can get displaying a QR code on the screen, sure. But... I get the impression you mean the QR code is served over a web server? Oh. For headless boxes. But... why display a QR code, again? Why not just serve the log signing key itself? QR codes aren't encryption (just a good week's worth of reading on error-correction). > BTW, these days you find dbus inside the initramfs. Because systemd need it to be present during bootstrap. After systemd-pid1 is up, it will kill the initramfs version and fire up the one from the HDD instead. Mmm. Because all of its APIs are delivered as D-Bus (desktop-bus) services. I totally get that, but... aghhh. Why not even ZeroMQ :( > There are times i wonder if the Fedora maintainers grit their teeth and play along with Poettering and crew because they have the same paymasters. Unless things have changed, Linus Torvalds uses Fedora. He's had a lot to say about things. I would be very very surprised if there wasn't a noteworthy bunch of mental-pitchfork-wielders.
- digi_owl 10y agoFrankly more and more Poettering reminds me of De Icaza. In both instances what the person produces only becomes "stable" after he pass the maintainership to someone else.
- i336_ 10y ago(NB - I wasn't dissing Fedora. I was just registering how far back these issues went.)