Linux or GNU/Linux? Or… GNU?

An old flamewar. Typically, with much heat and little light. Some arguments are needed, I believe.

There are a lot of arguments in favor of ‘Linux’. It is hard to deny that it is far shorter and more memorable than ‘GNU/Linux’. It is a name that can be remembered even by a non-techie. A name that is good for using in an ad (and we live in an ad world these days). To sum it all in one word, it is the far more convenient – and the convenience is a huge point.

Also, Linux is the kernel of that ‘revolution OS’ – and the kernel is the central and arguably most important piece of any OS. There is a point in the opinion that if the OS should be named after a part of it, this part ought to be the kernel. In many places, esp. embedded devices, the OS consists of the kernel and a BusyBox “suite”, with nothing or almost nothing from the GNU toolchain – and still works.

Finally, most people just are used to calling the OS ‘Linux’, and names are just that – names. One should use what people are used to. No sense in inventing a new language.

However, there are also arguments in favor of ‘GNU/Linux’ – probably even more.

GNU is the project that started this operating system, in 1984. At 1991, when the first version of Linux appeared, GNU was a complete OS that lacked only a working kernel – the GNU Mach kernel was still struggling. If Linux hadn’t appeared (and attracted the would-be kernel developers), GNU Mach would eventually take off, maybe an year later, but still the GNU OS would exist. And by now the delay would probably be compensated for. In this category, GNU scores a point against Linux.

The Linux kernel itself exists due to the GNU toolchain (it is written, compiled and tested with it), and what is more important, due to the GNU inspiration. It is true that Linus Torwalds could have used the BSD toolchain, but I very much doubt that BSD would have inspired him to make his own kernel. The BSD kernel was already pretty good at this time, far beyond what a student could write. And Linus was never in love with the BSD license. There is no definite proof, but one of the most pro-‘Linux’ arguments seems to be shot down.

It is true that the kernel is the central piece of an OS. However, it is not only the position, but also the amount of good work that earns a credit. Writing the GNU toolchain requires about the same level of programmer skills. And in a typical desktop or server installation, the amount of GNU code dwarfs that of the Linux code, at average five to one. (BTW, if you have or LibreOffice installed, they also have a bigger codebase than the Linux kernel.) One more point for GNU.

BTW, it is true that the Linux kernel is an amazing piece of software. However, the GNU toolchain is also the frontrunner in its track. GCC, bash, glibc, the userland utils are typically considered the best or among the best in existence. It is hard to show a winner here.

It is true that the GNU toolchain is not mandatory for a Linux installation. However, there are also distros that contain GNU, but not Linux. For example, Debian sports quite well developed kFreeBSD and kFreeBSD64 platforms, based on the FreeBSD kernel. (In the Debian nomenclature, these are called ‘Debian GNU/kFreeBSD’, similarly to ‘Debian GNU/Linux’.) No clear winner here, either.

And undoubtedly, ‘Linux’ sounds far more convenient, brass and sexy than ‘GNU/Linux’. However, ‘GNU’ only sounds even more convenient – one syllable instead of two. 🙂 It is a matter of taste here, but to me the name ‘GNU’ seems more convenient than ‘Linux’. And probably will seem at least equal to a lot of people.

As for what the people are used to call it – the vast majority of the people don’t call this OS ‘Linux’ either. They call it ‘Android’. Should we abandon ‘Linux’ for their convenience? If no, then we shouldn’t also abandon the ‘GNU’ part, I think.

What if we have to call this OS by the name of its leading component? Summing it all, I see more sense in calling it ‘GNU’ than ‘Linux’.

But what is the really better way to call it?

I think this depends on the speaker. Those who are all about convenience and none for actual credit will undoubtedly go for ‘Linux’. However, the name that gives proper credit is ‘GNU/Linux’, or even ‘GNU’. And giving credit where credit is due is not simply ‘the hacker ethics’ that motivates the free software coders and keeps their society from falling apart. It is also the fundamental principle of the justice and thus the well-founded self-esteem.

For me, when in a hurry or in a situation that will risk being misunderstood otherwise, I will still call it ‘Linux’. However, in all other cases I would try to use ‘GNU/Linux’.

17 Responses to 'Linux or GNU/Linux? Or… GNU?'

  1. Hristo Iliev Says:

    It’s funny though. While Linus has his distaste for the BSD license, the FreeBSD people are working hard to eradicate everything GNU from the base FreeBSD system 🙂

  2. Григор Says:

    @Hristo Iliev: Wishing them luck.

  3. go_fire Says:

    Аз имам две забележки към текста.

    1. ГНУ Мах е микроядро. Цялото ядро на ГНУ се нарича Хирд (hurd) и аз знам поне четири негови реализации (или опити?) в рамките на същия този проект да се ползва друго микроядро. За това мисля по-добре в текста да седи GNU/HURD, макар наистина единствената негова стабилна (?) версия да е с ГНУ Мах. А освен това ГНУ Мах се ползва и в други ОС, например една даже по-известна от ГНУ/Линукс, поне като пазарно разпространение;
    2. Линус не е можел 91-92 да ползва обкръжение на БСД. Това е точно времето на така наречените БСД войни, тоест дългите дела между Новел и института. В точно този момент БСД е с много неясен статут и на практика блокирано за ползване, което си е и било целта на Новел. Чак по-късно съдбата наказа Новел.

    Иначе за себе си съм избрал позицията на ФСС. Ако една система съдържа в себе си и ГНУ, и Линукс, то аз да я наричам ГНУ/Линукс. Причини за това могат да бъдат най-малко две:
    1. Така да се каже „славата“ се поделя, сиреч се отчита заслуга и на двата проекта;
    2. Обръща се внимание на потребителите, че това не е просто някаква си технология, а мироглед, мисия и стратегически план. Образователната цел е не по-малко важна, а всъщност е много по-важна от конкретна реализация на някаква си технология, та дори тя да е най-добрата.

  4. Григор Says:

    @go_fire: Извинявам се за допуснатите грешки, и се съгласявам с позицията. 🙂

  5. Hristo Iliev Says:

    @go_fire, онази другата ОС (ако е същата, за която си мисля, то ядрото й се нарича XNU) е CMU Mach 3.0 / FreeBSD хибрид. GNU Mach също е далечен наследник на CMU Mach 3 през проекта Mach 4 на University of Utah.

  6. go_fire Says:

    Ето имам пропуск. Да Мах започва пътя си в Юта и отначало даже не е свободен. Но не знаех, че става въпрос за друго негово разклонение, което е добре да се отбележи, въпреки че едва ли имат някакви особени разлики по между си. Все пак микроядрото е микро, защото прави много малко неща 😉 Но никак не е гаранция де. Между L4 микроядрата има големи разлики. Аз до сега си мислих, че са оставили Дарвин свободен софтуер, заради Мах, защото БСД не ги задължава подобно нещо. По между другото, интересна информация е, че Линус е бил поканен лично от Джобс да работи върху тази ОС, но е отказал.

  7. Маркуча Says:

    Toolchain аргументът вече започна да издиша — clang е на път да компилира всичко от ядрото (Crypto API правеше проблеми), Debian минаха на eglibc заради Ulrich Drepper. Остава само някой сериозно да се захване с BSD/Linux или Sun/Linux — Heirloom върви пушка, а аз от доста време карам с NetBSD userland в/у една иначе Linux машина. Ей тук има още един събрат по неволя и жълта книжка:

  8. Маркуча Says:

    [имам подозрението, че някой клъцна кабела]
    Toolchain аргументът вече започна да издиша — clang е на път да компилира всичко от ядрото (Crypto API правеше проблеми), Debian минаха на eglibc заради Ulrich Drepper. Остава само някой сериозно да се захване с BSD/Linux или Sun/Linux — Heirloom върви пушка, а аз от доста време карам с NetBSD userland в/у една иначе Linux машина. Ей тук има още един събрат по неволя и жълта книжка:

  9. Григор Says:

    @Маркуча: Когато пътеката е утъпквана 20 години, лесно се минава.

    Между другото, eglibc е точно така GNU, както glibc. За Sun/Linux – по-скоро си спомням Indiana: GNU юзерленда върху OpenSolaris ядро. Но иначе не виждам нищо лошо в това да има повече свободни ОС и техни варианти – това е най-добрият начин да се заобикалят дълбоко окопали се смотаняци от сорта на UD.

  10. go_fire Says:

    Само да вметна, че Ред Хат изритаха Улрих от проекта и той от месеци няма нищо общо с него. Дали е бил прав или не, няма да обсъждам, всеки си има мнение и глава за преценка. За eg вече казаха. Аз например се сещам и за Be OS (и най-вече варианта Хайку), още една хубава ОС. Няма нищо лошо в разнообразие и избор, макар в момента избора между свободни ОС да не е никак равностоен, но поне го име, по-преди не бе така.

  11. Григор Says:

    @go_fire: Надявам се с времето да стане и равностоен, или поне достатъчно равностоен, за да може човек реално да си върши работа. Към момента от свободните ОС единствено Линукс става добре за типичен десктоп (PC-BSD ми прави чудесно впечатление, но е някак твърде самотен, за да е реален избор). За в бъдеще някоя друга свободна ОС може да се окаже дори по-приятна и удобна от Линукс.

  12. Sah War Says:

    A true-to-the-bone FSF supporter, eh? 😉 My opinion leans in that direction as well, though ‘Linux’ is just as popular these days, if not more.

    Вече ще имам какво да изпращам като резюме на мнението ми по темата занапред (например само адреса на тази статия) за тези англоговорещи, с които понякога „споря“ по този въпрос.

    П.П. Забелязах две грешки малки грешки, можеш да ги поправиш, ако желаеш: Linux ToRvalds и In 1991, […].

  13. Sah War Says:

    (Съжалявам за двойното срещане на „грешки“ в коментара ми по-нагоре, както и за сгрешното поставяне на получерното форматиране — Torvalds, от бързане се случват такива неща… можеш спокойно да ги поправиш и да изтриеш този коментар.)

  14. Sah War Says:

    (… сгрешЕното…)

  15. Григор Says:

    @Sah War: 10x. 🙂

    I don’t like a lot of Stallman’s positions. However, it is due to his uncompromising over the freedom that we have now a free OS, and not a was-to-be-free one.

    Winners stand firm on values but compromise on petty things;
    Losers stand firm on petty things but compromise on values.

  16. go_fire Says:

    И все пак се казва Linuss 😉

  17. go_fire Says:

    Хайде пък аз две „с“-ъта набих 🙁

Leave a Reply