Minimalism

Is the suckless philosophy and modern minimalism a meme? It seems like most of it is aimed towards LARPers who wish to assert their superiority over package count and free space. Is there any inherent advantage, in say, using a userland other than GNU (busybox, BSD, etc) and using libraries such as musl? And would it be worth it if that is the case?

Attached: thinker.jpg (189x267, 6.33K)

Other urls found in this thread:

en.wikipedia.org/wiki/Genera_(operating_system)
twitter.com/NSFWRedditVideo

muh security muh clean code

its great

Yes
I'd rather strive for simplicity + user friendly + formally verified

Minimalism is in general a meme. You deprive yourself of functionality and aesthetics for the single purpose of getting minimalism brownie points.

Depends, are we talking simplicity and efficiency minimalism, or "I'm a pretentious wanker who will throw money at anything that makes me look cultured" minimalism?

Minimalism rocks, suckless sucks

There's 2 kinds of minimalism. One is about minmaxing how little you can survive with, and the other is about removing what isn't necessary and condensing what can be condensed.

The latter kind is generally (not always) good, but the former is shit 100% of the time.

Duh. The point is not that suckless software doesn't suck, it just sucks less. It's in the name ffs.

It's ironic that it sucks much more than the software it's touting as sucking does.

There has to be a balance between usability and minimalism. For a router/firewall box that doesn't need to do much, the busybox stuff makes sense. Those tools do everything you need in that situation.
OTOH, the general trend these days is totally in the opposite direction and into the realm of massive bloat for no good reason whatsoever, other than "everyone else is doing it". The modern web is a good example of something that has gone very wrong. So then these massive piles of shit code needs huge memory and beefier CPUs, and you end up with the flaws that most modern chips have wrt speculative execution.

More for less is good. Less for no benefit or less for more are both bad. Less for less depends on your needs. A lot of "minimalist" software is just featureless for no real benefit, so it's all pointless unless your goal is to inconvenience yourself. I like simplicity, efficiency and good design. Not necessarily minimal. A lot of the time, minimalism is just an excuse for mediocrity. Really, a lot of it comes from the misconception that old, good software was minimalistic when it really wasn't, it was just efficient and well made, and did more with less, and it couldn't get away with being bloated like the garbage made today, so that was a natural form of quality control.

...

minimalism is autism, so are tiling window managers. just use something that werks and quit wasting your already meaningless life.

Are you an retard? Using less code to accomplish the same goal is always a positive

ikr only old grampas want to improve and evolve! XD

very positive, user

But tiling WMs just werk, I've never configured a single thing in DWM and have been using it for over a year now. I find tiling WMs have a much more intuitive and simplistic workflow than floating WMs

This is the mentality that gave us systemd

systemd just werks

That's like saying Windows just works.

So does openrc

"functionality" is a meme

I like minimalism as in minimal effort and minimal overhead.
However that's like the exact opposite of nixxer land.

Speed because of NOEXEC and NOFORK. Well made tools following POSIX closely. menuconfig is cool
You can actually statically link it, it's less buggy than glibc.

The real good point of suckless and co. is that it's easy to understand and thus modify when the need arise.

Use it for a bit and decide yourself. I've been using it for years and have yet felt the need to use something more. If anything it has made me angrier at how terrible the rest of linux and unix software is.


openrc is quite bad. The last semi passable version was 0.17. When software has a last good version its time to stop using it. I completely disagree with the idea that software needs constant updates to remain relevant but when the software is updated just to add terrible features its time to delete it.

Suckless minimalism is about shitty "programmers" asserting their inferiority. They don't know how to do something right, so they say that doing it right "sucks" or is "bloated" or some other bullshit. This "minimalist" code always ends up being bloated but is never able to do what good software could do even when it becomes much bigger. Just look at UNIX and JavaScript. Multics is a lot smaller than "modern" UNIX and Linux, but it still does a lot of things Linux doesn't do and it does them properly. 15 million more lines of code will not be enough to turn Linux into Multics or a browser into a Lisp machine-like environment.

en.wikipedia.org/wiki/Genera_(operating_system)


The mentality that gave us systemd is the same mentality that gave us Electron and X. All of those are about misusing existing code for something it wasn't meant for instead of creating something that works better. Adding a GUI to an OS designed for PDP-11s and making the result into a "foundation" for workstations doesn't make any sense. Systemd is the next step in trying to turn a clone of a PDP-11 OS designed for teletypes and tape drives into a desktop OS. Systemd also sucks, but that's because anything that tries to "fix" UNIX is going to be bloated and suck because the problems are in UNIX itself, and Linux and Plan 9 did nothing to fix these problems.

Now, we all know that software has bugs. On every system.But Unix and X bugs are somehow different. Stronger. Moredistressing. More consistently dumb. More clearly based ona programming philosophy that says "oh, no one would everwant to do that. After all, *I* never want to do that."Somehow, these just seem to scream UNIX! X! at me.I had some complaints about IslandWrite/Paint/Draw. Basedon them I have updated the man pages for both that softwareand Wingz, to explain some setup issues. Please see the manpages for details. Here are the issues:1. Island software causes the X server to exit, when on acolor display. It turns out that twm (the window manager)coredumps. The way X is designed, if you lose the windowmanager, X exits. We are about to start moving from X11R4to X11R5, a somewhat newer version of X. The version of twmin X11R5 does not have this problem. Thus the man pagerecommends that you change you path so that you get theX11R5 software. This will not take effect until we have theX11R5 core distribution on our systems, which should happenby the middle of next week.2. Island software, particularly IslandPaint, appears tohang the machine on startup. It isn't actually hanging themachine. It's just causing it to page very heavily for avery long period of time. The problem is most noticable oncolor displays with small memory. It appears the thesoftware is constructing the file menu for the currentdirectory. It does this before putting up the first window.Unfortunately they are using disasterously slow code toconstruct the menu. It appears to be N**2 in the number offiles. If you have a very large directory (several hundredfiles -- this may be a problem only for staff), you may seethis. If so, we suggest creating a subdirectory for yourIsland files, and cd'ing to it before starting the Islandsoftware.

Why would you stop using openrc entirely if there exists a good version and it's small enough you can make changes to it yourself? Easy to fork, easy to fix.

You're my hero.

Sometimes for complicated problems there are no simple solutions. Suckless philosophy is pretty good but a lot of their programs kinda suck, especially st which is just slow and badly coded. Even a minimalist program can be bad.

Regarding OpenRC, look into the gentoo drama of the OpenRC maintainter. It's pretty likely that OpenRC is sabotaged on purpose to push systemd. Bug reports get ignored, stuff gets changed around for no reason. It is a huge mess. It's so bad that it's hard to not assume malice at this point, especially considering the maintainers involvement with systemd.

runit is great and all a home desktop ever needs, it's basically autoexec.bat+service supervision+simple logging per service. It's PID 1 is super simple, too. You usually do not need more. s6 is a bit more complicated but has some nice extras. execline from the s6 people is a very nice non-interactive scripting language that basically just chains commands and is much better than any shell for simple launching scripts.

Minimalism is cool if you do it right. Doing it right for me means you literally forget about how some parts of your system work (you have commented your work, right?) because they're so robust and simple that you didn't have to touch them in years, and also most of your shit works with a minimum of processing power. This usually just simply doesn't happen with software or workflows that are too complex. They need permanent attention and interaction. Be it because they're difficult to use, or because they need constant updates that break shit or need you to invest in better hardware. The minimalist approach is invisible, and if possible, also uses the least resources for reaching it's goals. Minimalism doesn't mean nonsense like looking at pictures with mpv though. That's like eating soup with a fork and it does not simplify your life.

There's a balance. Tons of software works well with a minimalist philosophy, and composes well out of fully independent components. Other software works better as a monolithic entity. It really depends what you're doing and the trade-offs you're willing to make.

Because even that version is full of needless complexity. There are better alternatives for managing services like runit(excluding the init portion), perp, s6, or even openbsd's rc.

the problem with suckless is that it's infused the hackernews sheep and because of that the whole of tech.

yes there's something to be said for having small code that's easy to understand and pivot, but otoh, there's nothing in suckless that helps manage large codebases or for the design of modern GUI apps that have thousands of features.

make a suckless android studio for example.

the other thing is that the suckless philosophy offers very little to the non-technical user. I personally could run a system with a bsd style ports tree and configure a patchset, but how is anyone else supposed to? obviously supporting lusers is a pain, but they sometimes give you million dollar ideas for free.


I think it's more designing to hit the sweet spot in the 80 20 rule, the problem being that your only answer to people that need the 20 is "fucking git gud code it yourself".

systemd is designed for taking a pdp operating system and make it more appropriate as infrastructure in a vmware mainframe. it's an interface to the entire machine that's somewhat scriptable and journalctl ensures that logs can't get modified. it's way more useful to a host with thousands of machines than a thinkpad nerd. I guess thinkpad nerds should pay for more appropriate software or run void.


never attribute to malice what can be adequately explained by autism, and I say that as someone who learned the udev rule syntax because lord poettering has fucked up the interfaces with no fallback or deprecation cycle every year since like 2011.

Attached: 8u2xIKh.jpg (540x876, 54.08K)

why

I dream that all programs are written in assembly or C. It makes a huge performance difference. Most programs not written in assembly or C are a cobbled together piece of shit.

In most cases it is LARPing. Extreme minimalism is actually useful only in embedded and i-only-have-15-years-old-tech-available situations. However, I do recommend booting up Arch Linux ARM or Raspbian on a 1st gen Raspberry Pi and see for yourself how bloated modern GNU/Linux has gotten. Then boot Alpine on the Pi and notice how it's the only distro usable at sane speed. Pic related (I don't care if it has my name in it).

Attached: IMG_20181116_114221_586.jpg (4160x3120, 4.44M)

adding to this: my philosophy about minimalism is pretty much that get the stuff running that you must have (javascript is a must for many of us even though it's horrible technology), do not waste your time or sanity, but do optimize when you feel like you can and want to.

to be painfully basic: it was a small enough deployment of non virtualised hardware that re imaging was way easier than understanding what the fuck you just said.

git gud

The more code, the more bugs. Some bugs are exploitable. More code means more security holes. You also can't easily audit a bigass hunk of code and refactor it into something safer, comapred to a smaller codebase. So yeah, there's reasons to prefer small and tight code, even if you don't have a 15-year old computer.

There hasn't been any important additions to GNU in a while. What has gotten "bloated" is systemd (and this can be somewhat lessened by correctly configuring systemd. A feat that nobody's ever managed to do) and desktop environments.
It's no surprise Alpine runs faster on an embedded system though. Busybox was developed for embedded systems.

minimalism = not enough IQ to process all the information

Only idiots are impressed by complexity.

st is god-tier though

aside from st and dmenu i don't use any other suckless programs.

Suckless is the software equivalent of some hipster minimalist faggot that won't shut up about how he lives out of a suitcase and has one beautiful antifragile set of forks and knives that he spent a month deliberating over. Modern OSes and desktop environments are like some retard that has a soda streamer and a smart fridge and a billion other gimmick kitchen appliances that he bought and used once. He can do everything he needs to but he's got like 5 different brands of tupperware bought randomly without thought and he can never find the matching lids because of it.

I want something in between. I want all of the basic appliances and tools that I actually use, and I want them to work well and be finished and not have to buy new ones 4 years from now that work totally differently because that's the fashion. I don't want a smart fridge that can show me tweets and news yet mysteriously rots all the vegetables in the crisper drawer, and I don't want to act all smug about how I don't need a gas stove because I have twigs and some rocks to bang together.

In my opinion, the OS should account for as little overhead as possible while still maintaining maximum software compatibility. Ideally the GUI should not require a dedicated GPU, but I do feel a GUI is necessary. A modern distro with a WM instead of a full DE is in my opinion the most minimalist you can get and still be practical. Although some bloated GNU core utils and libs could probably be swapped without compromising compatibility.

t. weakling

My cutoff for bloatware in operating systems at this point is whether or not it fits on a 700MB CD with a full GUI. If it can't do that it's probably straight dogshit that's gonna run like a retard with no legs. Examples of dogshit are RHEL, Fedora, OpenSUSE, Ubuntu, Windows 10, and Mac OS X. If an operating system as complex and advanced as Windows XP can fit on a CD, why can't these other systems? What are they actually offering that makes the install ISO 2-6GB? The answer is usually nothing.

But yes, suckless is a meme. It's an interesting hobby at best and mental illness at worst they seem to kill themselves a lot from what I've heard

Attached: even_moonman_cant_believe_this_shit.jpg (647x457, 41.13K)

Vanilla suckless is so minimal it's barely usable. To me software from the suckless crowd feels more like a template or base for others to expand upon which is kinda the point, but few people actually bother. I mean, look at wmii and how it led to i3, or how awesomewm started as a fork of dwm.

Attached: e7f22a45aeba5e8777b6d0b6f393aff70c5ce22032713e9393b8783cdb31490d.jpg (1280x1912, 579.63K)

What do you mean? At my last job I had a minimal arch setup where I ran dwm+st and had no issues. Surf is akward to use, and has a few weird quirks so I used firefox instead of it, but on the whole I don't see how using suckless tools is restrictive at all

I like making stand-alone binaries with 0 dependencies other than the Linux kernel. They run anywhere. It's actually simpler and much easier to understand what's going on when you talk to the kernel directly since there isn't shitloads of complicated user space code in-between. Also, the kernel interfaces are much better designed compared to junk like the C standard library.

Some of it's a meme. Shooting for a system which has stable and (if needs be) maintainable software which you can rebuild from source if necessary is a laudable goal. However some of the software's a meme, some suckless programs force you to make configuration changes to the source code and recompile, while it could be argued that this could be done with dotfiles to maintain easier customization and so on.

We're at the stage where all the major desktop environments are enormous and have very unpredictable behavior after several upgrades. Things like automounting and hotplugging should be taken care of by the OS and not a bunch of layered crap living under the aegis of KDE or GNOME.

This is how you lose a drive with bad cable.
Not to mention how the entire linux devs forgot turning off write caching for obviously known external drives
Why?
performance > stability even if you lose your data (tm)
performance > stability
:^)

She wanna get pregnant my baby! ;)

If she heard it, she would be happy!

Never suggested it. Daemons aren’t the kernel.

a. bloated software, many devs.
b. same, no bloat, does job.
c. like b, few devs.
b best; only get a and c, both break due to no support or bloat. Pick your poison.

Attached: 721fb99b367f0fbf95e4935eff98112c.jpg (2000x1414, 278.69K)

Just a quick reminder that measuring software bloat by its LoC count is the same level of retarded as measuring engine power by its displacement.

Attached: 14651721488590.jpg (604x604, 49.68K)

True but at some point you can't audit a 100K SLoC application.

It's a damn good proxy for it you retard.
And one that is easily measurable.

Also, the comparisons happen on a logarithmic scale, not a linear scale, and this should be obvious unless you're stupid enough to post the post you just posted.

Test test test test test. Sorry about this techlads

AAAAAAAAAAAAAAAAAAAA what are you doing?!
ReactOS

Attached: Untitled.png (311x79, 4.31K)

To be fair, ReactOS is really trying to create another NT type system so what more can you expect than a bloated piece of shit

The kernel is extremely bloated to the point where embedded hardware is still favoring DD-WRT's 2.6 series kernel over the new 3 offering.

I like you.

Those are almost paradoxical. Your computer only has a subset of components that it needs code for. if you want to be more compatible with more software and hardware, you're going to increase your theoretical 'bloat' by a factor of whatever components need to work with N programs. There are conventions and lots of abstractions to reduce this exact problem. But the core issue will never be solved. (besides being autistic about minimalism)

Software shouldn't have to dictate how hardware solves a type of equation or problem most efficiently. Which means there is a never ending cycle of new hardware obsoleting the old. This is only one reason of many why software tends to grow exponentially once it reaches critical mass much like a black hole or node.js

SHHH, dont let Poettering hear you. someone might get idea's

[checked]
That analogy is highly accurate on the [more] autistic side of minimalism.

POST LARGE, MINIMALIST SOFTWARE:
no, that is not a contradiction

Does OpenBSD count? It is a modern operating system.