summaryrefslogtreecommitdiff
path: root/source/a/pkgtools/manpages/makepkg.8
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/pkgtools/manpages/makepkg.8')
-rw-r--r--source/a/pkgtools/manpages/makepkg.8135
1 files changed, 135 insertions, 0 deletions
diff --git a/source/a/pkgtools/manpages/makepkg.8 b/source/a/pkgtools/manpages/makepkg.8
new file mode 100644
index 00000000..b280ce51
--- /dev/null
+++ b/source/a/pkgtools/manpages/makepkg.8
@@ -0,0 +1,135 @@
+.\" -*- nroff -*-
+.ds g \" empty
+.ds G \" empty
+.\" Like TP, but if specified indent is more than half
+.\" the current line-length - indent, use the default indent.
+.de Tp
+.ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP
+.el .TP "\\$1"
+..
+.TH MAKEPKG 8 "21 May 1994" "Slackware Version 2.0.0"
+.SH NAME
+makepkg \- make Slackware packages.
+.SH SYNOPSIS
+.B makepkg
+[
+.B -l, --linkadd y|n
+]
+[
+.B -c, --chown y|n
+]
+.BI packagename
+.SH DESCRIPTION
+.B makepkg
+creates a new Slackware compatible package.
+The package is constructed using the contents of the current directory and
+all subdirectories. If symbolic links exist, they will be converted to script
+code to recreate them when the package is installed. This code will be
+appended to the primary installation script
+.B ( install/doinst.sh )
+, or, if that script does not exist it will be created with those contents.
+The package will be written out to the file
+.BI packagename
+which should be the full name, including the extension. This is usually .tgz,
+but .tbz, .tlz, and .txz are also accepted. The proper compression utility
+(gzip, bzip2, lzma, or xz) needs to be installed on the machine.
+.SH OPTIONS
+.TP
+.B \-l, --linkadd y|n
+If y, add any symbolic links found to the install script (doinst.sh) and
+delete them. This is the recommended action. If this option is not used,
+makepkg will prompt if symbolic links are found.
+.TP
+.B \-p, --prepend
+If this option is given, then any symbolic links added to doinst.sh will be
+prepended to the existing script. This is useful for packages that contain
+shared libraries that need to be linked first because programs will use them
+later in the doinst.sh script.
+.TP
+.B \-c, --chown y|n
+If y, makepkg will reset all directory permissions to 755 and ownership to root:root.
+In general, you should have the permissions and ownerships worked out yourself, so
+relying on setting this option to y is somewhat sloppy. It is not the default. If an
+option is not provided, makepkg will prompt.
+.SH INSTALLATION SCRIPTS
+There are 3 types of installation scripts supported in the Slackware package
+system.
+.TP
+The first is the
+.B primary
+installation script. This is found in the subdirectory
+.B ./install
+and must have the name
+.B doinst.sh
+in order to be recognized. This ( and other install scripts ) should be written
+using the basic Bourne shell syntax recognized by the
+.B ash
+shell, since this is the shell that will be used to execute the script when
+installing from a Slackware install floppy. This is a common trap - beware of
+using
+.B bash
+syntax extensions, because the script will work fine when installed from the
+hard drive, but will bomb out when installed from floppy. If the package is
+for personal use, this isn't a problem. Be careful, though, if you plan to
+share your package with other users. The
+.B primary installation script
+is executed immediately after the package is installed with
+.B installpkg, pkgtool,
+or
+.B setup.
+.TP
+The second type of script is the
+.B configuration
+script. This is found in the subdirectory
+.B ./var/log/setup
+and must have a name that starts with
+.B setup.
+in order to be recongnized. An example is the timezone script:
+.B /var/log/setup/setup.timeconfig.
+These scripts are executed during the
+.B CONFIGURE
+phase of
+.B setup,
+and are re-executed each time the user runs the
+.B CONFIGURE
+option from
+.B setup
+from then on.
+Typically, the user will go through this phase of setup following the
+installation of all the packages. Anything that needs to be interactive
+should go in one of these scripts to avoid halting the package installation
+process during
+.B setup.
+.TP
+The third type of script is the
+.B onlyonce
+script. Like the name suggests, these are executed only once after the package
+is installed, in contrast to the standard
+.B configuration
+script. These scripts are also found in the
+.B ./var/log/setup
+directory and must have a name that starts with
+.B setup.,
+but in addition the name must contain the string
+.B onlyonce.
+An example might be a script with the name
+.B /var/log/setup/setup.onlyonce.testscript
+.SH PACKAGE FORMAT
+.B makepkg
+uses GNU tar plus GNU gzip to create its packages. A simple way to
+extract the contents of a package (without executing the installation
+scripts, of course) is to use a command like this:
+.TP
+explodepkg package.tgz
+.TP
+Or, something like this:
+.TP
+gzip -dc package.tgz | tar xvvf -
+.SH AUTHOR
+Patrick J. Volkerding <volkerdi@slackware.com>
+.SH "SEE ALSO"
+.BR installpkg(8),
+.BR explodepkg(8),
+.BR removepkg(8),
+.BR pkgtool(8),
+.BR upgradepkg(8)