harm-less
                                
                                
                                
                                    harm-less copied to clipboard
                            
                            
                            
                        Inspired by suckless and cat-v, this is a simple single document wiki of suckless practices and minimal software.
/* --- harm-less ---*/ Inspired by suckless and cat-v, this is a simple single text document wiki of minimal software and suckless practices.
-- each Topic is a folder [TOPIC] -- each tool is a file [TOOL] -- each file is a description
This list is genarated using tree.sh on ./wiki
└── wiki
1.use
├── 1.os
│   ├── 10.Minix - The simpelest embedded microkernal os possible, powers the IME in intel chips.
│   ├── 20.plan9 - (or 9front) The most minimal of all, Only use if your use-case allows for it.
│   ├── 30.Oasis - manual-bootstrapped, statically compiled incredibly simple source-based linux.
│   ├── 40.OpenBSD - Very clean codebase, very simple, very secure, smallst kernal of the practical OS's.
│   ├── 50.KISS - Kiss linux is new, decently well known, and ungodly simple.
│   ├── 60.Alpine - A very popular just-works embedded linux build around musl libc and busybox.
│   ├── 70.Sabotage - Manual bootstrapped ultraminimal source-based static linux.
│   ├── 80.Glaucus - Brand new bleeding-edge linux built round musl libc and toybox.
│   └── 90.Gentoo - The most popular distro here, source based, can be made suckless.
├── 2.core
│   ├── 1.programs
│   │   ├── 1.init
│   │   │   ├── 10.sinit - The suckless init system
│   │   │   ├── 20.toybox - busybox init but even fuckin smaller, even simpler.
│   │   │   ├── 30.busybox - busybox has a good minimal embedded init system.
│   │   │   ├── 40.runit - ungodly small init scheme, very powerful
│   │   │   └── 50.OpenRC - Bit bloated, but by far the most popular of the init's here.
│   │   ├── 2.utils
│   │   │   ├── 10.sbase - suckless core utils, even simpler than the plan9 ones.
│   │   │   ├── 20.toybox - monolithic bin just like busybox, but even simpler. Used on android.
│   │   │   ├── 30.busybox - tiny versions of many common UNIX utilities into a single small embedded executable
│   │   │   └── 40.plan9-coreutils - The most minimal you can get, everything is only a couple lines of C. Best of the best.
│   │   └── 3.etc
│   │       └── 10.mandoc - OpenBSD's man page toolchain. Farrr better than gnu's
│   └── 2.libraries
│       ├── compression
│       │   ├── flate - small gzip compatible compressor lib
│       │   ├── liblzf - very fast, legally unencumbered compression library
│       │   ├── libz - cleaned up, modern fork of zlib.
│       │   ├── lz4 - extremely fast (BSD-licensed) compression algorithm
│       │   ├── lzip - Properly designed data compressor outperforming gzip and bzip2
│       │   ├── miniz - Single C source file Deflate/Inflate compression library
│       │   ├── xz-embedded - lightweight decompressor for the xz LZMA compressor (public domain).
│       │   └── zlib - the "standard" compression/decompression library, quite small
│       └── cryptography
│           ├── TweetNaCl - tiny, fully NaCl-compatible high-security cryptography library (single C file)
│           ├── dropbear - better replacement for OpenSSH.
│           ├── libreSSL - minimal drop-in replacement for (and fork of) OpenSSL.
│           ├── libsodium - encryption/decryption library
│           └── libtomcrypt - public domain cryptography library
├── 3.gui
│   └── display-servers
│       ├── 1.swc - The smallest display server you will ever get. Wayland compositor in 10k sloc.
│       ├── 2.wlroots - bloat, sucks, but nowhere near as bad as xorg, round 60k sloc.
│       ├── 3.tinyx - The only "minimal" X11 implementation, just under 100k sloc.
│       └── 4.xorg - bloat, garbage, dont use this
└── 4.applications
├── 1.media
│   └── torrenting
│       └── clients
│           ├── 10.btpd - The BitTorrent Protocol Daemon
│           ├── 20.ctorrent - lightweight torrent client [unmaintained]
│           ├── 30.lftp - simple command line file transfer program
│           └── 40.aria2 - lightweight multi-protocol download utility
└── 2.utilities
├── 1.files
│   ├── 1.management
│   │   ├── 10.unix-utils - ls, cp, mv, etc.
│   │   ├── 20.noice - 1k sloc small extensable file browser
│   │   ├── 30.rover - 2k sloc, perfect tiny file browser.
│   │   ├── 40.sfm - 3k sloc, very user friendly, very pretty, prob the best one here.
│   │   ├── 50.lf - bloated, terminal file manager written in Go, inspired by ranger
│   │   └── 60.broot - bloated, not a file manager, not the tree command - extensable file control and navigation.
│   └── 2.search
│       ├── 10.find - Unix core utility, minimal, efficent, tiny portable, most minimal of all of these.
│       ├── 20.pick - 2k sloc minimal fuzzy search tool.
│       ├── 30.fzy - 1/10th the code of fzf, fuck fzf, this is just as fast, just as amazing.
│       └── 40.go-fuzzyfinder - minimal, easy, fast, tiny, and written in go, less popular than the others here.
├── 2.text
│   └── 1.manupulation
│   ├── 1.emulator
│   │   ├── 1.st - the suckless terminal emulator. Tiny, easy to understand, customizable, perfect.
│   │   ├── 2.termite - Almost as minimal as st, less hackable, more user-freindly.
│   │   └── 3.alacritty - 10k fast terminal emulator with sane defualts.
│   └── 2.multiplexer
│       ├── 1.dvtm-abduco - better tmux, tiny minimal terminal multiplexing, emulates DWM in the tty.
│       ├── 2.mtm - micro terminal multiplexer. Simple, but breaks sometimes.
│       └── 3.tmux - a bit bloated, but ungodly popular.
└── 4.databases
├── 10.filesystem - the true unix way, this wiki is an example of that method.
├── 20.ndb - Plan9's database genarator, tiny, and super powerful.
├── 30.lmdb - high-performance, mmap'd key-value store used in the OpenLDAP project.
├── 40.TinyCBD - Fast simple constant compiled database genarator and interface.
└── 50.recutils - set of tools and libraries to access human-editable, plain text databases.
2.make
├── hardware
└── software
├── build-systems
│   ├── make - The classic, simple, easy, everyone knows it, bread and butter of suckless.
│   ├── mk - plan9 replacement of make. Small, minimal, autistic, beautiful.
│   └── samurai - implimentation of ninja, ultra minimal compiled built tool.
└── languages
├── high-level
│   ├── 10.Forth - (Factor && Joy) - The ultimate suckless high-level programming language
│   ├── 20.Smalltalk - (Self or maybe Pharo) - God-teir suckless OOP high-level languages.
│   ├── 30.Lisp - (scheme) - More user-friendly, and more commonly used, almost as simple as forth.
│   ├── 40.Fortran - Not really used anymore, but very simple and minimal
│   └── 50.Go - Fuck python, go is the efficient fast compiled, static, suckless alternative.
├── low-level
│   ├── 10.ASM - The ultimate minimal language, don't be afraid to use it.
│   ├── 20.Forth - More powerful and minimal than C, can fit in 512 bytes
│   ├── 30.Basic - Tinybasic is fuckin nothing at all
│   ├── 40.C - fuck C++
│   └── 50.Zig - Better designed C, but way less supported.
├── other
│   ├── 10.Apl - A high-level, based in math, extremely weird and incredibly elegant language.
│   ├── 20.Prolog - Also high-level, based in logic, extremely weird and elegent lang as well
│   └── 30.Ml - Functional, simple, and based on the Hindley–Milner type system
└── scripting
├── 10.Forth - Do I need to say more, forth has any level of abstraction you want.
├── 20.Lisp - (scheme) - Can be implemented in under 3000 lines of C, need i say more.
├── 30.Io - "expressiveness through simplicity"
├── 40.Tcl - Simple syntax leading to some micoscopic implementations
├── 50.Posix_Shell - Sucks balls, but is by far the most portable scripting lang on the planet
└── 60.Lua - "Well at least its not python :shrug:"
3.resources
└── sites
├── cat-v.org - one of the best sites out there for minimal software, close to the most extreme end of the software  minimalisim spectrum
└── suckless.org - the inspiration for this list, good starting point for minimal software and the unix phliosophy