Difference between revisions of "Basic Debian Packaging"
Jump to navigation
Jump to search
(touch it up a little) |
(a few tweaks and additional info) |
||
Line 14: | Line 14: | ||
* is it already packaged: | * is it already packaged: | ||
** packages.debian.org | ** packages.debian.org | ||
− | * freshmeat.net | + | * other sources of software: |
− | * sourceforge.net | + | ** freshmeat.net |
− | * google.com | + | ** sourceforge.net |
+ | ** google.com | ||
====environment variables==== | ====environment variables==== | ||
* DEBEMAIL | * DEBEMAIL | ||
* DEBFULLNAME | * DEBFULLNAME | ||
====creating debian directory==== | ====creating debian directory==== | ||
− | * dh_make | + | * using dh_make (package dh-make) |
+ | * dh-make-perl | ||
+ | ====contents of a debian directory==== | ||
* copyright | * copyright | ||
* changelog | * changelog | ||
Line 42: | Line 45: | ||
#include /usr/share/cdbs/1/class/makefile.mk | #include /usr/share/cdbs/1/class/makefile.mk | ||
include /usr/share/cdbs/1/rules/debhelper.mk | include /usr/share/cdbs/1/rules/debhelper.mk | ||
− | * debuild | + | * add cdbs to build-depends or build-depends-indep debian/control |
+ | ====debuild==== | ||
+ | * commandline arguments: -us -uc | ||
* basic troubleshooting | * basic troubleshooting | ||
** build dependencies | ** build dependencies | ||
+ | ** package dependencies | ||
+ | *** install in a clean debian base-install | ||
+ | *** pbuilder/sbuild | ||
====lintian==== | ====lintian==== | ||
− | * debian policy | + | * debian policy checker |
===additional and related topics:=== | ===additional and related topics:=== |
Revision as of 00:46, 9 December 2005
this class should give a basic understanding of how to build a debian package from some common types of source tarballs or repositories.
prerequisites
- basic familiarity with commandline
- basic familiarity with linux
suggested background
- rudimentary understanding of building and compiling software
- basic understanding of apt and dpkg
- basic understanding of cvs or subversion
topics covered
finding software
- is it already packaged:
- packages.debian.org
- other sources of software:
- freshmeat.net
- sourceforge.net
- google.com
environment variables
- DEBEMAIL
- DEBFULLNAME
creating debian directory
- using dh_make (package dh-make)
- dh-make-perl
contents of a debian directory
- copyright
- changelog
- dch
- version
- release
- control
- rules
- other files
- *.installi
- *.manpages
- *.examples
- *.init
- *.postinst
- other examples: *.ex and *.EX files
cdbs basics:
- magic snippet for a complete debian/rules file:
#!/usr/bin/make -f # uncomment the next line if using a makefile-based source #include /usr/share/cdbs/1/class/makefile.mk include /usr/share/cdbs/1/rules/debhelper.mk
- add cdbs to build-depends or build-depends-indep debian/control
debuild
- commandline arguments: -us -uc
- basic troubleshooting
- build dependencies
- package dependencies
- install in a clean debian base-install
- pbuilder/sbuild
lintian
- debian policy checker
- Debian_Package_Repositories
- gnupg-signed packages