[med-svn] [Debian Wiki] Update of "DebianMed/MoM" by AndreasTille

Debian Wiki wiki at debian.org
Tue Sep 8 14:03:13 BST 2020


Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Debian Wiki" for change notification.

The "DebianMed/MoM" page has been changed by AndreasTille:
https://wiki.debian.org/DebianMed/MoM?action=diff&rev1=104&rev2=105

Comment:
Remove content

  '''[[https://salsa.debian.org/med-team/community/MoM/-/wikis/home|This Wiki was moved to Salsa Wiki.]]'''
  
- '''Please do not edit!'''
+ '''Please do not edit here any more!'''
  
  ----------------------------------------
  
- <<TableOfContents(2)>>
- 
- = Mentoring of the Month (MoM) =
- 
- In this effort the mentor dedicates a part of his spare time to a newcomer (the "student"), providing any packaging knowledge the Mentor has to
- enable the student to work more or less independently on packaging after passing this MoM period.  The mentor will guide the student kindly into all secrets of Debian packaging with the example of a specific program, which is in the focus of the Debian Med team.  The student is free to pick the package, however the mentor has a vetoing right in case he sees the package in some way "unfit for the MoM project" (too complicated, too non-free, too far away from Debian Med topic, too whatever).  At the end of the month the goal is that
- 
-  a. The package in question is finished and uploaded.
-  a. The student is able to do advanced packaging tasks and is introduced into the communication channels of Debian Med team.
- 
- The communication about this should be tagged with "[MoM]" in the subject line of the exchanged mails to enable others who might not be interested to procmail it out of their focus, and to enable other potential students to learn from this.
- 
- In this MoM process I would like to apply some strict rules:
- 
-   1. If the mentor is posting something on the [[http://lists.debian.org/debian-med|mailing list]] containing [MoM] in the subject, the student tries hard to respond with a comment (if not better possible, something like:  I have no idea but I will do some research like asking upstream or whatever - just leaving a hint that he feels responsible somehow).
-   1. The student tries to follow any of the commits of the mentor to the package which is in focus of the MoM plan, and favorably sends a comment like
-       * Its OK for me
-       * What does this mean, please explain
-       * I would prefer ... instead of your change
-   To get informed about the changes the student needs to be subscribed to the [[https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-med-commit|commit mailing list]] or check the logs in the repository regularly (''git pull; git log''). He or she should try to find a useful comment to any commit to make sure he has understood things and will be able to do it himself in the future.
-   1. The student confirms that he succeeded in building the package according to the state in Vcs in case it builds, or that he is able to reproduce the error message of the build process.
-   1. If there is a problem the student will ask on the [[http://lists.debian.org/debian-med|Debian Med mailing list]] (tagging the subject [MoM] not to spam others too much.) This list should be the main communication channel to show others:
-       a. we are working on a problem
-       a. how things could be sorted out via open discussion
-       a. how they could learn things about packaging
-   Communication can also be done via the ''#debian-med'' IRC channel.
-   1. The student posts a status report about the packaging every day, reporting about changes she did, issues she faced or discussions she did with upstream etc.
- 
- Please be careful.  The MoM plan is ''work''.  While it is intended to show that work can be fun, the mentor expects the student to do some work in the same way as the mentor is offering a part of his spare time to do the other part of the work which needs to be done.  So the mentor will ask the student whether he did his part of the work.  If not the mentor will stop the work on this package and will continue with another MoM student and her
- package (in case there might be a waiting list).
- 
- The MoM effort was created in the hope that we will be able to train those silent observers of the list to become more vocal.  This training not only provides technical knowledge.  It turned out that this is only 50% of the job.  The other part is communication which is heavily underestimated.  By communication we do not mean plain chatting.  It is about communication that leads straight to a technical implementation.
- 
- == Helpful Links ==
- 
- For newcomers in the Debian Med team the most essential reading is the [[https://med-team.pages.debian.net/policy/|Debian Med policy]] document.  Please put it under your pillow.  It helps the student to in the initial phase when having first trouble with checking out via ssh as well as giving useful hints later.
- 
- == Quickstart with Debian Med package template ==
- 
-  1. Get recent package template
-     git clone https://salsa.debian.org/med-team/community/package_template
-  1. Go to your target packaging directory and personalise the template above.  This script will ask you to set some variables you should set for several tasks when doing Debian packaging. Just do what the script wants you to do and call it until it creates a debian/ dir.
-     PATH_TO_package_template_CLONE/package_template/personalise_template https://github.com/USER/PACKAGE/
-         or
-     PATH_TO_package_template_CLONE/package_template/personalise_template PACKAGE
-  1. The good thing for Github maintained projects is that we can pretty much predict the {{{debian/watch}}} file which is parsed by {{{uscan}}}.  If the target software is not at Github the {{{package_template}}} contains lots of other examples for valid {{{debian/watch}}} files.  So go to the freshly created dir {{{PACKAGE_}}} (mind the trailing '_' at the end of the package name!) edit {{{PACKAGE_/debian/watch}}} if the project is somewhere else than Github and do
-     cd PACKAGE_/debian && uscan --verbose    
-  1. In all cases when you manage to create a valid {{{debian/watch}}} file you can safely remove the files {{{debian/get-orig-source*}}}.  These are just fallbacks if there is no easy way to use {{{uscan}}} which is luckily extremely rare.
-  1. I usually also remove {{{debian/doc-base}}} and {{{debian/lintian-overrides}}}.  You can easily copy them over later from the original {{{package_template}}} Git if needed.
-  1. Now add a proper version number in {{{debian/changelog}}} which was initially set to 0.0.0 to make sure {{{uscan}}} will be forced to fetch something newer.  Set it to the version {{{uscan}}} has fetched for you (possibly double check upstream web page whether this is really the version you want to package)
-  1. Edit the Description field in {{{debian/control}}}.  It needs a short and a long description.  Upstream homepage will hopefully provide the needed information.
-  1. Possibly find a publication covering the software and edit {{{debian/upstream/metadata}}} to add publication details
-  1. So far for the preparation of the {{{debian/}}} dir.  Now we create the actual packaging git.  Now it becomes obvious why in the beginning the '_' was attached to the package name.  We need a fresh directory with the package name now.  This is the way how you can create the repository and import the source tarball
-      mkdir PACKAGE && cd PACKAGE && git init && gbp import-orig --pristine-tar --no-interactive ../PACKAGE_VERSION.orig.tar.gz
-  1. Finally move over you prepared {{{debian/}}} dir and commit it
-      mv PACKAGE_/debian PACKAGE && cd PACKAGE && git add debian && git commit -a -m"Initial packaging"
-  1. For injection into salsa.debian.org we have a helper script.  Go somewhere else (may be close to the package_template git and do
-      git clone https://salsa.debian.org/med-team/community/helper-scripts
-  1. Now inject your initial repository by going back to your packaging Git.  The script will tell you that you need to create a SALSA_TOKEN and how to do this.  Just do what the script tells you to do and than call again
-      PATH_TO_helper-scripts_CLONE/inject-into-salsa-git
-  1. When intending to create package this should be announced in an so called Intent To Package (ITP) bug report.  Usually this should be the first step before starting a package to avoid race conditions between developers preventing two people working on the same software.  Since we have not so popular software chances are low that this is happening.  Thus we are using a script that automatically drains all information from our work above and issues the ITP bug automatically.  This script was initially used in the pkg-r team so you do
-    apt-get source dh-r
-     or alternatively
-    git clone https://salsa.debian.org/r-pkg-team/dh-r
-  1. In the scripts directory you can find ''itp_from_debian_dir'' which you should call from your packaging git.
- 
- You should end up with an initial packaging Git on Salsa which is shared with your team members.  An authomatic gatherer will fetch the metadata in a daily cron job.  To make you prospective package visible for your team members and the world on our [[https://blends.debian.org/med/tasks/|tasks pages]] please write an e-mail to [[mailto:debian-med at lists.debian.org|mailing list]] name the package name and the actual task (bio, bio-dev, imaging, ...) this package should go in.  Now the generic packaging work as described in beginners documention like the [[https://www.debian.org/doc/manuals/maint-guide/|Debian New Maintainers' Guide]] (you will see we have covered some steps until a half way working {{{debian/}}} dir) is your friend ... or for sure ask questions on our [[mailto:debian-med at lists.debian.org|mailing list]] by tagging the subject with '''[MoM]'''.
- 
- == Current mentors, students and packages ==
- 
- 
- ||'''Month'''  ||'''Mentor'''    ||'''Student'''         ||'''Package'''   ||'''Repository'''                                      ||'''Uploaded?'''|| '''Visible in the team after 1 year'''||
- ||01+02.2012   ||AndreasTille    ||Luis Ibanez           ||fis-gtm         ||https://salsa.debian.org/med-team/fis-gtm             ||yes ||handed over to Amul Shah ||
- ||03.2012      ||AndreasTille    ||Scott Christley       ||libswarm        ||https://salsa.debian.org/med-team/swarm               ||no  ||no ||
- ||06.2012      ||AndreasTille    ||Eric Maeker           ||libquazip       ||https://salsa.debian.org/med-team/quazip              ||yes ||yes ||
- ||11.2012      ||AndreasTille    ||Tomás Di Domenico     ||python-csb      ||https://salsa.debian.org/med-team/python-csb          ||yes ||yes ||
- ||02.2013      ||AndreasTille    ||SukhbirS              ||hunspell-en-med ||https://salsa.debian.org/med-team/hunspell-en-med     ||yes ||remains in Debian (not in Debian Med) ||
- ||12.2013      ||AndreasTille    ||Lennart C. Karssen    ||probabel        ||https://salsa.debian.org/med-team/probabel            ||yes ||yes ||
- ||01.2014      ||AndreasTille    ||Jorge Sebastião Soares||snp-sites       ||https://salsa.debian.org/med-team/snp-sites           ||yes ||no  ||
- ||03.2014      ||AndreasTille    ||Stephen Smith         ||phyutility      ||https://salsa.debian.org/med-team/phyutility          ||yes ||no  ||
- ||06.2014      ||AndreasTille    ||Ian Wallace           ||openemr         ||https://salsa.debian.org/med-team/openemr             ||yes ||no  ||
- ||09.2014      ||AndreasTille    ||Corentin Desfarges    ||camp            ||https://salsa.debian.org/med-team/camp                ||yes ||no (work taken over by Flavien Bridault) ||
- ||02.2015      ||AndreasTille    ||Paul Novotny          ||opensurgsim     ||https://salsa.debian.org/med-team/opensurgsim         ||yes ||yes ||
- ||03.2015      ||AndreasTille    ||Yves Martelli         ||dwvexplorer     ||https://salsa.debian.org/med-team/dwv-orthanc-plugin  ||no  ||no  ||
- ||04.2015      ||AndreasTille    ||Malihe Asemani        ||manila          ||git://git.debian.org/git/openstack/manila.git         ||-   ||no  ||
- ||05.2015      ||AndreasTille    ||Afif Elghraoui        ||kmer-tools      ||https://salsa.debian.org/med-team/kmer-tools          ||yes ||yes ||
- ||06.2015      ||AndreasTille    ||Alba Crespi           ||r-cran-fastmatch||https://salsa.debian.org/med-team/r-cran-fastmatch    ||yes ||yes ||
- ||07.2015      ||AndreasTille    ||Julien Lamy           ||dcmtk++         ||https://salsa.debian.org/med-team/dcmtk++             ||yes ||yes ||
- ||08.2015      ||AndreasTille    ||Malihe Asemani        ||king-probe      ||https://salsa.debian.org/med-team/king-probe          ||yes ||no  ||
- ||12.2015      ||AndreasTille    ||Martin Uecker         ||bart            ||https://salsa.debian.org/med-team/bart                ||yes ||yes ||
- ||10.2016      ||AfifElghraoui   ||Kerim Ölçer           ||emperor         ||https://salsa.debian.org/med-team/emperor             ||    || ||
- ||11.2016      ||AfifElghraoui   ||Çağrı ULAŞ            ||deepnano        ||https://salsa.debian.org/med-team/deepnano            ||yes || ||
- ||05.2017      ||AndreasTille    ||Nada Ghanem           ||qupath          ||https://salsa.debian.org/med-team/qupath              || || ||
- ||08.2017      ||AndreasTille    ||Cedric Lood           ||bandage         ||https://salsa.debian.org/med-team/bandage             ||yes || ||
- ||10.2017      ||AndreasTille    ||Nadiya Sitdykova      ||gatb-core       ||https://salsa.debian.org/med-team/gatb-core           ||yes || ||
- ||07.2019      ||AndriusMerkys, AndreasTille ||Shayan Doust||mindthegap   ||https://salsa.debian.org/med-team/mindthegap          ||    || ||
- 
- == Students in the queue ==
- 
-  * Feel free to add your name and a suggested package here
- 
- == Summary of past MoMs ==
- 
- === 15. January to 29. February 2012: Luis Ibanez packaging fis-gtm ===
- Luis Ibanez took over the challenging task of starting with one of the very hard packages in the beginning.  So the result that the package is not uploaded yet does not come unexpected.  From a mentors perspective I'm happy with Luis because he learned basic packaging skills and communication channels inside Debian Med and did a pretty good overall job.  He was quite verbose about his plans and success / problems so it was quite easy for me to guide him.  For the package itself he started to rework the upstream build system using cmake which is probably a good idea anyway and helps other potential users outside Debian as well (which is a good thing).  I will keep on helping to finalise the package once Luis will confirm success in getting cmake working.
- 
- Remark: Due to the complexity of fis-gtm it took some upstream release cycles until the package finally was uploaded to Debian which in fact took one year.  However, without the initial work of Luis in the MoM project it would probably never have happened at all.
- 
- === 1. March to 31. March 2012: Scott Christley packaging libswarm ===
- It seems Scott Christley was not able to spend a comparable amount of time as Luis in the first MoM period.  On the other hand Scott was not totally new to Debian packaging and there existed some preliminary packaging of libswarm in SVN.  When he tried to finish the package it turned out that another precondition (libkawa) is needed and filed an ITP bug #666238.  The plan is to finish this package first.
- 
- 
- === 1. June to 30. June 2012: Eric Maeker packaging libquazip ===
- In this MoM period it was the first time that the student finished the package ready for upload to NEW.  To be honest the other packages were a bit more complex but this is quite a success for the MoM project anyway.  Thanks to Eric for his effort in the MoM period.
- 
- === 12. November to 21. December 2012: Tomás Di Domenico packaging python-csb ===
- Tomás also successfully finished his MoM period which was a bit more than one month but he did a really studious work checking several times also on python modules list to make sure his package will fit a high standard.  Finally this is the case because he has choosen the hard way and fully support python2 and python3 in this package (as far as I know the first python module in our team approaching this).  So he started as a beginner and ended up with an example package for other people trying to support both python versions.  That's a nice job - thanks for your effort Tomás.
- 
- === 1. February to 28. February 2013: Sukhbir Singh packaging hunspell-en-med ===
- Sukhbir has wisely choosen a package that is perfectly fit for a packaging beginner and managed to finish the package even after two weeks.  The package is currently in the [[http://blends.debian.org/med/tasks/tools#hunspell-en-med|new queue]] waiting to be accepted by ftpmaster.  Sukhbir has to be proven very careful because I even detected some [[http://lists.alioth.debian.org/pipermail/dict-common-dev/2013-March/000788.html|problem with the spelling dictionary packages]] when beeing used in connection with OpenOffice.org/LibreOffice.  The problem is not yet solved but he promised to work on this.  A bug report should be filed once the package is accepted (it does not affect overall functionality and it seems it is even an "upstream problem".  Thanks for the good work to Sukhbir - I'd be happy to see more contributions from yours to Debian Med.
- 
- === 1. December to 31. December 2013: Lennart C. Karssen packaging probabel ===
- Lennart was starting at an advanced level of packaging since he had some preparation for the target done in an Ubuntu PPA.  He intended to learn the "right way"(TM) to do the packaging and it can be stated that he was quite fast in adapting the procedures.  So it did not came unexpected that he finished the packaging in about two weeks.  Nice job Lennart - thanks for joining the team.
- 
- === 1. January to 31. January 2014: Jorge Sebastião Soares packaging snp-sites ===
- Jorge had strong connection to upstream which is quite fortunate since it enables migrating necessary changes to the upstream source quite smoothly.  It also proves that the attempt to move a package to Debian might be a good means to enhance the software itself.  Luckily Jorge was sitting in the same office as another member of the Debian Med team and thus some question which occured to him could be solved in real life communication (thanks to Sascha Steinbiss for helping Jorge).  So despite the fact that dealing with libraries is a bit more complex Jorge was able to finish this package in less than a month.  It should be also mentioned that his MoM work inspired him to join the [[DebianMed/Meeting/Aberdeen2014|Debian Med sprint]] which enabled him to enhance his packaging skills further more and he intents to tackle more software now.  It was nice to learn to know you in person Jorge and I'd be happy to see more packages created by you in Debian.
- 
- === 1. March to 31. March 2014: Stephen Smith packaging phyutility ===
- Phyutility was on my long term todo list since a long time as a predependency of some other package.  I never managed to start with this but luckily Stephen Smith himself as upstream author of this Java program stepped in.  The packaging went smoothly and we now have another upstream author as packager which is nice.
- 
- === 1. June to mid-July 2014: Ian Wallace packaging openemr ===
- Since OpenEMR is quite complex and the packager need to fight through a jungle of JS libraries it was not really to be expected that the one month work would end up in an upload.  However, Ian has managed to give it a start and learned several things about Debian packaging.  It is hard to say how much is missing before a real upload could be done.  I pinged Ian whether he intends to keep on working on this package.
- 
- === 1. September to 30. September 2014: Corentin Desfarges packaging camp ===
- Corentin started with camp as his final target fw4spl.  The packaging of camp went fine even if it was not a total simple package.  Corentin has also proven to be helpful even before his MoM period to update vxl which is related.  In his MoM period Corentin has obviously learned sufficient packaging skills since in February 2015 he also finished fw4spl packaging which was also a complex task.  Nice job Corentin - welcome in the team.
- 
- === Mid-January to 28. February 2015: Paul Novotny packaging opensurgsim ===
- The tricky part about opensurgsim was that a patched version of an other library (yaml-cpp) was needed.  So Paul learned how to ping a maintainer of an other Debian package and deal with the fact that he gets no response.  We moved the package to collab-maint and paul managed to get this package right into shape as well as propagating the patches to yaml-cpp upstream.  This alone was nice work and would have made a successful MoM project.  Once the needed yaml-cpp was available in experimental Paul keept on working on his initial target opensurgsim and managed to finalise this until end of February when it was uploaded.  Moreover Paul has drawn the most welcome conclusion to apply for Debian Maintainer to keep on maintaining these packages.  Good job and nice outcome - welcome in the team, Paul.
- 



More information about the debian-med-commit mailing list