One guy is trying to prove to me that Linux (not distributions) is an OS and not a kernel.
I need an answer: is Linux an OS or a kernel?
The profusion of definitions in the world of technology can be very confusing.
In answer to the original question of "is linux an OS or a kernel?", the answer is that the term "linux" can refer to either of those elements, or others as well.
"Linux" can refer to the kernel which is the software that one can download from kernel.org or from Linux Torvald's github site:
https://github.com/torvalds/.
"Linux" can refer to a linux distribution (see below) like debian, fedora, ubuntu etc and is commonly used in that way in conversation and writing about linux distributions.
"Linux" can refer to an operating system, but here the fogginess of definition descends more greatly because the term "operating system" itself is used to mean different things.
Andrew Tanenbaum writes:
"The operating system is the code that carries out the system calls. Editors,
compilers, assemblers, linkers, utility programs, and command interpreters
definitely are not part of the operating system, even though they are important and
useful. At the risk of confusing things somewhat, in this section we will look briefly
at the UNIX command interpreter, the shell. Although it is not part of the operating
system, it makes heavy use of many operating system features and thus serves
as a good example of how the system calls are used. It is the main interface for user
at the terminal."
(2015 Tanenbaum A & Boss H, Modern Operating Systems, Pearson Education: New Jersey)
"Operating system" is often the term used synonymously with "distribution", where "distribution" means: what has been distributed by a linux organisation like debian or fedora or ubuntu etc in the form of an installable collection of software with a linux kernel that will run a computer. That use of the term "operating system" is quite different to what Tanenbaum describes.
The term "GNU/Linux" can be applied to those linux distributions that use the GNU utilities, but there are a number of linux distributions that do not use GNU utilities, or can replace the GNU utilities with other utilities, for example: alpine linux, chimera linux, individual builds of gentoo linux, and especially embedded linux systems which often use busybox or toybox utilities. Android's version of linux uses toybox. Ubuntu is supporting a rewrite of GNU utilities in the rust programming language called "uutils" to eventually replace GNU utilities altogether. The term "GNU/Linux" was invented by Richard Stallman of the Free Software Foundation to give credit to the contribution of the GNU utilities to linux distributions which used them, and to which he had made a major contribution. There is however, a lot of software in linux distributions that is neither the linux kernel nor GNU utilities, so adding the term "GNU" to "linux" can be seen as an attempt at appropriation or the staking of a claim which could be made for many other software contributions or contributors to a linux distribution. YMMV.