Commit | Line | Data |
---|---|---|
accb1901 TG |
1 | ------------------------------------------------------ |
2 | Quick Guide To Patching This Package For The Impatient | |
3 | ------------------------------------------------------ | |
4 | ||
5 | 1. Make sure you have quilt installed | |
6 | 2. Unpack the package as usual with "dpkg-source -x" | |
7 | 3. Run the "patch" target in debian/rules | |
8 | 4. Create a new patch with "quilt new" (see quilt(1)) | |
9 | 5. Edit all the files you want to include in the patch with "quilt edit" | |
10 | (see quilt(1)). | |
11 | 6. Write the patch with "quilt refresh" (see quilt(1)) | |
12 | 7. Run the "clean" target in debian/rules | |
13 | ||
14 | Alternatively, instead of using quilt directly, you can drop the patch in to | |
15 | debian/patches and add the name of the patch to debian/patches/series. | |
16 | ||
17 | ||
18 | The X Strike Force team maintains X packages in git repositories on | |
19 | git.debian.org in the pkg-xorg subdirectory. Most upstream packages | |
20 | are actually maintained in git repositories as well, so they often | |
21 | just need to be pulled into git.debian.org in a "upstream-*" branch. | |
22 | ||
23 | The .orig.tar.gz is upstream's mesa tarball. | |
24 | ||
25 | While building from git, dpkg-source can complain about symlinks vs. | |
26 | normal files mismatches. To work around this issue, before uploading, | |
27 | and without committing: | |
28 | ||
29 | find -type l | while read dest; do src=$(readlink -f $dest); rm $dest; cp $src $dest; done | |
30 | ||
31 | The Debian packaging is added by creating the "debian-*" git branch | |
32 | which contains the aforementioned "upstream-*" branch plus the debian/ | |
33 | repository files. | |
34 | When a patch has to be applied to the Debian package, two solutions | |
35 | are involved: | |
36 | * If the patch is available in one of the upstream branches, it | |
37 | may be git'cherry-picked into the Debian repository. In this | |
38 | case, it appears directly in the .diff.gz. | |
39 | * Otherwise, the patch is added to debian/patches/ which is managed | |
40 | with quilt as documented in /usr/share/doc/quilt/README.source. | |
41 | Thus, the patching system requires a build dependency on quilt. | |
42 | ||
43 | Updating debian/upstream/signing-key.asc with new keys requires the following steps: | |
44 | * fetch the key: | |
45 | gpg [--keyserver $server] --recv-keys $keyid | |
46 | * export it to the file: | |
47 | gpg --export-options export-minimal --export -a $keyid >> debian/upstream/signing-key.asc |