pk4(1)
make available the Debian source package producing the specified package
Description
pk4
NAME
pk4 - make available the Debian source package producing the specified package
SYNOPSIS
pk4 [options] package...
DESCRIPTION
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.
OPTIONS
-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).
EXAMPLES
# 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-*
CONFIGURATION FILE
The following
attributes can be configured in
˜/.config/pk4/pk4.deb822:
Disk-Usage-Limit bytes
Example:
Disk-Usage-Limit: 2GiB
HOOKS
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/
SEE ALSO
pk4-generate-index(1)
(Re-)generate index files for pk4
pk4-replace(1)
build sources and replace currently installed packages
AUTHOR
Michael Stapelberg <stapelberg at debian.org>