DPKG-DEPCHECK(1)
π DPKG-DEPCHECK π
okay bestie, so this is dpkg-depcheck, a Debian manual page, and it's literally about figuring out which packages you actually touched when you ran a thing. no cap, it's giving detective energy πβ¨
β¨ NAME β¨
dpkg-depcheck β determine packages used to execute a command
πΈ SYNOPSIS πΈ
dpkg-depcheck [options] command
π¦ DESCRIPTION π¦
so basically, this program runs the command you give it under strace, and then it figures out and outputs the packages that got used in the process. like, it's watching every move your command makes and going "hmm, that file belongs to this package, noted π".
and the list it spits out? you can trim it in all sorts of ways, which are described down in the options. a really good example would be:
dpkg-depcheck -b debian/rules build
which gives you a genuinely solid first approximation of the Build-Depends line your Debian package needs. iconic behaviour honestly π
but lowkey, heads up: this does not give you any direct information about the versions required, or about architecture-specific packages. it's a vibe check, not a full dependency resolution. π
π OPTIONS π
-a,--allβ report all the packages used to run command. this is the default behaviour, so it's the main character of the options. but if you use it together with-b,-dor-m, it gives you extra info about those packages that those options skipped. π«Ά-b,--build-dependsβ do not report anybuild-essentialor essential packages used, nor any of their dependencies (direct or indirect, we're not playing favourites).-d,--ignore-dev-depsβ do not show packages used that are direct dependencies of the-devpackages that got used. btw this implies-b.-m,--min-depsβ output a minimal set of packages needed, taking direct dependencies into account. using-mimplies-d, and it also implies-b. it's the full combo meal π-C,--C-localeβ run command with the C locale.--no-C-localeβ don't change the locale when running command. cancels out the vibe.-l,--list-filesβ also report the list of files used in each package.--no-list-filesβ do not report the files used in each package. this cancels a-loption, so it's the anti--l.-o,--output=FILEβ output the package diagnostics to FILE instead ofstdout.-O,--strace-output=FILEβ write the strace output to FILE when tracing command, instead of using a temporary file.-I,--strace-input=FILEβ get the strace output from FILE instead of tracing command. β οΈ important: strace must have been run with the-f -qoptions for this to work. no-f -q, no deal.-f,--features=LISTβ enable or disable features given in the comma-separated LIST, like this: a feature is enabled with+featureor justfeature, and disabled with-feature. the currently recognised features are:warn-localβ warn if files in/usr/localor/var/localare used. enabled by default.discard-check-versionβ discardsexecvewhen only a--versionargument is given to the program. this works around some configure scripts that check for binaries they don't actually use. enabled by default.trace-localβ also try to identify files which are accessed in/usr/localand/var/local. not usually very useful, since Debian does not place files in these directories. disabled by default.catch-alternativesβ warn about access to files controlled by the Debian alternatives mechanism. enabled by default.discard-sgml-catalogsβ discards access to SGML catalogs; some SGML tools read all the registered catalogs at startup. files matching the regexp/usr/share/sgml/.*\.catare recognised as catalogs. enabled by default.
--no-conf,--noconfβ do not read any configuration files. π¨ this can only be used as the first option given on the command-line, so don't be sneaky and put it second.-h,--helpβ display usage information and exit.-v,--versionβ display version and copyright information and exit.
π CONFIGURATION VARIABLES π
the two configuration files /etc/devscripts.conf and ~/.devscripts are sourced in that order to set configuration variables. command-line options can be used to override configuration file settings. environment variable settings are ignored for this purpose. the currently recognised variable is:
DPKG_DEPCHECK_OPTIONSβ these are options which are parsed before the command-line options. for example:
DPKG_DEPCHECK_OPTIONS="-b -f-catch-alternatives"
which passes these options to dpkg-depcheck before any command-line options get processed.
bestie, you are advised not to try tricky quoting, because of the vagaries of shell quoting! π the shell is not your friend here, fr fr.
π SEE ALSO π
dpkg(1), strace(1), devscripts.conf(5), update-alternatives(8)
π COPYING π
Copyright 2001 Bill Allombert <ballombe@debian.org>. Modifications copyright 2002,2003 Julian Gilbey <jdg@debian.org>.
dpkg-depcheck is free software, covered by the GNU General Public License, version 2 or (at your option) any later version, and you are welcome to change it and/or distribute copies of it under certain conditions.
and there is absolutely no warranty for dpkg-depcheck. like, zero. none. don't come for her. π
and that's the whole page, bestie!! π§ this was dpkg-depcheck from the DEBIAN manual, dated March 2002. go forth and trace your little heart out. slay, periodt. πβ¨πΈπ¦
π¦ where this page comes from
- debian bookworm: devscripts 2.23.4+deb12u2 Β· GPL-2.0-or-later
- debian trixie: devscripts 2.25.15+deb13u1 Β· GPL-2.0-or-later
- epel 10: devscripts 2.25.5-1.el10_1 Β· GPL-2.0-or-later
- epel 9: devscripts 2.25.5-1.el9 Β· GPL-2.0-or-later
- fedora 43: devscripts 2.25.19-2.fc43 Β· GPL-2.0-or-later
- fedora 43: devscripts 2.25.33-1.fc43 Β· GPL-2.0-or-later
- fedora 44: devscripts 2.26.5-1.fc44 Β· GPL-2.0-or-later
- opensuse-leap 16.0: devscripts 2.22.2-160000.2.2 Β· (Artistic-1.0 OR GPL-1.0-or-later) AND Artistic-2.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND GPL-3.0-only AND SUSE-Public-Domain AND ISC
- opensuse-leap 16.0: devscripts 2.22.2-160000.2.2 Β· (Artistic-1.0 OR GPL-1.0-or-later) AND Artistic-2.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND GPL-3.0-only AND SUSE-Public-Domain AND ISC
- opensuse-leap 16.0: devscripts 2.22.2-160000.2.2 Β· (Artistic-1.0 OR GPL-1.0-or-later) AND Artistic-2.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND GPL-3.0-only AND SUSE-Public-Domain AND ISC
- opensuse-leap 16.0: devscripts 2.22.2-160000.2.2 Β· (Artistic-1.0 OR GPL-1.0-or-later) AND Artistic-2.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND GPL-3.0-only AND SUSE-Public-Domain AND ISC
- ubuntu jammy: devscripts 2.22.1ubuntu1 Β· GPL-2.0-or-later
- ubuntu jammy: devscripts 2.22.1ubuntu1.2 Β· GPL-2.0-or-later
- ubuntu noble: devscripts 2.23.7 Β· GPL-2.0-or-later
- ubuntu noble: devscripts 2.23.7ubuntu0.2 Β· GPL-2.0-or-later
- ubuntu questing: devscripts 2.25.19ubuntu2
- ubuntu resolute: devscripts 2.26.7 Β· GPL-2.0-or-later
- ubuntu stonking: devscripts 2.26.11ubuntu1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms