this post was submitted on 13 Sep 2023
39 points (97.6% liked)

Linux

48052 readers
909 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Yes, I know so much of Alpine's lightweightness comes from not using glibc.

But still, the other options I see are far from being slimmed down. Debian, Ubuntu server, CentOS... They all could use some cuts.

What's the most slimmed down non-desktop distro that still has a glibc base? I honestly don't care if it has its own package manager (build tool handles this for me). Just wanna use it in containers for running server apps.

top 20 comments
sorted by: hot top controversial new old
[–] [email protected] 19 points 1 year ago (1 children)

coreos is good for running containers

[–] [email protected] 11 points 1 year ago

I like to pronounce this distro as though it rhymes with "Oreos"

[–] [email protected] 14 points 1 year ago

Why do you care about "lightweightness"? Are there any hardware constraints? Lightweight in what regard?

[–] [email protected] 13 points 1 year ago

Gentoo can be made very slim, and has similarities with Alpine. Also as others have said, Arch is very customisable, and Void is the new hotness in this area.

[–] [email protected] 9 points 1 year ago (1 children)

You messed with Debian's netinstall images? Just enough for you to get on-line and apt-get the packages you acually want, although the ISO does about take up a whole CDR.

[–] [email protected] 13 points 1 year ago (1 children)

Debian even has "slim" docker images that are pretty small.

[–] [email protected] 4 points 1 year ago

Debian slim is my go to!

[–] [email protected] 9 points 1 year ago

You could also use Void Linux with glibc but install base-minimal instead of base-system when following this guide: https://docs.voidlinux.org/installation/guides/chroot.html They also have a docker image using busybox (the other thing that makes alpine that minimal). So you could have a look at how they setup it and try that yourself. It is not well tested tho, so it's probably not a good idea for a server.

[–] [email protected] 8 points 1 year ago (1 children)
[–] [email protected] 10 points 1 year ago (2 children)

I'm running this on a low resource arm64 device. I have had trouble cross compiling to arm64 musl (availability of pre compiled binaries is low).

It also caused me a bunch of random small issues. For example nodejs doesn't officially support musl binaries. Bunch of random small things, like sdkman not working on musl.

[–] [email protected] 11 points 1 year ago (1 children)

Yes, weird corner cases in musl cause a lot of things to misbehave when run on musl. For example, DNS upgrade to TCP, which is required for certain queries and covered by one of the DNS RFCs, wasn't implemented in musl for the longest time, although I think it finally got implemented recently. However, there are other cases like this fwiu.

[–] [email protected] 2 points 1 year ago

Installing Python packages with pip is a hit-and-miss too

[–] [email protected] 2 points 1 year ago (1 children)

nodejs doesn’t officially support musl

Correct; unofficially and it causes some issues when running a NodeJS app on Musl. @[email protected] you can try another unofficial alpine image, or just go with Debian slim

[–] [email protected] 1 points 1 year ago

Don't recommend that glibc Alpine image please. You can't just have 2 libc's and expect everything to just work, it's just asking for problems. Either deal with Musl or choose a different distro.

[–] [email protected] 7 points 1 year ago (1 children)

Arch with 'minimal' install is pretty small. Would that work?

[–] [email protected] 2 points 1 year ago (1 children)

I think Arch gets pretty close, but I am wondering if anything goes further. Given Arch is tailored for personal computing, I wonder if it adds anything to ease usability that they otherwise would not need to if it was server based. But I think Arch is what I need, you are right. Thanks!

[–] [email protected] 4 points 1 year ago

I mean Arch is what you make of it. It can be as lightweight and minimal as you want it to be based on your installation decisions.

"Lightness" in what sense are you after?

Size of distribution? # of packages?

Otherwise you'll be using basically the same kernel images.

Maybe you should be custom compiling your own Linux Kernel to be even more "lightweight".

[–] [email protected] 1 points 1 year ago

Honestly, of you don't need to game, alpine is pretty great. Now if you absolutely need glibc... just use Arch, it's the most lightweight sane person distro I can think of, unless you wanna compile Gentoo that is

[–] [email protected] 1 points 1 year ago

What's keeping you from using uClibc?

[–] [email protected] 1 points 1 year ago

I know there is a way to install glibc in alpine. Worked for my admittedly hobbyist use case. I just don't remember the package name but it's in there.