1DEVSCRIPTS(1)               General Commands Manual              DEVSCRIPTS(1)
2
3
4

NAME

6       devscripts - scripts to ease the lives of Debian developers
7

DESCRIPTION

9       The devscripts package provides a collection of scripts which may be of
10       use to Debian developers and others wishing to build  Debian  packages.
11       For   a   summary  of  the  available  scripts,  please  see  the  file
12       /usr/share/doc/devscripts/README.gz, and for full details,  please  see
13       the  individual manpages.  They are contributed by multiple developers;
14       for details of the authors, please see the code or manpages.
15
16       Also, the directory /usr/share/doc/devscripts/examples  contains  exam‐
17       ples  of  procmail and exim scripts for sorting mail arriving to Debian
18       mailing lists.
19

ENVIRONMENT

21       Several scripts of the devscripts suite use the  following  environment
22       variables.  Check  the man pages of individual scripts for more details
23       on how the variables are used.
24
25       DEBEMAIL
26           Email  of  the  person  acting  on  a  given  Debian  package   via
27           devscripts.
28
29       DEBFULLNAME
30           Full  name  (first + family) of the person acting on a given Debian
31           package via devscripts.
32

SCRIPTS

34       Here is the complete list of available devscripts. See their man  pages
35       for additional documentation.
36
37       annotate-output(1)
38              run  a  command and prepend time and stream (O for stdout, E for
39              stderr) for every line of output.
40
41       archpath(1)
42              Prints arch (tla/Bazaar) package names. Also supports  calculat‐
43              ing the package names for other branches. [tla | bazaar]
44
45       bts(1) A  command-line  tool for accessing the Debian Bug Tracking Sys‐
46              tem, both to send mails to control@bts.debian.org and to  access
47              the  web  pages  and  SOAP  interface  of the BTS. [www-browser,
48              libauthen-sasl-perl,    libnet-smtps-perl,    libsoap-lite-perl,
49              liburi-perl, libwww-perl, bsd-mailx | mailx]
50
51       build-rdeps(1)
52              Searches  for all packages that build-depend on a given package.
53              [dctrl-tools, dose-extra, libdpkg-perl]
54
55       chdist(1)
56              tool to easily play with several distributions. [dctrl-tools]
57
58       checkbashisms(1)
59              check whether a /bin/sh script contains any common bash-specific
60              constructs.
61
62       cowpoke(1)
63              upload  a  Debian  source package to a cowbuilder host and build
64              it, optionally also signing  and  uploading  the  result  to  an
65              incoming queue. [ssh-client]
66
67       cvs-debi, cvs-debc(1)
68              wrappers  around  debi  and  debc respectively (see below) which
69              allow them to be called from the CVS  working  directory.  [cvs-
70              buildpackage]
71
72       cvs-debrelease(1)
73              wrapper  around debrelease which allows it to be called from the
74              CVS working directory. [cvs-buildpackage, dupload |  dput,  ssh-
75              client]
76
77       cvs-debuild(1)
78              A  wrapper  for  cvs-buildpackage  to use debuild as its package
79              building program. [cvs-buildpackage,  fakeroot,  lintian,  gnupg
80              |gnupg2]
81
82       dcmd(1)
83              run  a  given  command  replacing the name of a .changes or .dsc
84              file with each of the files referenced therein. *
85
86       dcontrol(1)
87              remotely query package and source control files for  all  Debian
88              distributions. [liburl-perl, libwww-perl]
89
90       dd-list(1)
91              given a list of packages, pretty-print it ordered by maintainer.
92              *
93
94       debc(1)
95              List contents of current package.  Do this  after  a  successful
96              "debuild" to see if the package looks all right.
97
98       debchange (abbreviation dch)(1)
99              Modifies  debian/changelog  and manages version numbers for you.
100              It will either increment the version number or add an entry  for
101              the  current  version,  depending  upon the options given to it.
102              [libdistro-info-perl, libsoap-lite-perl]*
103
104       debcheckout(1)
105              checkout the development repository of a Debian package. *
106
107       debclean(1)
108              Clean a Debian source tree.   Debclean  will  clean  all  Debian
109              source trees below the current directory, and if requested, also
110              remove all files that were generated  from  these  source  trees
111              (that  is  .deb,  .dsc  and  .changes  files).  It will keep the
112              .diffs and original files, though,  so  that  the  binaries  and
113              other files can be rebuilt if necessary. [fakeroot]*
114
115       debcommit(1)
116              Commits  changes  to cvs, darcs, svn, svk, tla, bzr, git, or hg,
117              using new entries in debian/changelog  as  the  commit  message.
118              Also  supports  tagging  Debian package releases. [cvs | darcs |
119              subversion | svk | tla | bzr | git-core  |  mercurial,  libtime‐
120              date-perl]
121
122       debdiff(1)
123              A  program  which  examines two .deb files or two .changes files
124              and reports on any difference found in their file lists.  Useful
125              for  ensuring that no files were inadvertently lost between ver‐
126              sions.  Can also examine  two  .dsc  files  and  report  on  the
127              changes between source versions. For a deeper comparison one can
128              use the diffoscope package. [wdiff, patchutils]*
129
130       debdiff-apply(1)
131              Apply unified diffs of two Debian source packages, such as those
132              generated  by  debdiff,  to  a target Debian source package. Any
133              changes to debian/changelog are dealt with specially,  to  avoid
134              the  conflicts  that  changelog  diffs  typically  produce  when
135              applied naively. May be used to check  that  old  patches  still
136              apply  to  newer  versions  of  those packages. [python3-debian,
137              python3-unidiff, quilt]
138
139       debi(1)
140              Installs the current package by using  the  setuid  root  debpkg
141              script described below.  It assumes that the current package has
142              just been built (for example by debuild), and the .deb lives  in
143              the  parent  directory,  and will effectively run dpkg -i on the
144              .deb.  The ability to install the package with a very short com‐
145              mand is very useful when troubleshooting packages.
146
147       debpkg(1)
148              A  wrapper  for dpkg used by debi to allow convenient testing of
149              packages.  For debpkg to work, it needs to be made setuid  root,
150              and  this  needs  to  be  performed by the sysadmin -- it is not
151              installed as setuid root by default.  (Note that being  able  to
152              run  a setuid root debpkg is effectively the same as having root
153              access to the system, so this  should  be  done  with  caution.)
154              Having debpkg as a wrapper for dpkg can be a Good Thing (TM), as
155              it decreases the potential for damage by accidental wrong use of
156              commands in superuser mode (e.g., an inadvertent rm -rf * in the
157              wrong directory is disastrous as many can attest to).
158
159       debrelease(1)
160              A wrapper around dupload or dput which figures out which version
161              to  upload,  and  then calls dupload or dput to actually perform
162              the upload. [dupload | dput, ssh-client]
163
164       debrepro(1)
165              A script that tests reproducibility of Debian packages. It  will
166              build  a  given  source directory twice, with a set of variation
167              between the first and second build, and compare the binary pack‐
168              ages produced. If diffoscope is installed, it is used to compare
169              non-matching binaries. If disorderfs is installed,  it  is  used
170              during the build to inject non-determinism in filesystem listing
171              operations. [faketime, diffoscope, disorderfs]
172
173       debrsign(1)
174              This transfers a .changes/.dsc pair  to  a  remote  machine  for
175              signing, and runs debsign on the remote machine over an SSH con‐
176              nection. [gnupg | gnupg2, debian-keyring, ssh-client]
177
178       debsign(1)
179              Use GNU Privacy Guard to sign the  changes  (and  possibly  dsc)
180              files created by running dpkg-buildpackage with no-sign options.
181              Useful if you are building a package on  a  remote  machine  and
182              wish to sign it on a local one.  This script is capable of auto‐
183              matically downloading the .changes and .dsc files from a  remote
184              machine. [gnupg |gnupg2, debian-keyring, ssh-client]*
185
186       debsnap(1)
187              grab  packages  from  https://snapshot.debian.org  [libwww-perl,
188              libjson-perl]
189
190       debuild(1)
191              A wrapper for building a package  (i.e.,  dpkg-buildpackage)  to
192              avoid  problems  with  insufficient  permissions and wrong paths
193              etc. Debuild will set up the proper environment for  building  a
194              package.  Debuild  will  use  the  fakeroot program to build the
195              package by default, but can be instructed to use any other gain-
196              root command, or can even be installed setuid root.  Debuild can
197              also be used to run various of the debian/rules operations  with
198              the  same  root-gaining procedure. Debuild will also run lintian
199              to check that the package does not have any major policy  viola‐
200              tions. [fakeroot, lintian, gnupg | gnupg2]*
201
202       deb-reversion(1)
203              increases  a binary package version number and repacks the pack‐
204              age, useful for porters and the like.
205
206       dep3changelog(1)
207              generate a changelog entry from a DEP3-style patch header.
208
209       desktop2menu(1)
210              given a freedesktop.org desktop file, generate a skeleton for  a
211              menu file. [libfile-desktopentry-perl]
212
213       dget(1)
214              Downloads Debian source and binary packages. Point at a .changes
215              or .dsc to download all references files. Specify a package name
216              to download it from the configured apt repository. [wget | curl]
217
218       diff2patches(1)
219              extracts patches from a .diff.gz file placing them under debian/
220              or, if present, debian/patches. [patchutils]
221
222       dpkg-depcheck, dpkg-genbuilddeps(1)
223              Runs a specified command (such as debian/rules build)  or  dpkg-
224              buildpackage,  respectively, to determine the packages used dur‐
225              ing the build process.  This information  can  be  helpful  when
226              trying  to  determine  the  packages needed in the Build-Depends
227              etc. lines in the debian/control file. [build-essential, strace]
228
229       dscextract(1)
230              extract a single file from a Debian source package. [patchutils]
231
232       dscverify(1)
233              check the signature and MD5 sums of a dsc file against the  most
234              current  Debian keyring on your system. [gnupg | gnupg2, debian-
235              keyring]
236
237       edit-patch(1)
238              add/edit a patch for a source package and  commit  the  changes.
239              [quilt | dpatch | cdbs]
240
241       getbuildlog(1)
242              download package build logs from Debian auto-builders. [wget]
243
244       git-deborig(1)
245              try  to  produce Debian orig.tar using git-archive(1). [libdpkg-
246              perl, libgit-wrapper-perl, liblist-compare-perl, libstring-shel‐
247              lquote-perl, libtry-tiny-perl]
248
249       grep-excuses(1)
250              grep  britney's  excuses  to  find out what is happening to your
251              packages. [libdbd-pg-perl, libterm-size-perl, libyaml-syck-perl,
252              wget, w3m]
253
254       hardening-check(1)
255              report the hardening characteristics of a set of binaries.
256
257       list-unreleased(1)
258              searches for packages marked UNRELEASED in their changelog.
259
260       ltnu (Long Time No Upload)(1)
261              List all uploads of packages by the given uploader or maintainer
262              and display them ordered by the last  upload  of  that  package,
263              oldest uploads first.
264
265       manpage-alert(1)
266              locate binaries without corresponding manpages. [man-db]
267
268       mass-bug(1)
269              mass-file bug reports. [bsd-mailx | mailx]
270
271       mergechanges(1)
272              merge  .changes files from the same release but built on differ‐
273              ent architectures.
274
275       mk-build-deps(1)
276              Given a package name and/or  control  file,  generate  a  binary
277              package which may be installed to satisfy the build-dependencies
278              of the given package. [equivs]
279
280       mk-origtargz(1)
281              Rename upstream tarball, optionally changing the compression and
282              removing  unwanted  files. [libfile-which-perl, unzip, xz-utils,
283              file]
284
285       namecheck(1)
286              Check project names are not already taken.
287
288       nmudiff(1)
289              prepare a diff of this version (presumably an  NMU  against  the
290              previously  released  version  (as per the changelog) and submit
291              the diff to the BTS. [patchutils, mutt]
292
293       origtargz(1)
294              fetch the orig tarball of a Debian package from various sources,
295              and unpack it.
296
297       plotchangelog(1)
298              display  information from a changelog graphically using gnuplot.
299              [libtimedate-perl, gnuplot]
300
301       pts-subscribe(1)
302              subscribe to the PTS (Package Tracking  System)  for  a  limited
303              period of time. [bsd-mailx | mailx, at]
304
305       rc-alert(1)
306              list  installed packages which have release-critical bugs. [wget
307              | curl]
308
309       rmadison(1)
310              remotely query  the  Debian  archive  database  about  packages.
311              [liburi-perl, wget | curl]
312
313       sadt(1)
314              run DEP-8 tests. [python3-debian]
315
316       salsa(1)
317              manipulates  salsa.debian.org repositories and users [libgitlab-
318              api-v4-perl]
319
320       suspicious-source(1)
321              output a list of  files  which  are  not  common  source  files.
322              [python3-magic]
323
324       svnpath(1)
325              Prints  the  path  to  the Subversion repository of a Subversion
326              checkout. Also supports calculating the paths for  branches  and
327              tags  in  a repository independent fashion. Used by debcommit to
328              generate svn tags. [subversion]
329
330       tagpending(1)
331              runs from a Debian source tree and tags  bugs  that  are  to  be
332              closed in the latest changelog as pending. [libsoap-lite-perl]
333
334       transition-check(1)
335              Check  a  list of source packages for involvement in transitions
336              for which uploads to unstable are  currently  blocked.  [libwww-
337              perl, libyaml-syck-perl]
338
339       uscan(1)
340              Automatically scan for and download upstream updates.  Uscan can
341              also call a program such as uupdate to  attempt  to  update  the
342              Debianised  version based on the new update.  Whilst uscan could
343              be used to release the  updated  version  automatically,  it  is
344              probably better not to without testing it first.  Uscan can also
345              verify detached OpenPGP signatures if upstream's signing key  is
346              known.  [file, gpgv | gpgv2, gnupg | gnupg2, libfile-which-perl,
347              liblwp-protocol-https-perl, libmoo-perl, libwww-perl, unzip, xz-
348              utils]*
349
350       uupdate(1)
351              Update  the  package with an archive or patches from an upstream
352              author.  This will be of help if you have to update  your  pack‐
353              age.   It will try to apply the latest diffs to your package and
354              tell you how successful it was. [patch]
355
356       what-patch(1)
357              determine what patch system, if any, a source package is  using.
358              [patchutils]
359
360       whodepends(1)
361              check which maintainers' packages depend on a package.
362
363       who-permits-upload(1)
364              Retrieve  information  about  Debian  Maintainer  access control
365              lists.  [gnupg  |  gnupg2,  libencode-locale-perl,  libwww-perl,
366              debian-keyring]
367
368       who-uploads(1)
369              determine  the  most recent uploaders of a package to the Debian
370              archive. [gnupg |  gnupg2,  debian-keyring,  debian-maintainers,
371              wget]
372
373       wnpp-alert(1)
374              list  installed  packages which are orphaned or up for adoption.
375              [wget | curl]
376
377       wnpp-check(1)
378              check whether there is an open request for packaging  or  inten‐
379              tion to package bug for a package. [wget | curl]
380
381       wrap-and-sort(1)
382              wrap   long   lines   and   sort   items   in  packaging  files.
383              [python3-debian]
384
385
386
387DEBIAN                         Debian Utilities                  DEVSCRIPTS(1)
Impressum