(→Apprenticeship in progress) |
(→Apprenticeship in progress) |
||
Line 271: | Line 271: | ||
|Ghibo (Guiseppe Ghibò) || oden || Done || || OK [https://bugs.mageia.org/show_bug.cgi?id=15897 bug15897] || OK [https://bugs.mageia.org/show_bug.cgi?id=16642 bug 16642] || || || || || || || | |Ghibo (Guiseppe Ghibò) || oden || Done || || OK [https://bugs.mageia.org/show_bug.cgi?id=15897 bug15897] || OK [https://bugs.mageia.org/show_bug.cgi?id=16642 bug 16642] || || || || || || || | ||
|- | |- | ||
− | | ymyasoedov || shlomif/rindolf || Done || OK || OK || OK || OK || 5/5 patches || Padawan || Video || | + | | ymyasoedov || shlomif/rindolf || Done || OK || OK || OK || OK || 5/5 patches || Padawan || Video || Done (vlc 2.2.4) || 10/10: (1. perl-Test-Requires-Git-1.006 ; 2. perl-Text-Transliterator-1.02 ; 3. tar-1.29 ; 4. htop-2.0.1 ; 5. perl-DB_File-1.838 ; 6. perl-IPC-SysV-2.07 ; 7. unetbootin-625. ; 8. gnome-terminal ; 9. abcmidi 2016.05.05 ; 10. dejagnu 1.6.) || |
|- | |- | ||
|proyvind || shlomif/rindolf || Done || || || || || 2/5 patches ( [http://svnweb.mageia.org/packages?view=revision&revision=1019785 1] ; 2. pcre ) || || || || || | |proyvind || shlomif/rindolf || Done || || || || || 2/5 patches ( [http://svnweb.mageia.org/packages?view=revision&revision=1019785 1] ; 2. pcre ) || || || || || |
Revision as of 13:43, 9 June 2016
This page is also available in german
Contents
This page is meant for people interested in becoming Mageia packagers. It provides a guide for the first steps that leads to becoming an apprentice. If you are already a Mageia packager and want to become a mentor, see Becoming a Mageia Mentor.
What is needed to become a Mageia packager
To become a Mageia packager, you have to be mentored by an experienced Mageia packager. You will be an apprentice until your mentor considers you are ready to be a fully qualified packager.
There are very few general prerequisites.
The most important one is enthusiasm for Mageia, Linux and free software in general, as well as the enthusiasm to learn. The other prerequisites are more related to the basic usage of a Linux system, notably installing, removing packages, and good command-line skill.
Additional experiences, such as reporting and helping fix bugs, helping test programs (QA), patch triaging, as well as programming, are very useful. You might consider starting from there if you do not feel comfortable enough with taking on Mageia packaging, but this is not mandatory to become an apprentice.
To summarize, the prerequisites are:
- enthusiasm for the project
- enthusiasm to learn.
Everything else can be learned.
Joining the Mageia Community
Being a Mageia packager is being part of a community of people from all over the world. Becoming a Mageia packager therefore includes learning about and playing a part in that community.
Opening a Mageia account
The first step is to open a Mageia account (if you haven't already done so) at http://identity.mageia.org/. This will give you access to the various services that are used by the Mageia community.
Interacting with the Mageia community
There are two main ways for the Mageia community to talk: IRC and Mailing lists.
IRC is a good place for discussing in real time.
- development and packaging channel: #mageia-dev on Freenode server
- mentoring channel dedicated to beginners: #mageia-mentoring on Freenode server. This channel will be your communication channel with your mentor during your apprenticeship.
Meetings
The packaging team will have weekly meetings to speak about global organization, coming releases, priorities to be fixed, link with other teams, new packagers ...
- when: every second Tuesday at 20h UTC ... (19h UTC during European daylight saving time). Check http://meetbot.mageia.org/mageia-dev/2013/ for the dates.
- where: on IRC #mageia-dev on Freenode server
- how long: usually less than 1h, except the last tuesday of each month where we will have a global one.
Mailing-lists
You should sign up to various mailing list to keep track of the current choices that the community is making.
- discuss@ml.mageia.org is a list useful to all contributors, for general discussions of the directions of Mageia.
- dev@ml.mageia.org is essential for all packagers (or apprentices), for discussions about packaging and development.
Some other lists useful to packagers :
- bugs@ml.mageia.org: Bugzilla mails about submitted bugs
- changelog@ml.mageia.org: all new releases of packages submitted - we will work on a specific one regarding backports, this has to be defined later
- packages-commits@ml.mageia.org: all packages commits on Mageia svn
See the mailing lists page for details about subscribing.
Learning about the distribution
The purpose of the Mageia community is mainly to build the Mageia Linux distribution. As an apprentice, it is necessary to familiarize yourself with it.
The best way to get familiar with it is to run Mageia on your computers. There is the current stable version that you should run on your current machines. As an apprentice however, your goal should be to run Cauldron, the development (unstable) version of Mageia, at least on a test machine, or in a virtual environment.
You will learn about Mageia also by participating in other tasks than packaging. You can help the Bug Squad, the Documentation team, the Internationalisation Team (i18n) or the QA Team. You can also just help informally by testing your favorite software and reporting bugs.
Another way to familiarize yourself with Mageia is to read and understand the documentation. This wiki is meant to play such a role and you will need it as a reference during your training.
Documentation to read
Here is a list of links you should read before starting, using Mageia documentation or more generic ones.
What is packaging?
Mageia packaging links
- Packagers Howto start
- Packagers RPM tutorial - A Mageia tutorial for packagers
- Packaging guidelines
- Packaging for beginners - A page explaining packaging
- Packaging hints - A sort of FAQ or "don't forget" page about packaging
- RPM spec file policy
Packaging in other distributions
- Rpm.org : http://www.rpm.org/ and http://www.rpm.org/max-rpm-snapshot/
Finding a mentor
After reading carefully the previous paragraphs and following the tutorial as much as possible, the last step in becoming an apprentice is to find a mentor.
First, complete these steps :
- Enter your info in the apprentice candidate table below. Be sure to include your email address, so a mentor can contact you.
- Subscribe to and then post a request for a mentor on the dev mailing list.
To find a mentor, you then do any (or all) of :
- Ask for a mentor on IRC (freenode #mageia-mentoring).
- contact a mentor directly, listed in the #Mentoring team section below.
If everything works correctly, a mentor should contact you within a couple of weeks. Coming regularly on IRC (#mageia-mentoring) and asking there will speed up that process.
Once you get a mentor, follow the page Packagers Howto start.
Packaging apprentice candidates
Packaging apprentices looking for a mentor may add their name at the end of this table.
Before doing this, be sure to read the previous sections. To add your name to this list, you have to be logged in to the wiki using your Mageia identity account.
Mageia_id name |
time zone |
(opt) languages |
date added |
interests / skills / comments
| |
---|---|---|---|---|---|
Writz Wrian Matz |
morpheuscypher@gmail.com | UTC +2 | en | 2013-10-31 | Looking forward to contribute in the Mageia project
ASM,C/C++ programmer |
ikiu Dionisio Cortes |
bloodbrawl@gmail.com | UTC+1/2 | en,es | 2012-06-30 | Linux user, C++, Java , HTML, JavaScript, PHP, CSS programmer |
marcusmau Marc Maurer |
marc.maurer at orange.fr | UTC+1 | fr,en | 2012-10-16 | Long term Mandriva then Mageia user, php, HTML, ruby programmer |
DiBosco Robert Wood |
robert.wood@apostrophe.co.uk | GMT | en, [some] fr | 2012-03-14 | Long term Mandrake and Mandriva Linux user, uses KDE4, lots of experience in embedded assembly and C, some C++ experience with Qt, can usually compile programs for Linux, basic Python and sql skills, used Pascal in the late '90s |
Snypa Glen Clark |
glenuk_AT_gmail.com | GMT | en | 2012-05-12 | Newbie with Enthusiasm |
neofutur William Waisse |
mandrake_*AR*_ww7.be | GMT-5 | fr,en,es | 2013-05-16 | sysadmin,security,programming using mandrake since 1999 and gentoo since 2001 |
codebase7 Patrick Hibbs |
codebase7 at yahoo.com | UTC-5 | en | 2013-07-31 | I have used C++, a little bit of python, and Java in the past. Currently I enjoy tinkering with C++ as a hobby. |
Zeldas7777 Stephen Butler |
swbutler38 @t gmail(.com) | UTC-6 | en_us | 2013-09-22 | Computer Tech & Server Admin, php5 programming |
schaiba Rares Aioanei |
schaiba at gmail dot com | UTC+2 | en,ro | 2013-11-26 | Linux, C, shell, sysadmin |
ocelot-sloth Mark Stenglein |
ocelotsloth AT gmail.com | UTC-5 | en_us | 2014-01-30 | I have minimal experience with Python, working on Comptia Network+ Cert, otherwise looking to learn and help out with this project! |
Augier Christophe Henry |
christophe <at> c-henry <dot> fr | UTC+1 | fr, en | 2014-05-19 | I am a Mageia supporter since approximatly one year. I am a Java developper and have skills in C/C++/Qt programming. I also script using Python for personnal projects and have good knowledges in Bash scripting and system administration. I am in a French Engineer school and I am also starting to contribute to the Diaspora* social network developpement. |
suresh26k Suresh Kumar |
gsuresh26k@gmail.com | UTC+05:30 | en | 2014-07-12 | I am a linux user since last five years and now I would like to contribute to the community. I have good knowledge of C, C++, shell script, Java, Java GUI development, redhat package management, openstack, selinux, glusterfs, and general redhat utilies. I am learning python. |
Smithy Ashley Smith |
ashley@ashleyksmith.com | UTC +1 | en_GB | 2014-07-15 | I am a recent computer science graduate. I am enthusiastic and looking to expand my knowledge about Linux and develop my skills by contributing. |
Hanif Muhammad Hanif |
hanifeij@yahoo.co.id | UTC +7 | en, id | 2014-08-19 | i've been using linux for 2 years and want to learn about packaging, programming language i can use : bash , php |
Gerstrong Gerhard Stein |
gerstrong@gmail | UTC +1 | de, en, es | 2014-09-01 | First time Linux used back in 1998, as main system since 2006, experience with several Samba versions (3.X and 4.X), programming language I love to use : C++ (especially C++11), C, php. Distri used, OpenSuse, Redhat, Mandrake, Ubuntu (also derivates), Arch |
Azlinon Rick Houser |
mgabuilds_AT_divinesymphony_DOT_net | EST5EDT | en_us, es(poorly) | 2011-12-20 | Experienced RPM packager, but most of that is in private repos, some corporate. I've been on the Mageia path at home since the Mandrake days. Many years working with a variety of languages and HTTP server stacks, plus most of the normal userland. Current packaging interests are mainly focused around the makerspace toolchains (3d printing, etc.) and whatever other random distro bugs I personally run into.
{{Pkg:appr-cand|liminggang | Minggang Li | minggang.li AT gmail.com | UTC+8 |en_us, zh_CN | 2015-06-25|Experienced Embedded Linux developer, mainly in C/C++. Maintainer of MadEdit-Mod project at SF(main site) and GitHub(Mirror). Trying to help on Bug 14640 |
proyvind Per Øyvind Karlsen |
proyvind@moondrake.org | GMT+1 | en_us, nb_NO | 2015-12-24 | Experienced Mandriva Linux devel since 2001, fluent in C, C++ & Python. Expertize in RPM development. Considerable experience in toolchain maintenance. Experience in maintenance & development of urpmi, DrakX & related inhouse developed tools, sole maintainer of in cooker since Mageia fork. Embedded development. L10N/I18N. Generally broad experience in all aspects of distro development. |
ghibo Giuseppe Ghibò |
ghibomgx AT gmail DOT com | UTC+1 | en_US, it_IT | 2016-03-05 | Experienced mandrake/mandriva packager since 1999, good at C, TeX, PostScript, fonts and overall distro. |
Moufinure Pierre Gnaedig |
pierre dot gnaedig at mailoo dot org | UTC+1 | fr,en,de | 2016-03-24 | Long term Mandrake, Mandriva and Mageia user, Packaged some software (ckermit, simh) with RPM and looking forward to help the project. Skills: C/C++, Python, Shell, C# (Mono, etc.) |
ymyasoedov Yuri Myasoedov |
ymyasoedov at yandex dot ru | UTC+3 | ru,en | 2016-05-15 | Have been using Mandrake Linux since version 10.0, after that was Mandriva and Mageia. Already have some RPM packaging practice in Mandriva. C/C++ developer and Perl lover. Interested in kernel, GNOME desktop, strong security (SELinux MLS/MCS), virtualization (Xen and LXC), urpmi and Mageia Control Center. |
Packaging apprentices :
In edit mode, copy the template line below to end of table (just before "|}"), and add your info.
{{Pkg:appr-cand| | | |UTC-| |2011-mm-dd|interests+skills }}
Required for contact | |
time zone | e.g. UTC+1 for France, UTC-8 for California, etc. |
languages | (optional) Languages preferred, if not only English |
date added | To see how long you have been waiting for a mentor |
Main Apprenticeship Principles
As an apprentice, your goal is to learn, and for that your mentor will help. He will set some tasks for you and will supervise your progress. You are of course free to suggests the packages you might be interested in.
A packager contributes to the distribution by two main means: svn (the repository for package sources) and the build system (which produces the binary packages and propagates them). As an apprentice, you will go through the following stages:
- Apprentice (Initiate): no svn commit rights, everything goes through your mentor
- Apprentice+ (Padawan): svn commit rights, but your mentor reviews and submits the packages
- Packager (Jedi): all the rights ... and the responsibility :-)
Graduation Criteria
From Initiate to Padawan, the apprentice needs to have:
- posted a presentation email to -dev
- attended the Packaging Seminar 1
- opened a bug report
- fixed a bug (from a bug report, all the way to the end, can be the same)
- helped validate at least one update for QA or triage some bugs for the bugsquad
- mentor committed at least 5 patches to spec files without problems
The mentor, in agreement with the mentoring manager, decides when the apprentice is ready to become Padawan.
From Padawan to Jedi, the apprentice needs to have:
- attended the Packaging Seminar 2
- provided an update for a stable release (with patching, bug report, advisory)
- mentor pushed at least 10 packages touched without problems
- mentor/SIG sends email on -dev.
The packager meeting decides about graduation.
Apprenticeship in progress
This table should be updated by the mentoring manager.
Mageia_id | Mentor(s) | Initiate | Padawan | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Intro email | Seminar 1 | Bug report | Fix Bug | Triage/QA validation | 5 Patches pushed | Padawan | Seminar 2 | Update | 10 Packages pushed | Graduation email | ||
danf | pterjan | Done | Done | OK | OK | OK | Yes | OK | OK | YES! \o/ | ||
joequant | malo | Done | - | OK | OK | OK | Yes | OK | YES! \o/ | |||
nerdsville | zezinho | Done | - | No | ||||||||
dglent | shlomif/rindolf | Done | - | OK | OK | OK | OK | Yes | - | OK | OK | YES! \o/ |
djenning | wally | Done | Done | OK | OK | OK | OK | Yes | YES! \o/ | |||
yochenhsieh | malo | Done | Done | OK | OK | OK | OK | Yes | OK | OK | YES! \o/ | |
akien | obgr_seneca & stormi | Done | Done | OK | OK | OK | OK | Yes | OK | OK | OK | YES! \o/ |
daviddavid | akien | Done | Video | OK | OK | OK | OK | Yes | OK | OK | OK | YES! \o/ |
AlexL | stormi | Done | - | OK | OK | OK | OK | Yes | - | OK | OK | YES! \o/ |
annubis | juancho | Done | ||||||||||
marja | doktor5000 & shlomif/rindolf | Done | Done | OK | OK | OK | OK | Yes | OK | |||
diogenese | malo | Done | Done | OK | OK | OK | OK | Yes | OK | OK | OK | YES! \o/ |
adriend | daviddavid | Done | Video | OK | OK | |||||||
jamescategory | shlomif/rindolf | Done | ||||||||||
Crox | pterjan | Done | Done | |||||||||
jeffrobins | malo | Done | Video | |||||||||
aleksjan | shlomif/rindolf | |||||||||||
pitahaya | shlomif/rindolf (formerly blue_prawn) | Done | Video | |||||||||
yannick56 | ofaurax | Done | Video | OK | OK | .. | .. | |||||
nmartin | philippem | Done | OK | OK | OK | OK | Yes | OK | ||||
rwobben / Roelof Wobben | shlomif/rindolf | Done | Video | OK | OK | 5/5 patches | ||||||
bersuit / Alfonso Vera | juancho | Done | Done | OK | OK | OK | OK | Yes | OK | OK | OK | |
Steve / Steve Havelka | Akien | |||||||||||
ns80 | Akien | Done | Done | OK | OK | OK | OK | Yes | OK | OK | OK | YES! \o/ |
Richard Houser | shlomif/rindolf | Done | Video | OK. | OK. Bug 8605 | 3/5 patches (1st, 2nd 3rd) | ||||||
ycantin/ysoft | shlomif/rindolf | Done | Video | OK | In progress bug 12153 | OK: 1 2 | 5/5 patches (1st, 2nd, 3rd, 4th, 5th) | Yes | OK | OK | 10/10 (1. arandr-0.18 r864068 ; 2. autossh-1.4e r864076 ; 3. acpica-tools - 20150717 - 3 r864657 ; 4. dovecot - v2.2.18 - r864146 ; 5. backuppc - r865155 - v3.3.1 ; 6. wxGTk and related to wxAdvanced. 7. argyllcms v1.7.0. 8. ccache v3.2.3. 9. fribidi v0.19.7 10. acpid v2.0.25. ) | YES! \o/ |
alket / Alket Rexhepi | Akien | Done | OK | |||||||||
Neal Gompa / Son_Goku | shlomif/rindolf | Done | Video | OK | OK | Done | 5/5 patches - hawkey, libcomps, librepo, libhif, dnf | Yes | OK | OK | 10/10 (1. mageia-release-0.2 r893743 ; 2. drpm-0.2.1 ; 3. createrepo_c 0.9.1-2 ; 4. hawkey 0.6.2-1 ; 5. joe 4.1-1 ; 6. libmicrohttpd 0.9.44-1 ; 7. autogen 5.18.6-1 ; 8. catfish 1.3.3-1 ; 9. dash 0.5.8-1 ; 10. jwm 2.3.2-1) | YES! \o/ |
lukenukem | Akien | Done | Video | OK | OK | OK | 3/5 patches - steam, bumblebee, primus | OK | ||||
Moufinure (Pierre Gnaedig) | shlomif/rindolf | Done | Video | |||||||||
Ghibo (Guiseppe Ghibò) | oden | Done | OK bug15897 | OK bug 16642 | ||||||||
ymyasoedov | shlomif/rindolf | Done | OK | OK | OK | OK | 5/5 patches | Padawan | Video | Done (vlc 2.2.4) | 10/10: (1. perl-Test-Requires-Git-1.006 ; 2. perl-Text-Transliterator-1.02 ; 3. tar-1.29 ; 4. htop-2.0.1 ; 5. perl-DB_File-1.838 ; 6. perl-IPC-SysV-2.07 ; 7. unetbootin-625. ; 8. gnome-terminal ; 9. abcmidi 2016.05.05 ; 10. dejagnu 1.6.) | |
proyvind | shlomif/rindolf | Done | 2/5 patches ( 1 ; 2. pcre ) |
For mentors, see Becoming_a_Mageia_Mentor