8 ms·
> I submit that this is rocket science to the majority of Linux users and is not a sufficient answer. That can't be true, can it? I guess it depends on the def
by dgfitz 3y ago
> I submit that this is rocket science to the majority of Linux users and is not a sufficient answer.
That can't be true, can it? I guess it depends on the definition of "users."
- lproven 3y agoIt absolutely 100% can be true. As an example: Windows Services for Linux 2 used a special init daemon to interact with the host OS. That meant no systemd. That meant that the `systemctl` program wasn't there. This baffled legions, armies, of wannabe sysadmins. https://stackoverflow.com/questions/55579342/why-systemd-is-disabled-in-wsl https://stackoverflow.com/questions/55579342/why-systemd-is-... https://superuser.com/questions/1785697/systemd-in-wsl-on-windows-11-is-not-working https://superuser.com/questions/1785697/systemd-in-wsl-on-wi... https://github.com/microsoft/WSL/issues/9477 https://github.com/microsoft/WSL/issues/9477 https://askubuntu.com/questions/1132230/unable-to-run-any-systemd-services-in-wsl https://askubuntu.com/questions/1132230/unable-to-run-any-sy... People on the whole have no idea how this stuff works, and they just copy magic incantations from StackOverflow to get stuff to happen. If that doesn't work, then this OS is broken. The end. For these guys, WSL was broken. Result: MS hired Lennart Poettering. https://www.theregister.com/2022/07/07/lennart_poettering_red_hat_microsoft/ https://www.theregister.com/2022/07/07/lennart_poettering_re... He "fixed" it. Systemd now works in WSL2. All those guides for noobs now work. Everyone is happy. In a world where tools like Flatpak and Snap are proliferating and it's driving deep divisions between Linux distros, if you think the average person struggling with Linux is going to use `ldd` to work out where the dependencies for something live, I'm afraid you are a deep guru who lives on a different plane of existence. We now have widely-used packaging systems which simply embed an apps entire dependency tree into a package to avoid people having to work out the difference between `apt` and `rpm`. Thousands of terabytes of disk are being burned to make this stuff go away. Yes, this is too hard. Way too hard.
- dgfitz 3y agoYou make a compelling argument. > I'm afraid you are a deep guru who lives on a different plane of existence. I'll take that as an amusing tip of the cap, I hope that is how it was intended. I don't know if I consider myself a deep guru, but if something doesn't run when I expect it to, I do tend to reach for ldd pretty quickly.
- lproven 3y agoIt was. :-)
- pxc 3y agoIncidentally, lack of systemd in WSL2 was also a showstopper for NixOS, so before the Poettering hire and WSL2's systemd support, some NixOS hackers worked out a chroot solution to get systemd running under WSL2. :) (I used to use it at work when I still ran Windows, even after the official systemd support, because Microsoft's implementation had some problems) > People on the whole have no idea how this stuff works, and they just copy magic incantations from StackOverflow to get stuff to happen. If that doesn't work, then this OS is broken. The end. I don't think small, weird Linux distros like NixOS or GuixSD or GoboLinux really have the resources to support careless users of that kind, or stand to gain much from them. Projects like that are seeking contributors more than they are seeking users at all! Is this a tragic flaw? Or is it just a mundane fact about a project that can still thrive in its niche? PS: Any idea why Microsoft 'needed' a special init system for WSL2 anyway? Full fat systemd systems boot in like 8 seconds anyway! WSL's imitators on macOS (e.g., Lima, Orbstack) work with regular Linux distros and just leave the init system intact.
- CoolCold 3y ago> PS: Any idea why Microsoft 'needed' a special init system for WSL2 anyway? Full fat systemd systems boot in like 8 seconds anyway! WSL's imitators on macOS (e.g., Lima, Orbstack) work with regular Linux distros and just leave the init system intact. My slightly educated guess would be on the point that in WSL2 distros, those do share the same running kernel, the same network stack and probably couple of other things under the hood (something about binfmt?). From the product perspective, booting another instance (say I have Ubuntu 22.04 and 18.04 both available) in ~ 1 second, can be seen, and even proved with some A/B testing, as a huge advantage. PS C:\Users\coolcold> wsl -t 'Ubuntu-18.04' The operation completed successfully. PS C:\Users\coolcold> wsl -l -v NAME STATE VERSION * Ubuntu-22.04 Running 2 Ubuntu-18.04 Stopped 2 PS C:\Users\coolcold> netsh wlan show interfaces|wsl -d 'Ubuntu-18.04' -- fgrep Mbps Receive rate (Mbps) : 390 Transmit rate (Mbps) : 390 the call for `wsl` is almost instant even for stopped instance
- pxc 3y ago> From the product perspective, booting another instance (say I have Ubuntu 22.04 and 18.04 both available) in ~ 1 second, can be seen, and even proved with some A/B testing, as a huge advantage. For me at least, they went to more trouble than it's worth for that ~6-7 second gain, given that a normal systemd distro will boot in 7 or 8 seconds anyway. Maybe the difference is bigger on spinning rust. But when I used WSL regularly I was in one VM all day every day. It was always running, so I really wasn't worried about the 10 seconds it took to start up or whatever. At the same time, their custom init setup caused compatibility issues with my distro of choice and some applications (somehow). So it didn't come for free.