NAME
makeself - An utility to generate self-extractable archives.
SYNTAX
makeself [options] archive_dir file_name label [startup_script] [args]
DESCRIPTION
This program is a free (GPL) shell utility designed to create self-extractable compressed archives from a directory. The resulting file appears as a shell script, and can be launched as is. The archive will then uncompress itself to a temporary directory and an optional arbitrary command will be executed (for example an installation script).
- Makeself archives also include checksums for integrity self-validation (CRC and/or MD5/SHA256 checksums).
OPTIONS
The following options are supported:
- -v, --version
-
Prints out the makeself version number and exits.
- -h, --help
-
Print out help information.
- --tar-quietly
-
Suppress verbose output from the tar command
- --quiet
-
Do not print any messages other than errors
- --gzip
-
Compress using gzip (default if detected).
- --bzip2
-
Compress using bzip2.
- --bzip3
-
Compress using bzip3.
- --pbzip2
-
Compress using pbzip2.
- --xz
-
Compress using xz.
- --lzo
-
Compress using lzop.
- --lz4
-
Compress using lz4.
- --pigz
-
Compress using pigz.
- --zstd
-
Compress using zstd.
- --base64
-
Encode the archive to ASCII in Base64 format instead of compressing (base64 command required).
- --gpg-encrypt
-
Encrypt the archive using GPG. This will prompt for a password to encrypt with.
- --ssl-encrypt
-
Encrypt the archive using OpenSSL. This will prompt for a password to encrypt with.
- --keep-umask
-
Keep the umask set to shell default, rather than overriding when executing the self-extracting archive.
- --compress
-
Compress using the UNIX 'compress' command.
- --nocomp
-
Do not compress the data.
- --complevel lvl
-
Specify the compression level for gzip, bzip2, pbzip2, xz, zstd, lzo or lz4. Defaults to 9.
- --threads num
-
Specify the number of threads to be used by compressors that support parallelization.
- --tar-format opt
-
Specify the tar archive format (default is ustar); you may use any value accepted by your tar command (such as posix, v7, etc).
- --tar-extra opt
-
Append more options to the tar command line.
- --notemp
-
The archive will create archive_dir in the current directory and uncompress in ./archive_dir.
- --copy
-
Upon extraction, the archive will first copy itself to a temporary directory.
- --append
-
Append more files to an existing makeself archive. The label and startup scripts will then be ignored.
- --current
-
Files will be extracted to the current directory. Both --current and --target dir imply --notemp.
- --target dir
-
Extract directly to a target directory. Directory path can be either absolute or relative.
- --header file
-
Specify location of the header script.
- --help-header file
-
Add a header to the archive's help output.
- --cleanup file
-
Specify a cleanup script that executes on interrupt and when finished successfully.
- --follow
-
Follow the symlinks in the archive.
- --noprogress
-
Do not show the progress during the decompression.
- --nooverwrite
-
Do not extract the archive if the target directory already exists.
- --nox11
-
Disable automatic spawn of an xterm if running in X11.
- --nowait
-
Do not wait for user input after executing embedded program from an xterm.
- --nomd5
-
Do not create a MD5 checksum for the archive.
- --sha256
-
Adds a SHA256 checksum for the archive.
- --nocrc
-
Do not create a CRC32 checksum for the archive.
- --lsm file
-
LSM file describing the package.
- --license file
-
Append a license file.
- --packaging-date date
-
Use provided string as the packaging date instead of the current date.
- Here is an example, assuming the user has a package image stored in a /home/joe/mysoft,
EXAMPLES
and he wants to generate a self-extracting package named mysoft.sh, which will launch the "setup" script initially stored in /home/joe/mysoft:
- makeself.sh /home/joe/mysoft mysoft.sh "Joe's Nice Software Package" ./setup
- Here is also how I created the makeself.run archive which contains the Makeself distribution:
- makeself.sh --notemp makeself makeself.run "Makeself by Stephane Peter" echo "Makeself has extracted itself"
AUTHORS
Makeself has been written by Stephane Peter <[email protected]>. This man page was originally written by Bartosz Fenski <[email protected]> for the Debian GNU/Linux distribution (but it may be used by others).