this post was submitted on 13 Sep 2023
38 points (97.5% liked)

Linux

53682 readers
511 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.

all 20 comments
sorted by: hot top controversial new old
[–] codebam 18 points 2 years ago (1 children)

coreos is good for running containers

[–] bionicjoey 10 points 2 years ago

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

[–] [email protected] 14 points 2 years ago

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

[–] [email protected] 13 points 2 years 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 2 years 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 2 years 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 2 years ago (1 children)

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

[–] [email protected] 4 points 2 years ago

Debian slim is my go to!

[–] [email protected] 7 points 2 years ago (1 children)
[–] [email protected] 10 points 2 years 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] 10 points 2 years 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 2 years ago

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

[–] [email protected] 2 points 2 years 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 2 years 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 2 years ago (1 children)

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

[–] [email protected] 2 points 2 years 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 2 years 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 2 years 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.

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

What's keeping you from using uClibc?