RREDTOOL(1) REPREPRO RREDTOOL(1)NAME
rredtool - merge or apply a very restricted subset of ed patches
SYNOPSIS
rredtool --help
rredtool [ options ] --merge patches...
rredtool [ options ] --patch file-to-patch patches...
rredtool directory newfile oldfile mode
DESCRIPTION
rredtool is a tool to handle a subset of ed patches in a safe way. It is especially targeted at ed patches as used in Packages.diff and
Sources.diff. Is also has a mode supposed to be called from reprepro as Index Hook to generate and update a Packages.diff/Index file.
MODI
One of the following has to be given, so that rredtool know that to do.
--version
Print the version of this tool (or rather the version of reprepro which it is coming with).
--help Print a short overview of the modi.
--patch
The first argument of rredtool is the file to patch, the other arguments are ed patches to apply on this one.
--merge
The arguments are treated as ed patches, which are merged into a single one.
--reprepro-hook (or no other mode flag)
Act as reprepro index hook to manage a Packages.diff/index file. That means it expects to get exactly 4 arguments and writes the
names of files to place into filedescriptor 3.
If neither --patch nor --merge is given, this mode is used, so you can just put
DebIndices: Packages Release . .gz /usr/bin/rredtool
into reprepro's conf/distributions file to have a Packages.diff directory generated. (Note that you have to generate an uncom-
pressed file (the single dot). You will need to have patch, gzip and gunzip available in your path.)
OPTIONS --debug
Print intermediate results or other details that might be interesting when trying to track down bugs in rredtool but not intresting
otherwise.
--max-patch-count=count
When generating a Packages.diff/Index file, put at most count patches in it (not counting possible apt workaround patches).
-o|--output
Not yet implemented.
ENVIRONMENT
TMPDIR, TEMPDIR
temporary files are created in $TEMPDIR if set, otherwise in $TMPDIR if set, otherwise in /tmp/.
REPORTING BUGS
Report bugs or wishlist requests the Debian BTS (e.g. by using reportbug reperepro) or directly to <brlink@debian.org>.
COPYRIGHT
Copyright (C) 2009 Bernhard R. Link
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU-
LAR PURPOSE.
reprepro 2009-11-12 RREDTOOL(1)
Check Out this Related Man Page
DBS-EDIT-PATCH(1) Debian Build System DBS-EDIT-PATCH(1)NAME
dbs-edit-patch - Edit a DBS patch
SYNOPSIS
dbs-edit-patch [options] patch
dbs-edit-patch -h|--help
DESCRIPTION
dbs-edit-patch is script to generate or modify patches for Debian source-packages in DBS format.
WARNING
dbs is deprecated, please switch to the `3.0 (quilt)' Debian source package format instead. See http://wiki.debian.org/Projects/Deb-
Src3.0#FAQ for a short guide how to do it.
OPTIONS -h, --help
Show summary of options.
-t dir, --tmpdir=dir
Directory for the temporary files, default is /tmp or if set $TMP.
-s dir, --sourcedir=dir
Top level directory of the debian-package source-tree, default is the present working directory.
-P dir, --sourcepatchdir=dir
Directory containing upstream patches.
-T dir, --sourcetardir=dir
Directory containing the upstream tarball.
-p level, --strip=level
Striplevel -p of patch (Option -p of diff(1)), accepted values are 0 and 1, default is 0.
ENVIRONMENT VARIABLES
TMP Sets the directory for the temporary files, can be overridden with -t dir.
debian/vars
dbs-edit-patch will automatically use variables defined in the optional debian/vars file.
When a file debian/vars.in exists and debian/vars either does not exist or is older than any of the following files: debian/vars.in,
debian/changelog, debian/rules or debian/control, then dbs-edit-patch will try updating the vars file by running the following command
make -f debian/rules -W debian/vars.in debian/vars
EXAMPLES
Edit the 021_debian patch of Heimdal:
~/heimdal-0.3d> dbs-edit-patch -t/tmp 021_debian
Extracting source heimdal-0.3d.tar.gz ... successful.
Applying patch 001_replay ... successful.
etc.
Copying heimdal-0.3d to heimdal-0.3d-old ... successful.
Applying patch 021_debian ... successful.
Edit files under /tmp/021_debian/heimdal-0.3d as required, then put a short description into /tmp/021_debian/patch-description if desired,
and finally execute /tmp/021_debian/dbs-update-patch to save the results.
Technical note: dbs-edit-patch extracts all patches before 021_debian into /tmp/021_debian/heimdal-0.3d, copies the result to
/tmp/021_debian/heimdal-0.3d-old, and applies the last patch 021_debian (if it exists). Also, it creates a shell script which will create
the diff between the old and new directories:
~/heimdal-0.3d> ls -la /tmp/021_debian
total 12
-rwxr-xr-x 1 bam users 112 Jan 31 13:31 dbs-update-patch*
-rw-r--r-- 1 bam users 0 Jan 31 13:31 patch-description
drwxr-xr-x 14 bam users 4096 Jan 31 13:31 heimdal-0.3d/
drwxr-xr-x 14 bam users 4096 Jan 31 13:31 heimdal-0.3d-old/
drwxr-xr-x 5 bam users 4096 Jan 31 13:31 .stampdir/
~/heimdal-0.3d> cat /tmp/021_debian/dbs-update-patch
#!/bin/sh -e
cd "/tmp/021_debian"
HOOK_DIR="/usr/src/heimdal/debian/dbs-hooks"
test -d "$HOOK_DIR" && run-parts "$HOOK_DIR" --arg update-patch-prediff
find -name "*.bak" -print0 | xargs -0 --no-run-if-empty rm
find -name "*~" -print0 | xargs -0 --no-run-if-empty rm
: > new_patch
test ! -e patch-description || cp patch-description new_patch
diff -ruN heimdal-0.3d-old heimdal-0.3d >> new_patch || test $? -eq 1
mv new_patch /usr/src/heimdal/debian/patches/021_debian
test -d "$HOOK_DIR" && run-parts "$HOOK_DIR" --arg update-patch-postdiff
SEE ALSO diff(1), dbs(7), /usr/share/doc/dbs/
AUTHOR
DBS was written by Adam Heath, modified by Ben Collins, modified and packaged for Debian by Brian May. This manpage was generated by
Andreas Metzler and modified by Robert Luberda.
Debian February 15th, 2011 DBS-EDIT-PATCH(1)