Ever wondered how software ends up in Debian’s repositories when you run apt install? This session tries to explain that.
As a GSoC 2025 contributor under the Debian project, I’ve been working on adding AMD ROCm support to Debian packages. I recently packaged hipblas-common, currently in the NEW queue.
This talk is a practical walkthrough of the Debian packaging process based on my experience. The session will not dive too deep into any of these aspects since those resources are readily available on debian's website as well. The goal of the session is to make the audience understand the process and its steps.
Topics covered:
The role of build systems like CMake and Make
What makes Debian packaging different
The structure and purpose of files in the debian/ directory
The publishing process (ITP, mentors.debian.net, signing, RFS)
How to contribute patches to existing packages
I’ll also cover my work done to enable ROCm support in scientific packages like DBCSR and blaspp, and the approach taken for larger packages like PyTorch and Composable Kernel.
You’ll be introduced to essential tools like dh_make, debhelper, sbuild, and dput. The aim is not to be exhaustive, but to give a practical understanding of how to go from source code to a valid Debian package.
Even if you don’t plan to submit a package to Debian main, these skills are useful when building internal or custom packages, a common need in production and organizational setups.
Understand the Debian packaging workflow from source to .deb
Learn the role of key files in the debian/ directory
Get a clear view of how to publish or patch packages
See real examples from packaging ROCm libraries
Discover tools like dh_make, debhelper, sbuild, and dput
Know why these skills matter even outside official Debian submissions