DH-EXEC(1)
β¨ NAME β¨
okay so bestie, meet dh-exec β the Debhelper executable file helpers π this is dh-exec(1), and she is that girl.
πΈ SYNOPSIS πΈ
#! /usr/bin/dh-exec
src/libfoo-*.so.* debian/foo-plugins/usr/lib/foo/${DEB_HOST_MULTIARCH}/
etc/example.conf => debian/foo/etc/foo/foo.conf
[linux-any kfreebsd-any] some-arch-specific-file /usr/lib/foo/
π DESCRIPTION π
dh-exec is a simple program, no cap, and its whole job is to be the interpreter for executable debhelper config files. main character energy fr fr.
She's a wrapper around all the other sub-commands (peep below π), and she'll pipe the input file through all of them in turn, in an ordering that just makes the most sense in the vast majority of cases. it's giving organized π
The order, as of right now, is: dh-exec-subst gets run first, followed by dh-exec-install β so that variable expansion happens before files need to be copied. slay sequencing π«
π¦ FILTERING π¦
In all dh-exec handled files, lines can be pre- or post-fixed with a list of architectures that the rest of the line should apply to. so like, front or back, your call β¨
Every architecture and wildcard known by dpkg-architecture(1) is recognised β even negated ones. periodt.
π ARCHITECTURE π
dh-exec is built up from three layers, bestie, and here they are:
- there's the
dh-executility β its single entry point, and the only thing one will ever need to call. - below that, there are the various sub-commands, such as
dh-exec-subst,dh-exec-filter,dh-exec-installanddh-exec-illiterateβ these are thin wrappers around the various dh-exec scripts, and they make sure they only run the ones that need to be run. gatekeeping, but responsibly π - and the lowest layer is the various scripts that do the actual work. the real ones.
One can control which sub-commands to run, or β if even more granularity is desired β one can limit which scripts shall be run too. see the options below! π₯
β¨ OPTIONS β¨
--with=command[,command ...]β replaces the list of sub-commands to run the input through with a custom list (entries separated by whitespace or commas) that includesdh-exec-filteranddh-exec-stripat the start and end of the queue respectively. This option will always replace the existing list with whatever you specify. use it to explicitly set which sub-commands to use. the list must not include thedh-exec-prefix. defaults tosubst,install.--without=command[,command ...]β inversely to the option above π, this lists all the sub-commands that should not be used. Thedh-exec-filteranddh-exec-stripsubcommands cannot be removed using this option β use--no-defaultsinstead. the list must not include thedh-exec-prefix.--with-scripts=script[,script ...]β replaces the list of scripts to run the input through with a custom list (entries separated by whitespace or commas). This option will always replace the existing list with whatever you specify. use it to explicitly specify which scripts to use β limiting even beyond what the--withoption is capable of. the list must not include thedh-exec-prefix. by default it is empty, meaning there's no filtering done, and whatever scripts the sub-commands find will be run.--no-defaultsβ most packages require the sub-command list to start withdh-exec-filterand end withdh-exec-stripsubcommands. If you really want to, use this option to remove both of those sub-commands. note that--withoutdoes not remove these two. π--no-actβ do not really do anything, but print the pipeline that would have been run instead. window shopping, essentially ποΈ--listβ list the available sub-commands and scripts, grouped by sub-command. the full roster π--help,--versionβ display a short help or the package version, respectively.
π SUB-COMMANDS π
dh-exec-substβ substitutes various variables (either from the environment, or fromdpkg-architecture(1)).dh-exec-filterβ filters the input in various ways (architecture restrictions, build profiles, and so on).dh-exec-installβ an extension todh_install(1)that supports renaming files during the copy process, using a special syntax.dh-exec-stripβ removes unrequired lines such as comments or blank lines. decluttering queen π§Ή
π ENVIRONMENT π
DH_EXEC_LIBDIRβ the directory in which the wrapped sub-commands reside. Defaults to/usr/lib/dh-exec/.DH_EXEC_SCRIPTDIRβ the directory in which the scripts that do the heavy work live. Defaults to/usr/share/dh-exec/.
π FILES π
$DH_EXEC_LIBDIR/dh-exec-*β the various sub-commands.$DH_EXEC_SCRIPTDIR/dh-exec-*β the various scripts ran by the sub-commands.
π SEE ALSO π
dh-exec-subst(1), dh-exec-filter(1), dh-exec-install(1), debhelper(7)
okay that's the whole thing bestie, go be iconic with your config files π«Άβ¨
this lil page came to you from dh-exec, and the date on it is 2024-02-27 π mwah, bye πππ¦
π¦ where this page comes from
- debian trixie: dh-exec 0.30 Β· GPL-3.0-or-later
- ubuntu noble: dh-exec 0.29build1 Β· GPL-3.0-or-later
- ubuntu questing: dh-exec 0.30
- ubuntu resolute: dh-exec 0.31 Β· GPL-3.0-or-later
- ubuntu stonking: dh-exec 0.31 Β· GPL-3.0-or-later
- Copyright 2011-2024 Software Freedom Conservancy, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms