Fuss around Linux and a mini-review of alternatives

The other day there was a buzz in chats, channels and forums: “Russian maintainers were removed from Linux” – followed by questions “will we be left without Linux” and “will OpenSource die”. This small article is for those who are “weak in the subject” – we will briefly clarify what happened there, whether it affects anyone much (spoiler – not much) – and for those who are curious – an overview of a couple of “replacement” options. Experts are unlikely to be able to glean anything here (but feel free to make amendments or share your own experience on alternatives).

Linux – what are you?

To make things clearer, let's remember what Linux is. For many, this is synonymous with an OS “that can be installed instead of Windows.” Not entirely true – strictly speaking, Linux is only a “kernel” for such an OS. The kernel is what provides the basic functionality, embodies the deep features of the OS, contains a bunch of drivers for the main devices, etc. Everything else (many popular programs, utilities, etc.) in Linux systems is taken from GNU and other projects. Historically, GNU was invented as an open-source, free replacement for Unix – but they were unable to make a kernel for it in time. And then a kernel was successfully developed by a Finnish student, after whom they first named the directory where the sources of this kernel were stored – and then the kernel itself (and even the operating systems on it).

It turns out that all kinds of Ubuntu, Fedora, CentOS, etc. – sort of “sandwiches” consisting of the Linux kernel as well as a bunch of basic programs from GNU and others. At the same time, different components can be selected according to taste (for example, there are dozens of window managers for X-windows alone) – and therefore different companies and individuals around the world are involved in the preparation of such “sandwiches” – and so many “distributions” appear. More strictly, the systems from this “zoo” are called GNU/Linux (and not just Linux).

And what happened?

Linux is an open source and freely distributed kernel. Like many similar projects, it relies on the support of enthusiasts from all over the world. But someone has to maintain order, decide which of the developments from enthusiasts can be added and what cannot. For the “official” Linux kernel, this is handled by the Linux Foundation, an official non-profit organization in the United States. That former student, the creator of the kernel, Linus Torvalds, also works there, with privileged rights over the code repository.

The Linux Foundation website offers various services

The Linux Foundation website offers various services

The Linux code repository has a MAINTAINERS file listing people who have made significant contributions to various components of the kernel – and who should be contacted with questions and suggestions related to the relevant parts of the code.

Well, a senior developer at the Linux Foundation, let's call him Greg, removes 11 people from this file, 10 of whom have email addresses in the domain .ru (many on mail.ru). This deletion was approved by Linus himself and provided with a vague explanation, saying, “for the sake of complying with various formal requirements.”

In principle, this step does not clearly violate the OpenSource principles – because Open source means that you can use it, but does not guarantee that the author of this code agrees to accept changes and additions to his code from anyone.

The noise arose mainly due to the fact that it was done somewhat boorishly. Well, the comment that followed a day later from Linus also looked somewhat swinish and xenophobic, but you’ve already read that and we won’t go deeper. An important point, probably, is that in general, IT people are quite cultured people, and many (not ours, but in general) were stirred up by the very behavior of those in charge, to the point of suspicion that the Linux Foundation was hacked and in fact it was not Linus and Greg, but some evil hackers and trolls 🙂 Well, let's not go into the details of the flame that flared up.

Why this happened is generally clear. As stated, the Linux Foundation is a non-profit company, but an official one. This means that they are subject to the laws of the country, and these laws (as in other countries) are often expressed in such a way that you can’t figure it out without a bottle. The company's lawyers thought and thought about the regulations issued over the past two years and decided to ask the developers to get rid of the mention of Russians, at least in this file. The developers (including Linus himself) are obviously not ready to venture into the legal jungle and logically prefer to do as the lawyers say (otherwise why hire them).

What and who does this threaten?

By and large – nothing. In fact, the company that produces the Linux kernel refuses to accept help from developers who do not like it. It is clear that, first of all, this means that some fragments (often drivers for different devices) will receive less professional care (updates, fixes, etc.) until equivalent maintainers are found.

At the same time, nothing prevents the community from taking the code of the official kernel and adding updates and fixes created by exiled maintainers to it independently. You will get an alternative kernel assembly. Now everyone who is not too lazy is engaged in reassembling the kernel as an exercise, including for personal purposes. The main thing is that there is someone to support (maybe financially) such an initiative of an alternative core (another one).

Hypothetically, the Linux Foundation may be offended and hide its code altogether so that the villains from the Russian Federation do not get it. Which means no one at all. Of course, after this the company can be dispersed – there is no point in releasing a product that no one can use.

About alternative kernels

Developing the idea from the previous paragraphs, it turns out that one of the obvious “alternatives” is to take one or another Linux distribution and use an alternatively assembled kernel in it. For example Linux-libre – a core assembled with the goal of destroying all obscure places from the official core. This kernel is being developed in a similar way by the Free Software Foundation Latin America – that is, at least not in the USA.

Using an alternative kernel is not difficult – in most cases, when loading the OS, the user can choose which kernel to load. To do this, you just need to download it first and put it, for example, next to the main one.

Alternative Debian on Hurd kernel

Alternative Debian on Hurd kernel

It was mentioned above that the GNU project would be a great OS on its own, but they lack a kernel. This does not mean that they do not have this very “own” core. They are trying to develop it, but obviously due to the lack of a flow of sponsorship and bright ideas, this core, called Hurd It is being developed very slowly (not for the first ten years) and is not very suitable for practical purposes. Nevertheless, you can download an OS with this kernel and practice with it, at least in a virtual environment.

About Windows 🙂

We won’t talk about this undoubtedly popular OS. I am not a hater of it (I have used almost all versions from 3.11 to 10 at different times – and I also had to program under WinAPI). But on the one hand, we are all roughly aware of what it is, on the other hand, it is not open and free, and on the third, access to it has been somewhat limited for compatriots in the last couple of years. Nevertheless, it is a very convenient OS, primarily for home computers – although in the last 10 years, top Linux distributions have been quite comparable in “user friendliness”.

Some dedicated/professional applications (and sometimes games) have a Windows-only version. There is a useful application on nix systems wine which allows you to run Windows applications – however, not always without problems. On the other hand, with the development of the popularity of Linux, this problem is gradually being felt less and less.

Various BSD

While Linux on a computer now hardly surprises anyone (even my beloved mother-in-law, 80 years old, has been working on a computer with Ubuntu for several years now – writing articles, reading scans of manuscripts, surfing the Internet) – then meeting a person using some of the BSD on a home computer or work laptop – this is relatively rare.

What is BSD? This is another attempt to make a “free and free version of Unix” – it appeared around the same time as GNU/Linux (even a little earlier). A significant difference from Linux is in the organization of the code. There is no situation here where the kernel is made in one project and the utilities surrounding it are made in another. Each BSD variant is represented by a single repository, usually managed by a company of the same name. Otherwise, they are developing similarly – they are also open and free.

Note that these companies (FreeBSD Foundation or OpenBSD Foundation for example) are also official non-profits mainly in unfriendly countries and hypothetically the same situations are possible with them as with Linux – but so far it looks like the situation with the Linux Foundation is caused by a local eclipse of minds.

Users usually point to the better structure, thoughtfulness and overall consistency of BSD systems (stemming from the fact that, unlike GNU/Linux distributions, they are not a “hodgepodge”). But of course, everything is not without nuances, which we will talk about later.

During the existence of BSD (more than 30 years), several variants predictably appeared. To briefly list the most popular ones:

  • FreeBSD is the most popular, perhaps with the best support for a variety of devices and a wide range of popular applications.

  • OpenBSD is probably the second most popular – focused on maximum transparency, accuracy in code and security.

  • NetBSD is close to OpenBSD, aimed at being ported to the maximum number of different platforms, incl. embedded.

Some popular programs on Linux and even Windows were developed in BSD (OpenSSH is often remembered) and were simply borrowed by others. Someone will remember that OsX used on Macs and MacBooks has many related ties to BSD, although these connections have become significantly confused over the years.

FreeBSD from a user's perspective

From a user's point of view, the differences mentioned between BSD variants – and even between BSD and GNU/Linux – are not so noticeable. Both systems are UNIX-like, there are some differences in some programs, etc. Therefore, let's briefly mention the main nuances that you will encounter if you decide to use something from BSD.

FreeBSD as a basic example. If you have no idea why to choose another BSD, take this one – it will presumably be compatible with the largest number of devices on your computer.

On the plus side, most BSDs also have builds for 32-bit systems, support for which has already ceased in many popular GNU/Linux distributions. In other words, to revive some old laptop, FreeBSD or OpenBSD may be a real solution. However, there are still Linux distributions for 32 bits. You will also find assemblies of key programs (including, for example, Firefox) for 32 bits. True, I’ll immediately note that although on a laptop with 1Gb of RAM the operating system and window manager can quite “fly” – but modern browsers for modern sites are heavyweight monsters and you may find that surfing the Internet on something like an Asus Eee PC is somewhat painful.

On the downside, you will find that FreeBSD requires more fiddling to install:

  • You can download and install it from a disk or flash drive like any other OS.

  • but you find that the graphical interface (X-windows) is not installed by default – you need to read the instructions and install pkg install xorg.

  • installing it and running (startx) you will find that the default “window manager” is the old lightweight TWM – out of habit it will seem very strange to you, you might. you won’t even immediately guess how to get out of it

  • Once you've gone through the instructions, you may become delighted with how many different window managers you can try – although you still have to tinker a little with the installation and minimal configuration.

  • even now, when you already have “windows” installed and configured, you will find that you need to install separately the browser, office and other applications you are interested in

TWM window manager running Firefox

TWM window manager running Firefox

At the same time, you may still find that your webcam is not supported, and your touchpad, although it works, does not respond to taps (but only to pressing buttons) – and maybe it does not scroll (with two fingers). Not to mention the printer. Depending on your luck, you may have to google it or ask on the forum, but maybe even that won’t help. Depends on your computer hardware.

Alternatively, you can choose a BSD option with a pre-installed windowing system (for example xfce).

Otherwise, you will get an ordinary-typical work computer suitable for most tasks (especially since nowadays most tasks are done on the Internet – or using online services and applications).

For programmers There is serious inconvenience: Nowadays, in many areas of development, we actively use Docker – both for local launch of our projects and various systems (databases, queues, etc.) – and for deployment in Kubernetes, implementation of CI, and so on. But Docker is a Linux feature. In Windows and OsX, sophisticated wrappers have been made for it, you can use it. On FreeBSD you will see that the instructions begin by explaining that you will have to use it in a virtual machine. In general, this way works, but it is certainly more convenient to use Docker in its native Linux.

In addition, there may be all sorts of minor difficulties when using, say, various custom applications for VPN, two-factor authentication, etc. However, BSD has a layer for compatibility with Linux, so try it – the devil is not so scary.

The good news is that all kinds of mainstream compilers and interpreters (and other tools – for example, git) – all this is available in BSD (including in the form of ports) – and there will not be any special difficulties in this regard. If you program “close to the system”, especially in C, you will sometimes notice slight differences in the functions of system libraries – but that's it.

Conclusion

So, to summarize:

  • there is no need to rush around and, in principle, if you use Linux, nothing will break because of this story (it’s not about that)

  • if you want to disown the official Linux kernel for ideological reasons, try one of the alternatives first – this will take the least time and effort

  • if you have a strong researcher spirit, you can try any of the BSD systems – for ordinary and advanced users, the replacement will be quite comfortable and will not require much effort to get used to.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *