dpkg-name(1) dpkg utilities dpkg-name(1)
dpkg-name - rename Debian packages to full package names
dpkg-name [options] [--] files
This manual page documents the dpkg-name program which provides an easy way to rename
Debian packages into their full package names. A full package name consists of <pack-
age>_<version>_<architecture>.<package_type> as specified in the control file of the pack-
age. The <version> part of the filename consists of the upstream version information
optionally followed by a hyphen and the revision information. The <package_type> part
comes from that field if present or fallbacks to deb.
The destination filename will not have the architecture information.
Create a symlink, instead of moving.
Existing files will be overwritten if they have the same name as the destination
-s, --subdir [dir]
Files will be moved into a subdirectory. If the directory given as argument exists
the files will be moved into that directory otherwise the name of the target direc-
tory is extracted from the section field in the control part of the package. The
target directory will be `unstable/binary-<architecture>/<section>'. If the section
is not found in the control, then `no-section' is assumed, and in this case, as
well as for sections `non-free' and `contrib' the target directory is `<sec-
tion>/binary-<architecture>'. The section field isn't required so a lot of packages
will find their way to the `no-section' area. Use this option with care, it's
This option can used together with the -s option. If a target directory isn't found
it will be created automatically. Use this option with care.
Show the usage message and exit.
Show the version and exit.
The file `bar-foo.deb' will be renamed to bar-foo_1.0-2_i386.deb or something simi-
lar (depending on whatever information is in the control part of `bar-foo.deb').
find /root/debian/ -name '*.deb' | xargs -n 1 dpkg-name -a
All files with the extension `deb' in the directory /root/debian and its subdirec-
tory's will be renamed by dpkg-name if required into names with no architecture
find -name '*.deb' | xargs -n 1 dpkg-name -a -o -s -c
Don't do this. Your archive will be messed up completely because a lot of packages
don't come with section information. Don't do this.
dpkg --build debian-tmp && dpkg-name -o -s .. debian-tmp.deb
This can be used when building new packages.
Some packages don't follow the name structure <package>_<version>_<architecture>.deb.
Packages renamed by dpkg-name will follow this structure. Generally this will have no
impact on how packages are installed by dselect(1)/ dpkg(1), but other installation tools
might depend on this naming structure.
deb(5), deb-control(5), dpkg(1), dpkg-deb(1), find(1), xargs(1).
Copyright (C) 1995,1996 Erick Branderhorst
This is free software; see the GNU General Public Licence version 2 or later for copying
conditions. There is NO WARRANTY.
Debian Project 2008-08-18 dpkg-name(1)