Live data from Hacker News

Migrate Everything from Linux to BSD

unixsheikh.com

161–169 of 169 posts

Re: Migrate Everything from Linux to BSD

#161
post #38
post #29

Earlier quoted context omitted.

This is where I sit. I like systemd as an init system. I find its syslog replacement unneeded overreach, and its DNS server absolute insanity. So when asked if I like systemd, it's a loaded question. It's great but absolutely sucks, both.

systemd isn't an init system and doesn't pretend to be one [note] - it's OS middleware with ambitions to becoming a distro unto itself. The systemd project assumes responsibility for numerous aspects of the system that have no technical justification for being under the same project umbrella. You might like systemd-homed, for instance, but it doesn't really have anything to do with the functions of init. Calling it a…

The parent mentions systemd-resolved and you mention systemd-homed. Most distros that use systemd don't use either by default.

IIRC the required parts of systemd are pretty much init-related, service-related (as in starting/stopping services based on certain conditions), udev and journald (which can and is often defaulted to forward to syslog).

Comments like yours make it seem like resolved, homed, nspawn, machinectl, networkd, cgtop, and all of the other utilites and optional daemons are required. They seem more like konquerour in your KDE analogy as in that they are nice if you want to buy into the whole ecosystem but by no means required to use the core program (and many seem to use alternatives instead).

I'm by no means an expert on this, so please correct me if I'm wrong.

Re: Migrate Everything from Linux to BSD

#162
post #117

Earlier quoted context omitted.

> When Debian adopted systemd, after some debate, every Debian-based distro did too. This wasn't considered a particularly invasive change at the time. But systemd started to expand into its "middleware" position, absorbing vital system functions like udev. Your timing is off. udev became part of systemd in 2012. The big Debian debate was in 2013-2014, and was acrimonious enough to eventually cause several of the CTT…

I stand corrected. I eagerly await the publication of "SystemD: A History" and its subsequent adaptation into a dramatic screenplay.

You can get it in audiobook form here: https://www.youtube.com/watch?v=o_AIw9bGogo

Re: Migrate Everything from Linux to BSD

#163
post #32

> DNS over HTTPS is by itself bad enough, and highly criticized with good reason The criticisms of DoH seem to be around removing the ability of third parties to snoop on your DNS queries. Am I missing something here? Like, yes, some of the use cases outlined in the linked wiki article [0] are arguably legitimate (parental controls, cybersecurity identification of C&C nodes), but then we quickly move into murkier ter…

Yes you are missing something. DoH on-by-default means that I as a sysadmin -- for my family, enterprise, or even just my own computer -- no longer have the ability to easily specify how DNS works for the systems under my control. Maybe I run a PiHole; maybe I run a parental control DNS server; maybe I'm better at privacy protection than Mozilla and Cloudflare are. Tough luck; now I'm no longer able to configure all…

Tell me where I'm wrong or misunderstanding here: If you consider DNS analogous to HTTP, then DoH is TLS and the DNS provider is the CA (the org you need to trust). Your objection is that you can't modify protocol traffic since there is now an authority out of your control. It seems to me like it increases the security of the user since the network operator can no longer modify the traffic that the user requested.

I get that it makes some use-cases harder, just like HTTPS made some HTTP use-cases harder (like captive portals for wifi login) but in the end it seems like a net benefit for the majority of usecases (I want the same site, securely, no matter the network I'm on), right?

Re: Migrate Everything from Linux to BSD

#164

Earlier quoted context omitted.

I'm not sure how you can put "software freedom" and "never about choice" in the same sentence to be honest. Software freedom implies without a doubt the freedom of not using software, or that of using "different" software.

No, I intend software freedom in the Stallman sense. Freedom from licences, EULAs, obligations, warranties. Freedom to modify and redistribute. Of course this leaves the door open for "choice", but it's just, in my opinion, an unfortunate side effect.

That makes absolutely zero sense. The whole point of being able to modify and redistribute is about being in control of the software running on your system.

That is explicitly about choice.

Re: Migrate Everything from Linux to BSD

#165

Earlier quoted context omitted.

We'll then switch to something else, or maybe back to Linux.

this is not an argument, this idea that non mainstream is better is harmful , you could and should use bsd over Linux for real argument like loving the idea of "monolithic os", the problem whit the Linux foundation (one or all), or the problem of abundance nesting in most of Linux but it inst about being mainstream, they still exist project whit difference approaches some less orthodox, or non corporation, i think Li…

Mine was a sarcastic comment but whatever.

Re: Migrate Everything from Linux to BSD

#166
post #143

Earlier quoted context omitted.

FreeBSD had "containers" - jails - a decade before linux: https://docs.freebsd.org/en/books/handbook/jails/ I still don't understand why Docker was not made to run on jails as well.

I'm not sure the default jail utility is quite as flexible as what Linux namespaces+cgroups can do. It does look like most of what really matters does exist in some form, and I'd guess any important cases that don't exist could be fixed with a few new simple sysctl options. However, BSD's do not guarantee that their userlands will work with a mismatched kernel. Sure, it often does work, hence why jails only give a wa…

> However, BSD's do not guarantee that their userlands will work with a mismatched kernel. Sure, it often does work, hence why jails only give a warning on mismatch rather than refuse to run at all.

FWIW, FreeBSD tends to go to pretty great lengths to ensure newer kernel with older userland works. A stock GENERIC kernel comes with COMPAT_FREEBSD* options back to COMPAT_FREEBSD4, and parts of the project's infrastructure tend to explicitly rely on at least supported releases to be functional in a jail on a -CURRENT kernel.

Re: Migrate Everything from Linux to BSD

#167

Earlier quoted context omitted.

Yes you are missing something. DoH on-by-default means that I as a sysadmin -- for my family, enterprise, or even just my own computer -- no longer have the ability to easily specify how DNS works for the systems under my control. Maybe I run a PiHole; maybe I run a parental control DNS server; maybe I'm better at privacy protection than Mozilla and Cloudflare are. Tough luck; now I'm no longer able to configure all…

Tell me where I'm wrong or misunderstanding here: If you consider DNS analogous to HTTP, then DoH is TLS and the DNS provider is the CA (the org you need to trust). Your objection is that you can't modify protocol traffic since there is now an authority out of your control. It seems to me like it increases the security of the user since the network operator can no longer modify the traffic that the user requested. I…

The DNS provider is not analogous to the CA. Remember that the CA only certifies that Cloudflare is in fact the Cloudflare, and not Joe's All-Night CDN and Lotto Ticket Dealer. The CA does not vouch for the ethics of Cloudflare, just like the CA does not vouch for the ethics of Google. So that's point 1.

Point 2 is that if I for some reason don't trust Cloudflare to protect my users' privacy or provide speedy service or hey, maybe I just don't like the fact that they carry traffic from a bunch of seditionists -- whatever -- then I have no easy way to say to Firefox: Don't Use Cloudflare, use my provider who I do trust.

I don't care what sites my users are visiting, so inspecting their DNS traffic is not something I need to do (although perhaps it is for certain enterprises). The central point is that I no longer get to easily choose which DNS provider to trust; Mozilla has made that choice for me. That breaks the internet in a way analogous to the way AMP breaks it, and that's wrong.

I can in fact change that choice but doing so introduces a new protocol and a new set of labor-intensive tasks for the sysadmin that did not exist before, and for every app that adopts the Mozilla model, that labor increases yet more.

Re: Migrate Everything from Linux to BSD

#168

Earlier quoted context omitted.

> Because of the fragmentation, I don't have to use systemd, or pulseaudio, or snap, or Gnome desktop, or most other things I don't want to use for whatever reason. I think part of the very reason some folks like you don't like to use some of those things is their shortcomings... which likely come about in part due to the plethora of choices leading to fragmented efforts on the development side. People shift their at…

> "What if I want to replace the Windows Audio... service with something else?" In Windows Vista, Microsoft rebuilt the audio stack on top of WASAPI, making MME and DirectSound shims which feed into WASAPI. However, they didn't break compatibility, and all APIs more-or-less work nowadays. On Linux, ALSA apps sometimes have trouble picking the right device when talking to PulseAudio, and it's difficult for PulseAudio…

3D positional sound hardware acceleration was pretty much made incompatible with this change.

And it was great when it worked, I tell you that!

So yes, they did break compatibility.

Re: Migrate Everything from Linux to BSD

#169

Earlier quoted context omitted.

I'm not sure the default jail utility is quite as flexible as what Linux namespaces+cgroups can do. It does look like most of what really matters does exist in some form, and I'd guess any important cases that don't exist could be fixed with a few new simple sysctl options. However, BSD's do not guarantee that their userlands will work with a mismatched kernel. Sure, it often does work, hence why jails only give a wa…

> However, BSD's do not guarantee that their userlands will work with a mismatched kernel. Sure, it often does work, hence why jails only give a warning on mismatch rather than refuse to run at all. FWIW, FreeBSD tends to go to pretty great lengths to ensure newer kernel with older userland works. A stock GENERIC kernel comes with COMPAT_FREEBSD* options back to COMPAT_FREEBSD4, and parts of the project's infrastruct…

Interesting, and good to hear. I know the other BSDs have a very different view of things. I had heard that Linux was the only OS with a stable kernel ABI guarantee. If FreeBSD does too, that certainly is better.

Windows for example makes zero guarantees there. There are a lot of syscalls that they won't renumber because some applications have taken a dependency on using them directly, but officially using a syscall without going through NTDLL (or wherever the stub is located for private syscalls) is unsupported. Those syscalls they are not keeping fixed for compatibility can and do change from version to version. Mostly in numbering, but changes to semantics or arguments can happen too. Hence Windows Containers can only run in separate namespaces on a matching kernel version, and the hyper-v isolation (a.k.a. virtualization) option for containers is needed for mismatched versions.

So creating an OCI runtime that wraps jails, adding any needed support for FreeBSD specific OCI container settings to containerd, and adding the needed code for things like networking to moby/moby (a.k.a. docker) sounds very feasible to me if some FreeBSD hacker wanted to get proper docker support. Offering Linux Emulation as an experimental option top be able to run more containers would be an added bonus, and should be feasible, since they once had that working with their old unofficial (presumably pre-containerd) builds of docker.

Post reply on HN