openpkg/openpkg.pod

changeset 428
f880f219c566
parent 13
cb59d6afeb61
     1.1 --- a/openpkg/openpkg.pod	Tue Jul 31 12:12:54 2012 +0200
     1.2 +++ b/openpkg/openpkg.pod	Tue Jul 31 12:23:42 2012 +0200
     1.3 @@ -1,14 +1,13 @@
     1.4  ##
     1.5  ##  openpkg -- OpenPKG Tool Chain
     1.6 -##  Copyright (c) 2000-2007 OpenPKG Foundation e.V. <http://openpkg.net/>
     1.7 -##  Copyright (c) 2000-2007 Ralf S. Engelschall <http://engelschall.com/>
     1.8 +##  Copyright (c) 2000-2012 OpenPKG GmbH <http://openpkg.com/>
     1.9  ##
    1.10 -##  Permission to use, copy, modify, and distribute this software for
    1.11 -##  any purpose with or without fee is hereby granted, provided that
    1.12 -##  the above copyright notice and this permission notice appear in all
    1.13 -##  copies.
    1.14 +##  This software is property of the OpenPKG GmbH, DE MUC HRB 160208.
    1.15 +##  All rights reserved. Licenses which grant limited permission to use,
    1.16 +##  copy, modify and distribute this software are available from the
    1.17 +##  OpenPKG GmbH.
    1.18  ##
    1.19 -##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
    1.20 +##  THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
    1.21  ##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    1.22  ##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
    1.23  ##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
    1.24 @@ -28,45 +27,16 @@
    1.25  
    1.26  =head1 NAME
    1.27  
    1.28 -B<OpenPKG> -- Cross-Platform Unix Software Packaging Facility
    1.29 +B<OpenPKG> -- Cross-Platform Unix Software Packaging
    1.30  
    1.31  =head1 SYNOPSIS
    1.32  
    1.33 -=over 4
    1.34 -
    1.35 -=item Command Line Interface
    1.36 -
    1.37  $ B<openpkg> [I<opt> ...] I<cmd> [I<cmd_opt> ...] [I<cmd_arg> ...]
    1.38  
    1.39  $ B<openpkg> B<man> I<cmd>
    1.40  
    1.41 -=item Project Locations
    1.42 +=head1 DESCRIPTION
    1.43  
    1.44 - http://www.openpkg.org/       web service
    1.45 - http://cvs.openpkg.org/       repository service
    1.46 - http://pgp.openpkg.org/       OpenPGP service
    1.47 - ftp://ftp.openpkg.org/        download service
    1.48 -
    1.49 -=item Project Forums
    1.50 -
    1.51 - petidomo@openpkg.org          mailing-list manager
    1.52 - openpkg-announce@openpkg.org  project announcements
    1.53 - openpkg-dev@openpkg.org       developer forum
    1.54 - openpkg-users@openpkg.org     users forum
    1.55 -
    1.56 -=item Local Documentation
    1.57 -
    1.58 - openpkg-rpm(1)                RPM package manager
    1.59 - openpkg-rpmbuild(1)           RPM package manager (build only)
    1.60 - openpkg-rpm2cpio(1)           RPM payload utility
    1.61 - openpkg-rpm-config(1)         RPM C API utility
    1.62 - openpkg-lsync(1)              local area synchronization
    1.63 - openpkg-rc(1)                 run-command facility
    1.64 -
    1.65 -=back
    1.66 -
    1.67 -=head1 DESCRIPTION
    1.68 -  
    1.69  OpenPKG is the world leading instrument for deployment and maintenance
    1.70  of Open Source software when administration crosses Unix platform
    1.71  boundaries. The OpenPKG project is a collaboration effort with the
    1.72 @@ -82,5 +52,140 @@
    1.73  scratch the initial state of the whole OpenPKG software packaging
    1.74  system.
    1.75  
    1.76 +=head1 TUTORIAL
    1.77 +
    1.78 +=over 3
    1.79 +
    1.80 +=item B<1. System Preparation (optional)>
    1.81 +
    1.82 +Before you start, the Unix system optionally should be prepared. Here
    1.83 +especially the necessary disk space requirements of OpenPKG have to be
    1.84 +taken into account.
    1.85 +
    1.86 + # optionally direct /openpkg to at least 150MB free disk space:
    1.87 + $ mkdir /storage/openpkg
    1.88 + $ ln -s /storage/openpkg /openpkg
    1.89 +
    1.90 + # optionally direct temp-directory to at least 250MB free disk space:
    1.91 + $ TMPDIR=/var/tmp
    1.92 + $ export TMPDIR
    1.93 +
    1.94 + # switch to temporary directory:
    1.95 + $ cd $TMPDIR
    1.96 +
    1.97 +=item B<2. Instance Bootstrapping>
    1.98 +
    1.99 +The next step is to bootstrap the OpenPKG instance. Here we are using
   1.100 +the standard /openpkg filesystem prefix. An arbitrary prefix can be
   1.101 +used as long as at least the "Bootstrap From Source" approach is used.
   1.102 +
   1.103 + # download bootstrap source shell package:
   1.104 + $ wget http://openpkg.org/go/download/openpkg.src.sh
   1.105 +
   1.106 + # build bootstrap binary shell package from source shell package:
   1.107 + $ sh openpkg.src.sh \
   1.108 +   --prefix=/openpkg --tag=openpkg \
   1.109 +   --user=openpkg --group=openpkg \
   1.110 +   --tag=openpkg
   1.111 +
   1.112 + # install bootstrap binary script package:
   1.113 + $ sh openpkg-*-*.*-openpkg.sh
   1.114 +
   1.115 +=item B<3. Software Deployment>
   1.116 +
   1.117 +Now you can install arbitrary OpenPKG software packages by either using
   1.118 +the lower-level OpenPKG RPM command or the higher-level OpenPKG tool
   1.119 +chain build command. As a simple illustration example the GNU Bash
   1.120 +package of OpenPKG is installed.
   1.121 +
   1.122 + # build and install GNU Bash:
   1.123 + $ /openpkg/bin/openpkg build bash | sh
   1.124 +
   1.125 +=item B<4. Software Usage>
   1.126 +
   1.127 +Finally, you can use the deployed software. Either through explicit
   1.128 +paths (reasonable if leveraging OpenPKG's multiple-instance feature) or
   1.129 +implicitly by merging the OpenPKG instance into the local environment.
   1.130 +
   1.131 + # explicit usage:
   1.132 + $ /openpkg/bin/bash --version
   1.133 +
   1.134 + # implicit usage (alternatively)
   1.135 + $ eval `/openpkg/bin/openpkg rc --eval all env`
   1.136 + $ bash --version
   1.137 +
   1.138 +=item B<5. Go Ahead!>
   1.139 +
   1.140 +Want to know more now? Please read the manual pages of at least the
   1.141 +deployment commands and then proceed by searching and deploying even
   1.142 +more software into your OpenPKG instance.
   1.143 +
   1.144 + # read manual pages:
   1.145 + $ /openpkg/bin/openpkg man search
   1.146 + $ /openpkg/bin/openpkg man build
   1.147 +
   1.148 + # search for a package
   1.149 + $ /openpkg/bin/openpkg search [-v] <regex>
   1.150 +
   1.151 + # deploy even more packages
   1.152 + $ /openpkg/bin/openpkg build \
   1.153 +   [-D[<package1>::]with_<name>] \
   1.154 +   [-D[<package2>::]with_<name>] \
   1.155 +   <package1> <package2> ... | sh
   1.156 +
   1.157 +For instance, to install and start an Apache HTTP server with SSL/TLS
   1.158 +support you can use:
   1.159 +
   1.160 + $ /openpkg/bin/openpkg search -v apache | more
   1.161 + $ /openpkg/bin/openpkg build -D with_mod_ssl=yes apache | sh
   1.162 + $ /openpkg/bin/openpkg rc apache start
   1.163 +
   1.164 +=item B<6. Cleanup>
   1.165 +
   1.166 +OpenPKG has not convinced you? Well, it's a pity, but no problem. You
   1.167 +can easily get rid of anything you installed at once (both the OpenPKG
   1.168 +instance and any of its OpenPKG packages) with the following simple
   1.169 +command:
   1.170 +
   1.171 + $ /openpkg/bin/openpkg rc all stop
   1.172 + $ /openpkg/bin/openpkg rpm -e `/openpkg/bin/openpkg rpm -qa`
   1.173 +
   1.174 +=back
   1.175 +
   1.176 +=head1 SEE ALSO
   1.177 +
   1.178 +OpenPKG local documentation can be viewed the command "B<openpkg man>
   1.179 +I<cmd>", where I<cmd> is one of the following commands:
   1.180 +
   1.181 + index           OpenPKG package indexing
   1.182 + search          OpenPKG package searching
   1.183 + mirror          OpenPKG package mirroring
   1.184 + build           OpenPKG package building and installing
   1.185 + rc              OpenPKG run-command facility
   1.186 + lsync           OpenPKG local area synchronization
   1.187 +
   1.188 + stack           OpenPKG software stack generation
   1.189 + makeproxy       OpenPKG proxy package generation
   1.190 + dev             OpenPKG development tool
   1.191 +
   1.192 + rpm             RPM package manager
   1.193 + rpm2cpio        RPM payload utility
   1.194 + rpm-config      RPM C API utility
   1.195 + rpmtool         OpenPKG RPM packaging helper tool
   1.196 +
   1.197 + license         OpenPKG license management
   1.198 + release         OpenPKG release information
   1.199 + register        OpenPKG registry client (obsolete)
   1.200 +
   1.201 + sea             Shell Execution Archive tool
   1.202 + uuid            Universal Unique Identifiers tool
   1.203 +
   1.204 +Additionally, OpenPKG can be found under the following locations on the
   1.205 +Internet:
   1.206 +
   1.207 + http://openpkg.org/  OpenPKG Project (Distribution)
   1.208 + http://openpkg.com/  OpenPKG GmbH (Framework, Support)
   1.209 + http://openpkg.net/  OpenPKG Foundation e.V. (Packages)
   1.210 +
   1.211  =cut
   1.212  

mercurial