Welcome to Debian for Dummy Packaging Contributors!
Do you want to contribute to Debian and don't know how? Do you feel dummy and overwhelmed? We did as well! And we want to help you!
This guide will not tell you how to prepare Debian packages, it is also not a full step by step tutorial on becoming a Debian Developer. We simply want to tell you how the path looks like, all the work must be still done by you. A not long ago we also had to take this path, and what we noticed was that steps on the path were not so clear. Debian has a vast and scattered documentation in form of official docs, wiki pages and even blogs that one can find it difficult to know what and when must be done to become a DM or DD.
What is needed
You need Debian
This may be not a surprise to you but in order to build packages and test them effectively you need Debian installed. This does not mean it has to be a bare metal installation, a virtual machine will be sufficient in most cases.
Since all of the packages are uploaded first to the "unstable" branch, it is proffered that you develop on sid. It is however also possible to choose the current "testing" as your developer's branch.
There are Debian images available to use with KVM:
Creating keys
In Debian trust is very important. You need to sign packages to upload them to Debian FTP, you need to sign emails when enrolling from DM or DD status. Keysigning page will get you through the process of creating your OpenPGP keys.
Subscribe to lists
If you contribute to Debian, and want to join the project, it is very important to subscribe to mailing lists, which provide a mean of communication among geographically distributed developers and users. For starters, it is advised to be subscribed to the following two lists:
Debian mentors is the main communication channels for newbie packagers, you can get there help, ask for things you do not know. Besides that it is the main channel for getting your packages sponsored (we will cover package sponsoring in this document later). Debian devel announce is a list which provides info about changes in policies.
Before you post to the lists, please read and learn the Code of Conduct for mailing lists ?here.
Use interleaved replies
Remember to interleave your replies to posts in Debian mailing lists. If you do not use it, you will be reminded of it by people in the lists.
How to start packaging
What to package ?
wnpp, links, how-can-i-help
Choose the first package
Know the debian/ directory
(links, packaging howto)
Know quilt
(dquilt config link)
Testing the package
(cowbuilder, piuparts, lintian -> configs, simple workflows)
Where to get help
Lists
IRC
How to ask for help
(be concise, do not top post, so on)
Uploading a package
Upload to mentors
(dput config)
RFS
- (how, links, whaaat)
Reupload after fixes
, what will happen when sponsored ? (descr)
Common services
(QA uploader, PTS, buid logs, migration to testing)
NMU
(short description when you will need it) + links
Working with VCS
Alioth account
(how to get, advocacy)
GBP
- (simple workflow, links, problems)
Importing to git
Existing package with a long history
- (debsnap etc)
New package
- (links, simple workflow)
What next
So you want to stay
becoming DM links