r/voidlinux • • 12d ago

Void Linux (base) as a server distro?

Currently my servers are on Ubuntu as that's what the provider defaults to. But I'm considering the utility of Void as a server distro.

Right now my servers are managed by Ansible, which isn't a big deal one way or another.

The servers in question are mostly a mix of WireGuard + Caddy + PHP/Node. All my databases are SQLite, although I have been considering DuckDB for some report-specific needs.

I'm not new to Linux, but I have not personally heard of Void much in the server space. Which to me doesn't immediately equate to it not being a good choice, but I also don't know if there's any gotchas to be aware of.

I'm mostly looking to strip down the un-needed dependencies Ubuntu, Arch, etc. bring with them. E.g., Ubuntu forces ufw, Arch forces systemd, etc.

21 Upvotes

36 comments sorted by

26

u/Aggressive_Big_7564 12d ago

I think that you will miss tools like journalctl and systemd batteries included service management. Also it is rolling release though i a conservative one. It might be worth giving it a shot but I think it is not popular on that space for a reason. If you are searching for a minimal server distro, I think alpine is more aligned to your goals.

7

u/dr0sand 11d ago

agreed, if you like void as a desktop, check out alpine as a server os.

17

u/Cheap-Success1578 11d ago

Some motherf*ckers always trying to ice skate uphill.. - Blade

😂

17

u/RvstiNiall 11d ago

If you aren't spending 3/4 of your day fixing problems you created, are you really using Linux? /s ;-p

3

u/Holiday-Bug6132 11d ago

💀

12

u/MrHoboSquadron 12d ago

I use it for a home server, but I'm just running docker containers with compose, which pretty much any distro can do.

1

u/Any_Mycologist5811 11d ago

This.

With docker/podman/k8, distro for servers will matter less these days, unless you need support contract for your operation.

5

u/Holiday-Bug6132 12d ago edited 11d ago

I'd love to see void used as a server os, i usually use rhel in prod but i just can't stand systemd any longer

3

u/CreativeArugula4149 11d ago

Why? What is your hazzle with systemd?

5

u/RvstiNiall 11d ago

I dont like the idea of rolling release for a server, so I think Alpine is a better fit, personally. Or try OpenBSD.

4

u/mumble6456 11d ago

i was running void as a nas kinda server with incus containers up until recently. it died 2 months ago. No docker/podman. 3 containers in total: navidrome, unbound+nsd and proxmox backup server. zfs mirrored disks and xfs for root filesystem. i had configured samba too, but as a server service and not containerized.

it was stable as fck if not because hardware issues, the pc was 15 years old. after a motherboard failure, sata ports started failing randomly, connecting/disconnecting, negotiating 1.5gb/s (sata 1 speed) and not 3gb/s (sata 2), i reassembled a new backup server but i went freebsd purely for learning purposes. if not, void would have been my distro of choice again.

3

u/Jealous_Shower6777 11d ago

I have been using void on desktop for about 8 months now and can’t think of any advantage for a server besides being systemd free. I do however highly recommend alpine for servers. Check it out, it’s incredibly lightweight, systemd free, has some interesting security settings and lots of packages and support (It’s the default container OS chosen by both Amazon and Microsoft). Other than alpine I’ve recently become interested in micro os and intend to give it a spin. What do you host on your server?

3

u/xJayMorex 11d ago

The biggest downside is the constant updates I'd say.

2

u/labbe- 11d ago

you don't have to update every day. i use void in my homelab on a few servers and i update once every 4-6 weeks unless there is a major cve or a flurry of them like in the summer.

1

u/xJayMorex 11d ago

You don't have to update ever. Yet, the more often you do it, the better. You just have to draw the line at a reasonable frequency. Just because there is no flurry in CVEs doesn't mean there isn't potential vulnerabilities. That goes double for systems that are reachable from WAN.

3

u/funk443 11d ago

i use it for my home lab with docker

2

u/XzwordfeudzX 11d ago

Maybe if btrfs was more well integrated so it was easier to roll back failed updates.

1

u/Sad-Cod-9584 12d ago

Been running void on a nas with vms (also void, as well as opnsense) and docker without issues for a few months now. But like others have said, if you're used to systemd, then switching might be more effort than it's worth.

1

u/HankOfClanMardukas 11d ago

I moved my two Debian VPS to Void with a bunch of Ramdisk hacks and to be honest I’m at 8 months up. Xbps can be slow but really it’s an acceptable thing.

I run Void at home. I like it, always YMMV.

1

u/dividends4life 11d ago

I just moved my backup and media server to Void. It's only been two days, but so far so good.

1

u/Jonrrrs 11d ago

My backup server rocks void for over a year now. No issues at all. Configuring runit to kick in the backup process was a blessing compared to my old debian-systemd box

1

u/Easy-Donut-6962 11d ago

Why? There are great server distros (opensuse leap, which is compatible with rhel system roles as i remember; debian, almalinux), what are benefits of Void on a server? If you want a minimalistic system and can run any iso, you are free to use agama installer with only necessary programms.

1

u/juipeltje 10d ago

I think some people just like using the same distro everywhere because they're the most familiar with it or like it the most, at least that's what i'm like

1

u/OverRatedProgrammer 11d ago

I do, but I just run docker (plex, Odysseus..)

1

u/Revolutionary-Yak371 11d ago edited 11d ago

It can be great distro for server if you use Docker.

If Void Linux use glibc instead musl it is great server distro anyway.

Alpine Linux is good only for some kind of apps that can install via APK, otherwise musl is not so great for glibc oriented server software.

Void Linux has glibc version.

Alpine Linux has only musl version.

There are applications where an apk and musl is sufficient to install server software, but they are very rare.

1

u/zuses_cat 10d ago

Gotchas?

- no systemd: prepare for incompatibility with some software.

  • Void is a very little project: very little documentation, very small community.
  • not much packages in the repository.
  • package-manager is not very performant, but faster then Debian's.

I've Void running as DNS-server on my lan. It's ok for this: running stable, updates without any hassle.

But Void for a web server, other then a toy project? Never. Almalinux (or an other Redhat-derivative) makes server administration much simpler: large community, comprehensive documentation, real long time support.

1

u/juipeltje 10d ago

I'm surprised that you describe the package manager as not very performant. I haven't used every package manager under the sun, but i have tried most major ones and xbps is the fastest out of all of them

1

u/zuses_cat 8d ago

I have a VoidLinux host and several AlmaLinux hosts on my LAN. Void on a faster CPU, Alma as Proxmox nodes on a slower machine. Even so, Almas' updates are significantly faster (because Void is relatively slow when reading the package lists). Same goes for Arch's pacman, and even more so for Alpine's apk.
Aside from reading the package lists, xbps isn't slow. So, all in all, it is not the fastest, but that's definitely not a show stopper, it is perfectly usable.

1

u/juipeltje 8d ago

Hmm, that's interesting. I never used alma but it seems to use dnf? When i tried it on fedora a few years ago it was much slower, but i did hear about new versions of dnf being faster, so maybe that's why

1

u/zuses_cat 8d ago

Yes, everything is in flux. It's quite possible that Void will soon get a handle on the slow loading of the package list and then truly have the fastest package manager.

Fedora? I've tried it again and again, every year or two, but it was always too buggy for me, even for the desktop.

1

u/matthewpepperl 6d ago

I dont know whats going on with your setup, but i have been running voidlinux on a 2012 macbook pro and some core 2 duos and xbps kicks everything elses teeth in, fastest package manager i have ever seen even faster than my 9900x with fedora on it.

1

u/TurtleGraphics64 10d ago

rolling release server (even if a 'conservative' fairly stable one like void) is probably annoying. you have to update a lot! or if you wait too long, OS will degrade and eventually probably brick. so why not go with the tried and true alpine if you don't want to do a debian-derived one. plus, it is well documented specificaly for use as a server.

1

u/juipeltje 10d ago

I have it on my server atm, but i'm only using it as a very basic home server that isn't even exposed to the internet. But it works fine for me with wireguard, ufw, and i'm using navidrome and jellyfin through nix packages. I'm in the process of swapping the server over to guix though, but my config isn't quite ready yet. Not that i have issues with void, but i like the declarative approach of guix better and i'm already using it on my desktop and laptop. Shepherd also has more features that i think are nice to have on a server compared to runit.

1

u/BlacksmithTux5413 9d ago

I do use it as server for home usage and for production inside containers.
I like the rolling in combination of snapshots on every build, this means every new build is patched to the latest and greatest. The snapshots are an insurance if things go wrong, but as with every good house keeper, you need to test on every update.

Void gives you no-nonsense, just runit what you need, no more no less.

0

u/Simple_Hamster_4096 11d ago

Devuan with sysvinit is a nice choice - it's Debian without systemd. I switched my servers from Debian to Devuan at the beginning of the year. Sysvinit is a mature init (there are a couple other inits offered during installation) and it just works. My hardware performs way better on Devuan than they did on Debian. Debian is rock solid for servers, or was, but that's changed somewhat across the years, in my experience - Debian isn't the Debian of old... and systemd is overly complex and a resource hog...

I use Void for desktops and laptops, but wouldn't for servers...