lol whatever i've done
[kill9.git] / harmful / software / systemd.md
CommitLineData
4e80d3e9 1# It is actually systemd/Linux!
2
7a1ab46f 3Most people who hate systemd can't elaborate on why they hate
9ab74c0e 4systemd. But I can.
5
4e80d3e9 6## Privacy issues
7
8There are a **lot** of conspiracy theories about systemd being spyware.
9
9ab74c0e 10[systemd fallback to G\*\*gle DNS
11servers.](https://isc.sans.edu/forums/diary/Systemd+Could+Fallback+to+Google+DNS/22516/) This is a very serious privacy issue.
12
13This can be modified in the [`configure.ac`](https://github.com/systemd/systemd/blob/a083537e5d11bce68639c492eda33a7fe997d142/configure.ac#L1305) But i don't think you want to recompile systemd
14
15BTW, why does my ***INIT*** software manage my DNS? I thought we had. emm.
4e80d3e9 16
9ab74c0e 17* dhcpcd
18* NetworkManager
19* wicd
20* connman
21
22## UNIX philosophy
4e80d3e9 23
24>\>Make each program do one thing well. To do a new job, build afresh
25>rather than complicate old programs by adding new "features".
26
27According to
28[this](https://linux.slashdot.org/story/19/05/25/0538206/systemd-now-has-more-than-12-million-lines-of-code)
29systemd has 1.2 million lines:
30
31
9ab74c0e 32![What in the actual hell](/systemd.png)
4e80d3e9 33
9ab74c0e 34There's also systemd-boot, systemd-crypt setup and probably much others
4e80d3e9 35than **we** haven't discovered yet.
36
37Here's a list of what systemd manages:
38
9ab74c0e 39* [Gnome](https://blogs.gnome.org/benzea/2019/10/01/gnome-3-34-is-now-managed-using-systemd/)
40[Extra](https://github.com/dantrell/gentoo-project-gnome-without-systemd)
4e80d3e9 41* [Home directories](https://www.howtogeek.com/673018/systemd-will-change-how-your-linux-home-directory-works/)
42* [Encrypted disks](https://manpages.debian.org/jessie/systemd/systemd-cryptsetup-generator.8.en.html)
43
9ab74c0e 44### X11 in systemd
45
46Of course, [X11 was **completely**
47necessary](https://cgit.freedesktop.org/systemd/systemd/tree/NEWS?id=2d1ca11270e66777c90a449096203afebc37ec9c#n783)
48in PID 1
49
50### Ever wanted to connect to a remote systemd machine (using systemd)?
51
52[Now you
53can!](https://cgit.freedesktop.org/systemd/systemd/tree/NEWS?id=2d1ca11270e66777c90a449096203afebc37ec9c#n1500)
54
55### /etc/ bullshit
56
57[If you run
58systemd](https://cgit.freedesktop.org/systemd/systemd/tree/NEWS?id=2d1ca11270e66777c90a449096203afebc37ec9c#n1401)
59with an empty /etc directory, `systemctl preset-all` (whatever that
60does) is executed. to ensure a good "factory reset"
61
62Really? I think that if someone is going to remove /etc is because a)
63per's stupid or b) per's distro was already broken.
64
65Also, why is this in the fucking init process?
4e80d3e9 66
9ab74c0e 67#### `systemctl` edit command
68[systemctl has its own editor, which is `$EDITOR` though, pretty useless since you just removed /etc.](https://cgit.freedesktop.org/systemd/systemd/tree/NEWS?id=2d1ca11270e66777c90a449096203afebc37ec9c#n689)
69
70### systemd-rfkill
71It was something really necessary! My init system controlling if my
72fucking wifi card is on or off! I don't know what i would do without a
73process spawned by my kernel doing this...
74
75### Your init software manages your calendar and cron jobs
76
77[Yeah, completely
78necessary.](https://cgit.freedesktop.org/systemd/systemd/tree/NEWS?id=2d1ca11270e66777c90a449096203afebc37ec9c#n1044)
79
80### systemd stores tempfiles in a completely sane directory!
81[Literally why?
82](https://cgit.freedesktop.org/systemd/systemd/tree/NEWS?id=2d1ca11270e66777c90a449096203afebc37ec9c#n1049)we
83literally have /tmp and /dev/shm, fucking `systemd-tmpfiles` was completely unnecessary
84
85### systemd does not know what FastCGI is
86
87[Thank you systemd](https://cgit.freedesktop.org/systemd/systemd/tree/NEWS?id=2d1ca11270e66777c90a449096203afebc37ec9c#n166)
88
89<hr> Being systemd so fucking big, it could crash in any second. And
90since systemd is PID 1, if it crashes, the kernel would panic.
4e80d3e9 91
92GNU's not UNIX! so why would it have to follow the UNIX philosophy?
93
94Because it is UNIX like!
95
9ab74c0e 96## Serious issues
97
98* [You can accidentally remove /](https://github.com/systemd/systemd/issues/5644)
99
100* [L\*nnart thinks we cannot `useradd 0day`](https://github.com/systemd/systemd/issues/6237)
101
102* [The very necessary cryptsetup repleacement don't work](https://github.com/systemd/systemd/issues/6381)
103
104* [They don't know how to use getopt](https://github.com/systemd/systemd/issues/1596)
105
4e80d3e9 106## Logs
107
9ab74c0e 108**systemctl** uses its own format (binary BTW) to logs the shit, and you have to
109use **journalctl** (can't use less/more/cat/whatever) to see what's going on.
4e80d3e9 110
111At least, there's /var/log. But not all software use that
269f76a0 112
113## Alternatives to systemd
114
115Good luck!
116
117* runit
118* sinit
119* SysVinit
120* Seppherd
121* cinit
122* OpenRC
123* Anything that is not systemd. for satan's sake
124
125Anyways, good distros without systemd are gentoo, void and
126slackware. Consider BSD too!