top | item 38896336

(no title)

awilfox | 2 years ago

We started a separate BSD userland project before Chimera even existed, but we didn't feel the port was up to our standards of quality, so we shelved it. Removing our dependence on GNU software is a definite goal of mine, though it is relatively low priority and likely far off.

Scudo can be faster in some workloads. However, I recall Scudo is woefully underperforming on 32-bit systems (it may not even work?). Replacing the memory allocator is definitely something you can do, but it introduces another variable into the mix, and I personally feel that would also compromise our goal of reliability.

Differences between Alpine also include: NLS enabled everywhere, so translations work and are functional. No use of GNU gettext, only musl's gettext. A focus on providing a more "full" experience to users over optimising for smaller binary sizes. There are more differences obviously. For some uses Alpine would be better, and for some uses Adélie would be better.

Also: that comparison page is on the oldwww. domain, which means it isn't a part of the current site, which is why it hasn't been updated.

discuss

order

q66|2 years ago

scudo requires 64-bit atomics which make libc hookup on 32-bit systems a bit of a pain but nothing that cannot be overcome

it can only use the primary32 allocator on 32-bit systems, which is fine, chimera uses primary32 universally because it uses less virtual memory while performing more or less the same in practice

it's significantly and visibly faster than mallocng in most things user-facing, effectively anything that allocates and is multi-threaded (e.g. builds - LTO linking times take a third the time, web browsers are snappier, java is snappier, etc)

Zambyte|2 years ago

> Removing our dependence on GNU software is a definite goal of mine

Why?

awilfox|2 years ago

* GNU tools are often bloated, with extensions that the vast majority of people do not need or want. While we don't have quite the same focus on "must be small binary size" as Alpine, needless waste is still needless waste.

* GNU tools use gnulib, which is frequently incompatible with musl, and is a moving target for both building packages and passing tests. The number of patches I've personally had to write to make gnulib-based software work at all is dizzying.

* GNU projects have a lot of odd contribution hurdles: I've still never managed to connect with GRUB maintainers despite trying the Savannah page and the mailing lists. It was a chore to upstream other things.

matheusmoreira|2 years ago

Ease of understanding, perhaps. I found musl source code much easier to understand than GNU libc.

Or maybe GNU just rubs people the wrong way?