openpkg/openpkg.pod

changeset 797
ded2db56a196
parent 13
cb59d6afeb61
equal deleted inserted replaced
0:79f86082add4 1:a41a39f52513
1 ## 1 ##
2 ## openpkg -- OpenPKG Tool Chain 2 ## openpkg -- OpenPKG Tool Chain
3 ## Copyright (c) 2000-2007 OpenPKG Foundation e.V. <http://openpkg.net/> 3 ## Copyright (c) 2000-2012 OpenPKG GmbH <http://openpkg.com/>
4 ## Copyright (c) 2000-2007 Ralf S. Engelschall <http://engelschall.com/>
5 ## 4 ##
6 ## Permission to use, copy, modify, and distribute this software for 5 ## This software is property of the OpenPKG GmbH, DE MUC HRB 160208.
7 ## any purpose with or without fee is hereby granted, provided that 6 ## All rights reserved. Licenses which grant limited permission to use,
8 ## the above copyright notice and this permission notice appear in all 7 ## copy, modify and distribute this software are available from the
9 ## copies. 8 ## OpenPKG GmbH.
10 ## 9 ##
11 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 10 ## THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
12 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 11 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
13 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 12 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
14 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR 13 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
15 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 14 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
16 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 15 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 25
27 =pod 26 =pod
28 27
29 =head1 NAME 28 =head1 NAME
30 29
31 B<OpenPKG> -- Cross-Platform Unix Software Packaging Facility 30 B<OpenPKG> -- Cross-Platform Unix Software Packaging
32 31
33 =head1 SYNOPSIS 32 =head1 SYNOPSIS
34
35 =over 4
36
37 =item Command Line Interface
38 33
39 $ B<openpkg> [I<opt> ...] I<cmd> [I<cmd_opt> ...] [I<cmd_arg> ...] 34 $ B<openpkg> [I<opt> ...] I<cmd> [I<cmd_opt> ...] [I<cmd_arg> ...]
40 35
41 $ B<openpkg> B<man> I<cmd> 36 $ B<openpkg> B<man> I<cmd>
42 37
43 =item Project Locations 38 =head1 DESCRIPTION
44 39
45 http://www.openpkg.org/ web service
46 http://cvs.openpkg.org/ repository service
47 http://pgp.openpkg.org/ OpenPGP service
48 ftp://ftp.openpkg.org/ download service
49
50 =item Project Forums
51
52 petidomo@openpkg.org mailing-list manager
53 openpkg-announce@openpkg.org project announcements
54 openpkg-dev@openpkg.org developer forum
55 openpkg-users@openpkg.org users forum
56
57 =item Local Documentation
58
59 openpkg-rpm(1) RPM package manager
60 openpkg-rpmbuild(1) RPM package manager (build only)
61 openpkg-rpm2cpio(1) RPM payload utility
62 openpkg-rpm-config(1) RPM C API utility
63 openpkg-lsync(1) local area synchronization
64 openpkg-rc(1) run-command facility
65
66 =back
67
68 =head1 DESCRIPTION
69
70 OpenPKG is the world leading instrument for deployment and maintenance 40 OpenPKG is the world leading instrument for deployment and maintenance
71 of Open Source software when administration crosses Unix platform 41 of Open Source software when administration crosses Unix platform
72 boundaries. The OpenPKG project is a collaboration effort with the 42 boundaries. The OpenPKG project is a collaboration effort with the
73 goal of creating and maintaining portable and easy to install software 43 goal of creating and maintaining portable and easy to install software
74 packages for use on the major Unix server platforms. 44 packages for use on the major Unix server platforms.
80 of RPM. Instead, RPM is provided as an OpenPKG RPM package itself plus 50 of RPM. Instead, RPM is provided as an OpenPKG RPM package itself plus
81 a tricky bootstrapping procedure in order to allow one to create from 51 a tricky bootstrapping procedure in order to allow one to create from
82 scratch the initial state of the whole OpenPKG software packaging 52 scratch the initial state of the whole OpenPKG software packaging
83 system. 53 system.
84 54
55 =head1 TUTORIAL
56
57 =over 3
58
59 =item B<1. System Preparation (optional)>
60
61 Before you start, the Unix system optionally should be prepared. Here
62 especially the necessary disk space requirements of OpenPKG have to be
63 taken into account.
64
65 # optionally direct /openpkg to at least 150MB free disk space:
66 $ mkdir /storage/openpkg
67 $ ln -s /storage/openpkg /openpkg
68
69 # optionally direct temp-directory to at least 250MB free disk space:
70 $ TMPDIR=/var/tmp
71 $ export TMPDIR
72
73 # switch to temporary directory:
74 $ cd $TMPDIR
75
76 =item B<2. Instance Bootstrapping>
77
78 The next step is to bootstrap the OpenPKG instance. Here we are using
79 the standard /openpkg filesystem prefix. An arbitrary prefix can be
80 used as long as at least the "Bootstrap From Source" approach is used.
81
82 # download bootstrap source shell package:
83 $ wget http://openpkg.org/go/download/openpkg.src.sh
84
85 # build bootstrap binary shell package from source shell package:
86 $ sh openpkg.src.sh \
87 --prefix=/openpkg --tag=openpkg \
88 --user=openpkg --group=openpkg \
89 --tag=openpkg
90
91 # install bootstrap binary script package:
92 $ sh openpkg-*-*.*-openpkg.sh
93
94 =item B<3. Software Deployment>
95
96 Now you can install arbitrary OpenPKG software packages by either using
97 the lower-level OpenPKG RPM command or the higher-level OpenPKG tool
98 chain build command. As a simple illustration example the GNU Bash
99 package of OpenPKG is installed.
100
101 # build and install GNU Bash:
102 $ /openpkg/bin/openpkg build bash | sh
103
104 =item B<4. Software Usage>
105
106 Finally, you can use the deployed software. Either through explicit
107 paths (reasonable if leveraging OpenPKG's multiple-instance feature) or
108 implicitly by merging the OpenPKG instance into the local environment.
109
110 # explicit usage:
111 $ /openpkg/bin/bash --version
112
113 # implicit usage (alternatively)
114 $ eval `/openpkg/bin/openpkg rc --eval all env`
115 $ bash --version
116
117 =item B<5. Go Ahead!>
118
119 Want to know more now? Please read the manual pages of at least the
120 deployment commands and then proceed by searching and deploying even
121 more software into your OpenPKG instance.
122
123 # read manual pages:
124 $ /openpkg/bin/openpkg man search
125 $ /openpkg/bin/openpkg man build
126
127 # search for a package
128 $ /openpkg/bin/openpkg search [-v] <regex>
129
130 # deploy even more packages
131 $ /openpkg/bin/openpkg build \
132 [-D[<package1>::]with_<name>] \
133 [-D[<package2>::]with_<name>] \
134 <package1> <package2> ... | sh
135
136 For instance, to install and start an Apache HTTP server with SSL/TLS
137 support you can use:
138
139 $ /openpkg/bin/openpkg search -v apache | more
140 $ /openpkg/bin/openpkg build -D with_mod_ssl=yes apache | sh
141 $ /openpkg/bin/openpkg rc apache start
142
143 =item B<6. Cleanup>
144
145 OpenPKG has not convinced you? Well, it's a pity, but no problem. You
146 can easily get rid of anything you installed at once (both the OpenPKG
147 instance and any of its OpenPKG packages) with the following simple
148 command:
149
150 $ /openpkg/bin/openpkg rc all stop
151 $ /openpkg/bin/openpkg rpm -e `/openpkg/bin/openpkg rpm -qa`
152
153 =back
154
155 =head1 SEE ALSO
156
157 OpenPKG local documentation can be viewed the command "B<openpkg man>
158 I<cmd>", where I<cmd> is one of the following commands:
159
160 index OpenPKG package indexing
161 search OpenPKG package searching
162 mirror OpenPKG package mirroring
163 build OpenPKG package building and installing
164 rc OpenPKG run-command facility
165 lsync OpenPKG local area synchronization
166
167 stack OpenPKG software stack generation
168 makeproxy OpenPKG proxy package generation
169 dev OpenPKG development tool
170
171 rpm RPM package manager
172 rpm2cpio RPM payload utility
173 rpm-config RPM C API utility
174 rpmtool OpenPKG RPM packaging helper tool
175
176 license OpenPKG license management
177 release OpenPKG release information
178 register OpenPKG registry client (obsolete)
179
180 sea Shell Execution Archive tool
181 uuid Universal Unique Identifiers tool
182
183 Additionally, OpenPKG can be found under the following locations on the
184 Internet:
185
186 http://openpkg.org/ OpenPKG Project (Distribution)
187 http://openpkg.com/ OpenPKG GmbH (Framework, Support)
188 http://openpkg.net/ OpenPKG Foundation e.V. (Packages)
189
85 =cut 190 =cut
86 191

mercurial