This is the command dh_make that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
dh_make - prepare Debian packaging for an original source archive
dh_make is a tool to convert a regular source code package into one formatted according to
the requirements of the Debian Policy. dh_make must be invoked within a directory
containing the source code, which must be named <packagename>-<version>. The
<packagename> must be all lowercase, The <packagename> and <version> must be all
lowercase, digits and dashes. The <version> can also contain digits, and the symbols plus,
dot, tilde. The <version> must start with a digit. If the directory name does not conform
to this scheme, you must rename it before using dh_make. Alternatively, you may be able
to use the --packagename option to force the package name.
Classes can be set with the single direct options (such as --s for single) or with the
-C,--packageclass option (-C=s for single).
Single binary (s)
The package will generate a single binary .deb package. It is the standard case, so
if you don't know what to do, choose this.
The package will generate a single package that is arch-independent.
The package will generate at least two binaries. One library package containing
just the lib in /usr/lib and another *-dev_*.deb package containing documentation
and C headers.
Unless --native was given, dh_make makes sure a original source archive
(<packagename>_<version>.orig.tar.gz) exists. The archive can either end with .gz
or one of the other supported compression extensions such as bz2 or lzma. If no
such file exists, the file specified with -f is copied in place. If no -f is
supplied either but --createorig is, the current directory is created into a news
archive ../<packagename>-<version>.orig.tar.gz The original archive is needed for
other Debian tools to generate the diffs to the original sources required by the
Debian packaging format. Unless there are reasons against it, this file should be
the pristine upstream archive.
Then dh_make proceeds to generate a "debian" subdirectory and the necessary control files
in the program source directory. Those control files are customized with the packagename
and version extracted from the directory name.
dh_make makes several attempts to obtain the username. It first checks for the environment
variables $DEBFULLNAME, $LOGNAME is used to find a name in the /etc/passwd file, and
through NIS, YP and LDAP.
The e-mail address can either be specified with the -fB--email option or dh_make will
attempt to find it. It will first check the environment variables $DEBEMAIL and then
$EMAIL. If they are not set then dh_make will search an available LDAP directory using
ldapsearch(1) using $LOGNAME as the uid to search under. Finally it will use $LOGNAME and
/etc/mailname to generate an email address.
dh_make will also generate example files that are also customized for the package
generated. You can remove all files with *.ex if you wish. You can also delete the
README.Debian file if you don't have anything to put in it. Renaming the example files to
their name without the .ex at the end (and editing them if necessary) will activate that
feature of debhelper.
If the --templates or -o (--overlay) option is used dh_make will apply a customizing
template to the "debian" directory. See the templates described in the FILES section of
this manpage for samples.
-c, --copyright license
Use license type in copyright file. license can be gpl, gpl2, gpl3, lgpl, lgpl2
lgpl3, artistic, apache, bsd, mit or custom. If this field is not specified the
copyright file has a space to fill in which sort of license is used. The field is
case-insensitive so -c GPL works as well as -c gpl. gpl and lgpl will give you
version 3 of the corresponding license, apache implies Apache v2.0. If you need a
different version, change the license file afterwards or use the gpl2 and lgpl2
options. If you select custom here you will need to use the --copyrightfile option
When using the custom --copyright option this is the location of your custom
copyright file. dh_make will process this file just like the standard copyright
files. It is suggested you use one of the existing license files as a starting
--docs Create a separate PACKAGE-doc binary package. All found documents in the source
package will be installed here.
-e, --email address
Use address as the e-mail address in the Maintainer: field of debian/control file.
Create a native Debian packages, i.e. do not generate a .orig archive, since it
will be generated when building with dpkg-buildpackage. The version number will
not have a Debian revision number (e.g. -1) appended to it.
-f, --file file
Use file as the original source archive, and skip the copying of the current
program tree to program.orig.
Automatically set the package class to Library, skipping the question.
Automatically set the package class to Single binary, skipping the question.
Automatically set the package class to arch-independent binary, skipping the
Adds missing example and control files on an existing debian source directory.
-t, --templates directory
Applies the customizing templates in directory to the debian directory.
-o, --overlay directory
Applies a customization template to an existing debian directory.
-p, --packagename name
Force the package name to be name, good for packages with hyphens in their name or
other strangeness. You can also make the parameter name_version which will set both
the package name and version and bypass and directory checking.
Skips applying the default templates to the target debian directory. Generally used
in conjuction with either the --overlay or --templates options.
Display the name, version, available options and authors, and exit successfully.
Show the program name and version, and exit successfully.
Automatic yes to prompts and run non-interactively. The package class needs to be
set for dh_make to run fully automatically.
The following environment settings are used by dh_make:
Email address to use in control and changelog entries.
You full name, eg "John Doe" which will appear in the control and changelog
EMAIL Email address to use in control and changelog entries, only used if DEBEMAIL is no
Default username used for looking up email and full name in other directories.
Use dh_make online using onworks.net services