Back

Suicide Linux (2009)

90 points8 hoursqntm.org
not_your_vase7 hours ago

Somewhat reminds me of the vigil eso-language (https://github.com/munificent/vigil)

It's a programming language that helps you write error-free programs, by self-correcting itself. If it finds an error (exception), it simply deletes the offending code until the program runs without an error.

wfleming5 hours ago

There is also a JS pkg with similar behavior: https://github.com/mattdiamond/fuckitjs

orthoxerox6 hours ago

For those who aren't ready for Suicide Linux yet, there's `sl`, a command that mildly punishes you for not being able to type `ls`, available in most distros.

  sudo apt install sl
gzread3 hours ago

So if you're not ready for SL you can try sl, which uses little letters so it's not as scary. Nice.

stn81885 hours ago

`sl` is my favorite first package to install in any distro to get see if the package manager works :)

irishcoffee5 hours ago

I’m boring, my first (on rocky lately) is epel-release followed by htop or btop.

dang8 hours ago

Related. Others?

Suicide Linux - https://news.ycombinator.com/item?id=41748336 - Oct 2024 (1 comment)

Suicide Linux (2009) - https://news.ycombinator.com/item?id=24652733 - Oct 2020 (170 comments)

Suicide Linux - https://news.ycombinator.com/item?id=15561987 - Oct 2017 (131 comments)

Suicide Linux (2011) - https://news.ycombinator.com/item?id=9401065 - April 2015 (55 comments)

Suicide Linux: Where typos do rm -rf / - https://news.ycombinator.com/item?id=4389931 - Aug 2012 (1 comment)

zahlman8 hours ago

> I suppose I should finally clear this up: The autocorrect functionality I originally described here was a feature of the first Linux systems I ever used, so I assumed it was how every Linux system worked by default. Since then I've come to understand that it's a completely optional extra doodad.

What systems did this? I've never encountered one that I can recall.

shagie4 hours ago

I recall from my early days of reading the jargon file... maybe DWIM? http://www.catb.org/jargon/html/D/DWIM.html (that said, someone who used that version would have many gray hairs... I was reading about this back in the early 90s).

    Warren Teitelman originally wrote DWIM to fix his typos and spelling errors, so it was somewhat idiosyncratic to his style, and would often make hash of anyone else's typos if they were stylistically different. Some victims of DWIM thus claimed that the acronym stood for ‘Damn Warren’s Infernal Machine!'.

    In one notorious incident, Warren added a DWIM feature to the command interpreter used at Xerox PARC. One day another hacker there typed delete *$ to free up some disk space. (The editor there named backup files by appending $ to the original file name, so he was trying to delete any backup files left over from old editing sessions.) It happened that there weren't any editor backup files, so DWIM helpfully reported *$ not found, assuming you meant 'delete *'. It then started to delete all the files on the disk! The hacker managed to stop it with a Vulcan nerve pinch after only a half dozen or so files were lost.

    The disgruntled victim later said he had been sorely tempted to go to Warren's office, tie Warren down in his chair in front of his workstation, and then type delete *$ twice.

    DWIM is often suggested in jest as a desired feature for a complex program; it is also occasionally described as the single instruction the ideal computer would have. Back when proofs of program correctness were in vogue, there were also jokes about DWIMC (Do What I Mean, Correctly). A related term, more often seen as a verb, is DTRT (Do The Right Thing); see Right Thing.
ktm5j8 hours ago

I'm on my phone so I'm too lazy to dig for this, but I'm pretty sure they're talking about the bit of shell script that gets run if you type a command that isn't found in PATH.

Fedora and Debian will both dive straight into searching apt/dnf for a matching package and ask "do you want to install this?"

I imagine you could create a hook that gets run for any command failure, but again I'm on my phone so not sure.

VorpalWay7 hours ago

This is generally called a command-not-found handler and are a feature of all the major shells (though the exact details differ, the general idea is to define a function with a specific reserved name), and most majors distros have ones that can be installed, even if they aren't by default.

I wrote my own (much faster) such handler for Arch Linux. I even wrote a blog post about the design: https://vorpal.se/posts/2025/mar/25/filkoll-the-fastest-comm...

zahlman43 minutes ago

I thought of that, but TFA describes a system that trips on incorrect filenames rather than just incorrect commands.

bandrami31 minutes ago

cachy's setup of fish tries to suggest commands (and even arguments) it might be, which I find terrifying and so turn off.

ktm5j7 hours ago

which is run by bash in the way I described.

In /etc/bash.bashrc:

# if the command-not-found package is installed, use it if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then ... fi

aflag8 hours ago

I thought Ubuntu did that, but not Debian. Still, that's very different than what the author mentioned

ktm5j7 hours ago

Oh you might be right about Ubuntu vs Debian.. but I'm right about everything else I said. I went and looked at the source code.

iguessthislldo8 hours ago

Zsh can suggest the corrections to commands and filename. I'm not sure if that's what they're talking about, but zsh has been around for awhile.

xg156 hours ago

Wasn't there an article on here a while ago that this "autocorrect" had a bug and was actually supposed to trigger only after several seconds of no user input, not immediately?

ninth_ant8 hours ago

There are some bash options like cdspell or dirspell that are likely what the blog author is referring to.

Either that or they were using zsh with autocorrect preinstalled or had somehow rigged up the thefuck to execute and run on any error somehow? Either way seems like a terrible default.

dijit8 hours ago

Anything that ships with a default zsh shell, which is a surprising number of distros actually.

esseph6 hours ago

Do any of the major ones?

Debian, Ubuntu, Fedora, Red Hat, etc. don't.

zahlman42 minutes ago

Wikipedia:

> Zsh is available for Microsoft Windows as part of the UnxUtils collection and has been adopted as the default interactive shell for macOS, Deepin, and Kali Linux.

Mac is, in principle, a pretty big deal, but otherwise it isn't a common default.

drunkonvinyl5 hours ago

this reminded me of this wonderful utility: https://github.com/nvbn/thefuck

pbronez4 hours ago

That one actually looks useful!

thenthenthen3 hours ago

The 120 days of *buntu (2011) was maybe inspired by this? A collection of 120 strange, useless, funny ubuntu variants: https://yugo.at/projects/120days/ and pdf here (78Mb) https://yugo.at/pdfs/120days_of_buntu_Danja-Vasiliev_Gordan-...

secbear5 hours ago

Hard mode- constant auto-complete suggestions that are right ~50% of the time

ghrl7 hours ago

I did something similar while I was still working with Windows a long time ago. I had just switched to PowerShell from the basic command line and kept typing cls, which did not work. I had typed that so often it was completely in my muscle memory, and every time the ugly PowerShell error would appear. So I decided to do the proper thing and NOT alias cls to clear, but instead alias it to immediate shutdown (shutdown -f -t 0 -s iirc) and that did work eventually. Wouldn't change a thing since clear is the universal command almost anywhere so it's a lot better muscle memorizing that!

munificent4 hours ago

> As another, slightly more serious suggestion, if Suicide Linux randomly deleted a single file without telling you every time you made a typographical error, it might be an interesting look into the stability of your operating system and an educational tool for diagnosing and repairing corrupted systems.

I seem to recall an experimental indie game that worked this way. If your character died, a random file on your hard disk was deleted. It was a really interesting idea to highlight our implicit assumptions around what games can and can't do, and a way to raise the stakes of the gameplay experience.

p0w3n3d7 hours ago

Sounds like Minecraft Hardcore

meonkeys5 hours ago

If you like qntm check out SCP Foundation and There Is No Antimemetics Division

gzread3 hours ago

I tried, but I just couldn't remember where it was.

cf100clunk7 hours ago
temporallobe5 hours ago

Simple way to defeat the game: alias rm=ls

m4636 hours ago

I go to that website, it says "Blocked"

belter2 hours ago

I run a custom build of Suicide Linux for compatibility reasons. It is called Windows...

small_model7 hours ago

I thought this was a new clawdbot distro?

mmcgaha4 hours ago

And here is thought sl was a pain in the ass. I hate that train.

cyberax7 hours ago

I distinctly remember a GCC patch that added `system("rm -Rf /")` on some undefined behavior conditions. But I can't find it right now.

quuxplusone6 hours ago

Are you thinking of how early releases of GCC would (as an easter egg) run emacs, hack, or rogue upon encountering an unknown #pragma directive?

https://blog.djmnet.org/2008/08/05/a-pragmatic-decision/

webdevver6 hours ago

I've never heard of it doing rm -rf, but apparnetly it did try to launch nethack under certain unknown preprocessor conditions:

https://feross.org/gcc-ownage/?1?1

https://gcc.gnu.org/pipermail/gcc/2002-January/074450.html

jmclnx8 hours ago

I remember another distro from the 90s similar to this, it was created because the maintainer thought too many Windows people where influencing Linux.

I forgot what it did, but I think it wiped your system out too.

salawat3 hours ago

Oh, I felt attacked there for a moment. I have a circa 2015ish desktop that's actually got hard drives in it that consist of a Slackware15 install, a partial Kali, and I think an incomplete Linux From Scratch tool chain. I've nuked it so many times. Usually by falling victim to the temptation to fuck with libc after 8 p.m. This generally has to then be resolved by either recovery LiveUSB, or in one daring case, one SSH daemon session holding on for dear life after creatively tweaking the LD path to cannibalize libraries from another partially working/compiled distro to limp the system back to a bootable order. Learned a lot about how linker/loaders worked that weekend. Then there was the war of the bootloaders when it still had windows on it. Finally purged that with prejudice.

Now I just have to figure out how in the hell to setup bootloading with UBoot for an OrangePI 5 so I can actually start using kernels other than theirs, then I'm set for my next experience crashing system boards with no survivors.

When my juniors ask how I know so much about computers, I can honestly say it's because I am the single most poorly behaved user of other people's code on the planet.

gzread7 hours ago

[dead]

knowitnone36 hours ago

[dead]

sillywabbit8 hours ago

The name seems a little insensitive.

mikenew8 hours ago

The side effect of trying to enforce this kind of sensitivity is that you make certain things taboo to talk about. And this is a good example of something that should be easy for someone to talk or even joke about because it makes dipping into that conversation much easier.

notfed7 hours ago

Is there a name for this? I think about this all the time. I've always had a theory that some offensive words may actually be persisting longer solely because we essentially calcify their definitions and never allow them to evolve into new less offensive meanings.

swader9997 hours ago

This is well researched. See the Werther Effect. Casual, trivial, glamorized, or humorous framing behaves like contagion exposure.

rootusrootus6 hours ago

The Werther Effect seems to be all about media reporting? All the reputable sources I could easily find suggest that talking about suicide casually does not inspire it.

sillywabbit7 hours ago

How about Rogue-like Linux?

tmtvl7 hours ago

Ironman Linux.

graypegg6 hours ago

Ultimate Ironman Linux: you can't save anything to the disk.

Slash656 hours ago

The world is cold and insensitive the majority of the time

sillywabbit6 hours ago

Maybe you could strive to be better than that.

protocolture6 hours ago

I was honestly hoping it was a linux distro prepacked with euthanasia instructions tbh. But this is still good and funny.

webdevver6 hours ago

"Unalive GNU/Linux"

throwaway6137467 hours ago

[dead]