DESCRIPTION

The devscripts package provides a collection of scripts which may be of use to Debian developers and others wishing to build Debian packages. For a summary of the available scripts, please see the file /usr/share/doc/devscripts/README.gz, and for full details, please see the individual manpages. They are contributed by multiple developers; for details of the authors, please see the code or manpages.

Also, the directory /usr/share/doc/devscripts/examples contains examples of procmail and exim scripts for sorting mail arriving to Debian mailing lists.

ENVIRONMENT

Several scripts of the devscripts suite use the following environment variables. Check the man pages of individual scripts for more details on how the variables are used.

\s-1DEBEMAIL\s0

Email of the person acting on a given Debian package via devscripts.

\s-1DEBFULLNAME\s0

Full name (first + family) of the person acting on a given Debian package via devscripts.

SCRIPTS

Here is the complete list of available devscripts. See their man pages for additional documentation.

annotate-output(1)

run a command and prepend time and stream (O for stdout, E for stderr) for every line of output

archpath(1)

print tla/Bazaar package names [tla | bazaar]

bts(1)

a command-line tool for manipulating the BTS [www-browser, libauthen-sasl-perl, libnet-smtp-ssl-perl, libsoap-lite-perl, libwww-perl, bsd-mailx | mailx]

build-rdeps(1)

search for all packages that build-depend on a given package [dctrl-tools]

chdist(1)

tool to easily play with several distributions [dctrl-tools]

checkbashisms(1)

check whether a /bin/sh script contains any common bash-specific contructs

cowpoke(1)

upload a Debian source package to a cowbuilder host and build it, optionally also signing and uploading the result to an incoming queue [ssh-client]

cvs-debi, cvs-debc(1)

wrappers around debi and debc respectively (see below) which allow them to be called from the CVS working directory [cvs-buildpackage]

cvs-debrelease(1)

wrapper around debrelease which allows it to be called from the CVS working directory [cvs-buildpackage, dupload | dput, ssh-client]

cvs-debuild(1)

wrapper for cvs-buildpackage to use debuild as its package building program [cvs-buildpackage, fakeroot, lintian, gnupg]

dcmd(1)

run a given command replacing the name of a .changes or .dsc file with each of the files referenced therein

dcontrol(1)

remotely query package and source control files for all Debian distributions [liburl-perl, libwww-perl]

dd-list(1)

given a list of packages, pretty-print it ordered by maintainer

debc(1)

display the contents of just-built .debs

debchange/dch(1)

automagically add entries to debian/changelog files [libdistro-info-perl, libparse-debcontrol-perl, libsoap-lite-perl]

debcheckout(1)

checkout the development repository of a Debian package

debclean(1)

clean a Debian source tree [fakeroot]

debcommit(1)

commit changes to cvs, darcs, svn, svk, tla, bzr, git, or hg, basing commit message on changelog [cvs | darcs | subversion | svk | tla | bzr | git-core | mercurial, libtimedate-perl]

debdiff(1)

compare two versions of a Debian package to check for added and removed files. Use the debbindiff package for deep comparisons. [wdiff, patchutils]

debi(1)

install a just-built package

debpkg(1)

dpkg wrapper to be able to manage/test packages without su

debrelease(1)

wrapper around dupload or dput [dupload | dput, ssh-client]

debsign, debrsign(1)

sign a .changes/.dsc pair without needing any of the rest of the package to be present; can sign the pair remotely or fetch the pair from a remote machine for signing [gnupg, debian-keyring, ssh-client]

debsnap(1)

grab packages from http://snapshot.debian.org [libwww-perl, libjson-perl]

debuild(1)

wrapper to build a package without having to su or worry about how to invoke dpkg to build using fakeroot. Also deals with common environment problems, umask etc. [fakeroot, lintian, gnupg]

deb-reversion(1)

increase a binary package version number and repacks the package, useful for porters and the like

dep3changelog(1)

generate a changelog entry from a DEP3-style patch header

desktop2menu(1)

given a freedesktop.org desktop file, generate a skeleton for a menu file [libfile-desktopentry-perl]

dget(1)

download Debian source and binary packages [wget | curl]

diff2patches(1)

extract patches from a .diff.gz file placing them under debian/ or, if present, debian/patches [patchutils]

dpkg-depcheck, dpkg-genbuilddeps(1)

determine the packages used during the build of a Debian package; useful for determining the Build-Depends control field needed [build-essential, strace]

dscextract(1)

extract a single file from a Debian source package [patchutils]

dscverify(1)

verify the integrity of a Debian package from the .changes or .dsc files [gnupg, debian-keyring, libdigest-md5-perl]

edit-patch(1)

add/edit a patch for a source package and commit the changes [quilt | dpatch | cdbs]

getbuildlog(1)

download package build logs from Debian auto-builders [wget]

grep-excuses(1)

grep the update_excuses.html file for your packages [libterm-size-perl, wget, w3m]

licensecheck(1)

attempt to determine the license of source files

list-unreleased(1)

search for unreleased packages

manpage-alert(1)

locate binaries without corresponding manpages [man-db]

mass-bug(1)

mass-file bug reports [bsd-mailx | mailx]

mergechanges(1)

merge .changes files from the same release but built on different architectures

mk-build-deps(1)

given a package name and/or control file, generate a binary package which may be installed to satisfy the build-dependencies of the given package [equivs]

mk-origtargz(1)

rename upstream tarball, optionally changing the compression and removing unwanted files [unzip, xz-utils, file]

namecheck(1)

check project names are not already taken

nmudiff(1)

mail a diff of the current package against the previous version to the BTS to assist in tracking NMUs [patchutils, mutt]

origtargz(1)

fetch the orig tarball of a Debian package from various sources, and unpack it

plotchangelog(1)

view a nice plot of the data in a changelog file [libtimedate-perl, gnuplot]

pts-subscribe(1)

subscribe to the PTS for a limited period of time [bsd-mailx | mailx, at]

rc-alert(1)

list installed packages which have release-critical bugs [wget | curl]

rmadison(1)

remotely query the Debian archive database about packages [liburi-perl, wget | curl]

sadt(1)

run DEP-8 tests [python3-debian]

suspicious-source(1)

output a list of files which are not common source files [python3-magic]

svnpath(1)

print Subversion repository paths [subversion]

tagpending(1)

run from a Debian source tree and tag bugs that are to be closed in the latest changelog as pending [libsoap-lite-perl]

transition-check(1)

check a list of source packages for involvement in transitions for which uploads to unstable are currently blocked [libwww-perl, libyaml-syck-perl]

uscan(1)

scan upstream sites for new releases of packages [gpgv, gnupg, liblwp-protocol-https-perl, libwww-perl, unzip, xz-utils, file]

uupdate(1)

integrate upstream changes into a source package [patch]

what-patch(1)

determine what patch system, if any, a source package is using [patchutils]

whodepends(1)

check which maintainers' packages depend on a package

who-uploads(1)

determine the most recent uploaders of a package to the Debian archive [gnupg, debian-keyring, debian-maintainers, wget]

wnpp-alert(1)

list installed packages which are orphaned or up for adoption [wget | curl]

wnpp-check(1)

check whether there is an open request for packaging or intention to package bug for a package [wget | curl]

who-permits-upload(1)

Retrieve information about Debian Maintainer access control lists [gnupg, libencode-locale-perl, libparse-debcontrol-perl, libwww-perl, debian-keyring]

wrap-and-sort(1)

wrap long lines and sort items in packaging files [python3-debian]