Interesting crossover from Linux to Linux Distros... Debian's my
personal fave (in the form of Mint, MX, or even Ubuntu), mostly cuz apt
seems to just work (for me, ymmv) and rpm sucks :). However, all of
these run on the same kernel and generally provide the same userland
(core-utils, etc).
But not the same binaries. I've run into a lot of issues trying to run a binary for Debian on red hat or vice Vera due to shared libraries not being completely compatible... kinda makes the whole system call argument moot since there is always significant version skew...
Warner
I constantly switch from Mac (Mojave) to FreeBSD to
Linux (Mint, usually, but occassionally opensuse) and other than minor
differences in switches, they are all reminiscent of v7, from a user
perspective, outside of GUIs. Except for ZFS, which will keep FreeBSD in
my environment until it's added to the Linux Kernel - is hell freezing
over yet?
-w
On 6/7/22 10:25 AM, Larry McVoy wrote:
> On Tue, Jun 07, 2022 at 11:08:34AM -0400, Dan Cross wrote:
>> On Tue, Jun 7, 2022 at 10:30 AM Theodore Ts'o <tytso@mit.edu> wrote:
>>> The key is I think *competition*. Distributions were competing to
>>> attract a user base, and one of the ways they could do that was by
>>> improving the install experience. There were people who reviewed
>>> distributions based on which one had the better installer, and that
>>> helped users who were Windows refugees choose the ones that had the
>>> better installer.
>> My point is that this is something that varies from distro to distro;
>> it is therefore inaccurate to claim that "Linux solved it" since many
>> different distros that have widely varying installation processes
>> fall under the very large "Linux" umbrella.
> Yeah, there are a large number of distros but I'm willing to bet that
> Debian, RedHat and Ubuntu variants account for the vast majority of
> installs.
>
>>> There are three different things that's worth separating. One is a
>>> consistent kernel<->user space interface, this is what Linus Torvalds
>>> considers high priority when he says, "Thou shalt not break
>>> userspace". This is what allows pretty much all distributions to
>>> replace the kernel that was shipped with the distribution with the
>>> latest upstream kernel. And this is something that in general doesn't
>>> work with *BSD systems.
>> Eh? I feel like I can upgrade the kernel on the various BSDs
>> without binaries breaking pretty easily. Then again, there _have_
>> been times when there were flag days that required rebuilding
>> the world; but surely externalities are more common here (e.g.,
>> switching from one ISA to another).
> Try installing an OpenBSD kernel on FreeBSD, that's what we mean by
> compat. I'm more than willing to believe that you can pull head on
> the FreeBSD source tree and build & install it on FreeBSD. Much less
> willing to believe that that works Open/Free or Net/Free.
>
> With Linux, on pretty much any distro, you can pull Linus' tree and
> build and install it without drama. If you are running some ancient
> release you might have to update your toolchain but that's about it.
> Linus is super careful to not break the syscall table. It's extend
> only, which makes it a mess, but a binary compat mess.
>
>>> The second is application source-level compatibility, and this is what
>>> allows you to download some open source application, and recompile it
>>> on different Linux distributions, and it should Just Work. In
>>> practice this works for most Linux and *BSD users.
>> This, I think, is where things break down. Simply put, the way
>> people build applications has changed, and "source-level"
>> compatibility means compatibility with a bunch of third-party
>> libraries; in many ways the kernel interfaces matter much, much
>> less (many of which are defined by externally imposed standards
>> anyway). If a distro ships a too-old or too-new version of the
>> dependency, then the open source thing will often not build, and
>> for most end users, this is a distinction without a difference.
> Yes, you are correct, I've experienced that as well with sort of
> newer complex apps.