February 14, 2020

Github has replaced debian

The first debian release was published in 1993. In that time, the github repository wasn't available. It was founded in 2008. Let us imagine who bugtracking and patch submitting was handled by the Debian community before the advent of github.

Suppose, a user has identified a bug or a security issue in one of the debian packages. What he needs is a higher instance to report the error. This is equal to the debian mailing list. The maintainer who is receiving the bug has access to the sourcecode because it's stored in the debian repository. So the maintainer can take a look into the code and create a patch. Then the patch is submitted to the upstream.

Bascially spoken, Debian was a manual version of the github repository. It was a layer between bug reports, patches and the sourcecode. Since the year 2008 the github project was available. The consequence was, that the debian layer was no longer needed. A common workflow which includes github is working the following way: the user sends the bug not to the debain maintainer but creates the ticket in the github repository. He has also access to the sourcecode and the user can checkout the code and create a patch.

The interesting feature is, that github doesn't need human intervention but it's working with commands like git clone and git commit. Basically spoken, github has replaced debian.

The consequence was, that from 2008 on many so called rolling release distribution have become popular. The famous one is Arch Linux. The interesting point in Arch Linux is, that the users are not sending bugs to the Arch Linux mailing list and they do not sending patches to the Arch Linux team. If they find a bug or like to fix a bug, they will submit the commit direct to the github repository.

Or let me explain it the other way: Suppose, there is no github website available. Then it make sense to invent a debian like distribution which is based on bugtracking, stable releases and maintainers. Not Red Hat has killed debian but it was github. The thesis is, that the github website acts as a Linux distribution.´ There are places for the x11 sourcecode https://github.com/mirror/libX11 and the geany texteditor https://github.com/geany/geany If the process of bug creation and patch creation are handled by the git tool and the github website, the amount of work located in the linux distribution itself is lower. A rolling release distribution is doing nothing else than taking the latest github sourcecode and compiles this into a binary file. All the communication between users, maintainers and upstream is handled on the github platform but not within the debian distribution.

The funny thing is, that Arch Linux and other distribution are stable release distributions as well. Stable release means, that the code was freezen at a point in the past and then only security bugfixes are provided. The feature of freezing the code is called in the github website “creating a new release”. The github owner is allowed to copy the code on a certain time into a zip file which has become a stable version. This stable release of the github repository is used by a linux distribution to compile the sourcecode.

The funny thing is, that github is not only a website but they are creating conferences as well. In the year 2000 the debian maintainer has meet each other at the debian conference and in the year 2017 they are meeting each other at the github universe conference. Bascially spoken, github has become a universal operating system which bridges the users, developers and maintainers from different operating systems like Linux, Apple, Windows and Android.

According to the latest stats, the debian community consists of around 1000 developers worldwide plus a large userbase which goes into millions. And the github community contains of 40 million users, 100 million repositories and nearly all the programmers in the world.

No comments:

Post a Comment