Provided by: pk4_5_amd64
pk4 - make available the Debian source package producing the specified package
pk4 [options] package...
pk4 resolves the specified argument(s) as either: 1. the name of a Debian binary package, and selects its Debian source package. 2. the name of a Debian source package, and selects it. 3. or a file path, and selects the Debian source package of the owning package. The source package version is either the installed version (if any) or the installation candidate, as per apt-cache policy. Then, pk4 downloads the entire selected source package (every file referenced by — and including — its .dsc file) and prints the output directory path.
-allow_unauthenticated Whether to allow unauthenticated source packages, i.e. disable signature checking. -bin Restrict search to binary packages only. -complete Whether to return shell completions. Should usually be set by shell completion functions only. -dest string Directory in which to store source packages (default ~/.cache/pk4). -file Interpret the argument as a file name and operate on the package providing the file. -resolve_only Resolve the provided arguments to source package and source package version, then print them to stdout in %s\t%s\n format and exit. -shell string Which shell to start in the output directory after downloading the source (default $SHELL) -src Restrict search to source packages only. -verbose Whether to print messages to stderr. -version string Use the specified source package version (default: installed package version, or latest known if not installed).
# Avail the current Linux kernel sources: pk4 -src linux # Avail the sources which produced Debian binary package libbz2-1.0 pk4 libbz2-1.0 # Avail the sources of whichever package currently provides vi: pk4 -file $(which vi) # Fetch the i3 source, apply a bugfix, rebuild and replace installed packages: pk4 i3 patch -p1 < /tmp/myfix.patch pk4-replace # Avail all debhelper build system implementations: pk4 -allow_unauthenticated $(grep '^dh-*' /var/cache/pk4/completion.both.txt) # Grep through their sources: grep -r option ~/.cache/pk4/dh-*
The following attributes can be configured in ~/.config/pk4/pk4.deb822: Disk-Usage-Limit bytes Example: Disk-Usage-Limit: 2GiB
The following hooks can be configured: after-download after-download hooks are run after the package was successfully downloaded. Examples: # Automatically create a git repository for each package: mkdir -p ~/.config/pk4/hooks-enabled/after-download/ ln -s /usr/share/pk4/hooks-available/after-download/git-init \ ~/.config/pk4/hooks-enabled/after-download/ unpack unpack hooks replace the unpack phase: as soon as one or more unpack hooks are found, pk4 will run them instead of running dpkg-source -x. Examples: # Unpack source into a new git-buildpackage repository: apt install git-buildpackage mkdir -p ~/.config/pk4/hooks-enabled/unpack/ ln -s /usr/share/pk4/hooks-available/unpack/gbp \ ~/.config/pk4/hooks-enabled/unpack/
pk4-generate-index(1) (Re-)generate index files for pk4 pk4-replace(1) build sources and replace currently installed packages
Michael Stapelberg <stapelberg at debian.org>