openpkg/openpkg.1

Mon, 28 Jan 2013 17:37:18 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Mon, 28 Jan 2013 17:37:18 +0100
changeset 758
a2c6460cfb16
parent 13
cb59d6afeb61
permissions
-rw-r--r--

Correct socket error reporting improvement with IPv6 portable code,
after helpful recommendation by Saúl Ibarra Corretgé on OSips devlist.

michael@428 1 .\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22)
michael@13 2 .\"
michael@13 3 .\" Standard preamble:
michael@13 4 .\" ========================================================================
michael@13 5 .de Sp \" Vertical space (when we can't use .PP)
michael@13 6 .if t .sp .5v
michael@13 7 .if n .sp
michael@13 8 ..
michael@13 9 .de Vb \" Begin verbatim text
michael@13 10 .ft CW
michael@13 11 .nf
michael@13 12 .ne \\$1
michael@13 13 ..
michael@13 14 .de Ve \" End verbatim text
michael@13 15 .ft R
michael@13 16 .fi
michael@13 17 ..
michael@13 18 .\" Set up some character translations and predefined strings. \*(-- will
michael@13 19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
michael@428 20 .\" double quote, and \*(R" will give a right double quote. \*(C+ will
michael@428 21 .\" give a nicer C++. Capital omega is used to do unbreakable dashes and
michael@428 22 .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
michael@428 23 .\" nothing in troff, for use with C<>.
michael@428 24 .tr \(*W-
michael@13 25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
michael@13 26 .ie n \{\
michael@13 27 . ds -- \(*W-
michael@13 28 . ds PI pi
michael@13 29 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
michael@13 30 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
michael@13 31 . ds L" ""
michael@13 32 . ds R" ""
michael@13 33 . ds C`
michael@13 34 . ds C'
michael@13 35 'br\}
michael@13 36 .el\{\
michael@13 37 . ds -- \|\(em\|
michael@13 38 . ds PI \(*p
michael@13 39 . ds L" ``
michael@13 40 . ds R" ''
michael@13 41 'br\}
michael@13 42 .\"
michael@428 43 .\" Escape single quotes in literal strings from groff's Unicode transform.
michael@428 44 .ie \n(.g .ds Aq \(aq
michael@428 45 .el .ds Aq '
michael@428 46 .\"
michael@13 47 .\" If the F register is turned on, we'll generate index entries on stderr for
michael@428 48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
michael@13 49 .\" entries marked with X<> in POD. Of course, you'll have to process the
michael@13 50 .\" output yourself in some meaningful fashion.
michael@428 51 .ie \nF \{\
michael@13 52 . de IX
michael@13 53 . tm Index:\\$1\t\\n%\t"\\$2"
michael@13 54 ..
michael@13 55 . nr % 0
michael@13 56 . rr F
michael@13 57 .\}
michael@428 58 .el \{\
michael@428 59 . de IX
michael@428 60 ..
michael@428 61 .\}
michael@13 62 .\"
michael@13 63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
michael@13 64 .\" Fear. Run. Save yourself. No user-serviceable parts.
michael@13 65 . \" fudge factors for nroff and troff
michael@13 66 .if n \{\
michael@13 67 . ds #H 0
michael@13 68 . ds #V .8m
michael@13 69 . ds #F .3m
michael@13 70 . ds #[ \f1
michael@13 71 . ds #] \fP
michael@13 72 .\}
michael@13 73 .if t \{\
michael@13 74 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
michael@13 75 . ds #V .6m
michael@13 76 . ds #F 0
michael@13 77 . ds #[ \&
michael@13 78 . ds #] \&
michael@13 79 .\}
michael@13 80 . \" simple accents for nroff and troff
michael@13 81 .if n \{\
michael@13 82 . ds ' \&
michael@13 83 . ds ` \&
michael@13 84 . ds ^ \&
michael@13 85 . ds , \&
michael@13 86 . ds ~ ~
michael@13 87 . ds /
michael@13 88 .\}
michael@13 89 .if t \{\
michael@13 90 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
michael@13 91 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
michael@13 92 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
michael@13 93 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
michael@13 94 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
michael@13 95 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
michael@13 96 .\}
michael@13 97 . \" troff and (daisy-wheel) nroff accents
michael@13 98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
michael@13 99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
michael@13 100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
michael@13 101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
michael@13 102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
michael@13 103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
michael@13 104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
michael@13 105 .ds ae a\h'-(\w'a'u*4/10)'e
michael@13 106 .ds Ae A\h'-(\w'A'u*4/10)'E
michael@13 107 . \" corrections for vroff
michael@13 108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
michael@13 109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
michael@13 110 . \" for low resolution devices (crt and lpr)
michael@13 111 .if \n(.H>23 .if \n(.V>19 \
michael@13 112 \{\
michael@13 113 . ds : e
michael@13 114 . ds 8 ss
michael@13 115 . ds o a
michael@13 116 . ds d- d\h'-1'\(ga
michael@13 117 . ds D- D\h'-1'\(hy
michael@13 118 . ds th \o'bp'
michael@13 119 . ds Th \o'LP'
michael@13 120 . ds ae ae
michael@13 121 . ds Ae AE
michael@13 122 .\}
michael@13 123 .rm #[ #] #H #V #F C
michael@13 124 .\" ========================================================================
michael@13 125 .\"
michael@13 126 .IX Title "OPENPKG 1"
michael@13 127 .TH OPENPKG 1 "OpenPKG" "OPENPKG(8)" "OpenPKG"
michael@428 128 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
michael@428 129 .\" way too many mistakes in technical documents.
michael@428 130 .if n .ad l
michael@428 131 .nh
michael@13 132 .SH "NAME"
michael@428 133 OpenPKG \-\- Cross\-Platform Unix Software Packaging
michael@13 134 .SH "SYNOPSIS"
michael@13 135 .IX Header "SYNOPSIS"
michael@13 136 $ \fBopenpkg\fR [\fIopt\fR ...] \fIcmd\fR [\fIcmd_opt\fR ...] [\fIcmd_arg\fR ...]
michael@428 137 .PP
michael@13 138 $ \fBopenpkg\fR \fBman\fR \fIcmd\fR
michael@13 139 .SH "DESCRIPTION"
michael@13 140 .IX Header "DESCRIPTION"
michael@13 141 OpenPKG is the world leading instrument for deployment and maintenance
michael@13 142 of Open Source software when administration crosses Unix platform
michael@13 143 boundaries. The OpenPKG project is a collaboration effort with the
michael@13 144 goal of creating and maintaining portable and easy to install software
michael@13 145 packages for use on the major Unix server platforms.
michael@13 146 .PP
michael@13 147 The unique OpenPKG architecture leverages proven technologies like
michael@13 148 Red Hat Package Manager (\s-1RPM\s0) to establish a unified administration
michael@13 149 environment, independent of the underlying operating system. OpenPKG
michael@13 150 is completely self-contained and does not even need a preinstallation
michael@13 151 of \s-1RPM\s0. Instead, \s-1RPM\s0 is provided as an OpenPKG \s-1RPM\s0 package itself plus
michael@13 152 a tricky bootstrapping procedure in order to allow one to create from
michael@13 153 scratch the initial state of the whole OpenPKG software packaging
michael@13 154 system.
michael@428 155 .SH "TUTORIAL"
michael@428 156 .IX Header "TUTORIAL"
michael@428 157 .IP "\fB1. System Preparation (optional)\fR" 3
michael@428 158 .IX Item "1. System Preparation (optional)"
michael@428 159 Before you start, the Unix system optionally should be prepared. Here
michael@428 160 especially the necessary disk space requirements of OpenPKG have to be
michael@428 161 taken into account.
michael@428 162 .Sp
michael@428 163 .Vb 3
michael@428 164 \& # optionally direct /openpkg to at least 150MB free disk space:
michael@428 165 \& $ mkdir /storage/openpkg
michael@428 166 \& $ ln \-s /storage/openpkg /openpkg
michael@428 167 \&
michael@428 168 \& # optionally direct temp\-directory to at least 250MB free disk space:
michael@428 169 \& $ TMPDIR=/var/tmp
michael@428 170 \& $ export TMPDIR
michael@428 171 \&
michael@428 172 \& # switch to temporary directory:
michael@428 173 \& $ cd $TMPDIR
michael@428 174 .Ve
michael@428 175 .IP "\fB2. Instance Bootstrapping\fR" 3
michael@428 176 .IX Item "2. Instance Bootstrapping"
michael@428 177 The next step is to bootstrap the OpenPKG instance. Here we are using
michael@428 178 the standard /openpkg filesystem prefix. An arbitrary prefix can be
michael@428 179 used as long as at least the \*(L"Bootstrap From Source\*(R" approach is used.
michael@428 180 .Sp
michael@428 181 .Vb 2
michael@428 182 \& # download bootstrap source shell package:
michael@428 183 \& $ wget http://openpkg.org/go/download/openpkg.src.sh
michael@428 184 \&
michael@428 185 \& # build bootstrap binary shell package from source shell package:
michael@428 186 \& $ sh openpkg.src.sh \e
michael@428 187 \& \-\-prefix=/openpkg \-\-tag=openpkg \e
michael@428 188 \& \-\-user=openpkg \-\-group=openpkg \e
michael@428 189 \& \-\-tag=openpkg
michael@428 190 \&
michael@428 191 \& # install bootstrap binary script package:
michael@428 192 \& $ sh openpkg\-*\-*.*\-openpkg.sh
michael@428 193 .Ve
michael@428 194 .IP "\fB3. Software Deployment\fR" 3
michael@428 195 .IX Item "3. Software Deployment"
michael@428 196 Now you can install arbitrary OpenPKG software packages by either using
michael@428 197 the lower-level OpenPKG \s-1RPM\s0 command or the higher-level OpenPKG tool
michael@428 198 chain build command. As a simple illustration example the \s-1GNU\s0 Bash
michael@428 199 package of OpenPKG is installed.
michael@428 200 .Sp
michael@428 201 .Vb 2
michael@428 202 \& # build and install GNU Bash:
michael@428 203 \& $ /openpkg/bin/openpkg build bash | sh
michael@428 204 .Ve
michael@428 205 .IP "\fB4. Software Usage\fR" 3
michael@428 206 .IX Item "4. Software Usage"
michael@428 207 Finally, you can use the deployed software. Either through explicit
michael@428 208 paths (reasonable if leveraging OpenPKG's multiple-instance feature) or
michael@428 209 implicitly by merging the OpenPKG instance into the local environment.
michael@428 210 .Sp
michael@428 211 .Vb 2
michael@428 212 \& # explicit usage:
michael@428 213 \& $ /openpkg/bin/bash \-\-version
michael@428 214 \&
michael@428 215 \& # implicit usage (alternatively)
michael@428 216 \& $ eval \`/openpkg/bin/openpkg rc \-\-eval all env\`
michael@428 217 \& $ bash \-\-version
michael@428 218 .Ve
michael@428 219 .IP "\fB5. Go Ahead!\fR" 3
michael@428 220 .IX Item "5. Go Ahead!"
michael@428 221 Want to know more now? Please read the manual pages of at least the
michael@428 222 deployment commands and then proceed by searching and deploying even
michael@428 223 more software into your OpenPKG instance.
michael@428 224 .Sp
michael@428 225 .Vb 3
michael@428 226 \& # read manual pages:
michael@428 227 \& $ /openpkg/bin/openpkg man search
michael@428 228 \& $ /openpkg/bin/openpkg man build
michael@428 229 \&
michael@428 230 \& # search for a package
michael@428 231 \& $ /openpkg/bin/openpkg search [\-v] <regex>
michael@428 232 \&
michael@428 233 \& # deploy even more packages
michael@428 234 \& $ /openpkg/bin/openpkg build \e
michael@428 235 \& [\-D[<package1>::]with_<name>] \e
michael@428 236 \& [\-D[<package2>::]with_<name>] \e
michael@428 237 \& <package1> <package2> ... | sh
michael@428 238 .Ve
michael@428 239 .Sp
michael@428 240 For instance, to install and start an Apache \s-1HTTP\s0 server with \s-1SSL/TLS\s0
michael@428 241 support you can use:
michael@428 242 .Sp
michael@428 243 .Vb 3
michael@428 244 \& $ /openpkg/bin/openpkg search \-v apache | more
michael@428 245 \& $ /openpkg/bin/openpkg build \-D with_mod_ssl=yes apache | sh
michael@428 246 \& $ /openpkg/bin/openpkg rc apache start
michael@428 247 .Ve
michael@428 248 .IP "\fB6. Cleanup\fR" 3
michael@428 249 .IX Item "6. Cleanup"
michael@428 250 OpenPKG has not convinced you? Well, it's a pity, but no problem. You
michael@428 251 can easily get rid of anything you installed at once (both the OpenPKG
michael@428 252 instance and any of its OpenPKG packages) with the following simple
michael@428 253 command:
michael@428 254 .Sp
michael@428 255 .Vb 2
michael@428 256 \& $ /openpkg/bin/openpkg rc all stop
michael@428 257 \& $ /openpkg/bin/openpkg rpm \-e \`/openpkg/bin/openpkg rpm \-qa\`
michael@428 258 .Ve
michael@428 259 .SH "SEE ALSO"
michael@428 260 .IX Header "SEE ALSO"
michael@428 261 OpenPKG local documentation can be viewed the command "\fBopenpkg man\fR
michael@428 262 \&\fIcmd\fR", where \fIcmd\fR is one of the following commands:
michael@428 263 .PP
michael@428 264 .Vb 6
michael@428 265 \& index OpenPKG package indexing
michael@428 266 \& search OpenPKG package searching
michael@428 267 \& mirror OpenPKG package mirroring
michael@428 268 \& build OpenPKG package building and installing
michael@428 269 \& rc OpenPKG run\-command facility
michael@428 270 \& lsync OpenPKG local area synchronization
michael@428 271 \&
michael@428 272 \& stack OpenPKG software stack generation
michael@428 273 \& makeproxy OpenPKG proxy package generation
michael@428 274 \& dev OpenPKG development tool
michael@428 275 \&
michael@428 276 \& rpm RPM package manager
michael@428 277 \& rpm2cpio RPM payload utility
michael@428 278 \& rpm\-config RPM C API utility
michael@428 279 \& rpmtool OpenPKG RPM packaging helper tool
michael@428 280 \&
michael@428 281 \& license OpenPKG license management
michael@428 282 \& release OpenPKG release information
michael@428 283 \& register OpenPKG registry client (obsolete)
michael@428 284 \&
michael@428 285 \& sea Shell Execution Archive tool
michael@428 286 \& uuid Universal Unique Identifiers tool
michael@428 287 .Ve
michael@428 288 .PP
michael@428 289 Additionally, OpenPKG can be found under the following locations on the
michael@428 290 Internet:
michael@428 291 .PP
michael@428 292 .Vb 3
michael@428 293 \& http://openpkg.org/ OpenPKG Project (Distribution)
michael@428 294 \& http://openpkg.com/ OpenPKG GmbH (Framework, Support)
michael@428 295 \& http://openpkg.net/ OpenPKG Foundation e.V. (Packages)
michael@428 296 .Ve

mercurial