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       dd-list(1)
87              given a list of packages, pretty-print it ordered by maintainer.
88              *
89
90       debc(1)
91              List  contents  of  current package.  Do this after a successful
92              "debuild" to see if the package looks all right.
93
94       debchange (abbreviation dch)(1)
95              Modifies debian/changelog and manages version numbers  for  you.
96              It  will either increment the version number or add an entry for
97              the current version, depending upon the  options  given  to  it.
98              [libdistro-info-perl, libsoap-lite-perl]*
99
100       debcheckout(1)
101              checkout the development repository of a Debian package. *
102
103       debclean(1)
104              Clean  a  Debian  source  tree.   Debclean will clean all Debian
105              source trees below the current directory, and if requested, also
106              remove  all  files  that  were generated from these source trees
107              (that is .deb, .dsc and  .changes  files).   It  will  keep  the
108              .diffs  and  original  files,  though,  so that the binaries and
109              other files can be rebuilt if necessary. [fakeroot]*
110
111       debcommit(1)
112              Commits changes to cvs, darcs, svn, svk, tla, bzr, git,  or  hg,
113              using  new  entries  in  debian/changelog as the commit message.
114              Also supports tagging Debian package releases. [cvs  |  darcs  |
115              subversion  |  svk  | tla | bzr | git-core | mercurial, libtime‐
116              date-perl]
117
118       debdiff(1)
119              A program which examines two .deb files or  two  .changes  files
120              and reports on any difference found in their file lists.  Useful
121              for ensuring that no files were inadvertently lost between  ver‐
122              sions.   Can  also  examine  two  .dsc  files  and report on the
123              changes between source versions. For a deeper comparison one can
124              use the diffoscope package. [wdiff, patchutils]*
125
126       debdiff-apply(1)
127              Apply unified diffs of two Debian source packages, such as those
128              generated by debdiff, to a target  Debian  source  package.  Any
129              changes  to  debian/changelog are dealt with specially, to avoid
130              the  conflicts  that  changelog  diffs  typically  produce  when
131              applied  naively.  May  be  used to check that old patches still
132              apply to newer  versions  of  those  packages.  [python3-debian,
133              python3-unidiff, quilt]
134
135       debi(1)
136              Installs  the  current  package  by using the setuid root debpkg
137              script described below.  It assumes that the current package has
138              just  been built (for example by debuild), and the .deb lives in
139              the parent directory, and will effectively run dpkg  -i  on  the
140              .deb.  The ability to install the package with a very short com‐
141              mand is very useful when troubleshooting packages.
142
143       debpkg(1)
144              A wrapper for dpkg used by debi to allow convenient  testing  of
145              packages.   For debpkg to work, it needs to be made setuid root,
146              and this needs to be performed by the  sysadmin  --  it  is  not
147              installed  as  setuid root by default.  (Note that being able to
148              run a setuid root debpkg is effectively the same as having  root
149              access  to  the  system,  so  this should be done with caution.)
150              Having debpkg as a wrapper for dpkg can be a Good Thing (TM), as
151              it decreases the potential for damage by accidental wrong use of
152              commands in superuser mode (e.g., an inadvertent rm -rf * in the
153              wrong directory is disastrous as many can attest to).
154
155       debrelease(1)
156              A wrapper around dupload or dput which figures out which version
157              to upload, and then calls dupload or dput  to  actually  perform
158              the upload. [dupload | dput, ssh-client]
159
160       debrepro(1)
161              A  script that tests reproducibility of Debian packages. It will
162              build a given source directory twice, with a  set  of  variation
163              between the first and second build, and compare the binary pack‐
164              ages produced. If diffoscope is installed, it is used to compare
165              non-matching  binaries.  If  disorderfs is installed, it is used
166              during the build to inject non-determinism in filesystem listing
167              operations. [faketime, diffoscope, disorderfs]
168
169       debrsign(1)
170              This  transfers  a  .changes/.dsc  pair  to a remote machine for
171              signing, and runs debsign on the remote machine over an SSH con‐
172              nection. [gnupg | gnupg2, debian-keyring, ssh-client]
173
174       debsign(1)
175              Use  GNU  Privacy  Guard  to sign the changes (and possibly dsc)
176              files created by running dpkg-buildpackage with no-sign options.
177              Useful  if  you  are  building a package on a remote machine and
178              wish to sign it on a local one.  This script is capable of auto‐
179              matically  downloading the .changes and .dsc files from a remote
180              machine. [gnupg |gnupg2, debian-keyring, ssh-client]*
181
182       debsnap(1)
183              grab  packages  from  https://snapshot.debian.org  [libwww-perl,
184              libjson-perl]
185
186       debuild(1)
187              A  wrapper  for  building a package (i.e., dpkg-buildpackage) to
188              avoid problems with insufficient  permissions  and  wrong  paths
189              etc.  Debuild  will set up the proper environment for building a
190              package. Debuild will use the  fakeroot  program  to  build  the
191              package by default, but can be instructed to use any other gain-
192              root command, or can even be installed setuid root.  Debuild can
193              also  be used to run various of the debian/rules operations with
194              the same root-gaining procedure. Debuild will also  run  lintian
195              to  check that the package does not have any major policy viola‐
196              tions. [fakeroot, lintian, gnupg | gnupg2]*
197
198       deb-reversion(1)
199              increases a binary package version number and repacks the  pack‐
200              age, useful for porters and the like.
201
202       deb-why-removed(1)
203              shows  the  reason a package was removed from the archive. [lib‐
204              dpkg-perl]
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