| |
1 ## |
| |
2 ## sea -- Shell Execution Archive |
| |
3 ## Copyright (c) 2012 Ralf S. Engelschall <rse@engelschall.com> |
| |
4 ## |
| |
5 ## This program is free software; you can redistribute it and/or modify |
| |
6 ## it under the terms of the GNU General Public License as published by |
| |
7 ## the Free Software Foundation; either version 2 of the License, or |
| |
8 ## (at your option) any later version. |
| |
9 ## |
| |
10 ## This program is distributed in the hope that it will be useful, |
| |
11 ## but WITHOUT ANY WARRANTY; without even the implied warranty of |
| |
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| |
13 ## General Public License for more details. |
| |
14 ## |
| |
15 ## You should have received a copy of the GNU General Public License |
| |
16 ## along with this program; if not, write to the Free Software |
| |
17 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
| |
18 ## USA, or contact Ralf S. Engelschall <rse@engelschall.com>. |
| |
19 ## |
| |
20 ## NOTICE: Given that you include this file verbatim into your own |
| |
21 ## source tree, you are justified in saying that it remains separate |
| |
22 ## from your package, and that this way you are simply just using GNU |
| |
23 ## shtool. So, in this situation, there is no requirement that your |
| |
24 ## package itself is licensed under the GNU General Public License in |
| |
25 ## order to take advantage of GNU shtool. |
| |
26 ## |
| |
27 |
| |
28 =pod |
| |
29 |
| |
30 =head1 NAME |
| |
31 |
| |
32 B<sea> - B<Shell Execution Archive> |
| |
33 |
| |
34 =head1 SYNOPSIS |
| |
35 |
| |
36 B<sea> |
| |
37 [B<-h>|B<--help>] |
| |
38 [B<-o>|B<--output> I<sea>] |
| |
39 I<script> |
| |
40 [I<file-or-dir> ...] |
| |
41 |
| |
42 =head1 DESCRIPTION |
| |
43 |
| |
44 The B<sea> utility allows you to wrap a control shell script (I<script>) |
| |
45 plus zero or more payload file or directories (I<file-or-dir>) into a |
| |
46 so-called I<Shell Execution Archive> (I<sea>), a sh(1) executable script |
| |
47 which temporarily auto-extracts its payload and pass-through execution |
| |
48 to the control script. |
| |
49 |
| |
50 =head1 OPTIONS AND ARGUMENTS |
| |
51 |
| |
52 =over 4 |
| |
53 |
| |
54 =item B<-h>|B<--help> |
| |
55 |
| |
56 Just shows a short usage information of the B<sea> utility. |
| |
57 |
| |
58 =item B<-o>|B<--output> I<sea> |
| |
59 |
| |
60 The output I<Shell Execution Archive> file. By default the output is |
| |
61 saved to a file with a basename derived from I<script> and with new |
| |
62 attached extension F<.sea>. |
| |
63 |
| |
64 =item I<script> |
| |
65 |
| |
66 The mandatory control script which is added to the payload and which |
| |
67 (after auto-extraction) is executed. It receives all command-line |
| |
68 arguments originally passed to the I<Shell Execution Archive>. |
| |
69 |
| |
70 =item I<file-or-dir> |
| |
71 |
| |
72 Optional number of files or directories which are added to the payload. |
| |
73 |
| |
74 =back |
| |
75 |
| |
76 =head1 EXAMPLES |
| |
77 |
| |
78 $ sea -o foo.src.sh foo.sh foo.src.d |
| |
79 |
| |
80 =head1 HISTORY |
| |
81 |
| |
82 The B<sea> command was implemented in April 2012 by I<Ralf S. Engelschall> |
| |
83 E<lt>rse@engelschall.comE<gt>. Its idea is based on the |
| |
84 OpenPKG shell packages (F<openpkg.src.sh>) and its implemenation was |
| |
85 triggered by the demand for self-contained OpenPKG software stack source |
| |
86 archives. |
| |
87 |
| |
88 =cut |
| |
89 |