Permalink
Browse files

Added script to update the README

  • Loading branch information...
1 parent f500b66 commit 59bbda6e39ab467b392dfe406439cd78111ea4cf @megastep committed Mar 3, 2003
Showing with 109 additions and 246 deletions.
  1. +102 −246 README
  2. +7 −0 update-readme
View
348 README
@@ -1,248 +1,104 @@
-
-(This was produced from the HTML at http://www.megastep.org/makeself)
-
-makeself - Make self-extractible archives on Unix
-
-makeself.sh <makeself.run> is a small shell script that generates a
-self-extractible tar.gz archive from a directory. The resulting file
-appears as a shell script (many of those have a *.run* suffix), 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). This is pretty similar to archives
-generated with WinZip Self-Extractor in the Windows world. Makeself
-archives also include checksums for integrity self-validation (CRC
-and/or MD5 checksums).
-
-The makeself.sh script itself is used only to create the archives from a
-directory of files. The resultant archive is actually a compressed
-(using gzip, bzip2, or compress) TAR archive, with a small shell script
-stub at the beginning. This small stub performs all the steps of
-extracting the files, running the embedded command, and removing the
-temporary files when it's all over. All what the user has to do to
-install the software contained in such an archive is to "run" the
-archive, i.e *sh nice-software.run*. I recommend using the "run" (which
-was introduced by some Makeself archives released by Loki Software) or
-"sh" suffix for such archives not to confuse the users, since they it's
-actually shell scripts (with quite a lot of binary data attached to it
-though!).
-
-I am trying to keep the code of this script as portable as possible, i.e
-it's not relying on any bash-specific features and only calls commands
-that are installed on any functioning UNIX-compatible system. This
-script as well as the archives it generates should run on any Unix
-flavor, with any compatible Bourne shell, provided of course that the
-compression programs are available.
-
-As of version 2.0, Makeself has been rewritten and tested on the
-following platforms :
-
- * Linux (all distributions)
- * Sun Solaris (8 tested)
- * HP-UX (tested on 11.0 and 11i on HPPA RISC)
- * SCO OpenUnix and OpenServer
- * IBM AIX 5.1L
- * MacOS X (Darwin)
- * SGI IRIX 6.5
- * FreeBSD
-
-Examples of publicly available archives made using makeself are :
-
- * Game patches and installers for Id Software
- <http://www.idsoftware.com/> games like Quake 3 for Linux or
- Return To Castle Wolfenstien ;
- * All game patches released by Loki Software
- <http://www.lokigames.com/products/myth2/updates.php3> for the
- Linux version of popular games ;
- * The Makeself <makeself.run> distribution itself ;-)
- * and countless others...
-
-
- Usage
-
-The syntax of makeself is the following:
-
-|makeself.sh [args] archive_dir file_name label startup_script
-[script_args]|
-
- * /args/ are optional options for Makeself. The available ones are :
- o *--version* : Prints the version number on stdout, then
- exits immediately
- o *--gzip* : Use gzip for compression (is the default on
+The following was generated from http://www.megastep.org/makeself/
+-----------------------
+
+ makeself - Make self-extractible archives on Unix
+
+ [1]makeself.sh is a small shell script that generates a
+ self-extractible tar.gz archive from a directory. The resulting file
+ appears as a shell script (many of those have a .run suffix), 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). This is pretty similar to
+ archives generated with WinZip Self-Extractor in the Windows world.
+ Makeself archives also include checksums for integrity self-validation
+ (CRC and/or MD5 checksums).
+
+ The makeself.sh script itself is used only to create the archives from
+ a directory of files. The resultant archive is actually a compressed
+ (using gzip, bzip2, or compress) TAR archive, with a small shell
+ script stub at the beginning. This small stub performs all the steps
+ of extracting the files, running the embedded command, and removing
+ the temporary files when it's all over. All what the user has to do to
+ install the software contained in such an archive is to "run" the
+ archive, i.e sh nice-software.run. I recommend using the "run" (which
+ was introduced by some Makeself archives released by Loki Software) or
+ "sh" suffix for such archives not to confuse the users, since they
+ it's actually shell scripts (with quite a lot of binary data attached
+ to it though!).
+
+ I am trying to keep the code of this script as portable as possible,
+ i.e it's not relying on any bash-specific features and only calls
+ commands that are installed on any functioning UNIX-compatible system.
+ This script as well as the archives it generates should run on any
+ Unix flavor, with any compatible Bourne shell, provided of course that
+ the compression programs are available.
+
+ As of version 2.1, Makeself has been rewritten and tested on the
+ following platforms :
+ * Linux (all distributions)
+ * Sun Solaris (8 tested)
+ * HP-UX (tested on 11.0 and 11i on HPPA RISC)
+ * SCO OpenUnix and OpenServer
+ * IBM AIX 5.1L
+ * MacOS X (Darwin)
+ * SGI IRIX 6.5
+ * FreeBSD
+ * UnicOS / Cray
+
+ If you successfully run Makeself and/or archives created with it on
+ another system, then [2]let me know!
+
+ Examples of publicly available archives made using makeself are :
+ * Game patches and installers for [3]Id Software games like Quake 3
+ for Linux or Return To Castle Wolfenstien ;
+ * All game patches released by [4]Loki Software for the Linux
+ version of popular games ;
+ * The [5]Makeself distribution itself ;-)
+ * and countless others...
+
+Usage
+
+ The syntax of makeself is the following:
+
+ makeself.sh [args] archive_dir file_name label startup_script
+ [script_args]
+ * args are optional options for Makeself. The available ones are :
+ + --version : Prints the version number on stdout, then exits
+ immediately
+ + --gzip : Use gzip for compression (is the default on
platforms on which gzip is commonly available, like Linux)
- o *--bzip2* : Use bzip2 instead of gzip for better
- compression. The bzip2 command must be available in the
- command path. I recommend that you set the prefix to
- something like '.bz2.run' for the archive, so that potential
- users know that they'll need bzip2 to extract it.
- o *--compress* : Use the UNIX "compress" command to compress
- the data. This should be the default on all platforms that
- don't have gzip available.
- o *--nocomp* : Do not use any compression for the archive,
- which will then be an uncompressed TAR.
- o *--notemp* : The generated archive will not extract the
- files to a temporary directory, but in a new directory
- created in the current directory. This is better to
- distribute software packages that may extract and compile by
- themselves (i.e. launch the compilation through the embedded
- script).
- o *--current* : Files will be extracted to the current
- directory, instead of in a subdirectory. This option implies
- *--notemp* above.
- o *--follow* : Follow the symbolic links inside of the archive
- directory, i.e. store the files that are being pointed to
+ + --bzip2 : Use bzip2 instead of gzip for better compression.
+ The bzip2 command must be available in the command path. I
+ recommend that you set the prefix to something like
+ '.bz2.run' for the archive, so that potential users know that
+ they'll need bzip2 to extract it.
+ + --compress : Use the UNIX "compress" command to compress the
+ data. This should be the default on all platforms that don't
+ have gzip available.
+ + --nocomp : Do not use any compression for the archive, which
+ will then be an uncompressed TAR.
+ + --notemp : The generated archive will not extract the files
+ to a temporary directory, but in a new directory created in
+ the current directory. This is better to distribute software
+ packages that may extract and compile by themselves (i.e.
+ launch the compilation through the embedded script).
+ + --current : Files will be extracted to the current directory,
+ instead of in a subdirectory. This option implies --notemp
+ above.
+ + --follow : Follow the symbolic links inside of the archive
+ directory, i.e. store the files that are being pointed to
instead of the links themselves.
- o *--header * : Makeself 2.0 uses a separate file to store the
- header stub, called "makeself-header.sh". By default, it is
- assumed that it is stored in the same location as
- makeself.sh. This option can be used to specify its actual
- location if it is stored someplace else.
- o *--copy* : Upon extraction, the archive will first extract
- itself to a temporary directory. The main application of
- this is to allow self-contained installers stored in a
- Makeself archive on a CD, when the installer program will
- later need to unmount the CD and allow a new one to be
- inserted. This prevents "Filesystem busy" errors for
- installers that span multiple CDs.
- o *--nox11* : Disable the automatic spawning of a new terminal
- in X11.
- o *--nowait* : When executed from a new X11 terminal, disable
- the user prompt at the end of the script execution.
- o *--lsm /file/* : Provide and LSM file to makeself, that will
- be embedded in the generated archive. LSM files are
- describing a software package in a way that is easily
- parseable. The LSM entry can then be later retrieved using
- the '-lsm' argument to the archive. An exemple of a LSM file
- is provided with Makeself.
- * /archive_dir/ is the name of the directory that contains the files
- to be archived
- * /file_name/ is the name of the archive to be created
- * /label/ is an arbitrary text string describing the package. It
- will be displayed while extracting the files.
- * /startup_script/ is the command to be executed /from within/ the
- directory of extracted files. Thus, if you wish to execute a
- program contain in this directory, you must prefix your command
- with "./". For example, ./program will be fine. The /script_args/
-are additionnal arguments for this command.
-
-Here is an example, assuming the user has a package image stored in a
-*/home/joe/mysoft*, 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" |
-
-Archives generated with Makeself 2.0 can be passed the following arguments:
-
- * /--keep/ : Prevent the files to be extracted in a temporary
- directory that will be removed after the embedded script's
- execution. The files will then be extracted in the current working
- directory and will stay here until you remove them.
- * /--verbose/ : Will prompt the user before executing the embedded
- command
- * /--target dir/ : Allows to extract the archive in an arbitrary place.
- * /--nox11/ : Do not spawn a X11 terminal.
- * /--confirm/ : Prompt the user for confirmation before running the
- embedded command.
- * /--info/ : Print out general information about the archive (does
- not extract).
- * /--lsm/ : Print out the LSM entry, if it is present.
- * /--list/ : List the files in the archive.
- * /--check/ : Check the archive for integrity using the embedded
- checksums. Does not extract the archive.
-
-Any subsequent arguments to the archive will be passed as additional
-arguments to the embedded command. You should explicitly use the /--/
-special command-line construct before any such options to make sure that
-Makeself will not try to interpret them.
-
-
- License
-
-Makeself is covered by the GNU General Public License
-<http://www.gnu.org/copyleft/gpl.html> (GPL) version 2 and above.
-Archives generated by Makeself don't have to be placed under this
-license (although I encourage it ;-)), since the archive itself is
-merely data for Makeself.
-
-
- Download
-
-Get the latest official distribution here <makeself.run> (version 2.0.1).
-
-The latest development version can be grabbed from the Loki Setup CVS
-module, at cvs.icculus.org <http://cvs.icculus.org/>.
-
-
- Version history
-
- * *v1.0:* Initial public release
- * *v1.1:* The archive can be passed parameters that will be passed
- on to the embedded script, thanks to John C. Quillan
- * *v1.2:* Cosmetic updates, support for bzip2 compression and
- non-temporary archives. Many ideas thanks to Francois Petitjean.
- * *v1.3:* More patches from Bjarni R. Einarsson and Francois
- Petitjean: Support for no compression (--nocomp), script is no
- longer mandatory, automatic launch in an xterm, optional verbose
- output, and -target archive option to indicate where to extract
- the files.
- * *v1.4:* Many patches from Francois Petitjean: improved UNIX
- compatibility, automatic integrity checking, support of LSM files
- to get info on the package at run time..
- * *v1.5.x:* A lot of bugfixes, and many other patches, including
- automatic verification through the usage of checksums. Version
- 1.5.5 was the stable release for a long time, even though the Web
- page didn't get updated ;-). Makeself was also officially made a
- part of the Loki Setup installer
- <http://www.icculus.org/loki_setup/>, and its source is being
- maintained as part of this package.
- * *v2.0:* Complete internal rewrite of Makeself. The command-line
- parsing was vastly improved, the overall maintenance of the
- package was greatly improved by separating the stub from
- makeself.sh. Also Makeself was ported and tested to a variety of
- Unix platforms.
- * *v2.0.1:* First public release of the new 2.0 branch. Prior
- versions are officially obsoleted. This release introduced the
- '--copy' argument that was introduced in response to a need for
- the UT2K3 <http://www.unrealtournament2003.com/> Linux installer.
-
-
- Links
-
- * Check out the "Loki setup" <http://www.icculus.org/loki_setup/>
- installer, used to install many Linux games and other
- applications, and of which I am the co-author. Since the demise of
- Loki, I am now the official maintainer of the project, and it is
- now being hosted on icculus.org <http://www.icculus.org/>, as well
- as a bunch of other ex-Loki projects (and a lot of other good
- stuff!).
- * Bjarni R. Einarsson also wrote the *setup.sh* installer script,
- inspired by Makeself. Check it out !
-<http://www.mmedia.is/~bre/programs/setup.sh/>
-
-
- Contact
-
-This script was written by St�phane Peter
-<mailto:megastep@@megastep.org> (megastep at megastep.org) I welcome any
-enhancements and suggestions.
-
-Contributions were included from John C. Quillan, Bjarni R. Einarsson,
-Francois Petitjean, and Ryan C. Gordon, thanks to them! If you think I
-forgot your name, don't hesitate to contact me.
-
-icculus.org also has a Bugzilla server <https://bugzilla.icculus.org/>
-available that allows bug reports to be submitted for Loki setup, and
-since Makeself is a part of Loki setup, you can submit bug reports from
-there!
-
-------------------------------------------------------------------------
-St�phane Peter <mailto:megastep@@megastep.org>
-
-Last modified: Sun Jan 19 03:18:18 PST 2003
+ + --append (new in 2.1.x): Append data to an existing archive,
+ instead of creating a new one. In this mode, the settings
+ from the original archive are reused (compression type,
+ label, embedded script), and thus don't need to be specified
+ again on the command line.
+ + --header
+
+R�f�rences
+
+ 1. http://www.megastep.org/makeself/makeself.run
+ 2. mailto:megastep@REMOVEME.megastep.org
+ 3. http://www.idsoftware.com/
+ 4. http://www.lokigames.com/products/myth2/updates.php3
+ 5. http://www.megastep.org/makeself/makeself.run
View
@@ -0,0 +1,7 @@
+#!/bin/sh
+# Grab the Makeself web page
+
+echo The following was generated from http://www.megastep.org/makeself/ > README
+echo ----------------------- >> README
+echo >> README
+lynx -dump http://www.megastep.org/makeself/ >> README

0 comments on commit 59bbda6

Please sign in to comment.