pages/blog/kiss-zen.md (view raw)
1---
2template:
3url: kiss-zen
4title: The Zen of KISS Linux
5subtitle: My thoughts on the distro, the philosophy and my experience in general
6date: 2020-04-03
7---
8
9[I installed KISS](/blog/five-days-tty) early in January on my main
10machine---an HP Envy 13 (2017), and I have since noticed a lot of changes
11in my workflow, my approach to software (and its development), and in
12life as a whole. I wouldn't call KISS "life changing", as that would be
13overly dramatic, but it has definitely reshaped my outlook towards
14technology---for better or worse.
15
16When I talk about KISS to people---online or IRL---I get some pretty
17interesting reactions and comments.[^bringing-up-kiss]
18Ranging from "Oh cool." to "You must be
19retarded.", I've heard it all. A classic and a personal favourite of
20mine, "I don't use meme distros because I actually get work done." It is
21actually, quite the opposite---I've been so much more productive using
22KISS than any other operating system. I'll explain why shortly.
23
24[^bringing-up-kiss]: No, I don't go "I use KISS btw". I don't bring it
25 up unless provoked.
26
27The beauty of this "distro", is it isn't much of a distribution at all.
28There is no big team, no mailing lists, no infrastructure. The entire
29setup is so loose, and this makes it very convenient to swap things out
30for alternatives. The main (and potentially community) repos all reside
31locally on your system. In the event that Dylan decides to call it
32quits and switches to Windows, we can simply just bump versions
33ourselves, locally! The [KISS Guidestones](https://k1ss.org/guidestones)
34document is a good read.
35
36In the subseqent paragraphs, I've laid out the different things about
37KISS that stand out to me, and make using the system a lot more
38enjoyable.
39
40## the package system
41
42Packaging for KISS has been delightful, to say the least. It takes me
43about 2 mins to write and publish a new package. Here's the `radare2`
44package, which I maintain, for example.
45
46The `build` file (executable):
47
48```sh
49#!/bin/sh -e
50
51./configure \
52 --prefix=/usr
53
54make
55make DESTDIR="$1" install
56```
57
58The `version` file:
59```
604.3.1 1
61```
62
63The `checksums` file (generated using `kiss checksum radare2`):
64```
654abcb9c9dff24eab44d64d392e115ae774ab1ad90d04f2c983d96d7d7f9476aa 4.3.1.tar.gz
66```
67
68And finally, the `sources` file:
69```
70https://github.com/radareorg/radare2/archive/4.3.1.tar.gz
71```
72
73This is literally the bare minimum that you need to define a package.
74There's also the `depends` file where you specify the dependencies for
75your package.
76`kiss` also generates a `manifests` file to track all the files and
77directories that your package creates during installation, for their
78removal, if and when that occurs. Now compare this process with any
79other distribution's.
80
81## the community
82
83As far as I know, it mostly consists of the `#kisslinux` channel on
84Freenode and the [r/kisslinux](https://old.reddit.com/r/kisslinux)
85subreddit. It's not that big, but it's suprisingly active, and super
86helpful. There have been some interested new KISS-related projects
87too: [kiss-games](https://github.com/sdsddsd1/kiss-games)---a repository
88for, well, Linux games; [kiss-ppc64le](https://github.com/jedavies-dev/kiss-ppc64le)
89and [kiss-aarch64](https://github.com/jedavies-dev/kiss-aarch64)---KISS
90Linux ports for PowerPC and ARM64 architectures;
91[wyvertux](https://github.com/wyvertux/wyvertux)---an attempt at
92a GNU-free Linux distribution, using KISS as a base; and tons more.
93
94## the philosophy
95
96Software today is far too complex. And its complexity is only growing.
97Some might argue that this is inevitable, and it is in fact progress.
98I disagree. Blindly adding layers and layers of abstraction (Docker,
99modern web "apps") isn't progress. Look at the Linux desktop ecosystem
100today, for example---monstrosities like GNOME and KDE are a result of
101this...new wave software engineering.
102
103I see KISS as a symbol of defiance against this malformed notion. You
104don't _need_ all the bloat these DEs ship with to have a usable system.
105Agreed, it's a bit more effort to get up and running, but it is entirely
106worth it. Think of it as a clean table---feels good to sit down and work on,
107doesn't it?
108
109Let's take my own experience, for example. One of the initial few
110software I used to install on a new system was `dunst`---a notification
111daemon. Unfortunately, it depends on D-Bus, which is Poetterware; ergo,
112not on KISS. However, using a system without notifications has been very
113pleasant. Nothing to distract you while you're in the zone.
114
115Another instance, again involving D-Bus (or not), is Bluetooth audio. As
116it happens, my laptop's 3.5mm jack is rekt, and I need to use Bluetooth
117for audio, if at all. Sadly, Bluetooth audio on Linux hard-depends on
118D-Bus. Bluetooth stacks that don't rely on D-Bus do exist, like on Android,
119but porting them over to desktop is non-trivial. However, I used this to
120my advantage and decided not to consume media on my laptop. This has
121drastically boosted my productivity, since I literally cannot watch
122YouTube even if I wanted to. My laptop is now strictly work-only.
123If I do need to watch the occasional video / listen to music, I use my
124phone. Compartmentalizing work and play to separate devices has worked
125out pretty well for me.
126
127I'm slowly noticing myself favor low-tech (or no-tech) solutions to
128simple problems too. Like notetaking---I've tried plaintext files, Vim
129Wiki, Markdown, but nothing beats actually using pen and paper. Tech,
130from what I can see, doesn't solve problems very effectively. In some
131cases, it only causes more of them. I might write another post
132discussing my thoughts on this in further detail.
133
134I'm not sure what I intended this post to be, but I'm pretty happy with
135the mindspill. To conclude this already long monologue, let me clarify
136one little thing y'all are probably thinking, "Okay man, are you
137suggesting that we regress to the Dark Ages?". No, I'm not suggesting
138that we regress, but rather, progress mindfully.