This article talks about how, suddenly for myself, I moved from the level of a simple GNU / Linux user to a contributor level to the open source world. I hope that she will be able to serve someone else as an example for her own growth.
Start
It all started with the fact that, as always, I switched to a new release of Ubuntu, this time on 13.04. I was not the most successful motherboard for Linux, as there is rarely firewood in the distributions out of the box for its network card (
RLT8168E ). But this is no big deal, right? Having procured compilation packages, downloaded
the latest firewood from Linux from the
off site site . I have already done so with Ubuntu 12.10 and nothing foretold a trick.
Trick
Suddenly, these “firewood” are
not compiled . Slightly turning the errors into the
text , I went to ask for advice at linux@conference.jabber.ru. There they told me that taking firewood from the site is not always a good idea and that there is a
package for my network card in the repository. A pleasant surprise. Indeed, it was worth starting with searching for a package of firewood in the repository. But, as it turned out, in it the code of the same module and when compiling it just falls.
Finding a solution
The problem in the package from the Ubuntu repository is already a more serious situation, and I went to get acquainted with
Ubuntu MOTU (Masters of the
Universe ). On their wiki, you can find attractive instructions on how to help keep packages up to date and generally help the Ubuntu project, which immediately interested me. Having joined the # ubuntu-motu IRC channel on freenode.net, I began to ask how I can help fix this package from the repository. There they explained to me that the best option would be to solve the problem at the stage before Ubuntu, that is, in the debian repository, from where they take most of the deb packages.
')
Debian
Not knowing who to contact and how, I decided to write immediately to the maintainer of this package (as I learned later, they advise me not to). Each deb package has a maintainer field (you can see, for example, with less file.deb), from where I picked up a contact e-mail. I wrote that, supposedly, the installation of the package falls with such errors, that the version of the package is such and my Ubuntu version is such and such that, as the owner of this equipment, I would like to help with the fix. Less than a day, he replied. I wrote that, yes, there is a problem, and I google it on the
launchpad , and how
it is really worth reporting to debian about the bugs found . It assumes that the matter of the disappearance of some define in the source code of new kernels. Asked me to find a commit that removes this define, or any documentation for the occasion. A sudden request, but I found this
commit .
Fixing
The accompanying package sent me an approximate patch so that I could test it on my hardware. Slightly correcting it, sent back a message of success! Thus, a
patch was made for the network card module, in which my name appears as a patch tester. For me it was a great cause for pride and for the continuation of the work begun :)
Next, I tested the resulting deb package and the maintainer sent it to the
sid repository, which is where the debian history ends.
Back to MOTU
Working for debian is great, but I'm a Ubuntu user, and I need this package there. Went back to MOTU with the hope that the package will now go to their repository. But such haste was too optimistic :) It turns out that there is a whole logged process called
SRU about getting the package in the current release and in the LTS. The document seemed huge and opaque to me, and I began to look for people responsible for the SRU. Found them on the # ubuntu-release channel. They turned out to be very nice people and, after a short conversation, decided to take the package in release, as it is taken directly from sid, is well documented and translates the status of the package from “not going at all” to “it works for me”. Thus, by the time this article is written, all users of the RLT8168 network card and the kernel of any current version will be able to install firewood directly from the repository.
I told the developers of the module in RealTek several times about the existence of the problem and the patch for it, but, alas, there was no response from them.
What's next?
After reading the
debian developer corner , I saw excellent documentation, a
lot of orphaned packages and packages that need to be written in deb. Given that the debian community is “constantly looking for new developers with some technical knowledge, interested in free software, and having some spare time”, I began to study how to create deb packages. And I think this is a great opportunity to make the Linux world a little bit better;)
Why an article?
I hope that the article will help you to see what really helps your favorite distribution even if you are not a super-duper programmer. That the community needs new blood and you can get valuable experience with it;)
PS
If there is a person in Habré who can become my mentor (mentor) and in the future a lawyer in becoming a debian maintainer, I will be very happy.