Γ—
all 70 comments

[–]cheesemassacre 41 points42 points  (5 children)

OpenBSD probably. Void linux is close

[–]playa4l 3 points4 points  (0 children)

Based, although i would add Alpine Linux and freebsd, following

[–]demir_kolak 1 point2 points  (3 children)

If OP uses WiFi, then probably FreeBSD would be a better alternative.

[–][deleted] 1 point2 points  (2 children)

which wifi cards does openbsd not support?

[–]demir_kolak 1 point2 points  (1 child)

Mediatek or some Realtek WiFi cards. (I use mediatek wifi card with wifibox in FreeBSD idk if there is something like that in OpenBSD)

[–][deleted] 1 point2 points  (0 children)

~$ apropos realtek
re(4) - Realtek 8139C+/8169/816xS/811xS/8168/810xE 10/100/1Gb Ethernet device
rge(4) - Realtek 8125/8125B/8126 PCI Express 10/100/1Gb/2.5Gb/5Gb Ethernet device
rgephy(4) - Realtek 8169S/8110S/8211B/8211C 10/100/1Gb Ethernet PHY
rl(4) - Realtek 8129/8139 10/100 Ethernet device
rlphy(4) - Realtek 8139/8201L Ethernet PHY
rsu(4) - Realtek RTL8188SU/RTL8192SU USB IEEE 802.11b/g/n wireless network device
rtsx(4) - Realtek SD card reader
rtw(4) - Realtek RTL8180L IEEE 802.11b wireless network device
rtwn(4) - Realtek RTL8188CE/RTL8188EE/RTL8192CE/RTL8723AE PCIe IEEE 802.11b/g/n wireless network device
ure(4) - Realtek RTL8152/RTL8153/RTL8153B/RTL8153D/RTL8156 10/100/1Gb/2.5Gb USB Ethernet device
url(4) - Realtek RTL8150L 10/100 USB Ethernet device
urlphy(4) - Realtek RTL8150L Ethernet PHY
urtw(4) - Realtek RTL8187L/RTL8187B USB IEEE 802.11b/g wireless network device
urtwn(4) - Realtek RTL8188CU/RTL8188EU/RTL8188FTV/RTL8192CU/RTL8192EU USB IEEE 802.11b/g/n wireless network device
~$ apropos mediatek
mtintc(4) - MediaTek system interrupt controller
mtrng(4) - MediaTek random number generator
mtw(4) - MediaTek USB IEEE 802.11b/g/n wireless network device
mtxhci(4) - MediaTek USB xHCI controller
ral(4) - Ralink Technology/MediaTek IEEE 802.11a/b/g/n wireless network device
rum(4) - Ralink Technology/MediaTek USB IEEE 802.11a/b/g wireless network device
run(4) - Ralink Technology/MediaTek USB IEEE 802.11a/b/g/n wireless network device
ural(4) - Ralink Technology/MediaTek USB IEEE 802.11b/g wireless network device
~$

[–]jmeador42 16 points17 points  (9 children)

OpenBSD and FreeBSD are my favorites.

[–]-t-h-e---g- 3 points4 points  (8 children)

Just wondering, why not netbsd? It’s better optimized than the others

[–][deleted] 5 points6 points  (0 children)

FreeBSD is heavily optimized for x86-64 because it's used in servers, NetBSD is portable, so it's focused on that.

[–]jmeador42 3 points4 points  (0 children)

Noting wrong with NetBSD, I just haven’t used it.

[–]whattteva 1 point2 points  (4 children)

I feel like NetBSD portable code nature would violate so much of OpenBSD security-centric philosophy and by extension, suckless philosophy of "bloat".

Maintaining all that support requires keeping a lot of extra code for esoteric obscure cases that could easily lead to security bugs. OpenBSD was famous for removing 2/3 of OpenSSL code and still maintain its core functions.

[–]-t-h-e---g- 0 points1 point  (3 children)

Then why does openBSD have such high system requirements compared to netbsds 4mb ram?

[–]whattteva 2 points3 points  (2 children)

I think you're confusing the way code is written with memory requirements which are two completely different things, but I can see the confusion from people who are not programmers. A program does not need to load everything under the kitchen sink to RAM immediately. It can load things in stages as necessary. This is why we have kernel modules and dynamically loaded libraries.

Furthermore, compiler flags can be set to conditionally compile things, so a lot of code may not necessarily make it to the final build depending on the build options set.

THe problem with supporting a lot of platforms is your codebase will naturally contain bloat because with every platform, you need to support a new set of requirements. This adds complexity especially if it results in a lot of conditional flow control statements. And more SLoC generally = more potential for bugs and more code to audit for security issues.

I think too many people conflate more RAM usage with "bloat" somehow. More RAM usage is not necessarily bloat (though it can be). RAM is used in its most common form, simply to enhance performance. Servers use gobs of it to be able to serve you web pages in milliseconds. I would never call their use of gobs of RAM as fast cache to enhance performance as bloat.

[–]-t-h-e---g- 0 points1 point  (1 child)

Thanks for explaining, but what about netbsds ability to run on i486 whereas openBSD requires a pentium? (Nvm I remembered floating point)

[–]whattteva 0 points1 point  (0 children)

That's not a coincdence and a very intentional design choice. OpenBSD decided to support a fairly limited set of microprocessors so they can delete the code (trim the fat if you will) that specifically supports i486 and rightfully so because no one really runs 486 anymore these days. Hell, I would bet that even finding Pentium IV is ultra rare these days. Only collectors have these things and they're not really using them for any productive work.

In programming, deleting code you no longer need is a good thing. Every source line of code is a potential for bug, so if you don't need it, delete it.

[–]markand67 0 points1 point  (0 children)

NetBSD isn't going anywhere to be honest. I think they don't even know where they are going. I used to love it back in a day and it was the fastest as daily driver in contrast to OpenBSD and FreeBSD. they don't take clear decisions meaning that even today there are still two package manager (pkg_* commands and pkgin). I think pkgsrc is a good framework to write packages but the fact that they make it portable is ... kinda strange. I have never seen anyone using it outside of NetBSD adding some maintenance burden for no reasons. and modern features on a desktop are still a bit randomly working (3D, ACPI. etc)

[–]60GritBeard 5 points6 points  (3 children)

Alpine Linux, Arch Minimal, or BSD

[–]Loose-Ninja9308[S] 1 point2 points  (2 children)

How do you think Alpine and Arch Minimal compare to Void?

[–]60GritBeard 4 points5 points  (0 children)

I wasn't a big fan of void. Can't really articulate why beyond "what am I getting here that Arch doesn't provide?"

Alpine is a SystemD free distro so if you're the type of user similar to myself who really just needs a browser, NeoVIM, and a terminal and not much else it's hard to go wrong with Alpine.

If you want to dabble in gaming or use programs that require SystemD then Arch Minimal is as close to suckless philosophy as you're going to get unless you wanna go balls deep and use Gentoo or Linux From Scratch. I've tried both and honestly they're not worth the time for 99.9% of use cases.

I can go from blank drive to a complete OS with my customized DWM, St, DWM Blocks, NeoVIM, LibreWolf build in less than 15 minutes using Arch.

[–]silduck 1 point2 points  (0 children)

Alpine is probably the most "suckless" distro there is, arch still uses some bloated components

[–]Known-Watercress7296 4 points5 points  (0 children)

Glaucus, Kiss, Crux, Sourcemage kinda thing might be worth a peek

nice list of awesome projects here

https://github.com/firasuke/awesome

[–]Human_Priority1938 5 points6 points  (0 children)

Openbsd

[–]Elbrus-matt 3 points4 points  (0 children)

Gentoo and void,you can use set xbps-src for package install and recompile the base system.

[–]ZaenalAbidin57 2 points3 points  (0 children)

now im on alpine linux, if you want to get the most "suckless" experience, you could try kiss linux, it compiles everythiiing, including your kernel, it just like gentoo but its more simple, or you could use arch linux for ease of use, suckless doesnt mean it pita to make, and btw if youre gonna try void linux with dwm you need to use xbps-src because some depedency to build dwm are on there

[–]shellmachine 2 points3 points  (1 child)

OpenBSD.

[–]Electric-Funeral 1 point2 points  (0 children)

Yup. The most correct, highest quality and arguably best engineered OS, with roughly 10X fewer lines of code, (than the Linux kernel) while remaining very secure and functional. Doesn't get much more suckless than OpenBSD.

[–]evild4ve 2 points3 points  (0 children)

Slackware

[–]AsleepDetail 2 points3 points  (0 children)

MS-DOS with dosshell.exe (or was it a .com file?) as your last line in the autoexec.bat.

But in all seriousness any BSD or plain old Debian will suck the least.

[–]bark-wank 5 points6 points  (4 children)

9front, Alpine Linux, OpenBSD (make sure to debloat it first), or a source-based Linux distro based around Musl/LLVM/LibreSSL/busybox (such as alicelinux)

[–]kyleW_ne 6 points7 points  (2 children)

What bloat exists in OpenBSD?

[–]bark-wank 3 points4 points  (1 child)

OpenBSD, unlike Linux, is an OS, as such, it is general-purpose, as there aren't OpenBSD-based distros around and you can't choose something specifically for you.

In BSD-land, systems will come with a compiler collection (C, C++), they come with perl, they all use BSD utilities (and cannot be changed to toybox or busybox), and you're forced to the one package manager of the distro, or maintaining your own software.

NOTE: cat came back from Berkeley waving flags

[–]kyleW_ne 2 points3 points  (0 children)

I like that the BSDs come with a compiler for C, makes it hady for C programing, LLVM is a bit heavy but so is GCC, I don't know of a full featured lightweight C/C++ compiler. Perl is a bit heavy but a good scripting language. BSD user land is lightweight enough compared to GNU userland in my opinion. I've never daily drove anything with busybox as the userland. How full featured is it?

That being said, the fact that OpenBSD includes a web server and an email server are just two such programs not needed on a desktop OS.

[–]Confusion_Senior 5 points6 points  (0 children)

how and what to debloat in openBSD?

[–]Yugen42 1 point2 points  (0 children)

NetBSD

[–]ZestyRS 1 point2 points  (0 children)

I think you need to define everything you want because suckless to one person is bloat or missing stuff to another

[–]orduval 1 point2 points  (0 children)

artix seems nice too.

[–]ptico 1 point2 points  (0 children)

Chimera

[–]ArkboiX 1 point2 points  (0 children)

Alpine Linux, Void Linux, and OpenBSD are my favourites. I personally use Void

[–]SPalome 1 point2 points  (0 children)

OpenBSD, Alpine, CMLFS ( LFS built with clang and musl libc ), Void, Artix ( arch without systemd ), and ofc gentoo, but they are a lot more OS to add to this list

[–]iamapataticloser240 1 point2 points  (0 children)

9front, openbsd, genode(?).

[–]damn_pastor 1 point2 points  (9 children)

Kiss Linux

[–]Loose-Ninja9308[S] -1 points0 points  (8 children)

How do you think it compares to Void?

[–]damn_pastor 2 points3 points  (7 children)

I haven't tried void yet. But kiss is as bare bones as it could be. If you are fine with investing much time choose kiss if you want something more ready out of the box choose void. Kiss has no kernel for example. You are expected to roll your own.

[–]vishal340 -1 points0 points  (4 children)

Wtf, NO KERNEL?!!

How does that work?

[–]thewrench56 4 points5 points  (0 children)

You compile a custom kernel.

[–]tuxsmouf[🍰] 2 points3 points  (2 children)

I guess you go to kernel.org and choose your own kernel from there.

[–]wiebel 1 point2 points  (1 child)

Which is not as crazy as it sounds. Everybody should do it at least once. The kernel and it's modules are very portable. The install procedure is the most distro dependent part of it.

[–]tuxsmouf[🍰] 1 point2 points  (0 children)

I did it twice. both was to get a newer kernel for drivers that weren't available with m'y distro kernel.

[–]DarthRazor 0 points1 point  (3 children)

Definitely TinyCore on the Linux side. TinyCore takes about 21MB of disk space (GUI included) and uses about 60MB of RAM running the basic CDE GUI and one terminal window open

On the Unix-y side, definitely NetBSD.

[–]-t-h-e---g- 2 points3 points  (0 children)

This, if you want Linux that’s light and easy to use, tinycore, if you want to run a modern OS on 8mb of ram & an actual i386, netbsd is the ticket 

[–]Loose-Ninja9308[S] 1 point2 points  (1 child)

Why do people recommend Void over TinyCore then?

[–]DarthRazor 3 points4 points  (0 children)

Great question. Suckless isn't a hard line in the sand - it's a philosophy. I'm not saying Void isn't suckless, I'm just saying that TinyCore is much more minimalistic and hence, more suckless than Void

Void is a lightweight but full distro with all the bits and pieces, while TinyCore is basically a kernel and a whole bunch of add-ons, called extensions, that you select to build your own distro with just what you want and nothing more

In restaurant terms, Void is a set menu according to whoever crafted it, and TinyCore is A La Carte.

[–]eightrx 0 points1 point  (0 children)

Void Linux is close

[–]SID-CHIP 0 points1 point  (0 children)

The one that suck less when you're doing your stuff

[–]Glittering-Cut-2425 0 points1 point  (0 children)

MsDOS with Norton Commander.

[–]JG_2006_C 0 points1 point  (0 children)

Depends dirver but arch,Alpine and gentoo, void , bsd seems good

[–]FLipDB 0 points1 point  (0 children)

voidlinux, alpine or slackware

[–]TrulleNs 0 points1 point  (0 children)

Honestly, arch with dwm runs at 600mb ram. Thats fine for me :)

[–]Various-Dragonfly-94 0 points1 point  (0 children)

Void Linux, it's great

[–]CJIsABusta 0 points1 point  (0 children)

DOS

[–]Spoofy_Gnosis 0 points1 point  (4 children)

Os ou Wm ?

[–]Loose-Ninja9308[S] -1 points0 points  (3 children)

?

[–]diseasealert 2 points3 points  (2 children)

My guess is Operating System or Window Manager?

[–]-t-h-e---g- 4 points5 points  (1 child)

Actually I believe it’s a very rare dialect known as, having a stroke

[–]Spoofy_Gnosis 1 point2 points  (0 children)

Os = operating system Wm = Windows manager

[–]tedecristal 0 points1 point  (0 children)

linux + PLasma