HOW TO UNPACK A DEBIAN SOURCE PACKAGE
If you have `dpkg-source', you can use it to unpack any Debian source
package: put all the files in the same directory and type `dpkg-source
-x .dsc'. The remainder of this document explains how to
unpack Debian source packages on non-Debian systems, or on Debian
systems without the `dpkg-dev' package installed.
There are several kinds of Debian source packages, identified by the
Format: field in the .dsc file. If there is no Format: field, treat
it as "1.0".
"1.0" packages can be either native or non-native. Native packages
(where the Debian source is the upstream source) look like this:
hello_1.3.dsc
hello_1.3.tar.gz
To unpack this kind of package, just untar the .tar.gz file.
Non-native "1.0" packages look like this:
hello_1.3-11.dsc
hello_1.3-11.diff.gz
hello_1.3.orig.tar.gz - note the `.orig' part
1. untar P_V.orig.tar.gz.
2. rename the resulting P-V.orig directory to P-V. If some other
directory results, rename *it* to P-V.
3. mkdir P-V/debian.
4. apply the diff with patch -p0.
5. do `chmod +x P-V/debian/rules'
(where P is the package name and V the upstream version - `hello' and
`1.3' respectively in this example.)
"3.0 (native)" packages are the same as native "1.0" packages, except
that the source tarball may be compressed using methods other than
gzip.
"3.0 (quilt)" packages look like this:
hello_1.3-11.dsc
hello_1.3-11.debian.tar.gz
hello_1.3.orig.tar.gz
hello_1.3.orig-COMPONENT.tar.gz
(optional, for one or more values of COMPONENT)
The compressed files may be compressed using methods other than gzip.
To unpack this kind of package, you will need to install `quilt'
(http://savannah.nongnu.org/projects/quilt), then:
1. untar P_V.orig.tar.gz.
2. rename the resulting P-V.orig directory to P-V. If some other
directory results, rename *it* to P-V.
3. if there are any orig-COMPONENT tarballs, untar each of them to
P-V/COMPONENT.
4. remove P-V/debian if it exists.
5. change to the P-V directory.
6. untar P_V-R.debian.tar.gz; it will unpack to a `debian'
subdirectory.
7. run `QUILT_PATCHES=debian/patches quilt push -a'.
(where P is the package name, V the upstream version, and R the
Debian revision - `hello', `1.3', and `11' in this example.)
See the dpkg-source(1) manual page for full details of all formats,
including experimental ones.
-- Ian Jackson Sat, 31 Aug 1996
-- Colin Watson Sun, 17 Oct 2010