8.7 KiB
Linux
Linux is a partially "open-source" unix-like operating system kernel, probably the most successful "mostly FOSS" kernel. Linux is NOT an operating system, only its basic part -- for a whole operating system more things need to be added, such as some kind of user interface and actual user programs (so called userland), and this is what Linux distributions do (there hundreds of these) -- Linux distributions, such as Debian, Arch or Ubuntu are complete operating systems (but beware, most of them are not fully FOSS). Linux is one of the biggest collaborative programming projects, as of now it has more than 15000 contributors. Despite popular misconceptions Linux is proprietary software by containing binary blobs -- completely free distributions have to use forks that remove these (see e.g. Linux-libre). Linux is also tranny software, abusing technology as a vehicle for promoting harmful politics.
Fun note: there is a site that counts certain words in the Linux source code, https://www.vidarholen.net/contents/wordcount. For the lulz in 2019 some word counts were: "fuck": 16, "shit": 33, "idiot": 17, "retard": 4, "hack": 1571, "todo": 6166, "fixme": 4256.
Linux is written in the C language, specifically the old C89 standard (which design-wise is very good), as of 2022 (there seem to be plans to switch to a newer version).
Linux is typically combined with a lot of GNU software and the GNU project (whose goal is to create a free operating system) uses Linux (actually a fork of it, called Linux-libre) as its official kernel, so in the wild we usually encounter the term GNU/Linux or GNU+Linux to mean a whole operating system (basically a distro), though the system should really be called just GNU. Despite this most people still call these systems just "Linux", which is completely wrong and shows their misunderstanding of technology -- GNU is the whole operating system, it existed long before Linux, Linux joined GNU later to be integrated into it. Terms like "Linux kernel" also don't make sense, Linux IS a kernel, there is no need to add the word "kernel", it's like "John human" -- no need to add the word "human" here.
Linux is sometimes called "free as in freedom", however that's a lie, it is at most a partially "open-source" or "FOSS" project. Linux is in many ways bad, especially lately. Some reasons for this are:
- It actually includes proprietary software in the form of binary blobs (drivers). The Linux-libre project tries to fix this.
- It is tranny software and has a fascist code of conduct (
linux/Documentation/process/code-of-conduct.rst
). Recently it started to even incorporate Rust, getting shitty also by the technological side. - Its development practices are sus, it is involved with many unethical corporations (through the linux foundation) including Microsoft (one of the greatest enemies of free software) who is trying to take control over it (EEE), Google, Intel, IBM and others. Such forces will inevitably shape it towards corporate interests.
- It is a monolithic kernel which goes against the KISS philosophy.
- It is bloat and bloat monopoly and in some ways capitalist software (just try to fork Linux on your own, maintain it and add/modify actual features).
- It uses a restrictive copyleft GPL license as opposed to a permissive one.
Nevertheless, despite its mistakes and inevitable shitty future (it's just going to become "Windows 2.0" in a few years), nowadays (2023) GNU/Linux still offers a relatively comfy, powerful Unix/POSIX environment which means it can be drop-in replaced with another unix-like system without this causing you much trouble, so using GNU/Linux is at this point considered OK (until Microsoft completely seizes it at which point we migrate probably to BSD, GNU Hurd, HyperbolaBSD or something). It can be made fairly minimal (see e.g. KISS Linux and Puppy Linux) and LRS/suckless friendly. It is in no way perfect but can serve as an acceptable temporary boat on the sail towards freedom, until it inevitably sinks by the weight of capitalism.
Linux is so called monolithic kernel and as such is more or less bloat. However it "just works" and has a great hardware support so it wins many users over alternatives such as BSD.
Some alternatives to Linux (and Linux-libre) are:
- GNU Hurd, an unfinished (but somewhat usable) kernel developed by GNU itself.
- BSD operating systems such as FreeBSD, NetBSD and OpenBSD (probably best from the LRS point of view)
- bare metal UwU
- HyperbolaBSD
- Minix? Keep checking out smaller projects like sortix, e.g. on osdevwiki.
- non-Unix systems like FreeDOS, Haiku etc.?
- TODO: MOAR
Switching To GNU/Linux
One of the basic mistakes of noobs who just switched from Windows to GNU/Linux is that they try to continue to do things the Windows way. They try to force-run Windows programs on GNU/Linux, they look for program installers on the web, they install antiviruses, they try to find a GUI program for a thing that is solved with 2 lines of shell script (and fail to find one), they keep distro hoppoing instead of customizing their system etc. Many give up and then go around saying "brrruh, Loooonix sux" -- yes, it kind of does, but for other reasons. You're just using it wrong. Despite its corruption, it's still a Unix system, you do things elegantly and simply, however these ways are naturally completely different from how ugly systems like Windows do them -- and how they nurture normal people to do them. If you want to convert an image from png to jpg, you don't need to download and crack a graphical program that takes 100 GB and installs ads on your system, you do it via a simple command line tool -- don't be afraid of the terminal, learn some basic commands, ask experiences people how they do it (not how to achieve the way you want to do it). Everyone single individual who learned it later thanked himself for doing it, so don't be stupid.
TODO: more
History
{ Some history of Linux can be read in the biography of Linus Torvalds called Just For Fun. ~drummyfish }
Linux was created by Linus Torvalds. He started the project in 1991 as a university student. He read a book about operating system design and Unix and became fascinated with it. Then when he bought a new no-name PC (4 MB RAM, 33 MHz CPU), he installed Minix on it, a then-proprietary Unix-like operating system. He was frustrated about some features of Minix and started to write his own software such as terminal emulator, disk driver and shell, and he made it all POSIX compliant. These slowly started to evolve into an OS kernel.
Linus originally wanted to name the project Freax, thinking Linux would sound too self-centered (it would). However the admin of an FTP server that hosted the files renamed it to Linux, and the name stuck (and it still sounds self-centered).
On 25 August 1991 { One year plus one day after I was born :D ~drummyfish } he made the famous public announcement of Linux on Usenet in which he claimed it was just a hobby project and that it "wouldn't be big and professional as GNU". In November 1991 Linux became self-hosted with the version 0.10 -- by the time a number of people were already using it and working on it. In 1992, with version 0.12, Linux became free software with the adoption of the GPL license.
On 14 March 1994 Linux 1.0 -- a fully functional version -- was released.
TODO: moar