DOKK / manpages / debian 11 / devscripts / mk-origtargz.1.en
MK-ORIGTARGZ(1) MK-ORIGTARGZ(1)

mk-origtargz - rename upstream tarball, optionally changing the compression and removing unwanted files

mk-origtargz renames the given file to match what is expected by dpkg-buildpackage, based on the source package name and version in debian/changelog. It can convert zip to tar, optionally change the compression scheme and remove files according to Files-Excluded and Files-Excluded-component in debian/copyright. The resulting file is placed in debian/../... (In debian/copyright, the Files-Excluded and Files-Excluded-component stanzas are a part of the first paragraph and there is a blank line before the following paragraphs which contain Files and other stanzas. The Files-Included stanza may be used to ignore parts of subdirectories specified by the Files-Excluded stanza See uscan(1) "COPYRIGHT FILE EXAMPLE".)

The archive type for zip is detected by "file --dereference --brief --mime-type" command. So any zip type archives such as jar are treated in the same way. The xpi archive is detected by its extension and is handled properly using the xpi-unpack command.

If the package name is given via the --package option, no information is read from debian/, and the result file is placed in the current directory.

mk-origtargz is commonly called via uscan, which first obtains the upstream tarball.

The following options extend or replace information taken from debian/.

Use package as the name of the Debian source package, and do not require or use a debian/ directory. This option can only be used together with --version.

The default is to use the package name of the first entry in debian/changelog.

Use version as the version of the package. This needs to be the upstream version portion of a full Debian version, i.e. no Debian revision, no epoch.

The default is to use the upstream portion of the version of the first entry in debian/changelog.

Remove files matching the given glob from the tarball, as if it was listed in Files-Excluded.
Remove files matching the patterns found in filename, which should have the format of a Debian copyright file (Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ to be precise). Errors parsing that file are silently ignored, exactly as is the case with debian/copyright.

Unmatched patterns will emit a warning so the user can verify whether it is correct. If there are multiple patterns which match a file, only the last one will count as being matched.

Both the --exclude-file and --copyright-file options amend the list of patterns found in debian/copyright. If you do not want to read that file, you will have to use --package.

Set signature-mode:
0 for no signature
1 for normal detached signature
2 for signature on decompressed
3 for self signature
Use signature-file as the signature file corresponding to the Debian source package to create a dpkg-source (post-stretch) compatible signature file. (optional)

These options specify what exactly mk-origtargz should do. The options --copy, --rename and --symlink are mutually exclusive.

Make the resulting file a symlink to the given original file. (This is the default behaviour.)

If the file has to be modified (because it is a zip, or xpi file, because of --repack or Files-Excluded), this option behaves like --copy.

Make the resulting file a copy of the original file (unless it has to be modified, of course).
Rename the original file.

If the file has to be modified (because it is a zip, or xpi file, because of --repack or Files-Excluded), this implies that the original file is deleted afterwards.

If the given file is not compressed using the desired format (see --compression), recompress it.
If the file has to be modified, because of Files-Excluded, append suffix to the upstream version.
Recompress even if file is compressed using the desired format and no files were deleted.
Use <componentname> as the component name for the secondary upstream tarball. Set componentname as the component name. This is used only for the secondary upstream tarball of the Debian source package. Then packagename_version.orig-componentname.tar.gz is created.
The default method is xz. When mk-origtargz is launched in a debian source repository which format is "1.0" or undefined, the method switches to gzip.
Put the resulting file in the given directory.
Add the extra options to use with the unzip command such as -a, -aa, and -b.

uscan(1), uupdate(1)

mk-origtargz and this manpage have been written by Joachim Breitner <nomeata@debian.org>.

2021-08-18 Debian Utilities