Differences between revisions 9 and 10
Revision 9 as of 2011-08-31 13:55:23
Size: 0
Editor: HenriLeFoll
Comment: redirection from DebianPackaging
Revision 10 as of 2011-08-31 13:57:51
Size: 2834
Editor: HenriLeFoll
Comment: content from DebianPackaging
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<TableOfContents(2)>>
== Introduction to Debian Packaging ==
First read the excellent [[IntroDebianPackaging|Introduction to Debian Packaging]].

There is another interesting document on [[HowToPackageForDebian|how to package for Debian]]


== Debian Packaging ==

When you seriously think about packaging as new comer to Debian, please consider to read:

 * [[http://www.debian.org/doc/manuals/maint-guide/index.en.html|the Debian New Maintainers' Guide]] -- tutorial for simple package
 * [[http://www.debian.org/doc/debian-policy/|Debian Policy]] -- guiding rules
 * [[http://www.debian.org/doc/debian-policy/|Developers Reference]] -- advanced guide etc.

Please note some Ubuntu resources may be quite useful too.
 * the packaging guide at https://wiki.ubuntu.com/PackagingGuide/

== Building debian packages ==

To make sure that a debian package meets all build dependencies and is not influenced by anything specific to the user's environment, packages should be built in a [[chroot]] environment. Tools like [[PbuilderTricks|pbuilder]] can be used for this.

When working on a package, a faster rebuild can be done with 'debuild'. But then, all build-dependencies must be satisfied in the installation where the package is built. All necessary packages can be installed automatically with {{{apt-get build-dep}}}. A complete example for building the DebPkg:foo package looks like this:

{{{
 $ apt-get source foo
 $ cd foo-0.0.1
 $ sudo apt-get build-dep foo
 $ debuild -i -us -uc -b
}}}

This is usually enough for you to backport packages.

== See also: ==
 * [[Python/Packaging]]
 * http://www-128.ibm.com/developerworks/linux/library/l-debpkg.html : creating debian packages - high-level description of debian packaging .
 * http://julien.danjou.info/article-apt-build.html
 * WikiPedia:List_of_open-source_software_packages
 * http://www.debian.org/devel/wnpp/prospective : requested packages, and packages being worked on.
 * [[http://www.debian-administration.org/articles/336]] Rolling your own debian packages.
 * ConfigPackages
 * PackageConfigUpgrade : propose a new way to smoothly handle configuration upgrades during package upgrades
 * DataPackages
 * DebugPackage
 * EtchTransitionalPackages
 * HowToPackageForDebian
 * PackageCustomization
 * PackagingWithDarcs
 * PackagingWithGit
 * [[PkgSplit|Making Multiple Packages From A Single Source Tarball]]
 * [[Renaming_a_Package]]
 * SecurePbuilder
 * SponsorChecklist
 * [[http://vcs-pkg.org/|VCSPackaging]]
 * AutomakeTransition
 * [[deb]] files
 * [[RPM|rpm]] - Tool for extracting from RPM source tarballs
 * Autobuilding non-free packages: http://article.gmane.org/gmane.linux.debian.devel.announce/997

----
CategoryPackageManagement CategoryPackaging
----
 ToDo: This page needs cleanup

Introduction to Debian Packaging

First read the excellent Introduction to Debian Packaging.

There is another interesting document on how to package for Debian

Debian Packaging

When you seriously think about packaging as new comer to Debian, please consider to read:

Please note some Ubuntu resources may be quite useful too.

Building debian packages

To make sure that a debian package meets all build dependencies and is not influenced by anything specific to the user's environment, packages should be built in a chroot environment. Tools like pbuilder can be used for this.

When working on a package, a faster rebuild can be done with 'debuild'. But then, all build-dependencies must be satisfied in the installation where the package is built. All necessary packages can be installed automatically with apt-get build-dep. A complete example for building the foo package looks like this:

 $ apt-get source foo
 $ cd foo-0.0.1
 $ sudo apt-get build-dep foo
 $ debuild -i -us -uc -b

This is usually enough for you to backport packages.

See also:


CategoryPackageManagement CategoryPackaging


  • ToDo: This page needs cleanup