gnulinux-not-linux.html
HTML document, Unicode text, UTF-8 text
1<!DOCTYPE html> 2<html lang="en"> 3<head> 4<meta charset="UTF-8"> 5<title> 6A Reason to Call it GNU/Linux 7</title> 8<link rel="stylesheet" href="/static/style.css"> 9<meta name="viewport" content="width=device-width, initial-scale=1.0"> 10</head> 11<body> 12<header> 13<a href="#main" id="skip-link">Skip navigation</a> 14<nav> 15<ul> 16<li><a href="/">Home</a></li> 17<li><a href="/projects">Projects</a></li> 18<li><a href="/index">Index</a></li> 19<li><a href="/about">About</a></li> 20<li><a href="https://roundabout-host.com/roundabout">Roundabout-host</a></li> 21</ul> 22<ul> 23<li><a href="mailto:root@roundabout-host.com" id="mail-link">root@roundabout-host.com</a></li> 24</ul> 25</nav> 26</header> 27<main id="main"> 28 29<h1>A Reason to Call it GNU/Linux</h1> 30<div id="article-date">2024-07-31</div> 31<p class="tags"> 32 33<a href="/index/gnu/linux.html" class="tag">gnu/linux</a> 34 35<a href="/index/linux.html" class="tag">linux</a> 36 37<a href="/index/free software.html" class="tag">free software</a> 38 39<a href="/index/android.html" class="tag">android</a> 40 41<a href="/index/opinion.html" class="tag">opinion</a> 42 43</p> 44 45<article class="content-area"> 46<p>Linux isn't very Unix-like by itself. Of course, it's a Unix-like <em class="emphasis-1">kernel</em>, and it 47does Unix-compatible file operations, process management, and system calls, but without the GNU 48suite or some other userland, it is just a kernel which doesn't have to be used as a Unix-like 49one. 50</p><p>Linux is Unix-like, but not all OSes which contain Linux take advantage of that. 51</p><p>Android basically uses Linux like a fancy bootloader. The only thing that runs there is toybox, 52which technically are Unix utilities, but the user can't interact with them, and a JVM. 53Everything the user does is done in Java. 54</p><p>In Android, if you only consider the actual platform that is used for making software, that 55platform is Java, not Unix. No matter how hard you try, Android isn't designed to run Unix packages 56natively. Of course it can, but that doesn't make it Unix-like, since the intended way to run 57applications is in Java. 58</p><p>Calling an OS by its kernel is wrong; the kernel doesn't determine the nature of the OS. We don't 59call Windows "NT" or MacOS "Darwin". 60</p><p>If you call GNU/Linux "Linux", why not call Android "Linux" as well? They're not compatible with 61each other, but technically the name Linux works for both according to your logic. 62</p><p>GNU/Linux means just that: GNU on the Linux kernel. There is a GNU kernel as well, the Hurd, but 63most commonly we substitute it with Linux. There used to be Debian GNU/kFreeBSD, which used the 64FreeBSD kernel, and there is GNU/Darwin, and GNU/Hurd, and so on. They didn't invent a name for 65that combination, but it still doesn't deserve to be named after its kernel. GNU/Linux is more 66compatible with GNU/Hurd or NetBSD (even without GNU) than with Android, Tizen, ChromeOS or 67whatever else happens to contain Linux and use it but don't take advantage of its Unix-like 68nature. 69</p><p>The fact that Android can run GNU/Linux in <code>chroot</code> doesn't mean anything; the core system is 70not GNU; but the kernel still knows how to run GNU software so it will run it. But that doesn't 71make Android GNU/Linux; it would be like saying your machine is Debian when it's actually OpenSUSE 72and you have a Debian chroot. 73</p><p>If someone made a system with the Windows NT kernel but not the Windows userland and GUI, would 74you still call that Windows? No; it <em class="emphasis-1">is</em> NT but that doesn't mean it's Windows, as it doesn't 75have what makes Windows run Windows software. 76</p><p>Obligatory copypasta: 77</p><blockquote><p>I'd just like to interject for a moment. What you're referring to as Linux, is in fact, GNU/Linux, 78or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto 79itself, but rather another free component of a fully functioning GNU system made useful by the GNU 80corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX. 81</p><p>Many computer users run a modified version of the GNU system every day, without realizing it. Through 82a peculiar turn of events, the version of GNU which is widely used today is often called "Linux", 83and many of its users are not aware that it is basically the GNU system, developed by the GNU Project. 84</p><p>There really is a Linux, and these people are using it, but it is just a part of the system they use. 85Linux is the kernel: the program in the system that allocates the machine's resources to the other 86programs that you run. The kernel is an essential part of an operating system, but useless by itself; 87it can only function in the context of a complete operating system. Linux is normally used in 88combination with the GNU operating system: the whole system is basically GNU with Linux added, or 89GNU/Linux. All the so-called "Linux" distributions are really distributions of GNU/Linux! 90</p></blockquote> 91</article> 92 93</main> 94<footer> 95<p>Page generated on Sunday, 4 May 2025 at 15:06:42</p> 96<p xmlns:cc="http://creativecommons.org/ns#" >This work is marked with <a href="https://creativecommons.org/publicdomain/zero/1.0/?ref=chooser-v1" target="_blank" rel="license noopener noreferrer" style="display:inline-block;">CC0 1.0 Universal</a> (🄍). No rights reserved.</p> 97<p>Hosted at <a href="https://roundabout-host.com/roundabout">Roundabout-host</a> using the static site service, and generated with <a href="/projects/ampoule.html">Ampoule</a>.</p> 98<a href="#">Back to top</a> 99</footer> 100</body> 101</html>