makeself
makeself.io
What it is
makeself is a shell script for packaging directories as self-extracting compressed TAR archives. Each archive includes a shell stub that extracts its contents to a temporary directory and can run an optional command, such as an installation script, before removing temporary files. Archive options let users list files, check integrity, select an extraction target, request confirmation or skip the embedded command. Compression choices include gzip, bzip2, bzip3, xz, lz4 and zstd, among other compressors; using a non-default method requires the corresponding compressor to be installed for extraction. Archives can include CRC or MD5 checksums, with optional SHA256 support. Creation also offers GPG and OpenSSL encryption, which requires those tools on the archive user's system. The project aims to avoid Bash-specific features and run on Unix-compatible systems with a compatible Bourne shell and the required compression programs. It lists Linux, macOS, several Unix and BSD systems, and Windows through Cygwin or WSL among tested platforms. makeself is free and covered by GNU General Public License version 2 and above; generated archives do not have to use that license. The project notes that archives made before version 2.1.2 may have extraction problems on some GNU/Linux distributions because of obsolete head and tail syntax.
Spec sheet
- Purpose
- Makeself is a shell script that creates self-extracting compressed TAR archives from directories.Read 9 Oct 2026 · makeself.io
- Platforms
- The site lists Linux, macOS, several Unix variants, and Windows through Cygwin or WSL as tested platforms.Read 8 Oct 2026 · makeself.io
- Support
- The maintainer welcomes patches and bug reports through the GitHub project page and lists an email address for suggestions.Read 9 Oct 2026 · makeself.io
- License
- Makeself is covered by the GNU General Public License version 2 and above; the maker says generated archives do not have to use that license.Read 9 Oct 2026 · makeself.io
- Archive behavior
- An archive can extract to a temporary directory and run an optional command, such as an installation script.Read 9 Oct 2026 · makeself.io
- Archive controls
- Generated archives support options to list or check contents, choose an extraction target, request confirmation, or skip execution of the embedded script.Read 8 Oct 2026 · makeself.io
- Archive format
- Generated archives contain a compressed TAR archive with a shell script stub that extracts files, runs the embedded command, and removes temporary files when done.Read 9 Oct 2026 · makeself.io
- Compression
- The documented options include gzip, bzip2, bzip3, pbzip2, xz, lzo, lz4, zstd, pigz, and uncompressed TAR.Read 9 Oct 2026 · makeself.io
- Download
- The maker links to the official GitHub distribution and identifies version 2.7.1 as the latest official release on the page.Read 9 Oct 2026 · makeself.io
- Encryption
- The tool has options to encrypt archives with GPG or OpenSSL AES-256-CBC.Read 9 Oct 2026 · makeself.io
- Extraction
- Running an archive extracts it to a temporary directory and can execute an optional command, such as an installation script.Read 8 Oct 2026 · makeself.io
- Extraction controls
- Generated archives support options to list files, check integrity, choose an extraction target, prompt for confirmation, or skip running the embedded command.Read 9 Oct 2026 · makeself.io
- Integration
- The maker says Makeself is supported by a Maven plugin and directs users to that plugin project for usage and bug reports.Read 9 Oct 2026 · makeself.io
- Integrity
- Archives include checksums for integrity validation, with CRC, MD5, and optional SHA256 support.Read 8 Oct 2026 · makeself.io
- Integrity checks
- Archives can include CRC, MD5, or SHA256 checksums for integrity validation.Read 9 Oct 2026 · makeself.io
- Notable limitation
- The page notes that archives made before version 2.1.2 may have extraction problems on some GNU/Linux distributions because of obsolete head and tail syntax.Read 8 Oct 2026 · makeself.io
- Portability
- The maker says Makeself avoids Bash-specific features and is intended to run with compatible Bourne shells on Unix systems, when required compression programs are available.Read 9 Oct 2026 · makeself.io
- Requirement
- Compression methods other than the available default require their corresponding compressor to be installed for archive extraction.Read 9 Oct 2026 · makeself.io
- Tested platforms
- The maker lists Linux, macOS, Solaris, HP-UX, SCO OpenUnix and OpenServer, AIX, IRIX, FreeBSD, OpenBSD, NetBSD, UnicOS/Cray, and Windows through Cygwin or WSL as tested platforms.Read 9 Oct 2026 · makeself.io
Plans and prices
Strong points and limits
Strong points
- Creates self-extracting compressed TAR archives
- Can run an optional command after extraction
- Offers CRC, MD5 and optional SHA256 checksums
- Supports several compression and encryption options
- Windows use is available through Cygwin or WSL
Limits
- Non-default compression requires its matching program
- Encryption requires GPG or OpenSSL on archive users' systems
- Older-than-2.1.2 archives may have extraction problems
Who it suits
makeself suits users who distribute directory contents as self-extracting shell archives and want options for extraction, integrity checks or an embedded command. Archive users need a compatible shell and any required compression or encryption tools.
Verdict
makeself packages directories into configurable shell archives, with controls for extraction, checksums and optional commands. Check shell and tool requirements on the systems that will create or unpack the archives.
Where Specifiction places it
- Software Packaging Tools#6 of 298.0