Wed, 05 Aug 2009 23:34:02 +0800
Add asciidoc man1 template for setup program
| echo@20 | 1 | Unistall(1) |
| echo@20 | 2 | =========== |
| echo@20 | 3 | Tim Post <tinkertim@gmail.com> |
| echo@20 | 4 | |
| echo@20 | 5 | NAME |
| echo@20 | 6 | ---- |
| echo@20 | 7 | Unistall - A smart system for installing application suites |
| echo@20 | 8 | |
| echo@20 | 9 | SYNOPSIS |
| echo@20 | 10 | -------- |
| echo@20 | 11 | 'unistall' <options> |
| echo@20 | 12 | |
| echo@20 | 13 | DESCRIPTION |
| echo@20 | 14 | ----------- |
| echo@20 | 15 | Unistall is a smart installation utility designed to make installing large |
| echo@20 | 16 | suites of applications as easy as possible across many dis-similar GNU/Linux |
| echo@20 | 17 | distributions. Application suites that must install packages from the |
| echo@20 | 18 | distribution packaging mechanism, build programs from source and install to |
| echo@20 | 19 | locations that differ from distribution to distribution are good candidates |
| echo@20 | 20 | for unistall. Unistall was written to allow GNUPanel, a free web hosting |
| echo@20 | 21 | automation system to install and work on many popular distributions without |
| echo@20 | 22 | the need to maintain special packages for each kind. Much like the common |
| echo@20 | 23 | autoconf ./configure program, unistall gathers your preferences and adjusts |
| echo@20 | 24 | to your system. |
| echo@20 | 25 | |
| echo@20 | 26 | OPTIONS |
| echo@20 | 27 | ------- |
| echo@20 | 28 | The following options are nearly identical to the standard ./configure options, |
| echo@20 | 29 | areas that differ are noted. |
| echo@20 | 30 | -p, --prefix=[dir]:: |
| echo@20 | 31 | Specify the installation prefix, identical to ./configure |
| echo@20 | 32 | -e, --exec-prefix=[dir]:: |
| echo@20 | 33 | Similar to the ./configure directive, but not relative to PREFIX. |
| echo@20 | 34 | -b, --bindir=[dir]:: |
| echo@20 | 35 | Specify where programs used by underprivileged users should be installed. |
| echo@20 | 36 | -s, --sbindir=[dir]:: |
| echo@20 | 37 | Specify where root/admin programs should go. |
| echo@20 | 38 | -l, --libdir=[dir]:: |
| echo@20 | 39 | Specify where libraries should be installed |
| echo@20 | 40 | -S, --sysconfdir=[dir]:: |
| echo@20 | 41 | Specify an alternate to /etc for text configuration files |
| echo@20 | 42 | -d, --datarootdir=[dir]:: |
| echo@20 | 43 | Specify the data root, (PREFIX/share) |
| echo@20 | 44 | -m, --mandir=[dir]:: |
| echo@20 | 45 | Specify where documentation should be installed |
| echo@20 | 46 | |
| echo@20 | 47 | INSTALLER BEHAVIOR |
| echo@20 | 48 | ------------------ |
| echo@20 | 49 | Unistall aims to give the user complete control over the installation process, |
| echo@20 | 50 | should the user desire such control. All parts of the process can be skipped |
| echo@20 | 51 | and one can pass switches to approve nearly every action. This helps to ensure |
| echo@20 | 52 | that existing programs aren't obliterated during the installation process. |
| echo@20 | 53 | -a, --auto-packages=[y|n]:: |
| echo@20 | 54 | If set to no, you will be prompted prior to each OS package being installed |
| echo@20 | 55 | -c, --show-defaults:: |
| echo@20 | 56 | Show the default settings to review what will happen prior to installing |
| echo@20 | 57 | -D, --skip-deps:: |
| echo@20 | 58 | Skip dependency checks (probably a bad idea) |
| echo@20 | 59 | -f, --force:: |
| echo@20 | 60 | Keep going even if errors occur |
| echo@20 | 61 | -P, --skip-packages:: |
| echo@20 | 62 | Do not invoke the OS package utility, do not install any OS packages. |
| echo@20 | 63 | -t, --skip-tasks:: |
| echo@20 | 64 | Do not process scripts to install anything, merely install OS packages. |
| echo@20 | 65 | -u, --use-dialog=[y|n]:: |
| echo@20 | 66 | Toggle using dialog (ncurses) input boxes to ask for input when needed. |
| echo@20 | 67 | |
| echo@20 | 68 | MISCELLANEOUS OPTIONS |
| echo@20 | 69 | --------------------- |
| echo@20 | 70 | -C, --clean:: |
| echo@20 | 71 | Clean any files generated by running the setup program |
| echo@20 | 72 | -h, --help:: |
| echo@20 | 73 | Show a brief help summary |
| echo@20 | 74 | -M, --manual:: |
| echo@20 | 75 | Show this detailed manual |
| echo@20 | 76 | -v, --version:: |
| echo@20 | 77 | Print version information and exit |
| echo@20 | 78 | |
| echo@20 | 79 | OPERATION |
| echo@20 | 80 | --------- |
| echo@20 | 81 | Unistall first does some basic sanity checks, to ensure that the shell |
| echo@20 | 82 | interpreting it is capible of executing the code. Upon success, Unistall |
| echo@20 | 83 | will begin checking for the presence of basic core utilities and recording |
| echo@20 | 84 | their location in a file named paths.in. |
| echo@20 | 85 | |
| echo@20 | 86 | Unistall will then determine your type of GNU/Linux distribution and |
| echo@20 | 87 | determine your system packaging mechanism (yum, poldek, apt-get, etc). |
| echo@20 | 88 | Paths to these programs are then recorded in paths.in. |
| echo@20 | 89 | |
| echo@20 | 90 | If your system meets the minimum requirements, unistall will query your |
| echo@20 | 91 | system packaging utility to determine what you have installed so that it |
| echo@20 | 92 | knows what must be installed via packages provided by your distribution. |
| echo@20 | 93 | |
| echo@20 | 94 | If a top level source tree is defined, unistall will seek out confiugre |
| echo@20 | 95 | programs within the tree, these will be invoked with the prefix and other |
| echo@20 | 96 | preferences passed to the setup utility. |
| echo@20 | 97 | |
| echo@20 | 98 | Finally, unistall will parse a special macro driven list of tasks that |
| echo@20 | 99 | must be completed (again, specific to your distribution) in order to install |
| echo@20 | 100 | the application suite. Once all of this has been completed, unistall will |
| echo@20 | 101 | create a file named install.sh that contains portable shell code to effectively |
| echo@20 | 102 | install the application suite. |
| echo@20 | 103 | |
| echo@20 | 104 | The resulting install.sh |
| echo@20 | 105 | |
| echo@20 | 106 | PORTABILITY |
| echo@20 | 107 | ----------- |
| echo@20 | 108 | Unistall is written in portable shell code, so that it can work on as many |
| echo@20 | 109 | variants of the GNU/Linux operating system as possible. It has been tested |
| echo@20 | 110 | under Ash, Busybox, Bash, Dash, Pdksh and Zsh. Unistall should work well |
| echo@20 | 111 | under any Bourne compatible shell released after 1996, for 10+ years |
| echo@20 | 112 | backwards compatibility. |
| echo@20 | 113 | |
| echo@20 | 114 | SEE ALSO |
| echo@20 | 115 | -------- |
| echo@20 | 116 | |
| echo@20 | 117 | AUTHOR |
| echo@20 | 118 | ------ |
| echo@20 | 119 | Written by Tim Post and Alex Karlov, |
| echo@20 | 120 | Maintained by Tim Post <tinkertim@gmail.com> |
| echo@20 | 121 | |
| echo@20 | 122 | COPYING |
| echo@20 | 123 | ------- |
| echo@20 | 124 | Copyright \(C) 2004-2007 Tim Post - All Rights Reserved |
| echo@20 | 125 | You may copy, distribute and modify SRCE under the terms of the GNU GPL v3 |
| echo@20 | 126 | license, or (at your option) any later version. |