![]() | ![]() | Building Debian Packages with tla-buildpackage | ![]() |
---|
Welcome to tla-buildpackage, a system that integrates the Debian package build system with GNU Arch. There are two different programs that implement the Arch specification: larch and tla. The more modern and better supported is tla, so this system and manual focuses solely on it.
tla-buildpackage is designed to do this for you:
Ability to track changes to both upstream and Debian sources through time
Ability to retrieve any version of the sources from the archive, and build Debian binary and source packages from them.
Generated packages can be built and used by people that have neither tla nor tla-buildpackage installed.
Provide an alternative to systems like dbs and dpatch to help manage patches that Debian applies to packages.
Provide a way to ease collaboration between multiple Debian developers on a single package.
Provide a way to use the merging (update and replay) features of tla to help merge Debian changes into new versions of upstream packages.
Make it easy to try tla-buildpackage and switch back to normal systems if you don't like it.
tla-buildpackage has these features:
tbp-initarchive can completely configure tla and your working copy for you.
tbp-importdsc will import an entire Debian source package into your Arch archive, handling both upstream and Debian trees automatically.
tbp-importorig can import an upstream tar.gz or a directory into your archive with a single command.
tbp-buildpackage can use an existing orig.tar.gz, or can build you one from the Arch archive if necessary.
tbp-buildpackage ensures that Arch metadata that should not be in the orig.tar.gz or diff.gz does not show up there.
Tight integration with tla_load_dirs for intelligent handling and versioning of file renames upstream
Autosensing of information wherever possible from Debian changelogs, dsc files, and the tla environment.
tla-markdeb can be used to easily checkpoint development into tla.
Here is a high-level overview of the Debian development process using tla-buildpackage.
When you first start using tla-buildpackage, you'll run tbp-initarchive to set things up. Then, if you have some existing Debian packages, you'll import as much history as you like by using tbp-importdsc. Otherwise, to start a new package in tla-buildpackage, you'll use tbp-importorig to bring in the upstream sources and tag that to the Debian area.
As you work on your Debian sources, you'll use tla-buildpackage in place of debuild or dpkg-buildpackage (tla-buildpackage passes all its arguments to debuild for you). You can use standard tla commands, such as tla commit or tla logs, to commit changes and view history. When you have a final version of a Debian package, you'll upload it and run tbp-markdeb to record the version for future reference.
Debian's unstable distribution currently contains version 1.0 of tla. Version 1.1 is in development and has become stable, so many people are running 1.1 or Andrew Suffield's daily snapshots for Debian. tla 1.1 alters command-line syntax, generally making it more clear and less verbose.
As of version 0.9.3, tla-buildpackage is fully compatible with both versions of tla.
Since tla 1.0 is still the default in unstable, examples in this manual will refer to tla 1.0. However:
<<< Building Debian Packages with tla-buildpackage | Getting Started >>> |