summaryrefslogtreecommitdiffstats
path: root/encap/src
diff options
context:
space:
mode:
authorDaniel Joseph Barnhart Clark <dclark@pobox.com>2006-08-24 03:03:41 +0000
committerDaniel Joseph Barnhart Clark <dclark@pobox.com>2006-08-24 03:03:41 +0000
commit12b22256f2430dbdbb59a6119eb7732ba942fca1 (patch)
tree6199059b90297727436d76e173ca2488062d69bb /encap/src
parent14a669001e54e82f01203bfa5df734624044ccab (diff)
downloadbcfg2-12b22256f2430dbdbb59a6119eb7732ba942fca1.tar.gz
bcfg2-12b22256f2430dbdbb59a6119eb7732ba942fca1.tar.bz2
bcfg2-12b22256f2430dbdbb59a6119eb7732ba942fca1.zip
EncapPackages: Restructuring directory layout
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2102 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'encap/src')
-rw-r--r--encap/src/encap-profiles/bcfg2-0.8.2.ep444
-rw-r--r--encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep92
-rw-r--r--encap/src/encap-profiles/bcfg2-cheetah-doc-0.9.16a1.ep59
-rw-r--r--encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep79
-rw-r--r--encap/src/encap-profiles/bcfg2-gettext-0.14.5.ep79
-rw-r--r--encap/src/encap-profiles/bcfg2-glib-2.8.6.ep77
-rwxr-xr-xencap/src/encap-profiles/bcfg2-libgcc-0.1.sh34
-rw-r--r--encap/src/encap-profiles/bcfg2-libiconv-1.9.2.ep79
-rwxr-xr-xencap/src/encap-profiles/bcfg2-libstdc++-0.1.sh34
-rw-r--r--encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep86
-rw-r--r--encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep89
-rw-r--r--encap/src/encap-profiles/bcfg2-lxml-1.0.1.ep94
-rw-r--r--encap/src/encap-profiles/bcfg2-openssl-0.9.8b.ep89
-rw-r--r--encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep77
-rw-r--r--encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep91
-rw-r--r--encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep90
-rw-r--r--encap/src/encap-profiles/bcfg2-python-2.4.3.ep98
-rw-r--r--encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep93
-rw-r--r--encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep93
-rw-r--r--encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep93
-rw-r--r--encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep90
-rw-r--r--encap/src/encap-profiles/daemontools-0.76.ep444
-rw-r--r--encap/src/encap-profiles/daemontools-doc-20060731.ep58
-rwxr-xr-xencap/src/encap-profiles/m4-1.4.4.sh74
-rw-r--r--encap/src/encap-profiles/makeself-2.1.4.ep63
-rw-r--r--encap/src/encap-profiles/ostiary-3.4.ep122
-rw-r--r--encap/src/encap-profiles/ostiary-doc-20060801.ep58
-rw-r--r--encap/src/encap-profiles/patch-2.5.9.ep54
28 files changed, 2933 insertions, 0 deletions
diff --git a/encap/src/encap-profiles/bcfg2-0.8.2.ep b/encap/src/encap-profiles/bcfg2-0.8.2.ep
new file mode 100644
index 000000000..cb8b99ecf
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-0.8.2.ep
@@ -0,0 +1,444 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-0.8.2"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/bcfg/bcfg2-0.8.2.tar.gz
+ ftp://ftp.mcs.anl.gov/pub/bcfg/bcfg2-0.8.2.tar.gz"
+>
+
+<configure>
+:
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean
+</clean>
+
+</source>
+
+<prepackage type="set"><![CDATA[
+# Make binaries available from /usr/local/bin
+test -d bin || mkdir bin
+for FILE in `ls lib/bcfg2/bin`; do \
+ ln -sf ../lib/bcfg2/bin/${FILE} bin/${FILE}; \
+ if [ ! "`printf "${FILE}" | cut -c 1-5`x" = "bcfg2x" ]; then \
+ ln -sf ../lib/bcfg2/bin/${FILE} bin/b2-${FILE}; \
+ fi; \
+done
+# Make doc available from /usr/local/share/doc/bcfg2
+test -d share || mkdir share
+test -d share/doc || mkdir share/doc
+test -d share/doc/bcfg2 || mkdir share/doc/bcfg2
+(cp ${builddir}/doc/manual.pdf share/doc/bcfg2/ || true)
+cp -r ${builddir}/examples share/doc/bcfg2/
+# Make man pages available from /usr/local/man
+mv lib/bcfg2/share/man .
+# Make tools dirs and copy over tools
+test -d lib/bcfg2/tools || mkdir lib/bcfg2/tools
+cp ${builddir}/tools/* lib/bcfg2/tools/
+test -d sbin || mkdir sbin
+test -d share/doc/bcfg2/tools || mkdir share/doc/bcfg2/tools
+# Makes tools with #! line executable
+for FILE in `ls lib/bcfg2/tools`; do \
+ F="lib/bcfg2/tools/${FILE}"; \
+ if [ "`head -1 ${F} | grep ^#\!/`x" != "x" ]; then \
+ chmod 755 ${F} ; \
+ fi; \
+done
+# Make executable tools available from /usr/local/sbin, and nonexecutable
+# tools/tools doc available from /usr/local/share/doc/bcfg2/tools
+for FILE in `ls lib/bcfg2/tools`; do \
+ F="lib/bcfg2/tools/${FILE}"; \
+ if [ -x ${F} ]; then \
+ ln -sf ../lib/bcfg2/tools/${FILE} sbin/b2-example-tool-${FILE}; \
+ else \
+ ln -sf ../../../../lib/bcfg2/tools/${FILE} share/doc/bcfg2/tools/${FILE}; \
+ fi; \
+done
+# daemontools stuff
+test -d var || mkdir var
+test -d var/svc.d || mkdir var/svc.d
+test -d var/svc.d/bcfg2-client || mkdir var/svc.d/bcfg2-client
+test -d var/svc.d/bcfg2-client/log || mkdir var/svc.d/bcfg2-client/log
+test -d var/svc.d/bcfg2-server || mkdir var/svc.d/bcfg2-server
+test -d var/svc.d/bcfg2-server/log || mkdir var/svc.d/bcfg2-server/log
+# Make "this encap is installed" sentinal file available in /usr/local/var/encap
+test -d var/encap || mkdir var/encap
+touch var/encap/${ENCAP_PKGNAME}
+]]></prepackage>
+
+<include_file name="b2-regexplace.py" mode="0755"><![CDATA[
+#!/usr/local/lib/bcfg2/bin/python
+
+# regexplace: regular expression search and replace
+# Stefano Spinucci
+# 2006-02-07 (rev 4)
+# Daniel Clark
+# 2006-08-03 (modified for bcfg2 encap use)
+# thanks to roadrunner.py
+# http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/52553
+# for some ideas and some code
+# tested with python 2.4.3
+
+import sys, os, re, string
+
+# pupulate and return 'fileslist[]' with all files inside 'dir' matching 'regx'
+def make_files_list(dir, regx):
+
+ # if dir is not a directory, exit with error
+ if not os.path.isdir(dir):
+ sys.exit(dir + ' is not a valid dir to walk !!!')
+
+ # compile the search regexp
+ cregex=re.compile(regx)
+
+ # initialize the file list
+ fileslist = []
+
+ # loop on all files and select files matching 'regx'
+ # don't include symbolic links
+ for root, dirs, files in os.walk(dir):
+ for name in files:
+ if cregex.search(name) and name not in ("b2-regexplace.sh", "b2-regexplace.py", "postinstall", "postinstall.log", "bcfg2-0.8.2.ep"):
+ path = os.path.join(root, name)
+ if not os.path.islink(path):
+ fileslist.append(path)
+
+ # return the file list
+ return fileslist[:]
+
+# in all files in 'fileslist' search the regexp 'searchregx' and replace
+# with 'replacestring'; real substitution in files only if 'simulation' = 0
+def replace_in_files(fileslist, searchregx, replacestring, simulation):
+
+ # compile regexp
+ cregex=re.compile(searchregx)
+
+ # loop on all files
+ for xfile in fileslist:
+
+ # initialize the replace flag
+ replaceflag=0
+
+ # open file for read
+ readlines=open(xfile,'r').readlines()
+ # intialize the list counter
+ listindex = -1
+
+ # search and replace in current file printing to the user changed lines
+ for currentline in readlines:
+
+ # increment the list counter
+ listindex = listindex + 1
+
+ # if the regexp is found
+ if cregex.search(currentline):
+
+ # make the substitution
+ f=re.sub(searchregx,replacestring,currentline)
+
+ # print the current filename, the old string and the new string
+ print '\n' + xfile
+ print '- ' + currentline ,
+ if currentline[-1:]!='\n': print '\n' ,
+ print '+ ' + f ,
+ if f[-1:]!='\n': print '\n' ,
+
+ # if substitution is real
+ if simulation == 0:
+
+ # update the whole file variable ('readlines')
+ readlines[listindex] = f
+ replaceflag=1
+
+ # if some text was replaced
+ # overwrite the original file
+ if replaceflag==1:
+
+ # open the file for writting
+ write_file=open(xfile,'w')
+
+ # overwrite the file
+ for line in readlines:
+ write_file.write(line)
+
+ # close the file
+ write_file.close()
+
+# main function
+def main():
+
+ # if parameters are wrong, exit with error
+ if len(sys.argv) < 5:
+
+ print 'Usage: regexplace.py dirname files-regexp search-regexp replace-string'
+
+ sys.exit(1)
+
+ # make the file list
+ fileslist = make_files_list(sys.argv[1], sys.argv[2])
+
+ # real execution
+ replace_in_files(fileslist, sys.argv[3], sys.argv[4], 0)
+
+ # simulated execution
+ #replace_in_files(fileslist, sys.argv[3], sys.argv[4], 1)
+
+
+if __name__ == '__main__':
+ main()
+]]></include_file>
+
+<include_file name="b2-regexplace.sh" mode="0755"><![CDATA[
+#!/bin/sh
+
+# This fixes paths for the bcfg2 encap packaging.
+
+BASEDIR="`echo ${0} | xargs -n1 dirname`"
+REGEXPLACE="${BASEDIR}/b2-regexplace.py"
+PYTHON="/usr/local/lib/bcfg2/bin/python"
+BINARIES="${REGEXPLACE} ${PYTHON}"
+COMPILEALL="/usr/local/lib/bcfg2/lib/python2.4/compileall.py"
+
+printf "**** Running postinstall with BASEDIR=|${BASEDIR}|...\n"
+for BINARY in ${BINARIES}; do
+ if [ ! -x ${BINARY} ]; then
+ printf "\nERROR: ${BINARY} is not executable, exiting...\n"
+ exit 1
+ fi
+done
+
+for FILE in ${COMPILEALL}; do
+ if [ ! -f ${FILE} ]; then
+ printf "\nERROR: ${FILE} does not exist, exiting...\n"
+ exit 1
+ fi
+done
+
+# Do not run more than once; it does not converge.
+# (/usr/local/usr/local/bcfg2.conf bug)
+if [ "${1}x" != "firstx" ]; then
+ printf "\nb2-regexplace.sh: Already ran\n\t${BASEDIR}/b2-regexplace.sh, not running again...\n"
+ exit 0
+fi
+
+printf "\nRemoving bcfg2 .pyc files...\n"
+find ${BASEDIR} -type f | grep "\.pyc$" | xargs -n1 rm
+
+printf "\nFixing bcfg2 paths...\n"
+
+printf "\nReplacing \"/etc/bcfg2.conf\" with \"/usr/local/etc/bcfg2.conf\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* \/etc\/bcfg2.conf \/usr\/local\/etc\/bcfg2.conf
+
+printf "\nReplacing \"/local/sbin/epkg\" with \"/usr/local/bin/epkg\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* \/local\/sbin\/epkg \/usr\/local\/bin\/epkg
+
+printf "\nReplacing \"/usr/share/bcfg2\" with \"/usr/local/lib/bcfg2/share/bcfg2\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* \/usr\/share\/bcfg2\/ \/usr\/local\/lib\/bcfg2\/share\/bcfg2\/
+
+printf "\nReplacing \"prefix = '/usr'\" with \"prefix = '/usr/local/lib/bcfg2'\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* prefix\ =\ \'\/usr\' prefix\ =\ \'/usr/local/lib/bcfg2\'
+
+printf "\nReplacing \"xmllint\" with \"/usr/local/bin/b2-xmllint\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* xmllint \/usr\/local\/bin\/b2-xmllint
+
+printf "\nReplacing \"#!/usr/bin/env python\" with "
+printf "\"#!/usr/local/lib/bcfg2/bin/python\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* \#\!\/usr\/bin\/env\ python \#\!\/usr\/local\/lib\/bcfg2\/bin\/python
+
+printf "\nReplacing \"#!/usr/bin/perl\" with \"#!/usr/bin/env perl\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* \#\!\/usr\/bin\/perl \#\!\/usr\/bin\/env\ perl
+
+printf "\nReplacing \"#!/usr/bin/python\" with "
+printf "\"#!/usr/local/lib/bcfg2/bin/python\"...\n"
+${REGEXPLACE} ${BASEDIR} .\* \#\!\/usr\/bin\/python \#\!\/usr\/local\/lib\/bcfg2\/bin\/python
+
+printf "\nCreating bcfg2 .pyc files...\n"
+${PYTHON} ${COMPILEALL} ${BASEDIR}
+
+exit 0
+]]></include_file>
+
+<include_file name="var/svc.d/bcfg2-client/bcfg2-client.sh" mode="0755"><![CDATA[
+#!/bin/sh
+
+# note: variables provided from environment with envdir:
+# /usr/local/etc/default/bcfg2-client/env/OPTIONS
+# /usr/local/etc/default/bcfg2-client/env/RUN_INTERVAL_SECONDS
+
+ENVDIR="/usr/local/etc/default/bcfg2-client/env"
+
+# make sure we have options
+if [ ! -f ${ENVDIR}/OPTIONS ]; then
+ printf "WARNING: ${ENVDIR}/OPTIONS\n"
+ printf "WARNING: does not exist. Using default of \"-q -v -d -n\"\n"
+ OPTIONS="-q -v -d -n"
+fi
+
+# make sure we have a sleep variable
+if [ "${RUN_INTERVAL_SECONDS}x" = "x" ]; then
+ printf "WARNING: ${ENVDIR}/RUN_INTERVAL_SECONDS\n"
+ printf "WARNING: does not exist or has no value.\n"
+ printf "WARNING: Using default of 3600 seconds between runs.\n"
+ RUN_INTERVAL_SECONDS=3600
+fi
+
+# loop forever
+while :
+do
+ printf "*** starting /usr/local/bin/bcfg2 ${OPTIONS} ...\n"
+ /usr/local/bin/bcfg2 ${OPTIONS}
+ printf "*** sleeping ${RUN_INTERVAL_SECONDS} seconds ...\n"
+ sleep ${RUN_INTERVAL_SECONDS}
+done
+
+exit 0
+]]></include_file>
+
+<include_file name="var/svc.d/bcfg2-client/run" mode="0755"><![CDATA[
+#!/bin/sh
+exec 2>&1
+printf "*** exec /command/envdir /usr/local/etc/default/bcfg2-client/env ./bcfg2-client.sh ...\n"
+exec /command/envdir /usr/local/etc/default/bcfg2-client/env ./bcfg2-client.sh
+]]></include_file>
+
+<include_file name="var/svc.d/bcfg2-client/log/run" mode="0755"><![CDATA[
+#!/bin/sh
+exec 2>&1
+exec /command/multilog t /usr/local/var/multilog/bcfg2-client
+]]></include_file>
+
+<include_file name="var/svc.d/bcfg2-server/run" mode="0755"><![CDATA[
+#!/bin/sh
+exec 2>&1
+/command/envdir /usr/local/etc/default/bcfg2-server/env /bin/sh -c '\
+ printf "*** exec /usr/local/bin/bcfg2-server ${OPTIONS} ...\n"'
+exec /command/envdir /usr/local/etc/default/bcfg2-server/env /bin/sh -c '\
+ exec /usr/local/bin/bcfg2-server ${OPTIONS}'
+]]></include_file>
+
+<include_file name="var/svc.d/bcfg2-server/log/run" mode="0755"><![CDATA[
+#!/bin/sh
+exec 2>&1
+exec /command/multilog t /usr/local/var/multilog/bcfg2-server
+]]></include_file>
+
+<include_file name="postinstall" mode="0755"><![CDATA[
+#!/bin/sh
+BASEDIR="`echo ${0} | xargs -n1 dirname`"
+MULTILOG="/usr/local/var/multilog"
+DEFAULT="/usr/local/etc/default"
+
+# Fix paths
+if [ ! -f ${BASEDIR}/postinstall.log ]; then
+ test -x ${BASEDIR}/b2-regexplace.sh || exit 1
+ ${BASEDIR}/b2-regexplace.sh first > ${BASEDIR}/postinstall.log 2>&1 3>&1
+else
+ printf "\npostinstall: already ran\n\t${BASEDIR}/b2-regexplace.sh, not running again...\n" >> ${BASEDIR}/postinstall.log
+fi
+
+# Make sure log directories exist
+test -d /usr/local/var || mkdir /usr/local/var
+test -d $MULTILOG || mkdir $MULTILOG
+test -d $MULTILOG/bcfg2-client || mkdir $MULTILOG/bcfg2-client
+test -d $MULTILOG/bcfg2-server || mkdir $MULTILOG/bcfg2-server
+
+# Make sure environment directories exist
+test -d /usr/local/etc || mkdir /usr/local/etc
+test -d $DEFAULT || mkdir $DEFAULT
+test -d $DEFAULT/bcfg2-client || mkdir $DEFAULT/bcfg2-client
+test -d $DEFAULT/bcfg2-client/env || mkdir $DEFAULT/bcfg2-client/env
+test -d $DEFAULT/bcfg2-server || mkdir $DEFAULT/bcfg2-server
+test -d $DEFAULT/bcfg2-server/env || mkdir $DEFAULT/bcfg2-server/env
+
+# Put in default client environment if it didn't exist
+if [ ! -f $DEFAULT/bcfg2-client/.SENTINEL ]; then
+ touch $DEFAULT/bcfg2-client/.SENTINEL
+ echo "-q -v -d -n" > $DEFAULT/bcfg2-client/env/OPTIONS
+ echo "3600" > $DEFAULT/bcfg2-client/env/RUN_INTERVAL_SECONDS
+fi
+
+# Put in default server environment if it didn't exist
+if [ ! -f $DEFAULT/bcfg2-server/.SENTINEL ]; then
+ touch $DEFAULT/bcfg2-server/.SENTINEL
+ echo "-v" > $DEFAULT/bcfg2-server/env/OPTIONS
+fi
+]]></include_file>
+
+
+<encapinfo>
+description Bcfg2 - Provides a declarative interface to system configuration
+prereq pkgspec >= bcfg2-zlib-1.2.3
+prereq pkgspec >= bcfg2-libiconv-1.9.2
+prereq pkgspec >= bcfg2-gettext-0.14.5
+prereq pkgspec >= bcfg2-openssl-0.9.8b
+prereq pkgspec >= bcfg2-libstdc++-0.1
+prereq pkgspec >= bcfg2-libgcc-0.1
+prereq pkgspec >= bcfg2-python-2.4.3
+prereq pkgspec >= bcfg2-pyopenssl-0.6
+prereq pkgspec >= bcfg2-libxml2-2.6.26
+prereq pkgspec >= bcfg2-libxslt-1.1.17
+prereq pkgspec >= bcfg2-lxml-1.0.1
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep b/encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep
new file mode 100644
index 000000000..ba77108f3
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep
@@ -0,0 +1,92 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-cheetah-2.0rc7"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/cheetah/Cheetah-2.0rc7.tar.gz
+http://umn.dl.sourceforge.net/sourceforge/cheetahtemplate/Cheetah-2.0rc7.tar.gz"
+>
+
+<configure>
+/usr/local/lib/bcfg2/bin/python setup.py build_ext \
+-I/usr/local/lib/bcfg2/include \
+-L/usr/local/lib/bcfg2/lib \
+-L/usr/local/lib/bcfg2/lib/python2.4/site-packages
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 \
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean --all
+</clean>
+
+</source>
+
+<prepackage type="set">
+test -d var || mkdir var
+test -d var/encap || mkdir var/encap
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description cheetah - the python-powered template engine
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-cheetah-doc-0.9.16a1.ep b/encap/src/encap-profiles/bcfg2-cheetah-doc-0.9.16a1.ep
new file mode 100644
index 000000000..023e0bf21
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-cheetah-doc-0.9.16a1.ep
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-cheetah-doc-0.9.16a1"
+>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/cheetah/CheetahDocs-0.9.16a1.tgz
+http://umn.dl.sourceforge.net/sourceforge/cheetahtemplate/CheetahDocs-0.9.16a1.tgz"
+subdir="CheetahDocs"
+>
+
+<configure>
+:
+</configure>
+
+<build>
+:
+</build>
+
+<install>
+test -d ${ENCAP_SOURCE} || mkdir ${ENCAP_SOURCE}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME} || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/cheetah || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/cheetah
+cp -R * ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/cheetah
+</install>
+
+<clean>
+:
+</clean>
+
+</source>
+
+<prepackage>
+test -d var || mkdir var
+test -d var/encap || mkdir var/encap
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description cheetah-doc - cheetah template system documentation
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep b/encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep
new file mode 100644
index 000000000..db2c2037d
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-gamin-0.1.7"
+>
+
+<prereq package="bcfg2-glib-2.8.6" />
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/gamin/gamin-0.1.7.tar.gz
+ http://www.gnome.org/~veillard/gamin/sources/gamin-0.1.7.tar.gz"
+>
+
+<configure>
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2"
+</configure>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description Gamin - The File Alteration Monitor
+prereq pkgspec >= bcfg2-glib-2.8.6
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-gettext-0.14.5.ep b/encap/src/encap-profiles/bcfg2-gettext-0.14.5.ep
new file mode 100644
index 000000000..eaf6b01e1
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-gettext-0.14.5.ep
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-gettext-0.14.5"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/gettext/gettext-0.14.5.tar.gz
+ http://ftp.gnu.org/pub/gnu/gettext/gettext-0.14.5.tar.gz"
+>
+
+<configure>
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2"
+</configure>
+
+</source>
+
+<prepackage type="set">
+# Make man pages available from /usr/local/lib/bcfg2/man
+mv lib/bcfg2/share/man lib/bcfg2/
+# Other stuff...
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description Gettext - Tools to produce multi-lingual messages
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-glib-2.8.6.ep b/encap/src/encap-profiles/bcfg2-glib-2.8.6.ep
new file mode 100644
index 000000000..3c0103706
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-glib-2.8.6.ep
@@ -0,0 +1,77 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-glib-2.8.6"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/glib/glib-2.8.6.tar.gz
+ http://ftp.gnome.org/pub/GNOME/sources/glib/2.8/glib-2.8.6.tar.gz"
+>
+
+<configure>
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+ --with-libiconv=gnu
+</configure>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description GLib - data structure handling, portability wrappers, and interfaces
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-libgcc-0.1.sh b/encap/src/encap-profiles/bcfg2-libgcc-0.1.sh
new file mode 100755
index 000000000..d6de6c471
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-libgcc-0.1.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+# $Id$
+
+# Creates encap of libgcc libraries from build machine so other machines
+# don't need to have gcc installed, or in the case of GNU/Linux so we're
+# using a consistant libgcc version everywhere.
+
+ENCAP_SOURCE=${ENCAPDIR}
+ENCAP_PKGNAME=bcfg2-libgcc-0.1
+PATH=$PATH:/usr/local/bin
+export PATH
+
+if [ "${ENCAP_SOURCE}x" = "x" ]; then
+ printf "Error in ${ENCAP_PKGNAME}.sh : ENCAPDIR not set, exiting...\n"
+ exit 1
+fi
+
+umask 022
+
+CXXBASE=`which gcc | xargs dirname | xargs dirname`
+for LIB in `cd ${CXXBASE} && find lib | grep libgcc`; do
+ cd ${CXXBASE}
+ LIBDIR=`dirname ${LIB}`
+ NEWDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2/${LIBDIR}
+ if [ ! -d ${NEWDIR} ]; then mkdir -p ${NEWDIR}; fi
+ cp -p ${LIB} ${NEWDIR}
+done
+
+SDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/var/encap
+mkdir -p ${SDIR}
+touch ${SDIR}/${ENCAP_PKGNAME}
+
+exit 0
+
diff --git a/encap/src/encap-profiles/bcfg2-libiconv-1.9.2.ep b/encap/src/encap-profiles/bcfg2-libiconv-1.9.2.ep
new file mode 100644
index 000000000..b25f7090b
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-libiconv-1.9.2.ep
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-libiconv-1.9.2"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/libiconv/libiconv-1.9.2.tar.gz
+ http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.9.2.tar.gz"
+>
+
+<configure>
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2"
+</configure>
+
+</source>
+
+<prepackage type="set">
+# Make man pages available from /usr/local/lib/bcfg2/man
+mv lib/bcfg2/share/man lib/bcfg2/
+# Other stuff...
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description Libiconv - Converts between character encodings
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-libstdc++-0.1.sh b/encap/src/encap-profiles/bcfg2-libstdc++-0.1.sh
new file mode 100755
index 000000000..6b3fe4a98
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-libstdc++-0.1.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+# $Id$
+
+# Creates encap of libstdc++ libraries from build machine so other machines
+# don't need to have g++ installed, or in the case of GNU/Linux so we're
+# using a consistant libstdc++ version everywhere.
+
+ENCAP_SOURCE=${ENCAPDIR}
+ENCAP_PKGNAME=bcfg2-libstdc++-0.1
+PATH=$PATH:/usr/local/bin
+export PATH
+
+if [ "${ENCAP_SOURCE}x" = "x" ]; then
+ printf "Error in ${ENCAP_PKGNAME}.sh : ENCAPDIR not set, exiting...\n"
+ exit 1
+fi
+
+umask 022
+
+CXXBASE=`which g++ | xargs dirname | xargs dirname`
+for LIB in `cd ${CXXBASE} && find lib | grep libstdc++`; do
+ cd ${CXXBASE}
+ LIBDIR=`dirname ${LIB}`
+ NEWDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2/${LIBDIR}
+ if [ ! -d ${NEWDIR} ]; then mkdir -p ${NEWDIR}; fi
+ cp -p ${LIB} ${NEWDIR}
+done
+
+SDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/var/encap
+mkdir -p ${SDIR}
+touch ${SDIR}/${ENCAP_PKGNAME}
+
+exit 0
+
diff --git a/encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep b/encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep
new file mode 100644
index 000000000..318f90787
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep
@@ -0,0 +1,86 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-libxml2-2.6.26"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/libxml2/libxml2-sources-2.6.26.tar.gz
+ ftp://xmlsoft.org/libxml2/libxml2-sources-2.6.26.tar.gz"
+subdir="libxml2-2.6.26"
+>
+
+<configure>
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+PLATFORM_IF_MATCH(aix)
+PLATFORM_ELSE
+ --enable-shared \
+PLATFORM_ENDIF
+ --enable-ipv6=no \
+ --with-python=/usr/local/lib/bcfg2 \
+ --with-zlib=/usr/local/lib/bcfg2
+</configure>
+
+</source>
+
+<prepackage type="set">
+mkdir bin 2>/dev/null || exit 0
+ln -sf ../lib/bcfg2/bin/xmllint bin/b2-xmllint
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description Libxml2 - XML C library for the Gnome project
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep b/encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep
new file mode 100644
index 000000000..8845c4a4f
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-libxslt-1.1.17"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/libxslt/libxslt-1.1.17.tar.gz
+ ftp://xmlsoft.org/libxml2/libxslt-1.1.17.tar.gz"
+>
+
+<configure>
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+PLATFORM_IF_MATCH(aix)
+PLATFORM_ELSE
+ --enable-shared \
+PLATFORM_ENDIF
+ --with-crypto=no \
+ --with-libxml-prefix=/usr/local/lib/bcfg2 \
+ --with-libxml-include-prefix=/usr/local/lib/bcfg2/include \
+ --with-libxml-libs-prefix=/usr/local/lib/bcfg2/lib \
+ --enable-ipv6=no \
+ --with-python=/usr/local/lib/bcfg2 \
+ --with-zlib=/usr/local/lib/bcfg2
+</configure>
+
+</source>
+
+<prepackage type="set">
+mv lib/bcfg2/lib/lib/python2.4 lib/bcfg2/lib
+rmdir lib/bcfg2/lib/lib
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description Libxml2 - XML C library for the Gnome project
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-lxml-1.0.1.ep b/encap/src/encap-profiles/bcfg2-lxml-1.0.1.ep
new file mode 100644
index 000000000..aa8e009e1
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-lxml-1.0.1.ep
@@ -0,0 +1,94 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-lxml-1.0.1"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -lexslt -L/usr/local/lib/bcfg2/lib/python2.4/site-packages -Wl,-rpath,/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib/python2.4/site-packages"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -lexslt -L/usr/local/lib/bcfg2/lib/python2.4/site-packages -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/local/lib/bcfg2/lib/python2.4/site-packages:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -lexslt -L/usr/local/lib/bcfg2/lib/python2.4/site-packages -R/usr/local/lib/bcfg2/lib:/usr/local/lib/bcfg2/lib/python2.4/site-packages:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/local/lib/bcfg2/lib/python2.4/site-packages:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/lxml/lxml-1.0.1.tgz
+ http://codespeak.net/lxml/lxml-1.0.1.tgz"
+>
+
+<configure>
+/usr/local/lib/bcfg2/bin/python setup.py build_ext \
+-I/usr/local/lib/bcfg2/include \
+-L/usr/local/lib/bcfg2/lib \
+-lexslt \
+-L/usr/local/lib/bcfg2/lib/python2.4/site-packages
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean
+make clean
+</clean>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description lxml - A Pythonic binding for the libxml2 and libxslt libraries
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-openssl-0.9.8b.ep b/encap/src/encap-profiles/bcfg2-openssl-0.9.8b.ep
new file mode 100644
index 000000000..2fa76160b
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-openssl-0.9.8b.ep
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-openssl-0.9.8b"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/openssl/openssl-0.9.8b.tar.gz
+ http://www.openssl.org/source/openssl-0.9.8b.tar.gz"
+ use_objdir="no"
+>
+
+<configure>
+./config \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+ zlib-dynamic shared \
+ -L/usr/local/lib/bcfg2/lib \
+ -I/usr/local/lib/bcfg2/include
+</configure>
+
+<build type="append">
+ ${MAKE} test
+</build>
+
+</source>
+
+<prepackage>
+# Make man pages available from /usr/local/lib/bcfg2/man
+mv lib/bcfg2/ssl/man lib/bcfg2/
+# Other stuff...
+mkdir bin 2>/dev/null || exit 0
+ln -sf ../lib/bcfg2/bin/openssl bin/b2-openssl
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description SSL encryption tool and library
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep b/encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep
new file mode 100644
index 000000000..62db17661
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep
@@ -0,0 +1,77 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-pkg-config-0.20"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/pkg-config/pkg-config-0.20.tar.gz
+ http://pkgconfig.freedesktop.org/releases/pkg-config-0.20.tar.gz"
+>
+
+<configure>
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+ --with-pc-path=/usr/local/lib/bcfg2/lib/pkgconfig
+</configure>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description pkg-config - application and library compilation helper tool
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep b/encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep
new file mode 100644
index 000000000..7f9fa97f6
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep
@@ -0,0 +1,91 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-pyopenssl-0.6"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/pyopenssl/pyOpenSSL-0.6.tar.gz
+ http://umn.dl.sourceforge.net/sourceforge/pyopenssl/pyOpenSSL-0.6.tar.gz"
+>
+
+<configure>
+/usr/local/lib/bcfg2/bin/python setup.py build_ext \
+-I/usr/local/lib/bcfg2/include/openssl \
+-L/usr/local/lib/bcfg2/lib/
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean
+</clean>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description pyOpenSSL - Python interface to the OpenSSL library
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep b/encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep
new file mode 100644
index 000000000..8fcc80449
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-pyrex-0.9.4.1"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/pyrex/Pyrex-0.9.4.1.tar.gz
+ http://www.cosc.canterbury.ac.nz/~greg/python/Pyrex/Pyrex-0.9.4.1.tar.gz"
+>
+
+<configure>
+:
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 \
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean
+</clean>
+
+</source>
+
+<prepackage type="set">
+chmod -R o+r lib/bcfg2
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description Pyrex - a Language for Writing Python Extension Modules
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-python-2.4.3.ep b/encap/src/encap-profiles/bcfg2-python-2.4.3.ep
new file mode 100644
index 000000000..f62184a08
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-python-2.4.3.ep
@@ -0,0 +1,98 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-python-2.4.3"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+ url="http://www.pobox.com/users/dclark/mirror/python/Python-2.4.3.tgz
+ http://www.python.org/ftp/python/2.4.3/Python-2.4.3.tgz"
+>
+
+<configure>
+cat setup.py \
+| sed s:\/usr\/local\/:\/usr\/local\/lib\/bcfg2\/:g \
+| sed s:\/usr\/local\/lib\/bcfg2\/ssl\/include:\/usr\/local\/lib\/bcfg2\/include:g \
+| sed s:\/usr\/contrib\/ssl\/include\/:\/usr\/local\/lib\/bcfg2\/include\/openssl\/:g \
+| sed s:\/usr\/local\/lib\/bcfg2\/ssl\/lib:\/usr\/local\/lib\/bcfg2\/lib:g \
+> setup.py.bcfg2
+mv setup.py setup.py.orig
+cp setup.py.bcfg2 setup.py
+./configure \
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+ --with-gcc \
+ --with-cxx=g++ \
+PLATFORM_ENDIF
+ --enable-shared=yes \
+ --disable-ipv6
+</configure>
+
+</source>
+
+<prepackage><![CDATA[
+rm ${builddir}/setup.py
+cp ${builddir}/setup.py.orig ${builddir}/setup.py
+echo /usr/local/lib/bcfg2/lib/python2.4/site-packages > lib/bcfg2/lib/python2.4/site-packages/usr-local-lib-bcfg2.pth
+mkdir bin 2>/dev/null || exit 0
+ln -sf ../lib/bcfg2/bin/idle bin/b2-idle
+ln -sf ../lib/bcfg2/bin/pydoc bin/b2-pydoc
+ln -sf ../lib/bcfg2/bin/python bin/b2-python
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+]]></prepackage>
+
+<encapinfo>
+description Python - Scripting language
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep b/encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep
new file mode 100644
index 000000000..57ce35310
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-python-apt-0.5.10"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/python-apt/python-apt_0.5.10.tar.gz
+ http://ftp.debian.org/debian/pool/main/p/python-apt/python-apt_0.5.10.tar.gz"
+subdir="python-apt-0.5.10"
+>
+
+<configure>
+/usr/local/lib/bcfg2/bin/python setup.py build_ext \
+-I/usr/local/lib/bcfg2/include \
+-L/usr/local/lib/bcfg2/lib \
+-L/usr/local/lib/bcfg2/lib/python2.4/site-packages
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 \
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean --all
+</clean>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description python-apt - python interface to libapt-pkg
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep b/encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep
new file mode 100644
index 000000000..4336827ae
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-python-apt-0.6.16.2ubuntu8"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/python-apt/python-apt_0.6.16.2ubuntu8.tar.gz
+ http://archive.ubuntu.com/ubuntu/pool/main/p/python-apt/python-apt_0.6.16.2ubuntu8.tar.gz"
+subdir="python-apt-0.6.16.2ubuntu8"
+>
+
+<configure>
+/usr/local/lib/bcfg2/bin/python setup.py build_ext \
+-I/usr/local/lib/bcfg2/include \
+-L/usr/local/lib/bcfg2/lib \
+-L/usr/local/lib/bcfg2/lib/python2.4/site-packages
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 \
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean --all
+</clean>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description python-apt - python interface to libapt-pkg
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep b/encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep
new file mode 100644
index 000000000..448d04351
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-python-apt-0.6.19"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/python-apt/python-apt_0.6.19.tar.gz
+ http://ftp.debian.org/debian/pool/main/p/python-apt/python-apt_0.6.19.tar.gz"
+subdir="python-apt-0.6.19"
+>
+
+<configure>
+/usr/local/lib/bcfg2/bin/python setup.py build_ext \
+-I/usr/local/lib/bcfg2/include \
+-L/usr/local/lib/bcfg2/lib \
+-L/usr/local/lib/bcfg2/lib/python2.4/site-packages
+</configure>
+
+<build>
+/usr/local/lib/bcfg2/bin/python setup.py build \
+--build-base=${builddir}/build
+</build>
+
+<install>
+/usr/local/lib/bcfg2/bin/python setup.py install \
+--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 \
+</install>
+
+<clean>
+/usr/local/lib/bcfg2/bin/python setup.py clean --all
+</clean>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description python-apt - python interface to libapt-pkg
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep b/encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep
new file mode 100644
index 000000000..cba36bfb3
--- /dev/null
+++ b/encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="bcfg2-zlib-1.2.3"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<environment
+ variable="LDFLAGS"
+PLATFORM_IF_MATCH(linux)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib"
+PLATFORM_ELSE_IF_MATCH(aix)
+ value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE_IF_MATCH(solaris)
+ value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib"
+PLATFORM_ELSE
+PLATFORM_ENDIF
+ type="set"
+/>
+
+<environment
+ variable="CPPFLAGS"
+ value="-I/usr/local/lib/bcfg2/include"
+ type="set"
+/>
+
+PLATFORM_IF_MATCH(solaris)
+<environment
+ variable="CFLAGS"
+ type="unset"
+/>
+PLATFORM_ENDIF
+
+<source
+ url="http://www.pobox.com/users/dclark/mirror/zlib/zlib-1.2.3.tar.gz
+ http://www.zlib.net/zlib-1.2.3.tar.gz"
+>
+
+<configure>
+./configure \
+PLATFORM_IF_MATCH(aix)
+PLATFORM_ELSE
+ --shared \
+PLATFORM_ENDIF
+ --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2"
+</configure>
+
+</source>
+
+<prepackage type="set">
+# Make man pages available from /usr/local/lib/bcfg2/man
+mv lib/bcfg2/share/man lib/bcfg2/
+# Other stuff...
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description Zlib compression library
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/daemontools-0.76.ep b/encap/src/encap-profiles/daemontools-0.76.ep
new file mode 100644
index 000000000..c09b67a72
--- /dev/null
+++ b/encap/src/encap-profiles/daemontools-0.76.ep
@@ -0,0 +1,444 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="daemontools-0.76"
+>
+
+<prereq package="patch-2.5.9" />
+<prereq package="m4-1.4.4" />
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/daemontools/daemontools-0.76.tar.gz
+ http://cr.yp.to/daemontools/daemontools-0.76.tar.gz"
+ use_objdir="no"
+ subdir="admin/daemontools-0.76"
+>
+
+<patch options="-p1"><![CDATA[
+#
+# http://www.gluelogic.com/code/
+#
+diff -ru daemontools-0.76/src/error.h daemontools-0.76.new/src/error.h
+--- daemontools-0.76/src/error.h 2001-07-12 12:49:49.000000000 -0400
++++ daemontools-0.76.new/src/error.h 2004-01-10 06:50:37.000000000 -0500
+@@ -3,7 +3,7 @@
+ #ifndef ERROR_H
+ #define ERROR_H
+
+-extern int errno;
++#include <errno.h>
+
+ extern int error_intr;
+ extern int error_nomem;
+diff -ru daemontools-0.76/src/svscan.c daemontools-0.76.new/src/svscan.c
+--- daemontools-0.76/src/svscan.c 2001-07-12 12:49:49.000000000 -0400
++++ daemontools-0.76.new/src/svscan.c 2004-02-08 01:50:27.000000000 -0500
+@@ -1,6 +1,7 @@
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
++#include <fcntl.h>
+ #include "direntry.h"
+ #include "strerr.h"
+ #include "error.h"
+@@ -14,6 +15,11 @@
+
+ #define SERVICES 1000
+
++#ifndef SVSCANINFO
++#define SVSCANINFO ".svscan" /* must begin with dot ('.') */
++#endif
++
++#define INFO "svscan: info: "
+ #define WARNING "svscan: warning: "
+ #define FATAL "svscan: fatal: "
+
+@@ -38,7 +44,7 @@
+ int i;
+ const char *args[3];
+
+- if (fn[0] == '.') return;
++ if (fn[0] == '.' && str_diff(fn,SVSCANINFO)) return;
+
+ if (stat(fn,&st) == -1) {
+ strerr_warn4(WARNING,"unable to stat ",fn,": ",&strerr_sys);
+@@ -59,7 +65,8 @@
+ }
+ x[i].ino = st.st_ino;
+ x[i].dev = st.st_dev;
+- x[i].pid = 0;
++ /*(fn[0]=='.' here only if SVSCANINFO; if so only supervise log/ subdir)*/
++ x[i].pid = (fn[0] != '.') ? 0 : -1;
+ x[i].pidlog = 0;
+ x[i].flaglog = 0;
+
+@@ -190,12 +197,39 @@
+ }
+ }
+
++static void open_svscan_log(void)
++{
++ const int i = numx;
++ struct stat st;
++ static char fn[] = SVSCANINFO; /* avoid compiler warning on const string */
++
++ /* (semi-paranoid; could be moreso) */
++ if (fstat(STDIN_FILENO,&st) != 0 && errno == EBADF)
++ (void) open("/dev/null", O_RDONLY);
++ if (fstat(STDOUT_FILENO,&st) != 0 && errno == EBADF)
++ (void) open("/dev/null", O_WRONLY);
++ if (fstat(STDERR_FILENO,&st) != 0 && errno == EBADF)
++ (void) open("/dev/null", O_WRONLY);
++
++ if (stat(fn,&st) == 0) {
++ start(fn);
++ if (i+1 == numx && x[i].pidlog != 0) {
++ (void) dup2(x[i].pi[1], STDOUT_FILENO);
++ (void) dup2(x[i].pi[1], STDERR_FILENO);
++ strerr_warn1("",0);
++ strerr_warn2(INFO,"*** Starting svscan",0);
++ }
++ }
++}
++
+ int main(int argc,char **argv)
+ {
+ if (argv[0] && argv[1])
+ if (chdir(argv[1]) == -1)
+ strerr_die4sys(111,FATAL,"unable to chdir to ",argv[1],": ");
+
++ open_svscan_log();
++
+ for (;;) {
+ doit();
+ sleep(5);
+
+]]></patch>
+
+<patch options="-p1"><![CDATA[
+# daemontools-0.76.sigq12.patch
+#
+# This patch adds the following signal capabilities to the
+# daemontools-0.76 "svc"/"supervise" utilities:
+#
+# option signal
+# ------ -------
+# svc -q SIGQUIT
+# svc -1 SIGUSR1
+# svc -2 SIGUSR2
+#
+# Apply the patch:
+#
+# # cd /package/admin/daemontools-0.76
+# # patch -p1 < /path/to/this/patch
+#
+# Then (re)compile/(re)install daemontools:
+#
+# # package/install
+#
+# Notes:
+#
+# The SIGUSR1/SIGUSR2 patch originally by Scott Gifford:
+# http://www.suspectclass.com/~sgifford/daemontools/daemontools-0.76-usr12.README
+#
+# We added SIGQUIT for the mathopd web server:
+# http://thedjbway.org/services/mathopd.html
+#
+# wcm, 2004.03.17 - 2004.03.17
+# ===
+diff -ru daemontools-0.76/src/supervise.c daemontools-0.76.sigq12/src/supervise.c
+--- daemontools-0.76/src/supervise.c Thu Jul 12 19:49:49 2001
++++ daemontools-0.76.sigq12/src/supervise.c Wed Mar 17 10:30:25 2004
+@@ -187,6 +187,15 @@
+ case 'i':
+ if (pid) kill(pid,SIGINT);
+ break;
++ case 'q':
++ if (pid) kill(pid,SIGQUIT);
++ break;
++ case '1':
++ if (pid) kill(pid,SIGUSR1);
++ break;
++ case '2':
++ if (pid) kill(pid,SIGUSR2);
++ break;
+ case 'p':
+ flagpaused = 1;
+ announce();
+diff -ru daemontools-0.76/src/svc.c daemontools-0.76.sigq12/src/svc.c
+--- daemontools-0.76/src/svc.c Thu Jul 12 19:49:49 2001
++++ daemontools-0.76.sigq12/src/svc.c Wed Mar 17 10:31:47 2004
+@@ -27,9 +27,9 @@
+
+ sig_ignore(sig_pipe);
+
+- while ((opt = getopt(argc,argv,"udopchaitkx")) != opteof)
++ while ((opt = getopt(argc,argv,"udopchaitkxq12")) != opteof)
+ if (opt == '?')
+- strerr_die1x(100,"svc options: u up, d down, o once, x exit, p pause, c continue, h hup, a alarm, i interrupt, t term, k kill");
++ strerr_die1x(100,"svc options: u up, d down, o once, x exit, p pause, c continue, h hup, a alarm, i interrupt, t term, k kill, q quit, 1 SIGUSR1, 2 SIGUSR2");
+ else
+ if (datalen < sizeof data)
+ if (byte_chr(data,datalen,opt) == datalen)
+
+]]></patch>
+
+<patch options="-p2"><![CDATA[
+diff -ur admin/daemontools-0.76-orig/src/supervise.c admin/daemontools-0.76/src/supervise.c
+--- admin/daemontools-0.76-orig/src/supervise.c 2001-07-12 12:49:27.000000000 -0400
++++ admin/daemontools-0.76/src/supervise.c 2005-12-27 16:15:41.000000000 -0500
+@@ -148,7 +148,6 @@
+ pidchange();
+ announce();
+ if (flagexit) return;
+- if (flagwant && flagwantup) trystart();
+ break;
+ }
+ }
+@@ -165,7 +164,6 @@
+ flagwant = 1;
+ flagwantup = 1;
+ announce();
+- if (!pid) trystart();
+ break;
+ case 'o':
+ flagwant = 0;
+@@ -202,6 +200,8 @@
+ announce();
+ break;
+ }
++
++ if (!pid && flagwant && flagwantup) trystart();
+ }
+ }
+
+]]></patch>
+
+<configure>
+:
+</configure>
+
+<build>
+./package/compile
+</build>
+
+<install>
+test -d ${ENCAP_SOURCE} || mkdir ${ENCAP_SOURCE}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME} || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/src || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/src
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package
+cp command/* ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin
+cp package/run ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package
+cp package/commands ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package
+cp package/boot.inittab ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package
+cp package/boot.rclocal ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package
+cp package/run.inittab ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package
+cp package/run.rclocal ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/package
+</install>
+
+<clean>
+:
+</clean>
+
+</source>
+
+<prepackage>
+mv package/run package/run.orig
+mv package/run.inittab package/run.inittab.orig
+mv package/boot.inittab package/boot.inittab.orig
+mv package/run.rclocal package/run.inittab.orig
+mv package/boot.rclocal package/boot.inittab.orig
+mkdir var 2>/dev/null || exit 1
+mkdir var/svc.d 2>/dev/null || exit 1
+mkdir var/svc.d/svscan 2>/dev/null || exit 1
+mkdir var/svc.d/svscan/log 2>/dev/null || exit 1
+mkdir var/encap 2>/dev/null || exit 1
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<include_file name="var/svc.d/svscan/log/run" mode="0755"><![CDATA[
+#!/bin/sh
+exec 2>&1
+exec /command/multilog t /usr/local/var/multilog/svscan
+]]></include_file>
+
+<include_file name="bin/svrm" mode="0755"><![CDATA[
+#!/bin/sh
+# Remove a daemontools service
+PATH=/command:$PATH
+export PATH
+if [ "${1}x" = "x" -o "${2}x" != "x" ]; then
+ printf "Usage: svrm [SERVICE]\n"
+ exit 1
+fi
+SERVICE="`basename ${1}`"
+if [ ! -e "/service/$SERVICE" ]; then
+ printf "Service \"${SERVICE}\" not installed. Installed services:\n"
+ svstat /service/*
+ exit 1
+else
+ cd /service/$SERVICE
+ REALDIR=`pwd -P`
+ rm /service/$SERVICE
+ svc -dx . log
+ rm -rf ${REALDIR}/supervise
+ rm -rf ${REALDIR}/log/supervise
+fi
+exit 0
+]]></include_file>
+
+<include_file name="bin/svscan.rc" mode="0755"><![CDATA[
+#!/bin/sh
+# svscan.rc - replacement for /command/svscanboot
+# * Combined with .svscan patch, logs svscan to a file
+# * If /service/*/shutdown exists, run it before killing service
+
+PATH=/command:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin
+SERVICES=${2:-"/service"}
+
+exec </dev/null >/dev/null 2>&1
+
+for log_dir in "$SERVICES"/*/log "$SERVICES"/.svscan/log; do
+ if [ -d "$log_dir" ] \
+ && svok "$log_dir" \
+ && svstat "$log_dir" | grep -q ": up"
+ then
+ svc -ox "$log_dir"
+ fi
+done
+
+for service_dir in "$SERVICES"/*; do
+ if [ -d "$service_dir" ] \
+ && svok "$service_dir" \
+ && svstat "$service_dir" | grep -q ": up"
+ then
+ [ -x "$service_dir"/shutdown ] && "$service_dir"/shutdown
+ svc -dx "$service_dir"
+ fi
+done
+
+[ "$1" = "start" ] && exec env - PATH=$PATH svscan "$SERVICES"
+]]></include_file>
+
+<include_file name="package/run" mode="0755"><![CDATA[
+#!/bin/sh -e
+
+umask 022
+test -d package || ( echo 'Wrong working directory.'; exit 1 )
+test -d src || ( echo 'Wrong working directory.'; exit 1 )
+
+if test -d /service
+then
+ echo '/service exists. I assume that svscan is already running.'
+ exit 0
+fi
+
+echo 'Creating /service...'
+mkdir /service
+echo 'Creating symlink /service/.svscan -> /usr/local/var/svc.d/svscan ...'
+ln -s /usr/local/var/svc.d/svscan /service/.svscan
+
+if test -r /etc/inittab
+then
+ /command/setlock /etc/inittab package/run.inittab
+else
+ /command/setlock /etc/rc.local package/run.rclocal
+fi
+]]></include_file>
+
+<include_file name="package/run.inittab" mode="0755"><![CDATA[
+#!/bin/sh -e
+
+if grep svscan.rc /etc/inittab >/dev/null
+then
+ echo 'inittab contains an svscan.rc line. I assume that svscan is already running.
+'
+else
+ echo 'Adding svscan.rc to inittab...'
+ rm -f /etc/inittab'{new}'
+ cat /etc/inittab package/boot.inittab > /etc/inittab'{new}'
+ mv -f /etc/inittab'{new}' /etc/inittab
+ kill -HUP 1
+ echo 'init should start svscan now.'
+fi
+]]></include_file>
+
+<include_file name="package/boot.inittab" mode="0644"><![CDATA[
+
+SV:2345:respawn:/command/svscan.rc start
+SZ:S016:once:/command/svscan.rc stop
+]]></include_file>
+
+<include_file name="package/run.rclocal" mode="0755"><![CDATA[
+#!/bin/sh -e
+
+if grep svscan.rc /etc/rc.local >/dev/null
+then
+ echo 'rc.local contains an svscan.rc line. I assume that svscan is already running
+.'
+else
+ echo 'Adding svscan.rc to /etc/rc.local...'
+ rm -f /etc/rc.local'{new}'
+ cat /etc/rc.local package/boot.rclocal > /etc/rc.local'{new}'
+ mv -f /etc/rc.local'{new}' /etc/rc.local
+ echo 'Reboot now to start svscan.'
+fi
+]]></include_file>
+
+<include_file name="package/boot.rclocal" mode="0644"><![CDATA[
+
+csh -cf '/command/svscan.rc start &'
+]]></include_file>
+
+<include_file name="postinstall" mode="0755"><![CDATA[
+#!/bin/sh -e
+umask 002
+BASEDIR="`echo ${0} | xargs -n1 dirname`"
+LOG=${BASEDIR}/postinstall.log
+exec > $LOG 2>&1
+printf "Running daemontools postinstall script...\n"
+date
+test -d /usr/local/var || mkdir /usr/local/var
+test -d /usr/local/var/multilog || mkdir /usr/local/var/multilog
+test -d /usr/local/var/multilog/svscan || mkdir /usr/local/var/multilog/svscan
+test -h /command || ln -s /usr/local/encap/daemontools-0.76/bin /command
+cd /usr/local/encap/daemontools-0.76 && ./package/run
+printf "Finished daemontools postinstall script.\n"
+]]></include_file>
+
+<encapinfo>
+description daemontools - a collection of tools for managing UNIX services
+exclude src
+exclude package
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/daemontools-doc-20060731.ep b/encap/src/encap-profiles/daemontools-doc-20060731.ep
new file mode 100644
index 000000000..dee918647
--- /dev/null
+++ b/encap/src/encap-profiles/daemontools-doc-20060731.ep
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="daemontools-doc-20060731"
+>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/daemontools/daemontools-doc-20060731.tar.gz"
+ use_objdir="no"
+>
+
+<configure>
+:
+</configure>
+
+<build>
+:
+</build>
+
+<install>
+test -d ${ENCAP_SOURCE} || mkdir ${ENCAP_SOURCE}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME} || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/daemontools || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/daemontools
+cp -R * ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/daemontools
+</install>
+
+<clean>
+:
+</clean>
+
+</source>
+
+<prepackage>
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description daemontools-doc - documentation from daemontools websites
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/m4-1.4.4.sh b/encap/src/encap-profiles/m4-1.4.4.sh
new file mode 100755
index 000000000..b424007eb
--- /dev/null
+++ b/encap/src/encap-profiles/m4-1.4.4.sh
@@ -0,0 +1,74 @@
+#!/bin/sh
+# $Id$
+
+ENCAP_PKGNAME=m4-1.4.4
+PATH=$PATH:/usr/local/bin
+export PATH
+
+cat > ${ENCAP_PKGNAME}.ep << EOF
+<?xml version="1.0"?>
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="m4-1.4.4"
+>
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+ value="/usr/local/bin:"
+ type="prepend"
+/>
+
+
+<environment
+ variable="PATH"
+ value=":/usr/sfw/bin:/usr/ccs/bin"
+ type="append"
+/>
+
+<source
+ url="http://www.pobox.com/users/dclark/mirror/m4/m4-1.4.4.tar.gz
+ http://ftp.gnu.org/gnu/m4/m4-1.4.4.tar.gz"
+>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description m4 - GNU implementation of the traditional Unix macro processor
+</encapinfo>
+
+</encap_profile>
+EOF
+
+cat > m4-fake << EOF
+#!/bin/sh
+cat \$4
+EOF
+
+chmod 755 m4-fake
+
+( ${MKENCAP} -m ${PWD}/m4-fake -b -DUP ${ENCAP_PKGNAME}.ep || true ) \
+ > ${ENCAP_PKGNAME}.log 2>&1
+
+( ${MKENCAP} -m ${PWD}/m4-fake -b -T ${ENCAP_PKGNAME}.ep || true ) \
+ >> ${ENCAP_PKGNAME}.log 2>&1
+
+( ${MKENCAP} -m ${PWD}/m4-fake -b -CBI ${ENCAP_PKGNAME}.ep ) \
+ >> ${ENCAP_PKGNAME}.log 2>&1
+
+rm m4-fake
+rm ${ENCAP_PKGNAME}.ep
+
+exit 0
diff --git a/encap/src/encap-profiles/makeself-2.1.4.ep b/encap/src/encap-profiles/makeself-2.1.4.ep
new file mode 100644
index 000000000..8e8c5f2b5
--- /dev/null
+++ b/encap/src/encap-profiles/makeself-2.1.4.ep
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="makeself-2.1.4"
+>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/makeself/makeself-2.1.4.run
+ http://www.megastep.org/makeself/makeself-2.1.4.run"
+subdir="/"
+>
+<!-- TODO check above megastep URL, and create mirror -->
+
+<unpack><![CDATA[
+cd .. && \
+rm -rf ${ENCAP_PKGNAME} && \
+/bin/sh ${ENCAP_PKGNAME}.run
+]]></unpack>
+
+<configure>
+:
+</configure>
+
+<build>
+:
+</build>
+
+<install>
+test -d ${ENCAP_SOURCE} || mkdir ${ENCAP_SOURCE}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME} || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man/man1 || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man/man1
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/makeself || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/makeself
+if [ -d ${builddir}/${ENCAP_PKGNAME}.run ]; then rmdir ${builddir}/${ENCAP_PKGNAME}.run; fi
+cp ${builddir}/* ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/makeself
+mv ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/makeself/*.sh ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin
+mv ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/makeself/*.1 ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man/man1
+</install>
+
+<clean>
+:
+</clean>
+
+</source>
+
+<prepackage type="set">
+# Make "this encap is installed" sentinal file available in /usr/local/var/encap
+test -d var || mkdir var
+test -d var/encap || mkdir var/encap
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description makeself - Make self-extractable archives on Unix
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/ostiary-3.4.ep b/encap/src/encap-profiles/ostiary-3.4.ep
new file mode 100644
index 000000000..be0c4fbdb
--- /dev/null
+++ b/encap/src/encap-profiles/ostiary-3.4.ep
@@ -0,0 +1,122 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="ostiary-3.4"
+>
+
+<prereq package="patch-2.5.9" />
+<prereq package="m4-1.4.4" />
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/ostiary/ostiary-3.4.tar.gz
+ http://ingles.homeunix.org/software/ost/ostiary-3.4.tar.gz"
+ use_objdir="no"
+>
+
+<patch options="-p1"><![CDATA[
+#
+# Allow up to 32 Actions (up from 8)...
+#
+--- ostiary-3.4/ost.h 2006-08-16 23:31:59.000000000 -0400
++++ ostiary-3.4.new/ost.h 2006-08-16 23:33:23.000000000 -0400
+@@ -22,7 +22,7 @@
+ /* Note: strictly IPv4 for now... */
+ #define MAX_SIZEOF_IP 16
+
+-#define MAX_NUM_SECRETS 8
++#define MAX_NUM_SECRETS 32
+ #define MAX_NUM_CACHED_IPS 128
+
+ #define MAX_SECRET_SIZE 64
+@@ -53,7 +53,7 @@
+ /* Note: strictly IPv4 for now... */
+ #define MAX_SIZEOF_IP 16
+
+-#define MAX_NUM_SECRETS 8
++#define MAX_NUM_SECRETS 32
+ #define MAX_NUM_CACHED_IPS 128
+
+ /* You can make MAX_SECRET_SIZE bigger, but don't forget to update
+]]></patch>
+
+</source>
+
+<prepackage>
+# /usr/local/etc stuff
+mkdir share 2>/dev/null || exit 1
+mkdir share/doc 2>/dev/null || exit 1
+mkdir share/doc/ostiary 2>/dev/null || exit 1
+mkdir share/doc/ostiary/examples 2>/dev/null || exit 1
+mv etc/ostiary.cfg share/doc/ostiary/examples/ostiary.cfg
+rmdir etc
+# daemons should be in /usr/local/sbin
+mkdir sbin 2>/dev/null || exit 1
+mv bin/ostiaryd sbin/ostiaryd
+# daemontool stuff
+mkdir var 2>/dev/null || exit 1
+mkdir var/svc.d 2>/dev/null || exit 1
+mkdir var/svc.d/ostiary 2>/dev/null || exit 1
+mkdir var/svc.d/ostiary/log 2>/dev/null || exit 1
+# encap stuff
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<include_file name="var/svc.d/ostiary/run" mode="0755"><![CDATA[
+#!/bin/sh
+exec 2>&1
+exec /usr/local/sbin/ostiaryd -c /usr/local/etc/ostiary.cfg -v -D
+]]></include_file>
+
+<include_file name="var/svc.d/ostiary/log/run" mode="0755"><![CDATA[
+#!/bin/sh
+exec 2>&1
+exec /command/multilog t /usr/local/var/multilog/ostiary
+]]></include_file>
+
+<include_file name="postinstall" mode="0755"><![CDATA[
+#!/bin/sh -e
+umask 002
+BASEDIR="`echo ${0} | xargs -n1 dirname`"
+LOG=${BASEDIR}/postinstall.log
+exec > $LOG 2>&1
+printf "Running ostiary postinstall script...\n"
+date
+test -d /usr/local/var/multilog || mkdir /usr/local/var/multilog
+test -d /usr/local/var/multilog/ostiary || mkdir /usr/local/var/multilog/ostiary
+printf "Finished ostiary postinstall script.\n"
+]]></include_file>
+
+<encapinfo>
+description Ostiary - Simple, Secure Remote Script Execution
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/ostiary-doc-20060801.ep b/encap/src/encap-profiles/ostiary-doc-20060801.ep
new file mode 100644
index 000000000..3b0251f2e
--- /dev/null
+++ b/encap/src/encap-profiles/ostiary-doc-20060801.ep
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="ostiary-doc-20060801"
+>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+<source
+url="http://www.pobox.com/users/dclark/mirror/ostiary/ostiary-doc-20060801.tar.gz"
+ use_objdir="no"
+>
+
+<configure>
+:
+</configure>
+
+<build>
+:
+</build>
+
+<install>
+test -d ${ENCAP_SOURCE} || mkdir ${ENCAP_SOURCE}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME} || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/ostiary || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/ostiary
+cp * ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/ostiary
+</install>
+
+<clean>
+:
+</clean>
+
+</source>
+
+<prepackage>
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description ostiary-doc - documentation from ostiary website
+</encapinfo>
+
+</encap_profile>
diff --git a/encap/src/encap-profiles/patch-2.5.9.ep b/encap/src/encap-profiles/patch-2.5.9.ep
new file mode 100644
index 000000000..c6e2f6b69
--- /dev/null
+++ b/encap/src/encap-profiles/patch-2.5.9.ep
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<encap_profile
+ profile_ver="1.0"
+ pkgspec="patch-2.5.9"
+>
+
+<prereq package="m4-1.4.4" />
+
+<environment
+ variable="CC"
+ value="gcc"
+ type="set"
+/>
+
+<environment
+ variable="PATH"
+PLATFORM_IF_MATCH(solaris)
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:"
+PLATFORM_ELSE
+ value="/usr/local/lib/bcfg2/bin:/usr/local/bin:"
+PLATFORM_ENDIF
+ type="prepend"
+/>
+
+PLATFORM_IF_MATCH(linux)
+PLATFORM_ELSE
+<environment
+ variable="MAKE"
+ value="gmake"
+ type="set"
+/>
+PLATFORM_ENDIF
+
+<source
+ url="http://www.pobox.com/users/dclark/mirror/patch/patch-2.5.9.tar.gz
+ ftp://alpha.gnu.org/gnu/diffutils/patch-2.5.9.tar.gz"
+>
+
+</source>
+
+<prepackage type="set">
+mkdir var 2>/dev/null || exit 0
+mkdir var/encap 2>/dev/null || exit 0
+touch var/encap/${ENCAP_PKGNAME}
+</prepackage>
+
+<encapinfo>
+description patch - Apply a diff file to an original
+</encapinfo>
+
+</encap_profile>