Differences between revisions 18 and 19
Revision 18 as of 2011-09-03 17:06:50
Size: 4321
Editor: HenriLeFoll
Comment: correction : link of Developers Reference
Revision 19 as of 2011-09-04 13:06:53
Size: 3389
Editor: HenriLeFoll
Comment: moved Building debian packages to HowToPackageForDebian
Deletions are marked like this. Additions are marked like this.
Line 12: Line 12:
<<TableOfContents(2)>> <<TableOfContents()>>
Line 14: Line 14:

== Why Packaging ==
Whether you want
 * to install some programs or data on several computers
 * the packaging system to take care of updates
 * to help the Debian project.
Line 17: Line 23:
Why programs should be packaged: If you need to create rapidly a package, use [[DebianPkg:equivs]] :
  * read first how to create an [[/Minimal|empty package]]
  * then read how to create a [[/Trivial|package with some files]]
Line 19: Line 27:
 * You want the program to be included in Debian.
 * The packaging system takes care of the old version
 * You want to install programs on severall computers.
If you prefere to gain real knowledge about Debian packaging :
  * first read the excellent [[IntroDebianPackaging|introduction to Debian Packaging]].
  * Then read the intresting pdf file included int the package : [[DebianPkg:packaging-tutorial|packaging-tutorial]]
Line 23: Line 31:
##, so if a file is moved in the source, uninstall still works properly (unlike when you use make uninstall with the new Makefile)
First read the excellent [[IntroDebianPackaging|Introduction to Debian Packaging]].
== Debian Derivatives ==
Line 26: Line 33:
There is another interesting document on [[HowToPackageForDebian|how to package for Debian]] Please note that some Debian Derivatives resources may be quite useful too.
 * the [[https://wiki.ubuntu.com/PackagingGuide/|Ubuntu packaging guide]]
 * some [[https://wiki.ubuntu.com/MOTU/Packages/Packaging/Tips|Ubuntu packaging tips]]
Line 28: Line 37:
There is also an intresting package : [[DebianPkg:packaging-tutorial|packaging-tutorial]] by [[http://qa.debian.org/developer.php?login=lucas@debian.org|Lucas Nussbaum]]

A very basic introduction of [[DebianPkg:equivs]] to create :
  * an [[/Minimal|empty package]] or a [[/Trivial|package with some files]]
  * a [[CreateDummyPackage|dummy package]]

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 installA very basic introduction to create an [[/Minimal|empty package]] or a package with [[/Trivial|just a pdf file]] ed 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.
Learn more about the [[DEX|DEX project]]
Line 53: Line 40:

== other informations ==

=== Advanced Packaging Procedures ===
== Advanced Packaging Procedures ==
 * [[CreateDummyPackage|create a dummy package]]
Line 67: Line 52:
 * [[Python/Packaging]]
 * ConfigPackages

=== Useful pages ===
 * SoftwarePackaging
 * SponsorChecklist
 * SecurePbuilder
 * [[HowToPackageForDebian|how to package for Debian]]


== other informations ==
Line 70: Line 66:
 * https://wiki.ubuntu.com/MOTU/Packages/Packaging/Tips
Line 73: Line 68:

=== Useful pages ===
 * SoftwarePackaging
 * http://www.debian.org/devel/wnpp/prospective : requested packages, and packages being worked on.
 * [[http://people.connexer.com/~roberto/howtos/debcustomize|Debian Package Customization HOWTO]]
 
Line 78: Line 73:
 * [[Python/Packaging]]
Line 80: Line 74:
 * http://julien.danjou.info/article-apt-build.html
Line 82: Line 75:
 * http://www.debian.org/devel/wnpp/prospective : requested packages, and packages being worked on.
Line 84: Line 76:
 * ConfigPackages  * [[http://vcs-pkg.org/|VCSPackaging]]
 * Autobuilding non-free packages: http://article.gmane.org/gmane.linux.debian.devel.announce/997

 * AutomakeTransition
Line 87: Line 82:
 * EtchTransitionalPackages
 * HowToPackageForDebian
 * PackageCustomization

 * SecurePbuilder
 * SponsorChecklist
 * [[http://vcs-pkg.org/|VCSPackaging]]
 * AutomakeTransition
 * [[deb]] files
 * Autobuilding non-free packages: http://article.gmane.org/gmane.linux.debian.devel.announce/997

When you seriously think about packaging as new comer to Debian, please read the official documentation :


Why Packaging

Whether you want

  • to install some programs or data on several computers
  • the packaging system to take care of updates
  • to help the Debian project.

Introduction to Debian Packaging

If you need to create rapidly a package, use equivs :

  • read first how to create an ?empty package

  • then read how to create a ?package with some files

If you prefere to gain real knowledge about Debian packaging :

Debian Derivatives

Please note that some Debian Derivatives resources may be quite useful too.

Learn more about the DEX project

Advanced Packaging Procedures

Useful pages

other informations

See also:


CategoryPackageManagement CategoryPackaging