This script automates the compilation of darktable from the master branch and generates a fully functional, lintian-compliant .deb package, including an optional debug symbols package (darktable-dbgsym).
Designed for reproducibility and compliance, it handles common packaging issues: permissions, ownership, man pages, copyright, and more — all without requiring sudo at the end.
- ✅ Compiles
darktablefrommasterusing CMake + Ninja - ✅ Generates a clean, installable
.debpackage - ✅ Includes debug symbols in a separate
darktable-dbgsympackage - ✅ Fixes file ownership and permissions using
fakeroot - ✅ Compresses man pages (
.1→.1.gz) - ✅ Uses DEP-5 format for the
copyrightfile - ✅ No
sudorequired at the end (builds in/tmp) - ✅ Outputs the
.debin the current directory - ✅ Verbose logging for debugging
- ✅ Compatible with non-POSIX filesystems (e.g. external drives)
Install the required tools:
sudo apt install git cmake ninja-build dpkg-dev fakeroot