This page references tools that aim at providing basic working Debian packages.
Language |
Any |
Perl |
Ruby |
Python |
Tool (package name) |
dh-make |
dh-make-perl |
gem2deb |
python-stdeb |
Upstream repository |
N/A |
|||
Usage |
||||
Download upstream package from repository |
||||
Debianize (without building source) |
||||
Debianize an unpacked upstream source |
|
|
|
python3 setup.py --command-packages=stdeb.command debianize |
Debianize and build source package |
||||
Debianize and build binary packages |
||||
Debianize, build, install |
||||
Refresh already created package |
||||
TODO: other use cases? |
||||
Features |
||||
version |
|
0.84-2 |
0.14 |
0.8.2-4 |
cdbs or dh? |
|
dh |
dh |
dh |
use DEBEMAIL |
|
yes |
yes |
no |
Build-Depends |
|
yes |
yes |
no |
Depends |
|
yes |
yes |
yes |
Homepage |
|
yes |
yes |
no |
short/long descriptions |
|
yes |
yes |
yes |
DEP8 tests |
|
no |
only template |
no |
.docs / .examples / etc. |
|
docs + examples |
docs only |
no |
debian/copyright |
|
yes |
only template |
no |
debian/watch |
|
yes |
yes |
no |
Refresh mode (regenerate all files, moving old ones to .bak) |
|
yes |
no |
no |
git repo creation, pristine-tar, etc. |
|
yes |
no |
no |
debian/upstream/metadata (UpstreamMetadata) |
|
yes |
no |
no |
Notes
There's a Git repo with some example outputs
only template means that the tool provides a file that is not customized per-package
Build-depends and Depends generation
- dh-make-perl uses local packages and apt-file to identify packages
- gem2deb converts gem names to Debian package names
stdeb also uses apt-file with a fallback on module name conversion (code)
Copyright file generation
TODO. 'cme update dpkg-copyright' is another approach.
TO-DO List
- Look at:
- dh-make
- cabal-debian (haskell)
- javahelper (Java)
- npm2deb (Node.js)
- pkg-php-tools (PHP, PEAR modules)
- ocaml tool?
- Investigate meta-helpers