diff options
Diffstat (limited to 'tags/0.5')
110 files changed, 0 insertions, 19084 deletions
diff --git a/tags/0.5/README b/tags/0.5/README deleted file mode 100644 index d4d1463..0000000 --- a/tags/0.5/README +++ /dev/null @@ -1,2 +0,0 @@ -See doc/README for more information. -Portuguese documentation at doc/README.pt_BR. diff --git a/tags/0.5/conf/generic.mkSlackBuild.new b/tags/0.5/conf/generic.mkSlackBuild.new deleted file mode 100644 index 6b5473e..0000000 --- a/tags/0.5/conf/generic.mkSlackBuild.new +++ /dev/null @@ -1,250 +0,0 @@ -################################################### -## Generic template for SlackBuilds -## -## Version 0.8.1 - Luis ( luis at riseup d0t net) -## -################################################### -<head> all -#!/bin/bash -# -# SlackBuild for [[PROGRAM NAME]] -# [[PROGRAM URL]] -# -# Author: [[SLACKBUILD AUTHOR]] -# -</head> - -<slackbuildrc> all -# Look for slackbuildrc -if [ -f ~/.slackbuildrc ]; then - source ~/.slackbuildrc -elif [ -f /etc/slackbuildrc ]; then - source /etc/slackbuildrc -fi -</slackbuildrc> - -<set_variables> all -# Set variables -CWD="$(pwd)" -SRC_NAME="[[SOURCE NAME]]" -PKG_NAME="[[PACKAGE NAME]]" -ARCH=${ARCH:=[[ARCH]]} -SRC_VERSION=${VERSION:=[[VERSION]]} -PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" -BUILD=${BUILD:=1[[SLACKBUILD AUTHOR INITIALS]]} -SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME -TMP=${TMP:=/tmp} -PKG=${PKG:=$TMP/package-$PKG_NAME} -REPOS=${REPOS:=$TMP} -PREFIX=${PREFIX:=[[PREFIX]]} -PKG_SRC="$TMP/$SRC_NAME-$SRC_VERSION" -CONF_OPTIONS=${CONF_OPTIONS:=[[OTHER CONFIGURE ARGS]]} -NUMJOBS=${NUMJOBS:="-j4"} -</set_variables> - -<slkflags> all -# Set system libraries' path and optmization flags based on $ARCH -LIBDIR="$PREFIX/lib" - -if [ "$ARCH" = "i386" ]; then - SLKCFLAGS="-O2 -march=i386 -mcpu=i686" -elif [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mcpu=i686" -elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686" -elif [ "$ARCH" = "s390" ]; then - SLKCFLAGS="-O2" -elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" - LIBDIR="$PREFIX/lib64" -fi -</slkflags> - -<error_codes> on -# Set error codes (used by createpkg) -ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 -ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -</error_codes> - -<start_structure> all -# Clean up any leftovers of previous builds -rm -rf "$PKG_SRC" 2> /dev/null -rm -rf "$PKG" 2> /dev/null - -# Create directories if necessary -mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR -mkdir -p "$PKG" || exit $ERROR_MKDIR -mkdir -p "$REPOS" || exit $ERROR_MKDIR -</start_structure> - -<download_source> on -# Dowload source if necessary -SRC="$SRC_NAME-$SRC_VERSION.tar.[[SOURCE EXTENSION]]" -URL="[[DOWNLOAD FOLDER URL]]/$SRC" - -if [ ! -s "$SRC_DIR/$SRC" ] || ! [[DECOMPRESSOR]] [[DECOMPRESSOR TEST FLAG]] "$SRC_DIR/$SRC" 2> /dev/null; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET -fi -</download_source> - -<md5sum_download_and_check> off -# Download source's MD5 checksum if necessary and check it -if [ ! -s "$SRC_DIR/$SRC.[[MD5SUM EXTENSION]]" ]; then - wget "$URL.[[MD5SUM EXTENSION]]" -O "$SRC_DIR/$SRC.[[MD5SUM EXTENSION]]" || exit $ERROR_WGET -fi - -MD5SUM_SRC="$(md5sum "$SRC_DIR/$SRC" | cut -d " " -f 1)" -MD5SUM_URL="$(grep "$SRC[ \t]*$" "$SRC_DIR/$SRC.[[MD5SUM EXTENSION]]" | cut -d " " -f 1)" - -[ "$MD5SUM_SRC" == "$MD5SUM_URL" ] || exit $ERROR_MD5 -</md5sum_download_and_check> - -<gpg_signature_check> off -# Import minimized signing key from -# [[SIGNING KEY URL]] -gpg --import << EOKEY || exit $ERROR_GPG -[[SIGNING KEY]] -EOKEY - -# Dowload source's signature if necessary and check it -if [ ! -s "$SRC_DIR/$SRC.sig" ]; then - wget "$URL.sig" -O "$SRC_DIR/$SRC.sig" || exit $ERROR_WGET -fi - -gpg --verify "$SRC_DIR/$SRC.sig" "$SRC_DIR/$SRC" || exit $ERROR_GPG -</gpg_signature_check> - -<untar_source> all -# Untar -cd "$TMP" -tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -cd "$PKG_SRC" -</untar_source> - -<path_source> off -# Patch source -patches="[[PATCH FILES]] - $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff - $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" -for patch in $patches; do - if [ -f "$CWD/$patch" ]; then - patch -Np[[NUMBER OF PREFIX SLASHES TO STRIP]] < "$CWD/$patch" || exit $ERROR_PATCH - elif [ -f "$CWD/patches/$patch" ]; then - patch -Np[[NUMBER OF PREFIX SLASHES TO STRIP]] < "$CWD/patches/$patch" || exit $ERROR_PATCH - fi -done -</path_source> - -<configure> on -# Configure -CFLAGS="$SLKCFLAGS" \ - CXXFLAGS="$SLKCFLAGS" \ - ./configure \ - --prefix="$PREFIX" --libdir="$LIBDIR" "$CONF_OPTIONS" || exit $ERROR_CONF -</configure> - -<make_package> all -# Compile -make $NUMJOBS || exit $ERROR_MAKE -</make_package> - -<install_package> all -# Install -make install DESTDIR="$PKG" || exit $ERROR_INSTALL -</install_package> - -<strip_binaries> on -# Strip binaries -( cd "$PKG" - find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ - xargs strip --strip-unneeded 2> /dev/null - find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ - xargs strip --strip-unneeded 2> /dev/null -) -</strip_binaries> - -<compress_manpages> off -# Compress and link manpages -if [ -d "$PKG/$PREFIX/man" ]; then - ( cd "$PKG/$PREFIX/man" - for manpagedir in $(find . -type d -name "man*") ; do - ( cd $manpagedir - for eachpage in $( find . -type l -maxdepth 1) ; do - ln -s $( readlink $eachpage ).gz $eachpage.gz - rm $eachpage - done - gzip -9 *.? - ) - done - ) -fi -</compress_manpages> - -<compress_info_files> off -# Compress info files -if [ -d "$PKG/$PREFIX/info" ]; then - ( cd "$PKG/$PREFIX/info" - rm -f dir - gzip -9 * - ) -fi -</compress_info_files> - -<install_documentation> on -# Install documentation -DOCS="[[DOCUMENTATION FILES]]" -mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR -cp -a $DOCS "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" -</install_documentation> - -<slackdesc> on -# Add package description (slack-desc) -mkdir -p "$PKG/install" || exit $ERROR_MKDIR -cat << EODESC > "$PKG/install/slack-desc" -# HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. - - |-----handy-ruler------------------------------------------------------| -[[SLACK-DESC]] -EODESC -</slackdesc> - -<postinstall_script> off -# Add a post-installation script (doinst.sh) -cat << EOSCRIPT > "$PKG/install/doinst.sh" -config() { - NEW="\$1" - OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)" - # If there's no config file by that name, mv it over: - if [ ! -r \$OLD ]; then - mv \$NEW \$OLD - elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then - # toss the redundant copy - rm \$NEW - fi - # Otherwise, we leave the .new copy for the admin to consider... -} - -config path/to/config_file.new -[[REST OF DOINST.SH]] -EOSCRIPT -</postinstall_script> - -<build_package> all -# Build the package -cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG -</build_package> - -<clean_builds> on -# Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then - rm -rf "$PKG_SRC" "$PKG" -fi -</clean_builds> diff --git a/tags/0.5/conf/repos.conf.new b/tags/0.5/conf/repos.conf.new deleted file mode 100644 index 1d77419..0000000 --- a/tags/0.5/conf/repos.conf.new +++ /dev/null @@ -1,41 +0,0 @@ -# -# repository definitions for simplaret -# please dont use any spaces inside a repository definition -# - -# root repositories -ROOT-i386="tds%http://slackware.mirrors.tds.net/pub/slackware/" -ROOT-i386="sarava%http://slack.sarava.org/slackware/" -ROOT-x86_64="sarava%http://slack.sarava.org/slamd64/" -ROOT-x86_64="slackadelic%http://mirror1.slackadelic.com/slamd64/" -ROOT-x86_64="heanet%http://ftp.heanet.ie/pub/slamd64/" -ROOT-powerpc="workaround%http://slackintosh.workaround.ch/pub/slackintosh/" -ROOT-s390="ibiblio%http://distro.ibiblio.org/pub/linux/distributions/slack390/" - -# noarch -NOARCH="sarava%http://slack.sarava.org/packages/noarch" - -# i386 10.2 -REPOS-i386-10.2="sarava%http://slack.sarava.org/packages/slackware/slackware-10.2/" -PATCHES-i386-10.2="sarava%http://slack.sarava.org/packages/slackware/slackware-10.2/patches/" - -# x86_64 10.2 -REPOS-x86_64-10.2="sarava%http://slack.sarava.org/packages/slamd64/slamd64-10.2/" -PATCHES-x86_64-10.2="sarava%http://slack.sarava.org/packages/slamd64/slamd64-10.2/patches/" - -# x86_64 10.2b -REPOS-x86_64-10.2b="sarava%http://slack.sarava.org/packages/slamd64/slamd64-10.2b/" -PATCHES-x86_64-10.2b="sarava%http://slack.sarava.org/packages/slamd64/slamd64-10.2b/patches/" - -# i386 11.0 -REPOS-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/" -PATCHES-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/patches/" - -# x86_64 11.0 -REPOS-x86_64-11.0="sarava%http://slack.sarava.org/packages/slamd64/slamd64-11.0/" -PATCHES-x86_64-11.0="sarava%http://slack.sarava.org/slamd64/slamd64-11.0/patches/" - -# powerpc 11.0 -REPOS-powerpc-11.0="sarava%http://slack.sarava.org/packages/slackintosh/slackintosh-11.0/" -PATCHES-powerpc-11.0="workaround%http://slackintosh.workaround.ch/pub/slackintosh/11.0/patches/" - diff --git a/tags/0.5/conf/simplepkg.conf.new b/tags/0.5/conf/simplepkg.conf.new deleted file mode 100644 index 50ea4ad..0000000 --- a/tags/0.5/conf/simplepkg.conf.new +++ /dev/null @@ -1,152 +0,0 @@ -# -# /etc/simplepkg/simplepkg.conf -# - -# Default architecture: set this option if you dont want simplepkg -# to use the value from /etc/slackware-version -# DEFAULT_ARCH="i386" - -# Default version: set this option if you dont want simplepkg; -# to use the value from /etc/slackware-version -# DEFAULT_VERSION="11.0" - -# Where jails are placed -JAIL_ROOT="/vservers" - -# Wheter mkjial should add new jails in the jail list; -# to enable it, set to "1" or "yes" -ADD_TO_JAIL_LIST="1" - -# Whether mkjail should clean the package cache before installation -# to enable it, set to "1" or "yes" -SIMPLARET_CLEAN="1" - -# whether mkjail should clean the package cache after the installation; -# to enable it, set to "1" or "yes" -SIMPLARET_DELETE_DOWN="1" - -# Whether mkjail should issue a simplaret --update before install the jail; -# to enable it, set to "1" or "yes" -SIMPLARET_UPDATE="1" - -# Wheter try to download from the next repository on failed download. -SIMPLARET_DOWNLOAD_FROM_NEXT_REPO="1" - -# Wheter delete also patches when simplaret --purge is called; -# to enable it, set to "1" or "yes" -SIMPLARET_PURGE_PATCHES="1" - -# Whether delete each package rigth after its installation; -# to enable it, set to "1" or "yes" -SIMPLARET_DELETE_DURING="0" - -# Delete packages older than N weeks from the cache -SIMPLARET_PURGE_WEEKS="3" - -# Where patches are placed -PATCHES_DIR="/var/simplaret/patches" - -# Place to store your packages -STORAGE="/var/simplaret/packages" - -# Whether to use passive ftp transfers; -# to enable it, set to "1" or "yes" -PASSIVE_FTP="1" - -# Http retrieval tool; -# available parameters are "wget" or "curl" -HTTP_TOOL="curl" - -# Ftp retrieval tool; -# available parameters are "wget", "curl" or "ncftpget" -FTP_TOOL="curl" - -# Set connection timeout in seconds -CONNECT_TIMEOUT="20" - -# ROOT repository package priority -ROOT_PRIORITY="patches slackware extra testing pasture" - -# REPOS repository package priority -REPOS_PRIORITY="patches slackware extra testing pasture" - -# Whether to check package signatures (you should have the repository -# maintainer key on your keyring) -SIGNATURE_CHECKING="0" - -# Whether simplaret will try to solve dependencies by looking -# for packages' slack-required -DEPENDENCY_CHECKING="1" - -# Enabling this option (i.e, setting to "1" or "yes"), simplaret will -# donwload even # already applied patches, a good option when you plan -# to keep local copies of all needed patches for your system -DOWNLOAD_EVEN_APPLIED_PATCHES="0" - -# Enabling this option (i.e, setting to "1" or "yes"), simplaret will -# look at your standard repositories for new packages; if it find a -# package with different version of your current installed package and -# also this package isnt in the packages folder, then the new package -# is applied; if in doubt, just say no or leave blank. Otherwise set it -# either to "yes" or "1" and remember that if enabling this feature can -# cause problems if you use more than one REPOS definition for each -# ARCH and VERSION. Also, this option can be very slow. -CONSIDER_ALL_PACKAGES_AS_PATCHES="0" - -# Enabling this option (i.e, setting to "1" or "yes"), simplaret will -# store patches it finds on ROOT repositories on -# -# $PATCHES_DIR/$ARCH/$VERSION/root-$repository_name. -# -# By default this option is turned off because it breaks the standard -# way to store packages and can cause some confusion, but its an useful -# feature if you like to see all patches apart from common packages and/or -# stored in the same tree. -STORE_ROOT_PATCHES_ON_PATCHES_DIR="0" - -# Set to yes if your templates will be placed in a subversion repository -# This just work if TEMPLATE_STORAGE_STYLE is set to own-folder (default) -TEMPLATES_UNDER_SVN="no" - -# Where your templates will be located. -# Dont change it except you know what you're doing. -TEMPLATE_FOLDER="/etc/simplepkg/templates" - -# This variable controls in which folder / subfolder your templates will -# be stored. Possible values are: -# -# - simplepkg-folder: templates are stored at /etc/simplepkg -# - templates-folder: templates are stored at /etc/simplepkg/templates -# - own-folder: each template stored at its own folder -# at /etc/simplepkg/templates/template-name -# -# This variable has backwards purposes only, so dont change it. -TEMPLATE_STORAGE_STYLE="own-folder" - -#--------------------------------------------------------------------- -# MKBUILD AND CREATEPKG SECTION -#--------------------------------------------------------------------- -# Set SlackBuilds default directory from scripts -SLACKBUILDS_DIR="/var/slackbuilds" - -# Set binaries default repository directory -#MAKEPKG_REPOS="/var/createpkg" - -# Set sources default directory -#SOURCE_DIR="/var/sources" - -# Set color style -# possible values are: color,gray, none -#COLOR_MODE="none" - -# Remove old packages from repository tree by createpkg -# 0 enable -# 1 desable -#REMOVE_OLD_PACKAGE=1 - -# Move package to SlackBuilds-like tree -# 0 enable -# 1 desable -#MOVE_BIN_PACKAGE=1 - -#--------------------------------------------------------------------- diff --git a/tags/0.5/doc/CHANGELOG b/tags/0.5/doc/CHANGELOG deleted file mode 100644 index 1a98742..0000000 --- a/tags/0.5/doc/CHANGELOG +++ /dev/null @@ -1,404 +0,0 @@ -simplepkg changelog -=================== - -0.5pre23 -======== - - - updated documentation - -0.5pre22 -======== - - - simplaret: - - small fix - - common.sh: - - fixes on metafiles generation - -0.5pre21 -======== - - - templatepkg: - - now --delete can also remove the file from a jail - -0.5pre20 -======== - - - small changes - - jail-commit: - - template files security - -0.5pre19 -======== - - - simplaret: - - bugfixes - - options --get and --install now can work - with full file name. - -0.5pre15-18 -=========== - - - bugfixes - -0.5pre14 -======== - - - simplaret - - added variable REPOS_PRIORITY - - added variable SIMPLARET_DOWNLOAD_FROM_NEXT_REPO - - - lspkg: - - small bugfix - - - common.sh: - - on search_template, doesnt return a template from - defaults/ if the function is called with --update - - - utils/add-slack-required: - - command line enhancement - -0.5pre9 - 0.5pre13 -================== - - - bugfix releases - -0.5pre8 -======= - - - lspkg: - - bugfix - - - common.sh: - - bugfix in function slash - -0.5pre7 -======= - - - simplaret: - - fixed bug for ROOT definitions when there is packages - inside of folders different than ROOT_PRIORITY - -0.5pre6 -======= - - - repos: - - FILE_LIST generation fix - - - mkjail: - - new config variable ADD_TO_JAIL_LIST controls wheter to - add new jails into the JAIL_LIST file - -0.5pre5 -======= - - - jail-commit - - SILENT env variable to decrease verbosity - -0.5pre4 -======= - - - templatepkg: - - small fixes - - help usage summary improvements - - now using variable TEMPLATE_FOLDER - - SILENT env variable to decrease verbosity - - option -p | --post-install renamed to -b | --batch-edit - - option -p | --post-install now used to build a package from a template - - option -d | --delete now can also remove post-install scripts - - - common.sh - - small fixes - - now using variable TEMPLATE_FOLDER - - - jail-commit: - - calling templatepkg silently - - small fixes - -0.5pre3 -======= - - - again, lots of bugfixes - - - jail-commit: - - update a template just once if finds more than one entry - for a template in the jailist - -0.5pre2 -======= - - - lots of bugfixes - - - templatepkg: - - now creates missing components in a template - -0.5pre1 -======= - - Lots of changes! - - - repos: cosmetic changes - - - lspkg: - - support for $ROOT env variable - - some improvements - - - CHANGELOG cleanup - - - subversion repository support for templates - - - metapkg moved to utils/ - - - simplaret: - - new config variables: - - STORE_ROOT_PATCHES_ON_PATCHES_DIR - - SIGNATURE_CHECKING - - ROOT=/otherroot works for --install, --remove and --upgrade - - signature checking - - dependency checking through slack-required - - - mkjail: - - added support for slack-required as templates - - templates now can be stored either on - - /etc/simplepkg/template_name.template - - /etc/simplepkg/templates/template_name.template - - /etc/simplepkg/templates/template_name/template_name.template - - - jail-update - - old script renamed to jail-commit - - now update a jail from a template - - svn repository support - - - jail-commit - - new script, commit changes from a jail to the templates - - svn repository support - - - templatepkg: - - major rewrite - - svn repository support - - now supports a tagfile or slack-required as a template - - new/changed options - -c | --create: improvements - -a | --add: changed to add files into a template - -u | --update: update a template - -d | --delete: delete files or folders from a template - -s | --sync: sync /etc/simplepkg/templates working copy - -e | --export: export /etc/simplepkg/templates to a svn repository - -i | --import: grab /etc/simplepkg/templates from a svn repository - -r | --remove: remove a template - -l | --list: list templates - -p | --post-install: add or edit post-installation scripts - -t | --template-edit: edit template package list - -h | --help: display this summary - -0.4.9pre18-23 -============= - - - simplaret: - - enhanced http retrieval: curl support - - enhanced verbosity - - get-patches small changes - - various fixes - -0.4.9pre10-17 -============= - - - lots of simplaret fixes - -0.4.9pre9 -========= - - - createpkg: - - speedup - - ncftpget support - - timeout support - - sets the correct architecture - - - deleted jail-upgrade - - - removed swaret support - -0.4.9pre8 -========= - - - createpkg: bugfix - - - common.sh: - - enhanced config file evaluation - - fixed function default_arch - - - simplaret: - - config evaluation via common.sh - - new config parameter SIMPLARET_PURGE_PATCHES - -0.4.9pre7 -========= - - - repos: added patches/ metafile creation - - - jail-upgrade: - - added option CONSIDER_ALL_PACKAGES_AS_PATCHES - - merged swaret and simplaret upgrade procedures - - act recursively on patches' folder - - - simplaret: lots of changes, most important are: - - new repository scheme, take a look at repos.conf.new. - - --get looks first to PATCHES repositories, then ROOT, - then REPOS and finally at NOARCH repositories; the - firts matching package is downloaded. - - new config parameter ROOT_PRIORITY set the priority - of folder lookup at a ROOT repository, defaults to - "patches slackware extra testing pasture". - - for --get, check if an already existing package - in the local repository has the same version and - build number, otherwise erase the old and download - the new one. - - fixed --get-paches - - added --upgrade option - - added --install - - added --remove - - new config parameter DOWNLOAD_EVEN_APPLIED_PATCHES - - - createpkg: lots of changes - -0.4.9pre6 -========= - - - createpkg: - - fixes - - now with slackbuild error handling - - increased verbosity - - - small fixes on rebuildpkg - - - lspkg enhancements - - - simplaret fix on --purge - - - updated default repos.conf - -0.4.9pre5 -========= - - - added script "repos" - - - moved simplaret to /usr/bin - -0.4.9pre4 -========= - - - createpkg: better command line evaluation, - now using "upgradepkg --install-new" to - install a package and added the command - line option --no-deps so createpkg doesn't - goes down to solve all slack-required - dependencies. - -0.4.9pre3 -========= - - - small fix on createpkg when handling with - slackbuilds with similar names - -0.4.9pre2 -========= - - - fixed simplepkg.SlackBuild - - - fixed doinst.sh - - - re-organized the source repository - - - added createpkg - - - updated README and README.pt_BR - -0.4.8 -===== - - - simplaret: removed extra folder from slamd64 definition - - - fixed a typo - -0.4.7 -===== - - - templatepkg bugfix on blank template lines and on package deletion - changed simplaret working dir in simplaret.conf.new - -0.4.6 -===== - - - small bugfix on jail-update that prevented template update - -0.4.5 -===== - - - vserver template update - -0.4.4 -===== - - - WARNING option on config file for simplaret - - - SILENT env var, if a non-zero value, keeps simplaret - work silenty when purging and works like if WANRING is set - to not null. - - - added SIMPLARET_DELETE_DURING config parameter: when set - to a non-zero value deletes each package rigth after its - installation - -0.4.3 -===== - - - added openoffice.org template - -0.4.2 -===== - - - common.sh: fix on install_packages when handling - with similar package names - -0.4.1 -===== - - - templatepkg: fixed tagfiles and comment handling - -0.4 -=== - - - multi-plataform and version management - - now simplepkg supports jails with architectures and versions - others than the main system, read the docs for details. - - - added simplaret: a small script for downloading packages - - - jail-upgrade - - * arch checking via /etc/slackware-version on each jail - * supports multi-arch and multi-version repository - * integrated with simplaret - - - common.sh: improved functions to support simplaret - -0.3.7-0.3.9 -=========== - - - bugfix releases - -0.3.6 -===== - - - added "-u" option to eval_config to ask for a swaret --update - -0.3.5 -===== - - - "main" jail support for jail-update - -0.3.4 -===== - - - Started changelog :) - diff --git a/tags/0.5/doc/COPYING b/tags/0.5/doc/COPYING deleted file mode 100644 index d60c31a..0000000 --- a/tags/0.5/doc/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - <one line to give the program's name and a brief idea of what it does.> - Copyright (C) <year> <name of author> - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - <signature of Ty Coon>, 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. diff --git a/tags/0.5/doc/README b/tags/0.5/doc/README deleted file mode 100644 index 47143ca..0000000 --- a/tags/0.5/doc/README +++ /dev/null @@ -1,428 +0,0 @@ -Simplepkg: installation manager and packaging system ----------------------------------------------------- - -Author: Silvio Rhatto <rhatto at riseup.net> -Licence: GPL - -Simplepkg is a non-intrusive management system running on top of pkgtool made of a -set of scripts which helps the sysadmin and developing cycles of an slackware system. -It can be used to create packages and repositories as long as the operational system -installation and config file change tracking. - -Documentation -------------- - - English documentation: README | http://slack.sarava.org/simplepkg-en - Portuguese documentation: REAMDE.pt_BR | http://slack.sarava.org/simplepkg - -Description ------------ - -All GNU/Linux distributions comes with a well developed packaging system. The question now -is how pratical is the way to install, configure and control any changes in a system. - -As an example, suppose you should keep a list of about 200 slackware machines, some -of them used as desktops, others as mail or webservers. If you lost some hardrives -or usually need to re-install or update some of those boxes. - -Using the slackware installation cd and configuring by hand all the time you got a crash -is a time loss activity and you'll never know if something remained missconfigured. An -alternative is to keep a complete backup of a machine or some parts of the tree, but for -a large number of different boxes this procedure costs a lots of resources. - -Simplepkg offers an alternative sollution for this and other problems related to installation -management, allowing you to keep templates of each machine and install a custom slackware -system with just one or a few commands. Creating and upgrading chroot and vservers is easy -with simplepkg. - -Package and installation management is not everything simplepkg can do. It can also be used -to create vservers, create packages and store system configuration files in a subversion -repository. - -Simplepkg works with any (official or not) slackware port that follows the minimum system -guidelines. - -Architecture ------------- - -Simplepkg is a set of scripts wrote in the KISS philosophy. Its a pretty simple system, composed -by the following commands: - - - mkjail: build a slackware jail/installation in a folder - - templatepkg: create or update a package list of an installation template - - lspkg: show installed packages and its contents - - jail-commit: update all configuration files of a template - - jail-update: jail-commit counterpart - - rebuildpkg: rebuild a package based on its /var/log/packages entry - - simplaret: package retrieval tool - - createpkg: donwload, compile and package creationg script - - repos: creates and manages binary repositories - - mkbuild: app to build slackware build scripts - -Installation ------------- - -The latest version of simplepkg is locate at http://slack.sarava.org/packages/noarch/. -Install it with the usual way: - - installpkg simplepkg-VERSION-noarch-BUILD.tgz - -Simplepkg usage ---------------- - -The three main simplepkg uses are: - - - Package managemen - - Jail/installation creation and management - - Package creation - -Package management is made with simplaret app, whose behaviour is detailed in its own document. -The following sections will only show how simplepkg can be used to manage jails and template -and create packages. - -Creating templates ------------------- - -Initially, simplepkg was built to help slackware install automation. To do that, it uses installation -templates -- lists of installed packages, post-installation scripts and config files -- allowing the -creation of installation profiles that can be used for system replication in other partition or even -custom chroot building. - -Template creation is done with "templatepkg" script. To create a template called "my-slackware" containig -the installed package list of your slackware installation, just type - - templatepkg -c my-slackware - -The -c (or --create) flag tells templatepkg to create the /etc/simplepkg/templates/my-slackware folder -with the following components: - - - /etc/simplepkg/templates/my-slackware/my-slackware.d: template config files - - /etc/simplepkg/templates/my-slackware/my-slackware.s: post-installation scripts - - /etc/simplepkg/templates/my-slackware/my-slackware.perms: metadata for config files - - /etc/simplepkg/templates/my-slackware/my-slackware.template: installaed package list - -This four components are enough to store all slackware installation characteristics: the package list -controls with applications are installed, the config file folder can contain all desired configurations -for any installed application and the post-installation scripts take care of all procedures that should -be executed exactly after the system installation. The my-slackware.perms file contains metadata for the -saved config files, i.e, permission and ownership. - -If you want to build a template from a installation placed in another folder or partition thats not your -current root dir, just type something like - - templatepkg -c my-slackware /mnt/slackware - -where /mnt/slackware is the place where this alternative system is installed. After created, the template -will contain just the installed package list or that folder. As the folder /var/log/packages of your -installation doesn't keep information about the package installation order, its recommended that you -manually edit the template's package list. To do that, just type - - templatepkg -e my-slackware - -To add configuration files inside the template, type something like - - templatepkg -a my-slackware /etc/hosts - -This should add /etc/hosts file to "my-slackware" template. Beyond just automatically copy the file -when you install a new system using this template, simplepkg can also take care of every change that -/etc/hosts can suffer on your system, such as file content or permission and ownership change. If you're -also storing your templates in a subversion repository, you'll be able to track all changes it ever had. - -WARNING: avoid the storage in a template of config files that contains important security information -such as passwords or secret keys. The prefered place to put such stuff is a secured backup. - -Creating jails and replicating installations --------------------------------------------- - -As long as your template was created and populated with the package list, configuration files and -post-installation scripts (what will be treated in another section), your can replicate your slackware -installation as simpler than typing the following command: - - mkjail jail my-slackware - -This creates a fresh slackware tree at /vservers/jail with all packages listed in the template "my-slackware" -and all saved config files. The package installation is made by simplaret app, that should be properly configured. -The standard simplaret configuration should work for most situations. - -If you want to install your jail in a place other than /vservers (this standard location can be changed through -simpleokg config file), say /mnt/hda2, just use something like that: - - ROOT=/mnt mkjail hda2 my-slackware - -The above command does exactly what you think: installs slackware in /mnt/hda2 with exactly the same packages -you have on your system, replacing the need of the slackware installer! - -In case no template specified, mkjail uses the one stored /etc/simplepkg/default, if exists. Simplepkg already -came if some pre-built templates at /etc/simplepkg/defaults/templates. - -Post-installation scripts -------------------------- - -Optionally, its possible to keep post-installation scripts inside a template. Such scripts are executed by mkjail -exactly after a jail is installed and the template config files copied. To create or edit a post-installation -script, just type - - templatepkg -b my-slackware script-name.sh - -This adds the script-name.sh at "my-slackware" template. Mkjail passes two command line arguments to a post-install -script: the upward folder and the jail's name ("/mnt" and "hda2" from our previous example). Then, an example script -is something like that: - - #!/bin/bash - chroot $1/$2/ sbin/ldconfig - -Listing template contents -------------------------- - -To list available templates or the template content, use commands such as - - templatepkg -l - templatepkg -l my-slackware - -Removing files from a template ------------------------------- - -As you did to add files, you can easily remove then from a template, using a comand such as - - templatepkg -d my-slackware /etc/hosts - -This removes the file /etc/hosts from "my-slackware" template. - -Removing a template -------------------- - -To remove a template, just type - - templatepkg -r my-slackware - -Updating a template -------------------- - -Now that we just talked about creating templates and jails, its time to cover another application, this time -used to keep a template always updated. Jail-commit is a script that copies all config file changes (content, -permissions and ownership) from a installation to a simplepkg template. - -For instance, if one wants to copy all changes from /mnt/hda2 jail into "my-slackware" template, he or she -just needs to type the following command: - - jail-commit /mnt/hda2 my-slackware - -Not just the package list from "my-slackware" template is updated according the installed packages from -/mnt/hda2/var/log/packages: all config files from "my-slackware" template are compared it the ones from -the jail and in case of any difference they're copied from the jail back to the template. Permissions -and file ownership commit into the template works at the same way. - -Jail-commit allows that a template to being kept always updated and mirroring the actual configuration -of an installed system. But if you want just to commit into the template just the installed package -list, simply type - - templatepkg -u my-template - -To make life even easier, there's also a feature of keeping a list of all installed slackware system in -the box in the file /etc/simplepkg/jailist. This file, despite its use by simplaret (what is described -in its own text), allow jail-commit to run with no arguments. - -Suppose you have three slackware installations: the root system and two more: - - - /mnt/slackware-1 using "slackware-1" template - - /mnt/slackware-2 using "slackware-2" template - -If your /etc/simplepkg/jailist has the following lines: - - /mnt/slackware-1 - /mnt/slackware-2 - -then the command - - jail-commit - -will update both "slackware-1" and "slackware-2" templates according, respectivelly, the contents of -/mnt/slackware-1 and /mnt/slackware-2. If you also have a template called "main", then jail-commit -will sync the contents of your root system with that template. - -You can even add the following line at root's crontab - - 20 4 * * * jail-commit - -so all your templates get updated everyday. If your system is configured to send emails, then crontab's -jail-commit output you give a summary of yesterday changes your system suffered, both config file changes -and package additions and removals. - -Restoring changes in a jail ---------------------------- - -The opposite operation of jail-commit also is possible: suppose you edited some config files in your system but -suddenly wants to go back and copy all config files from a template to your jail. To do that, just use the command - - jail-update /mnt/hda2 my-slackware - -Storing templates inside a Subversion repository ------------------------------------------------- - -In order to increase once more the control and flexibility of template contents, simplepkg can also handle templates -inside a subversion repository. To do that, edit first the config gile /etc/simplepkg/simplepkg.conf and set the -parameter TEMPLATES_UNDER_SVN to "yes". - -Then, create a fresh subversion repository to keep your templates with a command like that: - - svnadmin create /var/svn/simplepkg --fs-type fsfs - -Then, you just need to import your templates with - - templatepkg -e file:///var/svn/simplepkg - -From now jail-commit will commit automatically any template changes to the svn repository. If, in the other hand, -you wish to grab the changes from the svn repository to your local copy, use - - templatepkg -s - -In case you want to import a template folder from an existing repository, use - - templatepkg -i file:///var/svn/simplepkg - -where file:///var/svn/simplepkg is the repository path. - -Upgrading jails ---------------- - -Jail and installed system upgrading is done through simplaret and also supports /etc/simplepkg/jailist file. -For more info on how it works, take a look at simplaret own documentation. - -Different archs and versions ----------------------------- - -Simplepkg was idealized to permit a template to create jails from any architecture and version -of a slackware-like system. Upgrading tasks also are unified. This feature just works if you -use simplaret and not swaret as the package retrieval tool. - -As another example, to create an slack 10.1 installation (assuming your /etc/simplepkg/repos.conf with -the right configuration), just type - - VERSION=10.1 mkjail my-jail server-template - -Different archs can be used too. If you have a x86_64 system and wants to install a slack 10.2 -in a partition, try something like - - ARCH=i386 VERSION=10.2 ROOT=/mnt mkjail hda2 my-slackware - -Note that the templates are arch and version independent, as they just contain package names, -configuration files and scripts. For this reason, the commands templatepkg, metapkg, lspkg and -jail-update can be used normaly. - -Creating a package from a template ----------------------------------- - -If, for any reason, you wish to build a package from an existing template, try the command - - templatepkg -p template-name - -Although that should work smoothly, its not the recommended behaviour, as simplepkg was designed -to deal easily with templates and repositories. - -Building packages ------------------ - -Until now, we just showed simplepkg applications used to manage installations and packages. -But simplepkg can also create packages using createpkg script: it downloads, builds and -packages software that has an available script from a SlackBuild in a repository, working -like a slackware ports system. - -Createpkg works with any SlackBuild repository but works better and is well integrated if -they are compliant with the standards from - - http://slack.sarava.org/wiki/Main/SlackBuilds - -Specifically, createpkg was built to use slackbuilds from http://slack.sarava.org/slackbuilds -through a subversion repository. - -To fetch all scripts from slack.sarava.org, type - - createpkg --sync - -Then, you can list all available script using - - createpkg --list - -To search for a script, use something like - - createpkg --search latex2html - -This searches for a SlackBuild for the program "latex2html". If you want to build that package, -just type - - createpkg latex2html - -The resulting package should be available at /tmp or at the folder specified by the environment -variable $REPOS. To create and install the package, type - - createpkg --install latex2html - -If the package has dependencies listed in a slack-required file that aren't installed in the -system, then createpkg will try to process then before the desired package's SlackBuild: if -the dependencies aren't available in the SlackBuild tree, then createpkg will call simplaret -and try to install the package from a binary repository. If you want to avoid createpkg's -dependency checking, just use it with the flag --no-deps. - -For more information about createpkg, type - - createpkg --help - -or take a look at http://slack.sarava.org/wiki/Main/SlackBuilds. - -Auxiliar applications ---------------------- - -Simplepkg comes also with the following tools: - - - lspkg: show installed packages and its contents - - rebuildpkg: rebuild a package based on its /var/log/packages entry - - repos: creates and manages binary repositories - - mkbuild: app to build slackware build scripts - -The command lspkg is used to show installed packages. Also, Simplepkg comes with an additional helper -tool that recover installed packages which the original .tgz file was lost. The command rebuildpkg -rebuilds a package from their entry in /var/log/packages. As an example, - - rebuildpkg coreutils - -rebuilds the coreutils package using the files, scripts and metainformations stored in -/var/log/packages/ and /var/log/scripts/. - -For their time, scripts repos and mkbuild are used, respectivelly, to create and manage binary repositories -and to create SlackBuild scripts. - -Configuration parameters ------------------------- - -Simplepkg's config file is /etc/simplepkg/simplepkg.conf and it keeps parameters used by all scripts. -In this section, we won't cover any parameter that's just used by simplaret, whose settings are covered -in its own documentation. - - - JAIL_ROOT: Where jails are placed by mkjail. Default: "/vservers". - - - ADD_TO_JAIL_LIST: Wheter mkjial should add new jails to /etc/simplepkg/jailist. Default is "1" (enabled). - - - TEMPLATES_UNDER_SVN: Set to yes if your templates will be placed in a subversion repository. Default - is "no" (disabled). - - - TEMPLATE_FOLDER: Where your templates will be located. Default is "/etc/simplepkg/templates" and - dont change it except you know what you're doing. - - - TEMPLATE_STORAGE_STYLE: This variable controls in which folder / subfolder your templates will - be stored. Default value is "own-folder" and you'll just need to change that if you're storing - your templates using an old simplepkg format and wants to keep compatibilty. - -Its important to note that all boolean parameters in the config file can be set either to "1" or "yes" -to enable and "0" or "no" to disable. - -Additional information ----------------------- - -Simplepkg was written by Silvio Rhatto (rhatto at riseup.net) and is released under GPL license. The code -can be obtained from the subversion repository: - - svn checkout svn://slack.sarava.org/simplepkg - -Simplepkg's wiki is http://slack.sarava.org/wiki/Main/SimplePKG and its mailing list address is -http://listas.sarava.org/wws/info/slack. - diff --git a/tags/0.5/doc/README.pt_BR b/tags/0.5/doc/README.pt_BR deleted file mode 100644 index 138125e..0000000 --- a/tags/0.5/doc/README.pt_BR +++ /dev/null @@ -1,444 +0,0 @@ -Simplepkg: gerenciamento de instalações e pacotes -------------------------------------------------- - -Autor: Silvio Rhatto <rhatto at riseup.net> -Licença: GPL - -O simplepkg é um sistema de gerenciamento de sistemas slackware que roda sobre o pkgtool. -Ele é composto por vários scripts que desempenham funções de administração e desenvolvimento de -sistemas do tipo Slackware, procurando fechar um circuito de produção, envolvendo a construção, -a instalação de pacotes e até mesmo a instalação do sistema de forma automatizada. - -Do lado do desenvolvedor/a, ele ajuda na criação de SlackBuilds e construção de pacotes. -Do lado do administrador/a, ele possibilita a instalação automatizada de sistemas, instalação -de pacotes e a criação de "templates" de instalação -- que contém todos os arquivos de configuração, -informações de permissões e scripts de pós-instalação de uma dada máquina ou jaula. - -Documentação ------------- - -A documentação mais atualizada do simplepkg está em http://slack.sarava.org/simplepkg. - -Descrição ---------- - -Todas as distribuições de GNU/Linux já tem algum sistema de empacotamento amadurecido. A questão -agora é a praticidade de instalar e controlar o que está instalado, tanto pacotes como arquivos -de configuração de uma máquina, além da facilidade na criação de pacotes. - -Imagine por exemplo se você precisa manter uma lista de pacotes de 200 máquinas slackware, sendo -que algumas são usadas como desktop, outras como servidores web, alguma sendo o servidor de email -e assim por diante. Imagine agora que você perca o disco de algumas dessas máquinas ou que precise -cotidianamente reinstalar ou atualizar um sistema. - -Usar o cd de instalação do slackware e configurar na mão toda a vez que der um pau faria com que -você ficasse louco/a e desperdiçasse muito tempo, além do que sempre ocorre de esquecermos algum -detalhe ou pacote durante a configuração do sistema. Manter um backup completo de cada máquina, -por outro lado, pode ser muito custoso se o número delas for muito grande. - -O simplepkg permite que você mantenha um template para cada grupo de máquinas e com apenas um -comando instalar o template numa partição. Além do template, você precisa configurar o simplepkg -para obter pacotes de um repositório local ou remoto. - -Gerenciar instalações e pacotes não é tudo o que o simplepkg faz. Ele pode ser usado até na -criação de jaula e vservers, podendo manter toda a configuração das máquinas num repositório -Subversion. - -O simplepkg funciona não apenas com o Slackware mas com qualquer port (oficial ou não) que -siga minimamente os padrões oficiais. - -Arquitetura ------------ - -O simplepkg é um conjunto de scripts escritos com a filosofia KISS (Keep It Simple, Stupid) em mente. -Ele é um sistema muito simples, composto pelos seguintes comandos: - - - mkjail: constrói uma jaula/instalação de slackware numa pasta - - templatepkg: criar ou adiciona pacotes a um template - - lspkg: lista pacotes instalados - - jail-update: inverso do jail-commit - - jail-commit: atualiza o template - - rebuildpkg: reconstrói um pacote a partir de sua entrada no /var/log/packages - - simplaret: obtém pacotes de repositórios locais ou remotos - - createpkg: baixa, compila e empacota software de acordo com scripts presentes num repositório - - repos: cria e mantém repositórios - - mkbuild: cria scripts de construção de pacotes - -Instalando o simplepkg ----------------------- - -Para baixar o pacote do simplepkg, vá em http://slack.sarava.org/packages/noarch/. Depois, basta usar -o comando - - installpkg simplepkg-VERSAO-noarch-BUILD.tgz - -Usando o simplepkg ------------------- - -As três principais aplicações desse conjunto são: - - - Gerenciamento de pacotes - - Criação e manutenção de jaulas - - Criação de pacotes - -O gerencamento de pacotes é feito através do simplaret, e por ser algo bem específico está detalhado -no artigo correspondente. As seções a seguir mostrarão como o simplepkg pode ser utilizado para criar -e manter jaulas, assim como também criar pacotes. - -Criando templates de instalação -------------------------------- - -Originalmente, o simplepkg foi desenvolvido para ajudar na automatização de instalações de sistemas -slackware. Para isso, ele trabalha com templates -- listas com pacotes instalados, scripts e arquivos -de configuração -- permitindo criar perfis de instalação que podem ser então usados para instalar o -sistema numa outra partição ou criar um chroot. - -A construção de um template é feita através do programa templatepkg. Para criar um template de nome -"meu-slackware" contendo a lista de pacotes atualmente instalados no seu sistema, digite - - templatepkg -c meu-slackware - -A opção -c (ou --create) criará a pasta /etc/simplepkg/templates/meu-slackware, que conterá os -seguintes componentes: - - - /etc/simplepkg/templates/meu-slackware/meu-slackware.d: cópia de arquivos de configuração - - /etc/simplepkg/templates/meu-slackware/meu-slackware.s: scripts de pós-instalação - - /etc/simplepkg/templates/meu-slackware/meu-slackware.perms: informações sobre arquivos - - /etc/simplepkg/templates/meu-slackware/meu-slackware.template: lista de pacotes - -Esses quatro componentes são suficientes para armazenar todas as características de uma instalação -de slackware: a lista de pacotes controla o software instalado (a partir do conteúdo da pasta -/var/log/packages), a cópia dos arquivos de configuração controla as personalizações feitas para o uso -dos aplicativos e os scripts de pós-instalação cuidam de qualquer rotina que precisa ser realizada -exatamente após a instalação do sistema. Já o arquivo de informações sobre arquivos contém as permissões, -o dono/a e grupo de cada arquivo de configuração presente no template. - -Se você quiser criar um template a partir de uma instalação de slackware presente numa outra partição -do sistema que não seja a raíz, basta usar um comando do tipo - - templatepkg -c meu-slackware /mnt/slackware - -onde /mnt/slackware é o local onde o sistema alternativo está instalado. Após criado, o template possuirá -apenas a lista de pacotes contendo o nome dos aplicativos instalados no seu sistema. Como a pasta -/var/log/packages não preserva a ordem de instalação dos pacotes, então talvez você queira editar manualmente -a lista de pacotes de um template. Para isso, use o comando - - templatepkg -e meu-slackware - -Para adicionar um arquivo de configuração no seu novo template, basta dar um comando como - - templatepkg -a meu-slackware /etc/hosts - -Isso adicionará o arquivo /etc/hosts no template "meu-slackware". Além de salvar o arquivo e copiá-lo -automaticamente quando você instalar seu sistema, o simplepkg ainda pode tomar conta de qualquer alteração -que o /etc/hosts sofrer no sistema, seja mudança no conteúdo do arquivo, dono ou permissão. Se você ainda -estiver armazenando seus templates num repositório svn (o que veremos a seguir), o simplepkg pode ainda -manter um histórico completo das alterações do arquivo. - -ATENÇÂO: evite ao máximo deixar arquivos contendo senhas ou chaves privadas num template. O lugar mais -adequado para deixar esse tipo de coisa é num backup seguro. - -Criando jaulas e replicando instalações ---------------------------------------- - -Uma vez que um template foi criado com uma lista de pacotes e opcionalmente com arquivos de configuração -e scripts de pós-instalação (que serão detalhados a seguir), você pode replicar sua instalação de slackware -utilizando o comando - - mkjail jaula meu-slackware - -Isso cria uma nova árvore do slackware em /vservers/jaula contendo todos os pacotes e arquivos de configuração -do template "meu-slackware". A instalação dos pacotes será feita pelo aplicativo simplaret, que deve estar -configurado corretamente e cuja configuração padrão deve funcionar para a maioria dos casos. - -Se você quiser instalar essa jaula em outro local que não seja a pasta /vservers (esse local padrão pode ser -mudado pelo arquivo de configuração do simplepkg), basta usar um comando do tipo - - ROOT=/mnt mkjail hda2 meu-slackware - -O comando acima faz exatamente o que você está pensando: replica sua instalação slackware em /mnt/hda2, -dispensando totalmente o programa de instalação do slackware! - -Caso nenhum template for especificado, o mkjail utiliza o template /etc/simplepkg/default. O simplepkg já vem -com alguns templates padrões, presentes em /etc/simplepkg/defaults/templates. - -Scripts de pós-instalação -------------------------- - -Opcionalmente, é possível manter scripts de pós-instalação num template. Tais script são executados exatamente -após a instalação de uma jaula e cópia de arquivos de configuração pelo mkjail. Para criar ou editar um script -de pós-instalação, use um comando como - - templatepkg -b meu-slackware nome-do-script.sh - -Isso adicionará o script nome-do-script.sh no template "meu-slackware". O mkjail passa dois argumentos para -cada script de pós-instalação: a pasta superior e o nome da jaula ("/mnt" e "hda2" no nosso exemplo anterior). -Assim, um exemplo de script seria algo como - - #!/bin/bash - chroot $1/$2/ sbin/ldconfig - -Listando o conteúdo de um template ----------------------------------- - -Para listar os templates disponíveis ou o conteúdo de um template, use comandos como - - templatepkg -l - templatepkg -l meu-slackware - -Removendo arquivos de um template ---------------------------------- - -Analogamente à forma como se adicona arquivos num template, removê-los pode ser feito com o seguinte comando: - - templatepkg -d meu-slackware /etc/hosts - -Isso remove o arquivo /etc/hosts do template "meu-slackware". - -Apagando um template --------------------- - -Para apagar um template, basta utilizar um comando como - - templatepkg -r meu-slackware - -Atualizando um template ------------------------ - -Agora que já abordamos as opções do templatepkg, é hora de visitarmos um outro aplicativo, desta vez utilizado -para manter um template atualizado. O jail-commit é um script que copia as alterações dos arquivos (conteúdo, -propriedade e permissões) de um template a partir do conteúdo de uma jaula ou instalação. - -Por exemplo, caso se queira copiar as alterações da jaula /mnt/hda2 no template "meu-slackware", basta usar o -comando - - jail-commit /mnt/hda2 meu-slackware - -Além da lista de pacotes do template "meu-slackware" ser atualizada de acordo com a lista de pacotes presente -em /mnt/hda2/var/log/packages, todos os arquivos de configuração presentes no template "meu-slackware" serão -comparados com os correspondentes da pasta /mnt/hda2 e as diferenças são copiadas para o template. Da mesma -forma, as permissões e informação de dono/grupo dos arquivos também é atualizada no template. - -O comando jail-commit possibilita que um template sempre esteja atualizado e refletindo a configuração atual -de uma instalação de slackware. Se você quiser atualizar apenas a lista de pacotes de um template, porém, use - - templatepkg -u meu-template - -Para facilitar ainda mais o controle das alterações do sistema, existe ainda uma facilidade do arquivo -/etc/simplepkg/jailist. Esse arquivo serve, além de outros propósitos descritos na documentação do simplaret, -para que o jail-commit saiba de antemão quais são as instalações de sistema do tipo Slackware presentes numa -máquina, além da instalação principal na raíz do sistema. - -Suponha que uma máquina possua duas instalações de slackware, além da principal (raíz): - - - /mnt/slackware-1 usando o template "slackware-1" - - /mnt/slackware-2 usando o template "slackware-2" - -Se o arquivo /etc/simplepkg/jailist contiver as seguintes linhas, - - /mnt/slackware-1 - /mnt/slackware-2 - -então o comando - - jail-commit - -atualizará o template "slackware-1" de acordo com o conteúdo da jaula /mnt/slackware-1 e o template "slackware-2" -com o conteúdo da jaula /mnt/slackware-2. Se, além desses dois templates, existir um outro de nome "main", então -o jail-commit sem argumentos também copiará as atualizações da instalação raíz, deixando-as no template "main". - -Você pode inclusive colocar uma entrada no crontab do tipo - - 20 4 * * * jail-commit - -para que seus templates sejam atualizados diariamente. Se você ainda possui o envio de emails configurado na sua -máquina, então a saída do jail-commit será enviada pelo cron diariamente para seu email, contendo diffs das alterações -de arquivos de configuração a lista de pacotes adicionados ou removidos no sistema. - -Restaurando arquivos de configuração numa jaula ------------------------------------------------ - -A operação contrária ao que o jail-commit faz também é possível: suponha que você mexeu na configuração do sistema -mas se arrependeu das alterações e deseja voltar a configuração para o modo como ela se encontra no seu template, -basta usar o comando - - jail-update /mnt/hda2 meu-slackware - -Armazenando as configurações no repositório Subversion ------------------------------------------------------- - -Para aumentar ainda mais a flexibilidade e o controle do conteúdo dos templates, é possível armazená-los num -repositório Subversion. Para isso, edite o arquivo /etc/simplepkg/simplepkg.conf e deixe o parâmetro de configuração -TEMPLATES_UNDER_SVN com o valor "yes". - -Depois, crie um repositório subversion para armazenar seus templates, usando algo como - - svnadmin create /var/svn/simplepkg --fs-type fsfs - -Com o repositório criado, basta importar seus templates com o comando - - templatepkg -e file:///var/svn/simplepkg - -A partir daí, o comando jail-commit enviará automaticamente todas as alterações dos templates para o repositório -subversion. Se, por outro lado, você quiser baixar as alterações dos templates que estão no repositório remoto -para sua cópia local, use o comando - - templatepkg -s - -Caso você queira importar uma pasta de templates de um repositório já existente, use - - templatepkg -i file:///var/svn/simplepkg - -onde file:///var/svn/simplepkg é o camninho do repositório. - -Atualização de jaulas ---------------------- - -A atualização de jaulas e sistemas instalados é feita através do simplaret e também utiliza o arquivo -/etc/simplepkg/jailist. Para mais informações a respeito, consulte a documentação do simplaret para mais detalhes. - -Arquiteturas e versões diferentes ---------------------------------- - -O simplepkg foi idealizado para permitir que um mesmo template possa ser usado para criar jaulas de -arquiteturas e versões diferentes de sistemas padrão slackware. A atualização desses sistemas também -é unificada. Essa possibilidade só é permitida se você usa o simplaret e não o swaret como ferramenta -de obtenção de pacotes. - -Por exemplo, para criar uma instalação de slackware 10.1 (assumindo que suas definições de repositórios -do /etc/simplepkg/repos.conf contenham locais com slack 10.1), basta usar o comando - - VERSION=10.1 mkjail minha-jaula template-servidor - -Arquiteturas diferentes também podem ser usadas. Se você está num sistema x86_64 e quer instalar um -slack 10.2 numa partição, experimente - - ARCH=i386 VERSION=10.2 ROOT=/mnt mkjail hda2 meu-slackware - -Note que os templates independem de arquitetura e versão, já que eles só contém nomes de pacotes, -arquivos de configuração e scripts. - -Criando um pacote de um template --------------------------------- - -Se, por algum motivo, você quiser construir um pacote com o conteúdo de um template, experimente -o comando - - templatepkg -p nome-do-template - -No entanto, o simplepkg foi criado para que esse tipo de comportamento seja evitado, já que é mais -simples manter templates de configuração do que pacotes contendo a configuração de uma instalação. - -Construindo pacotes -------------------- - -Até aqui, apenas mostramos os aplicativos do simplepkg usados para a manutenção de instalações -de slackware. No entanto, uma das outras finalidades desta suíte é a construção de pacotes, o -que é feita pelo programa createpkg, Como dito anteriormente, o createpkg: baixa, compila e -empacota software de acordo com scripts presentes num repositório de scripts, funcionando com -um gerenciador de "ports" para slackware. - -O createpkg pode funcionar com qualquer tipo de script de construção de pacotes (SlackBuilds) -mas funcionará melhor se os mesmos seguirem o padrão descrito na página - - http://slack.sarava.org/wiki/Main/SlackBuilds - -Especificamente, o createpkg foi desenvolvido para utilizar os slackbuild disponíveis em -http://slack.sarava.org/slackbuilds. O createpkg trabalha com repositórios do tipo subversion. - -Para obter os scripts do repositório do slack.sarava.org, digite - - createpkg --sync - -Em seguida, você pode listas todos os scripts disponíveis: - - createpkg --list - -Para buscar por um pacote, use - - createpkg --search latex2html - -No caso, a busca é feita pelo SlackBuild do aplicativo "latex2html". Suponha agora que você queira -construir o pacote desse aplicativo: - - createpkg latex2html - -O pacote resultante estará na pasta /tmp ou no valor especificado pela variável de ambiente $REPOS. -Para criar e também instalar o pacote, basta - - createpkg --install latex2html - -Se o pacote possuir dependências listadas num arquivo slack-required e que não estiverem instaladas -no sistema, o createpkg tentará processá-las uma a uma antes de tentar construir o pacote desejado: -se as dependências não forem encontradas no repositório de scripts, então o createpkg tentará -baixá-las de um repositório binário através do simplaret. Se você não quiser que a resolução de -dependências seja seguida, use a opção --no-deps. - -Para mais detalhes de funcionamento, experimente o comando - - createpkg --help - -ou então acesse a página http://slack.sarava.org/wiki/Main/SlackBuilds. - -Aplicativos auxiliares ----------------------- - -O simplepkg acompanha ainda alguns aplicativos auxiliares: - - - lspkg: lista pacotes instalados - - rebuildpkg: reconstrói um pacote a partir de sua entrada no /var/log/packages - - repos: cria e mantém repositórios - - mkbuild: cria scripts de construção de pacotes - -O comando lspkg é um utilitário simples para a visualização de pacotes instalados no sistema. Já o -rebuildpkg ajuda a recuperar pacotes instalados cujo tgz original foi perdido. O comando rebuildpkg -reconstrói um pacote a partir de uma entrada no /var/log/packages. O comando - - rebuildpkg coreutils - -reconstrói um pacote do coreutils usando os arquivos e as metainformações listadas no arquivo -do /var/log/packages/ correspondente ao coreutils. - -Por fim, os scripts repos e mkbuild são os que se encontram na etapa de maior desenvolvimento: repos -cria um repositório de pacotes a partir de uma pasta contendo pacotes do tipo pkgtool e o mkbuild -é um aplicativo para auxiliar a criação de scripts de construção de pacotes que podem ser utilizados -sozinhos ou pelo o createpkg. - -Parâmetros de configuração --------------------------- - -O arquivo de configuração do simplepkg é o /etc/simplepkg/simplepkg.conf. Ele contém parâmetros de -configuração de todos os scripts, porém neste texto não trataremos das opções específicas ao simplaret, -as quais tem uma seção específica no artigo correspondente. - - - JAIL_ROOT: pasta padrão onde as jaulas são criadas pelo mkjail. Valor padrão: "/vservers". - - - ADD_TO_JAIL_LIST: controla se uma jaula criada pelo mkjail deve ser adicionada automaticamente - no arquivo /etc/simplepkg/jailist. O valor padrão é "1" (habilitado). - - - TEMPLATES_UNDER_SVN: indica se os templates estão armazenados num repositório subversion. - O valor padrão é "no" (não). - - - TEMPLATE_FOLDER: indica qual é a pasta de templates. O valor padrão é "/etc/simplepkg/templates" - e não é recomendável alterá-lo. - - - TEMPLATE_STORAGE_STYLE: controla a forma de armazenamento de templates. O valor padrão é - "own-folder" e essa opção apenas deve ser modificada se você armazena seus templates num - formato antigo do simplepkg e deseja manter compatibilidade. - -Vale lembrar que todas as opções booleanas (isto é, que podem ser apenas habilitadas ou desabilitadas) -do simplepkg.conf tem os seguintes valores permitidos: "1" e "yes" para habilitado e "0" ou "no" para -desabilitado. - -Mais informações ----------------- - -O simplepkg foi escrito por Silvio Rhatto (rhatto at riseup.net) sob licença GPL e seu código fonte é -disponibilizado através do repositório subversion: - - svn checkout svn://slack.sarava.org/simplepkg - -O wiki de desenvolvimento: http://slack.sarava.org/wiki/Main/SimplePKG e o endereço da lista de discussão -utilizada para discussões sobre simplepkg ou mesmo distribuições e pacotes do tipo Slackware é -http://listas.sarava.org/wws/info/slack. - diff --git a/tags/0.5/doc/README.simplaret b/tags/0.5/doc/README.simplaret deleted file mode 100644 index 397d913..0000000 --- a/tags/0.5/doc/README.simplaret +++ /dev/null @@ -1,319 +0,0 @@ -simplaret: simplepkg retrieval tool ------------------------------------ - -Simplaret is a simplepkg tool used to download packages from local and remote repositories. -With simplaret, one can grab packages for all archictectures and versions of slackware-like -distributions that follows the mirror guidelines, allowing an easy management all -jails and slackware installations in a machine, no matter wich arquiteture or version -each one has. - -It was inspired in swaret behavior but don't tries to get its complexity level, but -execute package download in a different way, where the local repository is organized -by archictecture and version. It can also search for packages. It runs on top of pkgtool -and is totally non-instrusive and can search, add, remove and upgrade packages. - -Documentation -------------- - -The always updated english documentation is hosted at http://slack.sarava.org/simplaret-en - -Downloading and installing --------------------------- - -Simplaret comes with simplepkg, wich installation and configuration is detailed at -http://slack.sarava.org/simplepkg. Simplaret uses /etc/simplepkg/simplepkg.conf for its definitions -and /etc/simplepkg/repos.conf for repository information. The default configuration should work -for almost everyone. - -Using simplaret ---------------- - -Simplaret stores its data in system wide folders. Then, some funcionality will just be available -if its run with root user capabilities. The first thing you need to do with simplaret is to fetch -repository metadata, using - - simplaret --update - -or simply - - simplaret update - -as simplepkg supports both command line behaviour (--update or just update). After that, you can -search for packages using commands like - - simplaret search ekiga - -The result should be something like - - REPOS repository sarava, arch: i386, version: 11.0: ekiga-2.0.5-i586-1rd.tgz - -As we'll see afterwards, "REPOS" means the repository type, "sarava" is the repository name, -"arch" is the package architecture (i386 in this case) and "version" is the repository version -(11.0 in this case). - -To install this package, just type - - simplaret install ekiga - -By default, if simplaret finds in the repository a slack-required file for this package (i.e, the -file ekiga.slack-required in the same folder of the binary package) then it will try to install -all unmet dependencies. This default behaviour can be disabled through config file parameters. - -If you just want to download the package, type - - simplaret get ekiga - -In the case of simplaret finds more than one package with the same name, it will get in the order -that the "search" option shows them. The search precedence can also be defined by config file -parameters. For instance, the command - - simplaret search kernel-generic - -can return something like - - ROOT repository sarava, arch: i386, version: 11.0: kernel-generic-2.6.17.13-i486-1.tgz - ROOT repository sarava, arch: i386, version: 11.0: kernel-generic-2.6.18-i486-1.tgz - -So the command - - simplaret install kernel-generic - -will attempt to install the package "kernel-generic-2.6.17.13-i486-1.tgz" and not the file -"kernel-generic-2.6.18-i486-1.tgz". If you want to force simplaret to get and specific package, -use its complete file name: - - simplaret install kernel-generic-2.6.18-i486-1.tgz - -If a package is already installed in the system, the --install option will try to upgrade it -if the version or build number between the installed package and the one in the repository -are different. So the command - - simplaret install simplepkg - -updates simplepkg in the case there's a new version. To remove a package, type - - simplaret remove nome-do-pacote - -That's just an alias for the standard removepkg command. - -Simplaret stores downloaded packages in a system folder that defaults to /var/simplaret. -As you get more and more packages, simplaret will consume more space ir your disk. To -erase your local repository folder, use the command - - simplaret purge - -This will erase just the packages from the current arch and version. Details about how to -erase the repository for different arch and version are in another session. - -You can also force simplaret to erase just old packages. The following command erases just -packages older than six weeks or more: - - simplaret purge -w 3 - -Downloading patches and upgrading the system --------------------------------------------- - -Simplaret hasn't just about package installing and removal, it has two more important -features: patches retrieval and application. Assuming that the patches repository of -your slackware flavour is correctly configured (what should work with almost everyone -with the default configuration), you can fetch the available patches using the command - - simplaret get-patches - -If you don't just donwload but also apply those patches, use - - simplaret upgrade - -Working with more than one architecture and version ---------------------------------------------------- - -Until now we just looked what is the requirement for all package management system: package -retrieval, installation, search, upgrade and dependency resolution. What makes simplaret -different from another tools is the ability to deal with different architectures and versions -and slackware installations. - -The features descibed in this section will just make sense after you read the next section, when -we'll talk about multiple slackware installations and jails in the same computer. - -Suppose you're running Slackware (arch i386) bit wants to update the package list from Slamd64 -version 11.0 (arch x86_64). To do that, just type - - ARCH=x86_64 VERSION=11.0 simplaret update - -This command grabs the Slamd64 package list without confliting in any way with the standard and -already downloaded i386 Slackware package list. This doesn't happens because simplaret stores -metadata from different archs and versions at different folders. - -Its optional to pass ARCH and VERSION environment variables to simplaret. If one or none of them -was specified, simplaret uses the standar system value, obtained from the file /etc/slackware-version, -or uses config parameters to do that. - -As an example, to search for a package in the arch powerpc (Slackintosh) version 11.0, just type - - ARCH=powerpc VERSION=11.0 simplaret search package-name - -All command previously mentioned can work that way, except those that install or remove packages as -its dangerous to mix packages from different archs and versions in the same system. - -Working with multiple installations ------------------------------------ - -The previously section mentions a feature that just makes sense in systems where there's more than -one slackware-like installation using different archs and versions. - -Say you have a x86_64 machine with three installed systems: - - - Slamd64 11.0 at the root folder - - Slackware 11.0 at /mnt/slackware-1 - - Slackware 10.2 at /mnt/slackware-2 - -In the case of package install or patch retrieval and application, simplaret supports the environment -variable ROOT to specify which folder simplaret should look for a system. - -Then, to install a package at /mnt/slackware-1, just type - - ARCH=i386 VERSION=11.0 simplaret update - ROOT=/mnt/slackware-1 simplaret install package-name - -The first command just updates the package list and the second makes simplepkg install the package with -using /mnt/slackware-1 arch and version. If you want to do the same at /mnt/slackware-2, use the analogous -command - - ARCH=i386 VERSION=10.2 simplaret update - ROOT=/mnt/slackware-2 simplaret install package-name - -There's also a feature to make patch retrieval and application with just one command, using the file -/etc/simplepkg/jailist. This file is used by simplepkg's mkjail script to store with jails you have -on your system but is also used by simplaret to upgrade all jails with just one command. - -Considering that your box has the three previously mentioned slackware installation. Then, to add -/mnt/slackware-1 and /mnt/slackware-2 in the automatic upgrade list, add the following lines in your -/etc/simplepkg/jailist (without spaces): - - /mnt/slackware-1 - /mnt/slackware-2 - -The root system doesn't need to be added in this file. Then, you can get the patches for all your three -systems with the command - - simplaret get-patches - -To get the patches and/or apply them in all jails (including the root system), use - - simplaret upgrade - -This feature makes easier to keep all your installations always upgraded. - -The repos.conf file -------------------- - -Now that we just talked about all simplaret features, its time to take a tour at its configuration -files. The first one we'll say about is the repository definition file, /etc/simplepkg/repos.conf. - -If you don't mind to make an advanced simplaret usage, then probably you can just leave this section -as the default config should work for almost all standard situations and you'll just need to edit -repos.conf to change repository priorities. - -The repos.conf file contains one repository definition per line using the following syntax: - - TYPE[-ARCH][-VERSION]="name%URL" - -The content in brackets are optional depending on the repository type as we'll see later in this -section. The repository types supported by simplaret are: - - - PATCHES: used for repositories containing patches and which file metadata is the file - FILE_LIST instead the standard FILELIST.TXT; example: - - PATCHES-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/patches/" - - This defines a patches repository for arch i386 (official Slackware), version 11.0 and named - as "sarava". - - Its optional to have a PATCHES definition in order to get patches: the ROOT repository definition - just take care of that and you'll just need to use a PATCHES definition if you want to give - precedence to some patches repository over all other definition types. - - - ROOT: this type specifies the default slackware-like repository, where the content is sorted - by version. An official slackware repository then is defined as - - ROOT-i386="tds%http://slackware.mirrors.tds.net/pub/slackware/" - - ROOT repositories needs just the arch definition, a name and an URL. In the previous case, - we have a ROOT repository called "tds". It doesn't need any version information as its already - considers tha the content is sorted in folders like - - http://slackware.mirrors.tds.net/pub/slackware/slackware-10.2/ and - http://slackware.mirrors.tds.net/pub/slackware/slackware-11.0/ - - - REPOS: this repository type ir arch and version oriented, like - - REPOS-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/" - - In the above case, a repository called "sarava" is defined using arch i386 and version 11.0 - with URL http://slack.sarava.org/packages/slackware/slackware-11.0/. This repository type is - recommended when using non-official repositories. - - - NOARCH: the last type is used to define repositories where packages are arch and version - independent, like - - NOARCH="sarava%http://slack.sarava.org/packages/noarch" - -In any repository type, the supperted URL schemes are http://, ftp:// or file:// (for local -repositories). - -As simplaret supports more than one repository definition for each type, arch or version, each -definition has its own name. Definitions can have the same name just if they're dont use the -same repository type and/or arch and version. - -There's also a priority rule between the repository types wich defines a precedence order. -Repositories are searched according the following order: - - - PATCHES has the highest priority: if a package from a given arch and version is not found - in the first (if existent) PATCHES definition, then the next one is searched until all - PATCHES definitions are searched. - - - Then, the package is searched in all ROOT defintions in the order they appear at repos.conf. - - - The next searched repository type is REPOS in the specified arch an version, in the order - they appear at repos.conf. - - - At last, NOARCH type is searched in the order they're defined. - -In the case you're issuing an upgrade or just geting patches, simplaret by default will just -search in PATCHES and ROOT definitions. - -At REPOS and ROOT is also possible to specify its internal search order according its subfolders. - -Configuration file simplepkg.conf ---------------------------------- - -Simplaret also stores its configurations inside simplepkg's configuration file -/etc/simplepkg/simplepkg.conf. This file is well commented and you should find there a description -of all supported options. - -But why use that? ------------------ - -You may ask why someone wishes to use such tool. - -Simplaret was written with a *x86 environment in mind, where lots of jails with different archs -and versions are installed. Suppose a x86_64 with the following chroots installed: - - - slamd64 11.0 - - slackware 10.0 - - slackware 11.0 with additional i686 packages - - uSlack (i386 uClibc) - -Keep all this stuff update manually is really a headache. Simplaret just tries to make it trivial. - -Additional information ----------------------- - -Simplaret was written by Silvio Rhatto (rhatto at riseup.net) and is released under GPL license. The code -can be obtained from the subversion repository: - - svn checkout svn://slack.sarava.org/simplepkg - -Simplepkg's wiki is http://slack.sarava.org/wiki/Main/SimplePKG and its mailing list address is -http://listas.sarava.org/wws/info/slack. - diff --git a/tags/0.5/doc/README.simplaret.pt_BR b/tags/0.5/doc/README.simplaret.pt_BR deleted file mode 100644 index 672eb8e..0000000 --- a/tags/0.5/doc/README.simplaret.pt_BR +++ /dev/null @@ -1,445 +0,0 @@ -simplaret: ferramenta para obtenção de pacotes ----------------------------------------------- - -O simplaret é a ferramenta do simplepkg utilizada para obter pacotes de repositórios locais -ou remotos. Com ele, você pode não só baixar pacotes do seu sistema Slackware como também pode -baixar de qualquer versão ou arquitetura cujo repositório siga os Mirror Guidelines do Slackware, -como por exemplo Slamd64 e Slackintosh, permitindo que você gerencie facilmente todas as suas -jaulas e instalações de Slackware, independentemente da arquitetura ou versão que elas utilizem. - -Além da obtenção, o simplaret ainda pode fazer a instalação, a remoção ou a atualização dos -pacotes de um sistema e também das demais jaulas existentes numa máquina. - -O simplaret é totalmente não-intrusivo no sistema e roda sobre o pkgtool. - -Documentação ------------- - -A documentação atualizada do simplaret se encontra em http://slack.sarava.org/simplaret. - -Obtendo e instalando --------------------- - -O simplaret acompanha o simplepkg e por isso sua instalação é feita baixando o pacote do simplepkg -em http://slack.sarava.org/packages/noarch/ e em seguida instalando-o com o comando - - installpkg simplepkg-VERSAO-noarch-BUILD.tgz - -A partir daí você já pode utilizar o simplaret para baixar pacotes dos repositórios padrão ou -então alterar a lista de repositórios do arquivo /etc/simplepkg/repos.conf ou a configuração -do aplicativo pelo arquivo /etc/simplepkg/simplepkg.conf. - -Usando o simplaret ------------------- - -Em geral, como o simplaret armazena as informações em pastas do sistema, algumas funcionalidades -só estarão disponíveis quando o mesmo é rodado pelo superusuário do sistema. - -Antes de explorar todas as funcionalidades do simplaret, é necessário atualizar a lista de -pacotes para sua arquitetura e versão, o que pode ser feito com o comando - - simplaret --update - -ou simplesmente - - simplaret update - -já que o simplaret suporta que suas opções básicas de linha de comando sejam passas precedidas -por dois hífens ou não (--update ou update). - -Depois de atualizar a lista de pacotes, experimente buscar por um pacote com um comando do tipo - - simplaret search ekiga - -O resultado pode ser algo do tipo - - REPOS repository sarava, arch: i386, version: 11.0: ekiga-2.0.5-i586-1rd.tgz - -Como veremos adiante, "REPOS" significa o tipo de repositório, "sarava" é o nome do -repositório, "arch" mostra a arquitetura do pacote e do repositório (i386, no caso) -e "version" a versão do repositório (11.0, no caso). - -Para instalar esse pacote, basta o comando - - simplaret install ekiga - -Por padrão, se o simplaret encontrar no repositório um arquivo slack-required referente -ao pacote en questão (ou seja, um arquivo ekiga.slack-required na mesma pasta que o pacote -do ekiga, neste caso), então o simplaret tentará instalar todos os requisitos contidos nesse -slack-required, caso já não estejam instalados no sistema. Essa resolução de dependências -automática pode, no entanto, ser desabilitada através de um parâmetro de configuração, como -veremos a seguir. - -Se você apenas quiser baixar o pacote, digite apenas - - simplaret get ekiga - -No caso do simplaret encontrar mais de um pacote com o mesmo nome, ele baixará na ordem que -a opção "search" listá-los, sendo que essa precedência é definida de acordo com a ordem em -que os repositórios estão listados no arquivo de configuração. Por exemplo, o comando - - simplaret search kernel-generic - -pode retornar algo como - - ROOT repository sarava, arch: i386, version: 11.0: kernel-generic-2.6.17.13-i486-1.tgz - ROOT repository sarava, arch: i386, version: 11.0: kernel-generic-2.6.18-i486-1.tgz - -Assim, o comando - - simplaret install kernel-generic - -instalará o pacote "kernel-generic-2.6.17.13-i486-1.tgz" ao invés do pacote -"kernel-generic-2.6.18-i486-1.tgz". Caso você queira forçar a instalação do -segundo pacote, basta especificá-lo com o nome completo: - - simplaret install kernel-generic-2.6.18-i486-1.tgz - -Se um pacote já estiver instalado no sistema, a opção install fará o upgrade do mesmo, caso -a versão ou o build number do pacote presente no repositório for diferente da instalada no -sistema. Assim, o comando - - simplaret install simplepkg - -atualiza o simplepkg caso haja uma nova versão disponível nalgum repositório. - -Para remover um pacote, digite - - simplaret remove nome-do-pacote - -o que na verdade é apenas uma chamada indireta ao removepkg. - -O simplaret armazena pacotes baixados de repositórios numa pasta local do sistema, que -por padrão é /var/simplaret. Conforme você vai baixando e instalando pacotes, essa pasta -tende a crescer e ocupar muito espaço. Para apagar os pacotes, basta usar o comando - - simplaret purge - -Isso apagará apenas os pacotes da arquitetura e versão usadas atualmente. Detalhes de -como apagar os pacotes de todas a arquiteturas e versões serão dados numa seção seguinte. - -Você também pode forçar o simplaret a apagar apenas pacotes antigos. O comando a seguir -apaga apenas os pacotes baixados a três semanas ou mais (ou seja, os pacotes baixados a -menos de três semanas continuam armazenados): - - simplaret purge -w 3 - -Baixando patches e atualizando o sistema ----------------------------------------- - -O simplaret possui, além do básico do gerenciamento de pacotes, duas funcionalidades -adicionais: a obtenção e a aplicação de patches (pacotes contendo atualizações e -correções de segurança). - -Assumindo que os repositórios contendo patches para sua distribuição do tipo Slackware -estejam corretamente configurados, o que ocorre com a configuração padrão que acompanha -o simplepkg e que veremos a seguir como alterá-la, você pode baixar os patches disponíveis -para o seu sistema com o comando - - simplaret get-patches - -Se você quiser não só baixar mas também atualizar seu sistema, isto é, fazer um upgrade com -os patches disponíveis, use - - simplaret upgrade - -Trabalhando com múltiplas arquiteturas e versões ------------------------------------------------- - -Até aqui vimos apenas o que é a obrigação de qualquer sistema de gerenciamento de pacotes possuir: -obtenção de pacotes, instalação, busca e atualização do sistema. O que diferencia o simplaret das -outras ferramentas, além do esquema de resolução de dependências, é sua capacidade de lidar -simultaneamente com múltiplas arquiteturas, versões e até instalações de sistemas do tipo Slackware. - -O uso dos seguintes comandos só fará sentido à luz da próxima seção, onde trataremos a respeito de -múltiplas instalações e jaulas num mesmo computador, porém é um pré-requisito para entendê-la. - -Supondo que você esteja rodando Slackware (arquitetura i386) mas que queira atualizar a lista de -pacotes do sistema Slamd64 versão 11.0 (arquitetura x86_64), basta usar o comando - - ARCH=x86_64 VERSION=11.0 simplaret update - -Esse comando baixará a lista de pacotes para o Slamd64 sem conflitar de nenhuma forma com a lista -e os pacotes já baixados para o Slackware. Isso acontece porque o simplaret armazena as informações -e os pacotes de cada repositório em pastas próprias, organizadas de acordo com a arquitetura e versão. - -Passar as variaveis ARCH e VERSION para o simplaret é opcional. Se qualquer uma delas não foi especificada, -o simplaret utilizará o valor padrão do seu sistema, usualmente obtido do arquivo /etc/slackware-version -ou então especificada através do arquivo de configuração do simplepkg. - -Por exemplo, para pesquisar por um pacote da arquitetura powerpc (distribuição Slackintosh) na versão 11.0, -basta o comando - - ARCH=powerpc VERSION=11.0 simplaret search nome-do-pacote - -Todos os comandos apresentados anteriormente funcionarão dessa maneira, à exceção daqueles que instalam ou -fazer a atualização de pacotes, já que em geral é destrutivo misturar pacotes de arquiteturas e versões -diferentes num mesmo sistema. - -Trabalhando com múltiplas instalações -------------------------------------- - -A funcionalidade apresentada na seção anterior só faz sentido quando existirem sistemas, jaulas e/ou -vservers instalados num mesmo computador. - -Suponha que você possua uma máquina x86_64 com três sistemas instalados: - - - Slamd64 11.0 na raíz - - Slackware 11.0 em /mnt/slackware-1 - - Slackware 10.2 em /mnt/slackware-2 - -No caso da instalação de pacotes, da obtenção e aplicação de atualizações, o simplaret suporta a -variável de ambiente ROOT para especificar qual é a pasta na qual o simplaret deve buscar o sistema. - -Para instalar um pacote no Slackware contido em /mnt/slackware-1, basta usar os comandos - - ARCH=i386 VERSION=11.0 simplaret update - ROOT=/mnt/slackware-1 simplaret install nome-do-pacote - -O primeiro comando apenas atualiza a lista de pacotes e o segundo faz com que o simplaret baixe -o pacote da arquitetura e versão do sistema presente em /mnt/slackware-1 bem como efetue sua instalação. - -Para o caso da instalação em /mnt/slackware-2, o uso é análogo: - - ARCH=i386 VERSION=10.2 simplaret update - ROOT=/mnt/slackware-2 simplaret install nome-do-pacote - -Existe ainda uma facilidade para que a obtenção e aplicação de atualizações seja feita de forma única, -através do arquivo /etc/simplepkg/jailist. Esse arquivo serve, além de outros propósitos descritos na -documentação do simplepkg, para que o simplaret saiba de antemão quais são as instalações de sistema -do tipo Slackware presentes numa máquina, além da instalação principal na raíz do sistema. - -Considerando que a máquina possua as três instalações citadas no início deste tópico, a atualização -automática das mesmas pode ser feita quando o arquivo /etc/simplepkg/jailist contiver as seguintes -linhas (sem espaços no início de cada uma): - - /mnt/slackware-1 - /mnt/slackware-2 - -O sistema principal, contido na raíz do sistema, não precisa estar listado nesse arquivo. Se todas -as suas instalações de sistema do tipo Slackware estiverem constando corretamente no /etc/simplepkg/jailist, -o seguinte comando baixará as atualizações disponíveis para todas elas, incluindo o sistema contido na raíz: - - simplaret get-patches - -Analogamente, o seguinte comando baixará e/ou aplicará todas as atualizações disponíveis em todas as -instalações, incluindo o sistema contido na raíz: - - simplaret upgrade - -Desse modo, o gerenciamento de pacotes numa máquina que contenha mais de uma instalação do tipo Slackware -fica unificada e consequentemente simplificada. - -O arquivo repos.conf --------------------- - -Agora que o comportamento do simplaret foi delineado, é importante descrever o arquivo de definição de -repositórios, o /etc/simplepkg/repos.conf. Se você não pretende fazer um uso avançado do simplaret, -provavelmente pode deixar de ler esta e a próxima seção, já que para o uso corriqueiro do simplaret -você provavelmente não precisará alterar seu repos.conf, a não ser que queira mudar o espelho de download -dos seus pacotes ou montar um esquema avançado para a escolha e priorização de repositórios. - -O arquivo /etc/simplepkg/repos.conf contém uma definição de repositório por linha e a sintaxe de cada -uma delas é: - - TIPO[-ARQUITETURA][-VERSAO]="nome%URL" - -O conteúdo demarcado por colchetes é opcional dependendo do tipo de repositório, como veremos a seguir. -Os tipos de repositório aceitos pelo simplaret são: - - - PATCHES: definição para repositórios que contenham patches (pacotes de atualização) e cuja lista - de arquivos é FILE_LIST e não FILELIST.TXT; exemplo: - - PATCHES-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/patches/" - - No caso da definição acima, temos um repositório de patches para a arquitetura i386 (distribuição - Slackware), versão 11.0 e o nome dado ao repositório é "sarava". - - Possuir uma definição do tipo PATCHES é opcional para ter acesso às atualizações: a definição - de repositório ROOT, que veremos em seguida, já lida com patches: o tipo de repositório PATCHES - serve apenas se você quiser utilizar algum repositório não-oficial como fonte de patches - prioritária, já que repositório PATCHES são pesquisados pelo simplaret antes de qualquer outro. - - Em resumo, se você não tiver um bom motivo para usar esse tipo de repositório, evite-o. - - - ROOT: são tipos de repositórios cujo conteúdo está dividido por versão. O exemplo tradicional - deste caso é o próprio repositório oficial das distribuições: - - ROOT-i386="tds%http://slackware.mirrors.tds.net/pub/slackware/" - - Repositórios ROOT necessitam apenas de uma definição de arquitetura, um nome e uma URL. No caso - acima, temos a definição de repositório ROOT de nome "tds", ou seja, não há definição de versão, - já que o simplaret considerará que a versão desejada está numa subpasta dessa URL. Ou seja, - definições ROOT implicam que as pastas contendo pacotes de cada versão estejam bem separadas, - ou seja, pastas como http://slackware.mirrors.tds.net/pub/slackware/slackware-10.2/ e - http://slackware.mirrors.tds.net/pub/slackware/slackware-11.0/. - - - REPOS: este tipo de repositório é orientado a arquitetura e versão, como por exemplo - - REPOS-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/" - - No caso acima, um repositório de nome "sarava" é definido para a arquitetura i386 e versão - 11.0 com a URL http://slack.sarava.org/packages/slackware/slackware-11.0/. Esse tipo de definição - é recomendado para repositórios não-oficiais. - - - NOARCH: o último tipo de definição é usado para repositórios cujos pacotes são independentes - de arquitetura e versão da distribuição. Como exemplo temos um repositório do Projeto Slack: - - NOARCH="sarava%http://slack.sarava.org/packages/noarch" - -Em qualquer tipo de repositório, a URL pode ser do tipo http://, ftp:// ou file:// (para repositórios -locais). - -Como podem haver mais de uma definição de repositório para cada tipo, versão e/ou arquitetura, -as mesmas são diferenciadas de acordo com o nome. Definições de repositório podem ter nomes idênticos, -desde que se refiram a tipo de repositório e/ou arquitetura e versão diferentes. - -Existe ainda uma prioridade dentre tipos de repositório e ordens de precedência. Numa pesquisa, -repositórios são pesquisados de acordo com a seguinte ordem: - - - PATCHES tem prioridade mais alta: caso um pacote de uma dada arquitetura e versão não seja - encontrado no primeiro repositório PATCHES do repos.conf, o próximo repositório definido na - ordem em que ele aparece no arquivo é pesquisado, e assim por diante. - - - Em seguida, pacotes são procurados nas definições ROOT da arquitetura em questão, na ordem - em que aparecem no repos.conf. - - - Depois, são os pacotes de repositórios REPOS daquela arquitetura e versão são pesquisados, - na ordem em que aparecem no repos.conf. - - - Por fim, repositórios NOARCH são pesquisados, na ordem em que são definidos. - -Em resumo, o simplaret tem uma ordem de precedência e execução de repositórios e para busca e obtenção -de pacotes: pacotes são exibidos de acordo com a ordem e precedência descritas acima. No caso da ontenção -de pacotes, o primeiro repositório que possuí-lo será utilizado, isto é, caso o pacote não for solicitado -explicitamente com seu nome de arquivo completo mas sim apenas com seu nome. - -No caso da obtenção de patches, por padrão apenas repositórios do tipo PATCHES e ROOT são pesquisados, -a não ser que isso seja configurado como contrário. - -Em repositórios do tipo REPOS e ROOT ainda é possível, através de parâmetros de configuração, explicitar -a ordem de pastas que são pesquisadas dentro dos repositórios, algo que veremos a seguir e facilita no -caso do usuário estar interessado em dar prioridade para aplicativos em fase de testes (usualmente -armazenados na pasta testing/) ou pacotes antigos (pasture). - -Parâmetros de configuração do simplepkg.conf --------------------------------------------- - -Nesta seção os parâmetros do arquivo de configuração /etc/simplepkg/simplepkg.conf relevantes ao -simplaret estão descritos. Para uma lista completa de todos os parâmetros disponíveis, consulte o -simplepkg.conf contido no pacote do simplepkg. Aqui estão descritos apenas os principais, que são: - - - STORAGE: local de armazenameto dos pacotes baixados e das informações de repositório. - O valor padrão é /var/simplaret/packages. - - - PATCHES_DIR: local de armazenamento de pacotes que são patches (atualizações), isto é, o - local de armazenamento de pacotes de repositórios do tipo PATCHES (e eventualmente de - patches encontrados em repositórios do tipo ROOT, como veremos a seguir). O valor padrão - é /var/simplaret/patches. - - - SIMPLARET_DOWNLOAD_FROM_NEXT_REPO: indica se o simplaret deve tentar baixar um pacote do - próximo repositório (caso exista) quando o download do repositório atual tiver falhado. - Valores possíveis são "1" ou "yes" para habilitar a opção (que é o comportamento padrão) - ou "0" ou "no" para desabilitá-la. - - - SIMPLARET_PURGE_PATCHES: indica se o conteúdo da pasta de patches também deve ser apagado - quando o comando "simplaret --purge" é chamado. Use "yes" ou "1" para habilitar e "no" ou - "0" para desabilitar. O valor padrão é "1". - - - SIMPLARET_PURGE_WEEKS: controla o número de semanas a partir do qual o simplaret irá apagar - pacotes quando chamado com o comando "simplaret --purge", o que é equivalente a usar o - comando "simplaret --purge -w N". O valor padrão é "3". Para desabilitar essa opção, atribua - o valor "0". - - - PASSIVE_FTP: Indica se o simplaret deve fazer as transferências de FTP no modo passivo. - O valor padrão é "1" (habilitado). - - - HTTP_TOOL: especifica qual a ferramenta para obtenção de arquivos via protocolo HTTP. - As opções disponíveis são "curl" e "wget", sendo que a opção padrão é "curl". - - - FTP_TOOL: especifica qual a ferramenta para obtenção de arquivos via protocolo FTP. - As opções disponíveis são "curl", "wget" e "ncftpget", sendo que a opção padrão é "curl". - - - CONNECT_TIMEOUT: tempo máximo de espera para uma conexão de rede, dado em segundos. - O valor padrão é "20". - - - ROOT_PRIORITY: especifica a ordem de prioridades das pastas de repositórios do tipo - ROOT numa pesquisa. O valor padrão é "patches slackware extra testing pasture", - indicando que a pasta de patches tem precedência sobre todas as outras no repositório, - sendo seguida pela pasta slackware e depois pelas extra, testing e pasture. Como - podem existir nomes de pacotes idênticos nessas pastas, o estabelecimento de uma - ordem se faz necessária. - - - REPOS_PRIORITY: da mesma forma como repositorios ROOT necessitam de uma prioridade - de pesquisa em pastas, este parâmetro de configuração especifica a prioridade de - pastas em repositórios do tipo REPOS. O valor padrão é - "patches slackware extra testing pasture". - - - SIGNATURE_CHECKING: indica se o simplaret deve checar pela assinatura dos pacotes - baixados, caso ela esteja disponível. Você deve ter a chave pública do distribuidor - dos pacotes no seu chaveiro. O valor padrão é "0" (desabilitado). - - - DEPENDENCY_CHECKING: indica se o simplaret deve trabalhar com a resuloção de dependências - caso ele encontre, no repositório, um arquivo slack-required correspondente ao pacote que - está sendo instalado. O valor padrão é "1" (habilitado). - - - DOWNLOAD_EVEN_APPLIED_PATCHES: indica de o simplaret deve baixar todos os patches - disponíveis a uma dada instalação de sistema do tipo Slackware, mesmo que os mesmo - já se encontrem aplicados. Esta opção é útil se você quiser manter uma cópia local - das atualizações existentes para seu sistema. O valor padrão é "0" (desabilitado). - - - CONSIDER_ALL_PACKAGES_AS_PATCHES: especifica se o simplaret deve, durante a obtenção - de pacotes de atualização, procurar por atualizações também nos tipos de repositórios - REPOS e NOARCH. Com essa opção, o simplaret faz uma pesquisa pelo pacote e, se sua versão - ou buildnumber da primeira ocorrência não bater com as do pacote atualmente instalado, - ele baixa e o aplica, mesmo que seja um pacote de repositórios do tipo REPOS ou NOARCH. - O valor padrão é "0" (desabilitado). O uso dessa opção não é muito recomendado por poder - causar confusão e deixar o simplaret mais lento, mas pode ser útil caso você esteja - usando um repositório não-oficial que sempre atualiza seus pacotes. - - - STORE_ROOT_PATCHES_ON_PATCHES_DIR: controla se o simplaret deve armazenar os patches baixados - de repositórios do tipo ROOT na mesma pasta de armazenamento de patches provenientes de - repositórios do tipo PATCHES. É uma opção útil apenas se você quiser manter todos os patches - de repositórios ROOT e PATCHES num mesmo local. O valor padrão é "0" (desabilitado). - -Vale lembrar que todas as opções booleanas (isto é, que podem ser apenas habilitadas ou desabilitadas) -do simplepkg.conf tem os seguintes valores permitidos: "1" e "yes" para habilitado e "0" ou "no" para -desabilitado. - -Mas para quê serve isso? ------------------------- - -Você pode estar se perguntando: para que mais um gerenciador de pacotes para o Slackware e quem utilizaria -uma ferramenta que baixa pacotes de várias arquiteturas? - -O simplaret foi escrito tendo em mente um ambiente *86 onde várias jaulas de diferentes arquiteturas estão -instaladas. Suponha por exemplo uma máquina x86_64 que possua as seguintes jaulas: - - - Slamd64 11.0 - - Slackware 11.0 - - Slackware 11.0 com pacotes adicionais em i686 - - ucSlack (uClibc para i386) - -O condenado/a em questão que roda todas essas jaulas, pelos mais diversos motivos, pode ter uma grande dor -de cabeça para manter os pacotes em ordem de forma manual. Com o simplaret e eventualmente com o simplepkg, -a tarefa se torna trivial. - -Além disso, as inúmeras novas tecnologias de virtualização poderão necessitar de um sistema de gerenciamento -de pacotes que trabalha simultaneamente com múltiplas arquiteturas e versões. - -Mesmo que você possua apenas um único sistema do tipo Slackware em seu computador ou trabalhe apenas com uma -única arquitetura e/ou versão, o simplaret possui todas as funcionalidades necessárias para facilitar seu -dia-a-dia de gerenciamento de pacotes. - -Mais informações ----------------- - -O simplaret foi escrito por Silvio Rhatto (rhatto at riseup.net) e é disponibilizado dentro do pacote do -simplepkg e sob a licença GPL. Para obter o código fonte, digite - - svn checkout svn://slack.sarava.org/simplepkg - -O wiki de desenvolvimento: http://slack.sarava.org/wiki/Main/SimplePKG e o endereço da lista de discussão -utilizada para discussões sobre simplaret, simplepkg ou mesmo distribuições e pacotes do tipo Slackware é -http://listas.sarava.org/wws/info/slack. - diff --git a/tags/0.5/doc/TODO b/tags/0.5/doc/TODO deleted file mode 100644 index 9178f6e..0000000 --- a/tags/0.5/doc/TODO +++ /dev/null @@ -1,5 +0,0 @@ -simplepkg todo list -------------------- - -TODO list at http://slack.sarava.org/wiki/Main/SimplePKG - diff --git a/tags/0.5/doc/mkbuild.tex b/tags/0.5/doc/mkbuild.tex deleted file mode 100644 index 9e620ae..0000000 --- a/tags/0.5/doc/mkbuild.tex +++ /dev/null @@ -1,627 +0,0 @@ -\documentclass[12pt,a4paper,oneside]{article} -%\usepackage[T1]{fontenc} -\usepackage[latin1]{inputenc} -\usepackage[dvips]{graphicx} -%\usepackage{subfigure} -\usepackage{mdwlist} -\usepackage{a4} -%\topmargin -.5in -%\addtolength{\hoffset}{-1.0cm} -%\addtolength{\textwidth}{3.0cm} -%\textwidth = 400pt -%\textheight = 680pt - -\makeatletter - -%\usepackage[pdftex]{color,graphicx} -%\DeclareGraphicsExtensions{.jpg,.pdf,.mps,.png} - -\usepackage[brazil]{babel} -\usepackage[dvips]{graphicx} -%\usepackage{textdraw} - -\input texdraw -%\newenvironment{textdraw}{\leavevmode\btexdraw}{\etexdraw} - -\newcommand{\rcap}[1]{Capítulo \ref{#1}} -\newcommand{\rfig}[1]{Figura \ref{#1}} -\newcommand{\rtab}[1]{Tabela \ref{#1}} -\newcommand{\rsec}[1]{Seção \ref{#1}} - -\makeatother - -\begin{document} - - -\title{Construindo SlackBuilds com mkbuild} - -\author{Rudson Alves} - -\date{\today} - -\maketitle - -%\pagenumbering{roman} - -\tableofcontents{} -%\listoffigures -%\listoftables - -%\abstract{...} - - -\section{Introdução} - -O \textit{mkbuild} é um programa em \textit{script shell} destinado a construção de \textit{Slackbuilds}, \textit{scripts} utilizados para a construção de pacotes no \textit{Slackware}. - -\section{O modelo generic.mkSlackBuild} - -O \textit{mkbuild} utiliza o modelo padrão \textit{generic.mkSlackBuild}, armazenado em - -\begin{verbatim} -/etc/simplepkg/defaults/mkbuild/ -\end{verbatim} - -Este modelo é uma versão setorizada do \textit{generic.SlackBuild}, levemente modificada. O \textit{generic.SlackBuild} é um modelo genérico de \textit{Slackbuilds} disponibilizado na árvore de \textit{Slackbuilds} do \textit{Slack.Sarava}, para servir como modelo para a construção dos \textit{scripts}. Outros modelos setorizados podem ser utilizados pelo \textit{mkbuild}, a única limitação é quanto ao nome da seção \textit{slackdesc}, que não poderá ser alterada. - - -\subsection{Os Campos} - -O modelo \verb!generic.mkSlackBuild! é um \textit{SlackBuild} genérico com vários campos destacados por duplo colchetes, \verb![[! \dots \verb!]]!, com mostra o trecho abaixo: - -\begin{verbatim} -... -<set_variables> all -# Set variables -CWD="$(pwd)" -SRC_NAME="[[SOURCE NAME]]" -PKG_NAME="[[PACKAGE NAME]]" -ARCH=${ARCH:=[[ARCH]]} -SRC_VERSION=${VERSION:=[[VERSION]]} -PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" -BUILD=${BUILD:=1[[SLACKBUILD AUTHOR INITIALS]]} -... -PREFIX=${PREFIX:=[[PREFIX]]} -PKG_SRC="$TMP/$SRC_NAME-$SRC_VERSION" -</set_variables> -... -\end{verbatim} - -Uma breve descrição destes campos é apresentada na tabela abaixo: \\ -\\ -\begin{tabular}{l|l} -\hline \hline -\textbf{Campo} & \textbf{Descrição}\\ -\hline \hline -PROGRAM NAME & nome do programa \\ -PROGRAM URL & \textit{URL} da fonte do pacote \\ -SLACKBUILD AUTHOR & nome do autor \\ -SOURCE NAME & nome da fonte, sem versão ou extensão \\ -PACKAGE NAME & nome do pacote e ser gerado \\ -ARCH & arquitetura do pacote. Padrão \verb!i486! \\ -VERSION & versão do pacote \\ -SLACKBUILD AUTHOR INITIALS & assinatura utilizada pelo autor \\ -PREFIX & prefixo da instalação (\verb!/usr!, \verb!/opt!, ...)\\ -SOURCE EXTENSION & extensão da fonte (\verb!bz2!, \verb!gz!, ...) \\ -DOWNLOAD FOLDER URL & \textit{URL} da pasta onde se encontra a fonte \\ -DECOMPRESSOR & o descompressor para a fonte (\verb!gunzip!, \verb!bunzip2!, ...) \\ -DECOMPRESSOR TEST FLAG & \textit{flag} de teste do descompressor \\ -SIGNING KEY URL & \textit{URL} da chave \textit{gpg} do fonte \\ -SIGNING KEY & chave \textit{gpg} da fonte \\ -MD5SUM EXTENSION & extensão utilizada pelo arquivo \textit{md5sum}\\ -PATCH FILES & arquivo \textit{path} \\ -NUMBER OF PREFIX SLASHES TO STRIP & \dots \\ -SOURCE NAME CONSTRUCTION STRING & string para a construção do nome do arquivo. O padrão é \$SRC\_NAME-\$VERSION.tar.\$EXTENSION \\ -OTHER CONFIGURE ARGS & argumentos de configuração passados ao \verb!./configure! \\ -DOCUMENTATION FILES & lista de arquivos para a pasta \verb!/usr/doc/PACKAGE! \\ -SLACK-DESC & conteúdo do \verb!slack-desc!, descrição do pacote \\ -REST OF DOINST.SH & conteúdo do \verb!doinst.sh! \\ -\hline -\end{tabular} -\\\\ - -Em alguns casos o nome do pacote difere do nome da fonte, como é o caso da fonte \verb!sigc++!, que gera o pacote de nome \verb!libsiggc++!. Por este motivo que existem os campos \textit{SOURCE NAME} e \textit{PACKAGE NAME}. Para uma compreensão mais profunda destes campos, aconselho ler o \textit{script} \textit{generic.SlackBuild}. - - -\subsection{As Seções} - -As seções no modelo \verb!generic.mkSlackBuild!, são iniciadas pela \textit{tag} \verb!<nome_da_seção>! e terminadas com \verb!</nome_da_seção>!, como em um código \textit{html}, \underline{sem espaços}. - -A única seção que não pode ter seu nome alterado é \textit{slackdesc}. Esta seção é editada de uma forma diferenciada pelo \textit{mkbuild} e a alteração de seu nome poderá gerar erro. - -Cada seção possui uma \textit{flag} com os possíveis valores: - -\begin{description} - \item[on] habilitado; - \item[off] desabilitado; - \item[all] sempre habilitado. -\end{description} - -A intenção destas \textit{flags} é gerar um padrão para as seções, deixando em \textbf{all} as seções que deverão estar sempre habilitadas e \textbf{on} ou \textbf{off} seções que podem ser habilitadas ou desabilitadas de acordo com as necessidades do \textit{SlackBuild} que será construído. - -As seções padrões do \verb!generic.mkSlackBuild! são listadas na tabela abaixo: -\\\\ -\begin{tabular}{l|l|c} -\hline -Seção & Descrição & Flag \\ -\hline -head & cabeçalho do \textit{SlackBuild} & all \\ -slackbuildrc & carrega \textit{script} \verb!slackbuildrc! & off \\ -set\_variables & inicia as variáveis & all \\ -slkflags & carrega \textit{flags} para compilação & all \\ -error\_codes & códigos de erro para o \verb!createpkg! & off \\ -start\_structure & cria diretórios para compilação & all \\ -download\_source & baixa a fonte do pacote & off \\ -md5sum\_download\_and\_check\_0 & verifica \textit{md5sum} da fonte por código & off \\ -md5sum\_download\_and\_check\_1 & verifica \textit{md5sum} da fonte por arquivo & off \\ -gpg\_signature\_check & verifica assinatura \textit{gpg} da fonte & off \\ -untar\_source & desempacota a fonte & all \\ -path\_source & aplica \textit{path} a fonte & off \\ -configure & configura pacote & off \\ -make\_package & compila o pacote & all \\ -install\_package & instala o pacote em diretório temporário & all \\ -strip\_binaries & limpa binários & off \\ -compress\_manpages & comprime páginas de manuais & off \\ -compress\_info\_files & comprime arquivos \textit{info} & off \\ -install\_documentation & instala documentação & off \\ -slackdesc & \textit{slackdesc} do pacote & off \\ -postinstall\_script & \textit{script} de pós-instalação & off \\ -build\_package & constrói pacote & all \\ -clean\_builds & remove fontes e instalação temporária & off \\ -\hline -\end{tabular} -\\\\ - - -\section{Configuração} - -Por hora, o \textit{mkbuild} utiliza apenas um variável de configuração em \verb!/etc/simplepkg/simplepkg.conf!. A variável \textit{SLACKBUILDS\_DIR} é necessária para utilizar o \textit{mkbuild} com a opção ``\textit{-c}'' ou ``-\textit{-commit}'', que incorpora os arquivos \textit{SlackBuild} e \textit{slack-required} à estrutura de diretórios do \textit{Slack.Sarava}, na cópia local. - - -\section{Criando o SlackBuild de um aplicativo} - -Para fazer um \textit{SlackBuild} com o \textit{mkbuild} é necessário criar um arquivo com os parâmetros que deseja que sejam passados para o modelo. Um arquivo de configuração simples, \textit{sample-Pyrex-small.mkbuild}, é apresentado abaixo: - -\begin{verbatim} -#-------------------- -# Variables -#-------------------- -# Author name -[[SLACKBUILD AUTHOR]]="Adalberto Simão Nader" - -# -# Complete URL address or URL base address ( without $SRC_NAME-$VERSION... ) -[[DOWNLOAD FOLDER URL]]="http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/Pyrex-0.9.5.1a.tar.gz" - -# -# Default enable sections: -# head, set_variables, slkflags, start_structure, untar_source, -# make_package, install_package, build_package -# Warning: don't remove '#>>' and "#<<" tags. -#>> Start SlackBuild Sections: - on: slackbuildrc - on: slkflags - on: error_codes - on: download_source - on: configure - on: strip_binaries - on: install_documentation - on: slackdesc - on: clean_builds -#<< End SlackBuild Sections - -#------------------ -# Sections changes -#------------------ -#>slackdesc -pyrex: Pyrex by Slack.Sarava -pyrex: -pyrex: Pyrex is a language specially designed for writing Python extension -pyrex: modules. Its designed to bridge the gap between the nice, high-level, -pyrex: easy-to-use world of Python and the messy, low-level world of C. -pyrex: -pyrex: -pyrex: -pyrex: -pyrex: -pyrex: -#<slackdesc -\end{verbatim} - -Isto é o suficiente para fazer o \textit{SlackBuild} do \textit{Pyrex}. Para construir o \textit{SlackBuild} basta chamar o \textit{mkbuild} passando este arquivo de parâmetros: - -\begin{verbatim} -$ mkbuild sample-Pyrex-small.mkbuild -$ ls -pyrex.SlackBuild pyrex.mkbuild sample-Pyrex-small.mkbuild -pyrex.SlackBuild.old sample-Pyrex-large.mkbuild -\end{verbatim} - -Ele irá criar os arquivos \textit{pyrex.SlackBuild} e \textit{slack-required}, se o parâmetro \textit{SLACK REQUIRED} for passado. Arquivos antigos serão renomeados para \textit{.old}. - -Um modelo mais completo, com todos os parâmetros, \textit{sample-Pyrex-large.mkbuild}, é disponibilizado junto com o \textit{mkbuild}. Nas seções seguintes é dado uma breve explicação dos parâmetros e seções deste arquivo de parâmetros. - - -\subsection{Descrição dos parâmetros do arquivo \textit{.mkbuild}} - -Embora existam muitos parâmetros no modelo \textit{generic.mkSlackBuild}, nem todos são necessários para a construção do \textit{SlackBuild}. Neste exemplo foram passados apenas dois parâmetros: - -\begin{description} - \item[SLACKBUILD AUTHOR] nome do autor; - \item[DOWNLOAD FOLDER URL] url completa da fonte do pacote. - \end{description} - -O mkbuild remove o nome do pacote, versão, assinatura do autor e várias outras informações destes dados, seguindo alguns critérios descritos a seguir. - -A sintaxe para a passagem de parâmetros ao \textit{mkbuild} é - -\begin{verbatim} -[[DESCRIÇÃO DO PARÂMETRO]]="Parâmetro entre aspas duplas" -\end{verbatim} - -As aspas duplas podem ser omitidas\footnote{Nas versões inferiores a 0.9.9, do \textit{mkbuild}, o aspas duplo é o delimitador e por isto é obrigatório. Um parâmetro passado sem o aspas duplo será interpretado como um parâmetro vazio, nestas versões.}. O delimitador utilizado pelo \textit{mkbuild} é o primeiro caracter igual ($=$) a aparecer na linha. Qualquer outra ocorrência de caracter igual será lido como parte do parâmetro. O mesmo acontece com comentários colocados após o caracter igual. Por exemplo, na linha abaixo: - -\begin{verbatim} -[[PARÂMETRO TEST]]=Este parâmetro é um teste # Este comentário será lido. -\end{verbatim} - -\noindent a leitura do parâmetro \textit{PARÂMETRO TEST} retornará: - -\begin{verbatim} -Este parâmetro é um teste # Este comentário será lido. -\end{verbatim} - -Segue abaixo uma breve descrição dos parâmetros utilizados pelo modelo \textit{generic.mkSlackBuild}. - -\subsubsection{SLACKBUILD AUTHOR e SLACKBUILD AUTHOR INITIALS} - -O parâmetro \textit{SLACKBUILD AUTHOR} deve conter o nome ou apelido do responsável pelo \textit{SlackBuild}. A declaração deste parâmetro é obrigatória e sem ele o \textit{mkbuild} irá interromper a construção do \textit{SlackBuild}. - -\begin{verbatim} -[[SLACKBUILD AUTHOR]]="Adalberto Simão Nader" -\end{verbatim} - -O parâmetro \textit{SLACKBUILD AUTHOR INITIALS} é construído à partir da primeira letra de cada nome passado pelo parâmetro \textit{SLACKBUILD AUTHOR}, em letras minúsculas. Neste caso a assinatura será ``\textit{asn}'', as iniciais de \textit{Adalberto Simão Nader}. - -Caso deseje passa outro valor basta adicionar a linha abaixo, ao arquivo de parâmetros. - -\begin{verbatim} -[[SLACKBUILD AUTHOR INITIALS]]="adal" -\end{verbatim} - - -\subsubsection{DOWNLOAD FOLDER URL} - -O parâmetro \textit{DOWNLOAD FOLDER URL} é outro parâmetro obrigatório em um arquivo \textit{.mkbuild}. Este parâmetro pode conter o endereço completo da fonte do pacote: - -\begin{verbatim} -[[DOWNLOAD FOLDER URL]]="http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/Pyrex-0.9.5.1a.tar.gz" -\end{verbatim} - -Neste caso várias informações são removidas deste parâmetro. Este parâmetro pode ainda conter apenas o endereço do diretório de onde a fonte poderá ser encontrada: - -\begin{verbatim} -[[DOWNLOAD FOLDER URL]]="http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/" -\end{verbatim} - -Neste caso, é necessário a definição de outros parâmetros necessários para a construção do nome do pacote, como \textit{SOURCE NAME, PACKAGE NAME, VERSION e EXTENSION}, descritos a seguir. - - -\subsubsection{SOURCE NAME, PACKAGE NAME, VERSION e EXTENSION} - -O \textit{SOURCE NAME} é removido do \textit{URL}, caso não seja passado como parâmetro. - -Para que o \textit{SOURCE NAME} seja carregado corretamente, é necessário que o nome da fonte tenha a forma padrão: - -\begin{verbatim} -NOME-DO-PROGRAMA-VER.SÃO.tar.EXTENSÃO -\end{verbatim} - -O nome do programa pode ter vários campos separados por um hífen ``-'', já a versão, pode possuir vários números, ou mesmo letras, separados por ponto e terminados por um ``.tar.''. A extensão deve vir logo após o ``.tar.''. - -A variável \textit{PACKAGE NAME}, é construída com o mesmo valor de \textit{SOURCE NAME}, mas em letras minúsculas. - -Desta forma, a divisão dos campos no exemplo do aplicativo Pyrex, acima, terá o mesmo valor que as declarações dos parâmetros abaixo: - -\begin{verbatim} -[[SOURCE NAME]]="Pyrex" - -[[PACKAGE NAME]]="pyrex" - -[[VERSION]]="0.9.5.1a" - -[[EXTENSION]]="gz" -\end{verbatim} - -Observe que a precedência é a passagem do valor como parâmetro, e não a sua construção. - - -\subsubsection{SOURCE NAME CONSTRUCTION STRING} - -Deve conter uma string para a construção do nome da fonte. O valor padrão é - -\begin{verbatim} -[[SOURCE NAME CONSTRUCTION STRING]]="$SRC_NAME-$VERSION.tar.$EXTENSION" -\end{verbatim} - -Observe que os parâmetros passados não são processados, como ocorre em uma leitura de uma variável num bash \textit{script}. Eles são lidos como se fossem uma cadeia de caracteres, por isto não tente escapar o \$ na construção do nome, ou o nome da fonte não será construído corretamente na execução do \textit{SlackBuild}. - -Embora a variável \$EXTENSION apareça na construção do nome da fonte, seu valor será substituído durante a construção do \textit{SlackBuild} pelo \textit{mkbuild}. Por isto que não existe inicialização desta variável no modelo \textit{generic.mkSlackBuild}. - - -\subsubsection{DECOMPRESSOR e DECOMPRESSOR TEST FLAG} - -Os parâmetros \textit{DECOMPRESSOR} e \textit{DECOMPRESSOR TEST FLAG} são determinados por análise do parâmetro \textit{EXTENSION}, com os valores apresentados na tabela abaixo: -\\\\ -\begin{tabular}{l|l|c} -\hline -EXTENSION & DECOMPRESSOR & DECOMPRESSOR TEST FLAG \\ -\hline -gz, GZ & gunzip & -t \\ -bz2, BZ2 & bunzip2 & -t \\ -zip, ZIP & unzip & -t \\ -\hline -\end{tabular} - -Caso possua uma fonte comprimida por um compressor diferente, passe estes parâmetros pelo arquivo de parâmetros, \textit{.mkbuild}. - -\begin{verbatim} -[[DECOMPRESSOR]]="programa descompressor" -[[DECOMPRESSOR TEST FLAG]]="flag de teste" -\end{verbatim} - - -\subsubsection{DOCUMENTATION FILES} - -O valor padrão para \textit{DOCUMENTATION FILES} é - -\begin{verbatim} -[[DOCUMENTATION FILES]]="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING readme.*" -\end{verbatim} - -Estes são os nomes mais comuns dos arquivos de documentação, que geralmente são disponibilizados na raiz do diretório das fontes dos programas. O ideal é descompactar a fonte e verificar os arquivos de documentação disponíveis, para passá-los como parâmetro. - - -\subsubsection{PREFIX} - -A maioria das fontes de programas disponibilizados atualmente, utilizam uma opção \textit{--prefix} no seu \textit{configure}, para determinar o diretório onde o programa será instalado. No \textit{Slackware} o valor desta variável variava entre \verb!/usr!, \verb!/opt! e \verb!/usr/X11!. Na nova versão do \textit{Slackware}, provável 12.0, os diretórios \verb!/opt! e \verb!/usr/X11! foram removidos e todos os pacotes estão sendo instalados em \verb!/usr!. Por isto o seu valor padrão é \verb!/usr!. - -\begin{verbatim} -[[PREFIX]]="/usr" -\end{verbatim} - - -\subsubsection{NUMBER OF JOBS} - -O parâmetro \textit{NUMBER OF JOBS} é usado para indicar ao comando \textit{make} o número de processos que podem ser iniciados simultaneamente durante a compilação. A grande maioria dos programas atuais podem ser compilados em dois ou mais processos simultâneos. Isto reduz sensivelmente o tempo de compilação de um pacote, mesmo que sua máquina possua apenas um processador. Muitos \textit{SlackBuilds} oficiais do \textit{Slackware} utilizam este parâmetro configurado para ``7'' processos, ou seja ``-j7''. Este parâmetro pode ser passado como um número ou com a flag \textit{-j}, como nos exemplos abaixo. - -\begin{verbatim} -[[NUMBER OF JOBS]]="7" -\end{verbatim} - -\noindent ou - -\begin{verbatim} -[[NUMBER OF JOBS]]="-j7" -\end{verbatim} - -Por padrão, este parâmetro está desabilitado. - -\subsubsection{SLACK REQUIRED} - -Este parâmetro é composto pela lista de pacotes necessários para a construção do aplicativo. Estes pacotes serão arranjados no arquivo \textit{slack-required}. O formato para este parâmetro é apresentado na linha abaixo: - -\begin{verbatim} -DEPENDÊNCIA_1 [CONDIÇÃO_1] [VERSÃO_1]: DEPENDÊNCIA_2 [CONDIÇÃO_2] [VERSÃO_2]: DEPENDÊNCIA_3 [CONDIÇÃO_3] [VERSÃO_3]: ... -\end{verbatim} - -As condições possíveis são apresentadas na tabela abaixo: -\\\\ -\begin{tabular}{c|l} -\hline -CONDIÇÃO & significado \\ -\hline -$=$ & igual \\ -$>$ & maior \\ -$>=$ & maior ou igual \\ -\hline -\end{tabular} - -Os campos \textit{CONDIÇÃO} e \textit{VERSÃO} podem ser omitidos. Cada pacote da dependência deve ser separado por um ``:''. - -Para o \textit{SLACK REQUIRED} definido com a linha: - -\begin{verbatim} -[[SLACK REQUIRED]]="dep1 >= 1.1.1: dep2 >= 2.2.2:dep3:dep4:dep5 = 1.0" -\end{verbatim} - -\noindent será gerado o arquivo \textit{slack-required} abaixo: - -\begin{verbatim} -# Dependency list to Pyrex -# -# dependency [condition] [version]] -dep1 >= 1.1.1 -dep2 >= 2.2.2 -dep3 -dep4 -dep5 = 1.0 -\end{verbatim} - - -\subsubsection{SLACKBUILD MODEL} - -Este parâmetro contém o nome do modelo utilizado para gerar os \textit{SlackBuilds}. O valor padrão é \textit{generic.mkSlackBuild}. Outros modelos podem ser utilizados adicionando-se o arquivo do modelo no diretório \verb!/etc/simplepkg/defaults/mkbuild/!. A linha abaixo - -\begin{verbatim} -[[SLACKBUILD MODEL]]="generic.mkSlackBuild.2" -\end{verbatim} - -\noindent define o modelo \textit{generic.mkSlackBuild.2} para a construção do \textit{SlackBuild}. - - -\subsubsection{SLACKBUILD PATH} - -Este parâmetro é necessário apenas para uso com a opção ``-c'', \textit{commit}. Ele indica o diretório, na estrutura de diretórios do Slack.Sarava, onde o \textit{SlackBuild} construído deverá ser armasenado. Se este parâmetro não for passado, o \textit{mkbuild} irá pesquisá-lo no repositório do \textit{gentoo}, pela \textit{internet}. Caso não consiga resolver com esta pesquisa, o \textit{SlackBuild} será colocado em um diretório padrão, para \textit{scripts} não classificados, em \verb!others/unclassified/$PKG_NAME!. - -\begin{verbatim} -[[SLACKBUILD PATH]]="dev/python/pyrex" -\end{verbatim} - -A estrutura de diretórios para armazenamento dos \textit{SlackBuilds} adotadas pelo \textit{Slack.Sarava} segue o mesmo padrão do \textit{portage} do \textit{gentoo}. - - -\subsubsection{Outros Parâmetros} - -Outros parâmetros podem ser passados para substituição no modelo \textit{generic.mkSlackBuild}, como o parâmetro \textit{MD5SUM EXTENSION} no trecho abaixo: - -\begin{verbatim} -#[[PATCH FILES]]="" -#[[MD5SUM CODE]]="" -[[MD5SUM EXTENSION]]="047574eb5d1b7848a70d4130035f1f3c" -#[[SIGNING KEY]]="" -#[[SIGNING KEY URL]]="" -#[[PATCH FILES]]="" -\end{verbatim} - -Além destes parâmetros padrões do \textit{generic.mkSlackBuild}, qualquer outro parâmetro pode ser criado e incluído ao modelo. Para isto é necessário que seu nome seja incluído entre duplo colchetes como no exemplo abaixo: - -\begin{verbatim} -[[NEW PARAMETER]]="new value" -\end{verbatim} - -O \textit{mkbuild} irá procurar a ocorrência da seqüência \textit{[[NEW PARAMETER]]} no modelo passado por \textit{[[SLACKBUILD MODEL]]} e irá substitui-lo por ``\textit{new value}''. - - -\subsection{Habilitando seções} - -As seções do modelo \textit{generic.mkSlackBuild} são habilitadas na seção iniciada por ``\#$>>$'' e terminada por ``\#$<<$'', no arquivos de parâmetros. Como as seções estão desabilitadas no modelo padrão, \textit{generic.mkSlackBuild}, esta seção do arquivo de parâmetros tem apenas que habilitar as seções desejadas do modelo. - -\begin{verbatim} -#>> Start SlackBuild Sections: - on: slackbuildrc - on: slkflags - on: error_codes - on: download_source - on: configure - on: strip_binaries - on: install_documentation -# linha ignorada - on: slackdesc - on: clean_builds -#<< End SlackBuild Sections -\end{verbatim} - -No caso do exemplo acima, são habilitadas as seções: \textit{slackbuildrc}, \textit{slkflags}, \textit{error\_codes}, \textit{download\_source}, \textit{configure}, \textit{strip\_binaries}, \textit{install\_documentation}, \textit{slackdesc} e \textit{clean\_builds}. Linhas iniciadas por uma tralha, \#, são ignoradas. - - -\subsubsection{Substituição de seções do modelo} - -Em algumas situações pode ser necessário substituir o conteúdo de uma seção. Estas mudanças nas seções são feitas por iniciar uma seção, no arquivo de parâmetros, por ``\verb!#>nome_da_seção!'' e terminar por ``\verb!#<nome_da_seção!''. Quando o \textit{mkbuild} localiza estas seções no arquivo de parâmetros, ele substitui as seções padrões, de mesmo nome, pelo conteúdo definido no arquivo de parâmetros. Por exemplo: - -\begin{verbatim} -#>untar_source -# Untar program - -# Change to temp dir -cd "$TMP" - -# Uncompress e untar source -gunzip "$SRC_DIR/$SRC" | tar --no-same-owner --no-same-permissions -xvf || exit $ERROR_TAR - -# Change to source dir -cd "$PKG_SRC" -#<untar_source -\end{verbatim} - -\noindent irá substituir a seção \textit{untar\_source} do modelo \textit{generic.mkSlackBuild}, pelo conteúdo definido no arquivo de parâmetros acima. A única exceção a esta regra é a seção \textit{slackdesc}. - -\begin{verbatim} -#>slackdesc -pyrex: Pyrex by Slack.Sarava -pyrex: -pyrex: Pyrex is a language specially designed for writing Python extension -pyrex: modules. Its designed to bridge the gap between the nice, high-level, -pyrex: easy-to-use world of Python and the messy, low-level world of C. -pyrex: -pyrex: -pyrex: -pyrex: -pyrex: -pyrex: -#<slackdesc -\end{verbatim} - -Para esta seção, o \textit{mkbuild} irá substituir o parâmetro \textit{[[SLACK-DESC]]} pelo conteúdo definido entre \verb!#>slackdesc! e \verb!#<slackdesc!, além de redimensionar a régua de orientação do \textit{slack-desc}. - - -\section{Considerações Finais} - -Vários parâmetros podem ser passados ao \textit{mkbuild} pela linha de comando. Um manual completo destas opções pode ser consultado passando flag \textit{-h}, ao \textit{mkbuild}: - -\begin{verbatim} - -NAME - mkbuild - create SlackBuild script from mkbuild_file input - -SYNOPSIS - mkbuild [OPIONS] [mkbuild_file] - -DESCRIPTION - <mkbuild_file> input file with build rules and variables - - Input options: - -a, --author <author_name> - author name - -ai, --author_initials <initials> - author signature - -cs, --const_string <string> - construction string to source name - -u, --url <url_address> - url address to source - -pn, --pkg_name <package_name> - package name - -sn, --src_name <source_name> - source name - -pv, --pkg_version <version> - package version - -md, --model <SlackBuild_model> - SlackBuild model file - -j, --jobs <jobs_number> - Number of jobs to run simultaneously - --prefix <install_dir> - Prefix install directory - - Program options: - -h, --help - this help mesage - -c, --commit - commit SlackBuilds in local svn tree - -v, --version - program version - -EXAMPLES - mkbuild --prefix /usr/local pyrex.mkbuild - build pyrex.SlackBuild with prefix /usr/local and pyrex.mkbuild - variables and options definitions. - -AUTHOR - Written by Rduson R. Alves - - -REPORTING BUGS - Report bugs to <alves_list@yahoo.com.br> - -COPYRIGHT - Copyright © 2006 Free Software Foundation, Inc. - This is free software. You may redistribute copies of it under the - terms of the GNU General Public License - <http://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY, to the - extent permitted by law. -\end{verbatim} - -Uma opção interessante é a \textit{-c}, utilizada para adicionar e atualizar uma cópia da lista de \textit{SlackBuilds}, localmente. - - -\end{document} - diff --git a/tags/0.5/doc/simplepkg.pdf b/tags/0.5/doc/simplepkg.pdf Binary files differdeleted file mode 100644 index 22cc869..0000000 --- a/tags/0.5/doc/simplepkg.pdf +++ /dev/null diff --git a/tags/0.5/doc/simplepkg.tex b/tags/0.5/doc/simplepkg.tex deleted file mode 100644 index 610ed08..0000000 --- a/tags/0.5/doc/simplepkg.tex +++ /dev/null @@ -1,395 +0,0 @@ -\documentclass{article} -\usepackage[brazilian]{babel} -\usepackage[latin1]{inputenc} -\usepackage[dvips]{graphics} -\usepackage{hyperref} -\newcommand\link{\hyperlink} - -\title{Gerenciamento de instalações e metapacotes com o simplepkg} -\author{Silvio Rhatto} - -\begin{document}\label{start} -\maketitle - -\begin{abstract} -O \emph{simplepkg} é um sistema de gerenciamento de sistemas slackware que roda sobre o pkgtool. Ele é composto por vários scripts que desempenham funções de administração e desenvolvimento de sistemas do tipo Slackware, procurando fechar um circuito de produção, envolvendo a construção, a instalação de pacotes e até mesmo a instalação do sistema de forma automatizada. - -Do lado do desenvolvedor/a, ele ajuda na criação de SlackBuilds e construção de pacotes. Do lado do administrador/a, ele possibilita a instalação automatizada de sistemas, instalação de pacotes e a criação de "templates" de instalação -- que contém todos os arquivos de configuração, informações de permissões e scripts de pós-instalação de uma dada máquina ou jaula. -\end{abstract} - -\section{Descrição} - -Todas as distribuições de GNU/Linux já tem algum sistema de empacotamento amadurecido. A questão agora é a praticidade de instalar e controlar o que está instalado, tanto pacotes como arquivos de configuração de uma máquina, além da facilidade na criação de pacotes. - -Imagine por exemplo se você precisa manter uma lista de pacotes de 200 máquinas slackware, sendo que algumas são usadas como desktop, outras como servidores web, alguma sendo o servidor de email e assim por diante. Imagine agora que você perca o disco de algumas dessas máquinas ou que precise cotidianamente reinstalar ou atualizar um sistema. - -Usar o cd de instalação do slackware e configurar na mão toda a vez que der um pau faria com que você ficasse louco/a e desperdiçasse muito tempo, além do que sempre ocorre de esquecermos algum detalhe ou pacote durante a configuração do sistema. Manter um backup completo de cada máquina, por outro lado, pode ser muito custoso se o número delas for muito grande. - -O \emph{simplepkg} permite que você mantenha um template para cada grupo de máquinas e com apenas um comando instalar o template numa partição. Além do template, você precisa configurar o \emph{simplepkg} para obter pacotes de um repositório local ou remoto. - -Gerenciar instalações e pacotes não é tudo o que o \emph{simplepkg} faz. Ele pode ser usado até na criação de jaula e vservers, podendo manter toda a configuração das máquinas num repositório Subversion. - -O \emph{simplepkg} funciona não apenas com o Slackware mas com qualquer port (oficial ou não) que siga minimamente os padrões oficiais. - -\section{Arquitetura} - -O \emph{simplepkg} é um conjunto de scripts escritos com a filosofia KISS (Keep It Simple, Stupid) em mente. Ele é um sistema muito simples, composto pelos seguintes comandos: - -\begin{itemize} - \item mkjail: constrói uma jaula/instalação de slackware numa pasta - \item templatepkg: criar ou adiciona pacotes a um template - \item lspkg: lista pacotes instalados - \item jail-update: inverso do jail-commit - \item jail-commit: atualiza o template - \item rebuildpkg: reconstrói um pacote a partir de sua entrada no /var/log/packages - \item simplaret: obtém pacotes de repositórios locais ou remotos - \item createpkg: baixa, compila e empacota software de acordo com scripts presentes num repositório - \item repos: cria e mantém repositórios - \item mkbuild: cria scripts de construção de pacotes -\end{itemize} - -\section{Instalando o simplepkg} - -Para baixar o pacote do \emph{simplepkg}, vá em \link{http://slack.sarava.org/packages/noarch/}{http://slack.sarava.org/packages/noarch/}. Depois, basta usar o comando - -\begin{verbatim} -installpkg simplepkg-VERSAO-noarch-BUILD.tgz -\end{verbatim} - -\section{Usando o simplepkg} - -As três principais aplicações desse conjunto são: - -\begin{itemize} - \item Gerenciamento de pacotes - \item Criação e manutenção de jaulas - \item Criação de pacotes -\end{itemize} - -O gerencamento de pacotes é feito através do \link{http://slack.sarava.org/simplaret}{simplaret}, e por ser algo bem específico está detalhado no artigo correspondente. As seções a seguir mostrarão como o \emph{simplepkg} pode ser utilizado para criar e manter jaulas, assim como também criar pacotes. - -\section{Criando templates de instalação} - -Originalmente, o \emph{simplepkg} foi desenvolvido para ajudar na automatização de instalações de sistemas slackware. Para isso, ele trabalha com templates -- listas com pacotes instalados, scripts e arquivos de configuração -- permitindo criar perfis de instalação que podem ser então usados para instalar o sistema numa outra partição ou criar um chroot. - -A construção de um template é feita através do programa templatepkg. Para criar um template de nome "meu-slackware" contendo a lista de pacotes atualmente instalados no seu sistema, digite - -\begin{verbatim} -templatepkg -c meu-slackware -\end{verbatim} - -A opção -c (ou --create) criará a pasta /etc/simplepkg/templates/meu-slackware, que conterá os seguintes componentes: - -\begin{itemize} - \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.d}: cópia de arquivos de configuração - \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.s}: scripts de pós-instalação - \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.perms}: informações sobre arquivos - \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.template}: lista de pacotes -\end{itemize} - -Esses quatro componentes são suficientes para armazenar todas as características de uma instalação de slackware: a lista de pacotes controla o software instalado (a partir do conteúdo da pasta \emph{/var/log/packages}), a cópia dos arquivos de configuração controla as personalizações feitas para o uso dos aplicativos e os scripts de pós-instalação cuidam de qualquer rotina que precisa ser realizada exatamente após a instalação do sistema. Já o arquivo de informações sobre arquivos contém as permissões, o dono/a e grupo de cada arquivo de configuração presente no template. - -Se você quiser criar um template a partir de uma instalação de slackware presente numa outra partição do sistema que não seja a raíz, basta usar um comando do tipo - -\begin{verbatim} -templatepkg -c meu-slackware /mnt/slackware -\end{verbatim} - -onde /mnt/slackware é o local onde o sistema alternativo está instalado. Após criado, o template possuirá apenas a lista de pacotes contendo o nome dos aplicativos instalados no seu sistema. Como a pasta /var/log/packages não preserva a ordem de instalação dos pacotes, então talvez você queira editar manualmente a lista de pacotes de um template. Para isso, use o comando - -\begin{verbatim} -templatepkg -e meu-slackware -\end{verbatim} - -Para adicionar um arquivo de configuração no seu novo template, basta dar um comando como - -\begin{verbatim} -templatepkg -a meu-slackware /etc/hosts -\end{verbatim} - -Isso adicionará o arquivo /etc/hosts no template "meu-slackware". Além de salvar o arquivo e copiá-lo automaticamente quando você instalar seu sistema, o \emph{simplepkg} ainda pode tomar conta de qualquer alteração que o /etc/hosts sofrer no sistema, seja mudança no conteúdo do arquivo, dono ou permissão. Se você ainda estiver armazenando seus templates num repositório svn (o que veremos a seguir), o \emph{simplepkg} pode ainda manter um histórico completo das alterações do arquivo. - -ATENÇÂO: evite ao máximo deixar arquivos contendo senhas ou chaves privadas num template. O lugar mais adequado para deixar esse tipo de coisa é num backup seguro. - -\section{Criando jaulas e replicando instalações} - -Uma vez que um template foi criado com uma lista de pacotes e opcionalmente com arquivos de configuração e scripts de pós-instalação (que serão detalhados a seguir), você pode replicar sua instalação de slackware utilizando o comando - -\begin{verbatim} -mkjail jaula meu-slackware -\end{verbatim} - -Isso cria uma nova árvore do slackware em /vservers/jaula contendo todos os pacotes e arquivos de configuração do template "meu-slackware". A instalação dos pacotes será feita pelo aplicativo \link{http://slack.sarava.org/simplaret}{simplaret}, que deve estar configurado corretamente e cuja configuração padrão deve funcionar para a maioria dos casos. - -Se você quiser instalar essa jaula em outro local que não seja a pasta /vservers (esse local padrão pode ser mudado pelo arquivo de configuração do \emph{simplepkg}), basta usar um comando do tipo - -\begin{verbatim} -ROOT=/mnt mkjail hda2 meu-slackware -\end{verbatim} - -O comando acima faz exatamente o que você está pensando: replica sua instalação slackware em /mnt/hda2, dispensando totalmente o programa de instalação do slackware! - -Caso nenhum template for especificado, o mkjail utiliza o template /etc/simplepkg/default. O \emph{simplepkg} já vem com alguns templates padrões, presentes em /etc/simplepkg/defaults/templates. - -\section{Scripts de pós-instalação} - -Opcionalmente, é possível manter scripts de pós-instalação num template. Tais script são executados exatamente -após a instalação de uma jaula e cópia de arquivos de configuração pelo mkjail. Para criar ou editar um script -de pós-instalação, use um comando como - -\begin{verbatim} -templatepkg -b meu-slackware nome-do-script.sh -\end{verbatim} - -Isso adicionará o script nome-do-script.sh no template "meu-slackware". O mkjail passa dois argumentos para cada script de pós-instalação: a pasta superior e o nome da jaula ("/mnt" e "hda2" no nosso exemplo anterior). Assim, um exemplo de script seria algo como - -\begin{verbatim} -#!/bin/bash -chroot $1/$2/ sbin/ldconfig -\end{verbatim} - -\section{Listando o conteúdo de um template} - -Para listar os templates disponíveis ou o conteúdo de um template, use comandos como - -\begin{verbatim} -templatepkg -l -templatepkg -l meu-slackware -\end{verbatim} - -\section{Removendo arquivos de um template} - -Analogamente à forma como se adicona arquivos num template, removê-los pode ser feito com o seguinte comando: - -\begin{verbatim} -templatepkg -d meu-slackware /etc/hosts -\end{verbatim} - -Isso remove o arquivo /etc/hosts do template "meu-slackware". - -\section{Apagando um template} - -Para apagar um template, basta utilizar um comando como - -\begin{verbatim} -templatepkg -r meu-slackware -\end{verbatim} - -\section{Atualizando um template} - -Agora que já abordamos as opções do templatepkg, é hora de visitarmos um outro aplicativo, desta vez utilizado para manter um template atualizado. O jail-commit é um script que copia as alterações dos arquivos (conteúdo, propriedade e permissões) de um template a partir do conteúdo de uma jaula ou instalação. - -Por exemplo, caso se queira copiar as alterações da jaula /mnt/hda2 no template "meu-slackware", basta usar o comando - -\begin{verbatim} -jail-commit /mnt/hda2 meu-slackware -\end{verbatim} - -Além da lista de pacotes do template "meu-slackware" ser atualizada de acordo com a lista de pacotes presente em /mnt/hda2/var/log/packages, todos os arquivos de configuração presentes no template "meu-slackware" serão comparados com os correspondentes da pasta /mnt/hda2 e as diferenças são copiadas para o template. Da mesma forma, as permissões e informação de dono/grupo dos arquivos também é atualizada no template. - -O comando jail-commit possibilita que um template sempre esteja atualizado e refletindo a configuração atual de uma instalação de slackware. Se você quiser atualizar apenas a lista de pacotes de um template, porém, use - -\begin{verbatim} -templatepkg -u meu-template -\end{verbatim} - -Para facilitar ainda mais o controle das alterações do sistema, existe ainda uma facilidade do arquivo /etc/simplepkg/jailist. Esse arquivo serve, além de outros propósitos descritos na \link{http://slack.sarava.org/simplaret}{documentação do simplaret}, para que o jail-commit saiba de antemão quais são as instalações de sistema do tipo Slackware presentes numa máquina, além da instalação principal na raíz do sistema. - -Suponha que uma máquina possua duas instalações de slackware, além da principal (raíz): - -\begin{itemize} - \item /mnt/slackware-1 usando o template "slackware-1" - \item /mnt/slackware-2 usando o template "slackware-2" -\end{itemize} - -Se o arquivo /etc/simplepkg/jailist contiver as seguintes linhas, - -\begin{verbatim} -/mnt/slackware-1 -/mnt/slackware-2 -\end{verbatim} - -então o comando - -\begin{verbatim} -jail-commit -\end{verbatim} - -atualizará o template "slackware-1" de acordo com o conteúdo da jaula /mnt/slackware-1 e o template "slackware-2" com o conteúdo da jaula /mnt/slackware-2. Se, além desses dois templates, existir um outro de nome "main", então o jail-commit sem argumentos também copiará as atualizações da instalação raíz, deixando-as no template "main". - -Você pode inclusive colocar uma entrada no crontab do tipo - -\begin{verbatim} -20 4 * * * jail-commit -\end{verbatim} - -para que seus templates sejam atualizados diariamente. Se você ainda possui o envio de emails configurado na sua máquina, então a saída do jail-commit será enviada pelo cron diariamente para seu email, contendo diffs das alterações de arquivos de configuração a lista de pacotes adicionados ou removidos no sistema. - -\section{Restaurando arquivos de configuração numa jaula} - -A operação contrária ao que o jail-commit faz também é possível: suponha que você mexeu na configuração do sistema mas se arrependeu das alterações e deseja voltar a configuração para o modo como ela se encontra no seu template, basta usar o comando - -\begin{verbatim} -jail-update /mnt/hda2 meu-slackware -\end{verbatim} - -\section{Armazenando as configurações no repositório Subversion} - -Para aumentar ainda mais a flexibilidade e o controle do conteúdo dos templates, é possível armazená-los num repositório Subversion. Para isso, edite o arquivo /etc/simplepkg/simplepkg.conf e deixe o parâmetro de configuração \emph{TEMPLATES\_UNDER\_SVN} com o valor "yes". - -Depois, crie um repositório subversion para armazenar seus templates, usando algo como - -\begin{verbatim} -svnadmin create /var/svn/simplepkg --fs-type fsfs -\end{verbatim} - -Com o repositório criado, basta importar seus templates com o comando - -\begin{verbatim} -templatepkg -e file:///var/svn/simplepkg -\end{verbatim} - -A partir daí, o comando jail-commit enviará automaticamente todas as alterações dos templates para o repositório subversion. Se, por outro lado, você quiser baixar as alterações dos templates que estão no repositório remoto para sua cópia local, use o comando - -\begin{verbatim} -templatepkg -s -\end{verbatim} - -Caso você queira importar uma pasta de templates de um repositório já existente, use - -\begin{verbatim} -templatepkg -i file:///var/svn/simplepkg -\end{verbatim} - -onde file:///var/svn/simplepkg é o camninho do repositório. - -\section{Atualização de jaulas} - -A atualização de jaulas e sistemas instalados é feita através do \link{http://slack.sarava.org/simplaret}{simplaret} e também utiliza o arquivo /etc/simplepkg/jailist. Para mais informações a respeito, consulte a \link{http://slack.sarava.org/simplaret}{documentação do simplaret} para mais detalhes. - -\section{Arquiteturas e versões diferentes} - -O \emph{simplepkg} foi idealizado para permitir que um mesmo template possa ser usado para criar jaulas de arquiteturas e versões diferentes de sistemas padrão slackware. A atualização desses sistemas também é unificada. Essa possibilidade só é permitida se você usa o \link{http://slack.sarava.org/simplaret}{simplaret} e não o swaret como ferramenta de obtenção de pacotes. - -Por exemplo, para criar uma instalação de slackware 10.1 (assumindo que suas definições de repositórios do /etc/simplepkg/repos.conf contenham locais com slack 10.1), basta usar o comando - -\begin{verbatim} -VERSION=10.1 mkjail minha-jaula template-servidor -\end{verbatim} - -Arquiteturas diferentes também podem ser usadas. Se você está num sistema x86\_64 e quer instalar um slack 10.2 numa partição, experimente - -\begin{verbatim} -ARCH=i386 VERSION=10.2 ROOT=/mnt mkjail hda2 meu-slackware -\end{verbatim} - -Note que os templates independem de arquitetura e versão, já que eles só contém nomes de pacotes, arquivos de configuração e scripts. - -\section{Criando um pacote de um template} - -Se, por algum motivo, você quiser construir um pacote com o conteúdo de um template, experimente o comando - -\begin{verbatim} -templatepkg -p nome-do-template -\end{verbatim} - -No entanto, o \emph{simplepkg} foi criado para que esse tipo de comportamento seja evitado, já que é mais simples manter templates de configuração do que pacotes contendo a configuração de uma instalação. - -\section{Construindo pacotes} - -Até aqui, apenas mostramos os aplicativos do \emph{simplepkg} usados para a manutenção de instalações de slackware. No entanto, uma das outras finalidades desta suíte é a construção de pacotes, o que é feita pelo programa createpkg, Como dito anteriormente, o createpkg: baixa, compila e empacota software de acordo com scripts presentes num repositório de scripts, funcionando com um gerenciador de "ports" para slackware. - -O createpkg pode funcionar com qualquer tipo de script de construção de pacotes (SlackBuilds) mas funcionará melhor se os mesmos seguirem o padrão descrito na página - -\begin{verbatim} -http://slack.sarava.org/wiki/Main/SlackBuilds -\end{verbatim} - -Especificamente, o createpkg foi desenvolvido para utilizar os slackbuild disponíveis em \link{http://slack.sarava.org/slackbuilds}{http://slack.sarava.org/slackbuilds}. O createpkg trabalha com repositórios do tipo subversion. - -Para obter os scripts do repositório do slack.sarava.org, digite - -\begin{verbatim} -createpkg --sync -\end{verbatim} - -Em seguida, você pode listas todos os scripts disponíveis: - -\begin{verbatim} -createpkg --list -\end{verbatim} - -Para buscar por um pacote, use - -\begin{verbatim} -createpkg --search latex2html -\end{verbatim} - -No caso, a busca é feita pelo SlackBuild do aplicativo "latex2html". Suponha agora que você queira construir o pacote desse aplicativo: - -\begin{verbatim} -createpkg latex2html -\end{verbatim} - -O pacote resultante estará na pasta /tmp ou no valor especificado pela variável de ambiente \emph{\$REPOS}. Para criar e também instalar o pacote, basta - -\begin{verbatim} -createpkg --install latex2html -\end{verbatim} - -Se o pacote possuir dependências listadas num arquivo slack-required e que não estiverem instaladas no sistema, o createpkg tentará processá-las uma a uma antes de tentar construir o pacote desejado: se as dependências não forem encontradas no repositório de scripts, então o createpkg tentará baixá-las de um repositório binário através do \link{http://slack.sarava.org/simplaret}{simplaret}. Se você não quiser que a resolução de dependências seja seguida, use a opção --no-deps. - -Para mais detalhes de funcionamento, experimente o comando - -\begin{verbatim} -createpkg --help -\end{verbatim} - -ou então acesse a página http://slack.sarava.org/wiki/Main/SlackBuilds. - -\section{Aplicativos auxiliares} - -O \emph{simplepkg} acompanha ainda alguns aplicativos auxiliares: - -\begin{itemize} - \item lspkg: lista pacotes instalados - \item rebuildpkg: reconstrói um pacote a partir de sua entrada no /var/log/packages - \item repos: cria e mantém repositórios - \item mkbuild: cria scripts de construção de pacotes -\end{itemize} - -O comando lspkg é um utilitário simples para a visualização de pacotes instalados no sistema. Já o rebuildpkg ajuda a recuperar pacotes instalados cujo tgz original foi perdido. O comando rebuildpkg reconstrói um pacote a partir de uma entrada no /var/log/packages. O comando - -\begin{verbatim} -rebuildpkg coreutils -\end{verbatim} - -reconstrói um pacote do coreutils usando os arquivos e as metainformações listadas no arquivo do /var/log/packages/ correspondente ao coreutils. - -Por fim, os scripts repos e mkbuild são os que se encontram na etapa de maior desenvolvimento: repos cria um repositório de pacotes a partir de uma pasta contendo pacotes do tipo pkgtool e o mkbuild é um aplicativo para auxiliar a criação de scripts de construção de pacotes que podem ser utilizados sozinhos ou pelo o createpkg. - -\section{Parâmetros de configuração} - -O arquivo de configuração do \emph{simplepkg} é o /etc/simplepkg/simplepkg.conf. Ele contém parâmetros de configuração de todos os scripts, porém neste texto não trataremos das opções específicas ao \link{http://slack.sarava.org/simplaret}{simplaret}, as quais tem uma seção específica no artigo correspondente. - -\begin{itemize} - \item \emph{JAIL\_ROOT}: pasta padrão onde as jaulas são criadas pelo mkjail. Valor padrão: "/vservers". - \item \emph{ADD\_TO\_JAIL\_LIST}: controla se uma jaula criada pelo mkjail deve ser adicionada automaticamente no arquivo /etc/simplepkg/jailist. O valor padrão é "1" (habilitado). - \item \emph{TEMPLATES\_UNDER\_SVN}: indica se os templates estão armazenados num repositório subversion. O valor padrão é "no" (não). - \item \emph{TEMPLATE\_FOLDER}: indica qual é a pasta de templates. O valor padrão é "/etc/simplepkg/templates" e não é recomendável alterá-lo. - \item \emph{TEMPLATE\_STORAGE\_STYLE}: controla a forma de armazenamento de templates. O valor padrão é "own-folder" e essa opção apenas deve ser modificada se você armazena seus templates num formato antigo do \emph{simplepkg} e deseja manter compatibilidade. -\end{itemize} - -Vale lembrar que todas as opções booleanas (isto é, que podem ser apenas habilitadas ou desabilitadas) do simplepkg.conf tem os seguintes valores permitidos: "1" e "yes" para habilitado e "0" ou "no" para desabilitado. - -\section{Mais informações} - -O \emph{simplepkg} foi escrito por Silvio Rhatto (rhatto at riseup.net) sob licença GPL e seu código fonte é disponibilizado através do repositório subversion: - -\begin{verbatim} -svn checkout svn://slack.sarava.org/simplepkg -\end{verbatim} - -O wiki de desenvolvimento: http://slack.sarava.org/wiki/Main/SimplePKG e o endereço da lista de discussão utilizada para discussões sobre o \emph{simplepkg} ou mesmo distribuições e pacotes do tipo Slackware é http://listas.sarava.org/wws/info/slack. - -\end{document} diff --git a/tags/0.5/install/doinst.sh b/tags/0.5/install/doinst.sh deleted file mode 100644 index a61648e..0000000 --- a/tags/0.5/install/doinst.sh +++ /dev/null @@ -1,3 +0,0 @@ -( if [ ! -f "etc/simplepkg/simplepkg.conf" ]; then mv etc/simplepkg/simplepkg.conf.new etc/simplepkg/simplepkg.conf; fi ) -( if [ ! -f "etc/simplepkg/repos.conf" ]; then mv etc/simplepkg/repos.conf.new etc/simplepkg/repos.conf; fi ) -( if [ ! -f "etc/simplepkg/generic.mkslackbuild" ]; then mv etc/simplepkg/generic.mkSlackBuild.new etc/simplepkg/generic.mkSlackBuild; fi ) diff --git a/tags/0.5/install/slack-desc b/tags/0.5/install/slack-desc deleted file mode 100644 index 38ea489..0000000 --- a/tags/0.5/install/slack-desc +++ /dev/null @@ -1,19 +0,0 @@ -# HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. - - |-----handy-ruler-------------------------------------------------------| -simplepkg: simplepkg (slackware management system) -simplepkg: -simplepkg: simplepkg is a very small set of scripts intended to help slackware -simplepkg: users and developers, like the createpkg packaging tool, simplaret -simplepkg: package retrieval, mkjail chroot installer and templatepkg template -simplepkg: management system. -simplepkg: -simplepkg: -simplepkg: -simplepkg: -simplepkg: diff --git a/tags/0.5/lib/common.sh b/tags/0.5/lib/common.sh deleted file mode 100644 index 8d2bb2f..0000000 --- a/tags/0.5/lib/common.sh +++ /dev/null @@ -1,712 +0,0 @@ -#!/bin/bash -# -# common.sh: common functions for simplepkg -# feedback: rhatto at riseup.net | gpl -# -# Uses some functions from pkgtools, which license is: -# -# Copyright 1999 Patrick Volkerding, Moorhead, Minnesota, USA -# Copyright 2001, 2002, 2003 Slackware Linux, Inc., Concord, California, USA -# All rights reserved. -# -# Redistribution and use of this script, with or without modification, is -# permitted provided that the following conditions are met: -# -# 1. Redistributions of this script must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# - -BASE_CONF="/etc/simplepkg" -CONF="$BASE_CONF/simplepkg.conf" -JAIL_LIST="$BASE_CONF/jailist" -SIMPLARET="simplaret" - -# ----------------------------------------------- -# pkgtool functions -# ----------------------------------------------- - -function package_name { - - STRING=`basename $1 .tgz` - # Check for old style package name with one segment: - if [ "`echo $STRING | cut -f 1 -d -`" = "`echo $STRING | cut -f 2 -d -`" ]; then - echo $STRING - else # has more than one dash delimited segment - # Count number of segments: - INDEX=1 - while [ ! "`echo $STRING | cut -f $INDEX -d -`" = "" ]; do - INDEX=`expr $INDEX + 1` - done - INDEX=`expr $INDEX - 1` # don't include the null value - # If we don't have four segments, return the old-style (or out of spec) package name: - if [ "$INDEX" = "2" -o "$INDEX" = "3" ]; then - echo $STRING - else # we have four or more segments, so we'll consider this a new-style name: - NAME=`expr $INDEX - 3` - NAME="`echo $STRING | cut -f 1-$NAME -d -`" - echo $NAME - fi - fi - -} - -# ----------------------------------------------- -# package info functions -# ----------------------------------------------- - -function package_version { - - # get VERSION from a package name - local file pack version - file="`basename $1`" - pack="`package_name $1`" - version="`echo $file | sed -e "s/^$pack-//" | cut -d "-" -f 1`" - echo $version - -} - -function package_arch { - - # get ARCH from a package name - local file pack arch - file="`basename $1`" - pack="`package_name $1`" - arch="`echo $file | sed -e "s/^$pack-//" | cut -d "-" -f 2`" - echo $arch - -} - -function package_build { - - # get BUILD from a package name - local file pack build - file="`basename $1 .tgz`" - pack="`package_name $1`" - build="`echo $file | sed -e "s/^$pack-//" | cut -d "-" -f 3`" - echo $build - -} - -# ----------------------------------------------- -# package administrative functions -# ----------------------------------------------- - -function install_packages { - - local check installed unable_to_install root - - # check if is time to clean the local repository - if [ "$SIMPLARET_CLEAN" == "1" ]; then - ARCH=$ARCH VERSION=$VERSION $SIMPLARET --purge - elif [ ! -z "$SIMPLARET_PURGE_WEEKS" ] && [ "$SIMPLARET_PURGE_WEEKS" != "0" ]; then - ARCH=$ARCH VERSION=$VERSION $SIMPLARET --purge -w $SIMPLARET_PURGE_WEEKS - fi - - root="$JAIL_ROOT/$server" - - # now tries to install each package listed in the template - for pack in `cat $TEMPLATE | grep -v -e "^#" | cut -d : -f 1 | awk '{ print $1 }'`; do - - # try to install the package - ROOT=/$root ARCH=$ARCH VERSION=$VERSION $SIMPLARET --install $pack --skip-checks - - # check if the package was installed - pack="`echo $pack | sed -e 's/\+/\\\+/'`" - installed=`eval "ls /$root/var/log/packages/ | egrep -E '^$pack-[^-]+-[^-]+-[^-]+$'"` - check=$? - - if [ ! -z "$installed" ] && [ "$check" == "0" ]; then - # the package is installed - if [ ! -z "$SIMPLARET_DELETE_DURING" ] && [ "$SIMPLARET_DELETE_DURING" != "0" ]; then - SILENT=1 ARCH=$ARCH VERSION=$VERSION $SIMPLARET --purge - fi - else - unable_to_install="$unable_to_install\n\t$pack" - fi - - done - - # purge packages, if needed - if [ "$SIMPLARET_DELETE_DOWN" == "1" ]; then - ARCH=$ARCH VERSION=$VERSION $SIMPLARET --purge - fi - - if [ ! -z "$unable_to_install" ]; then - echo "mkjail was unable to install the following packages on $root:" - echo -e "$unable_to_install" - fi - -} - -function remove_packages { - - for pack in `cat $TEMPLATE | grep -v -e "^#" | cut -d : -f 1`; do - ROOT=/$JAIL_ROOT/$server removepkg $pack - done - -} - -# ----------------------------------------------- -# config file functions -# ----------------------------------------------- - -function eval_parameter { - - # usage: eval $1 parameter from $CONF - # return the evaluated parameter if available or $2 $3 ... $n - - if grep -qe "^$1=" $CONF; then - grep -e "^$1=" $CONF | cut -d = -f 2 | sed -e 's/"//g' -e "s/'//g" | sed -e 's/ *#.*$//' - else - shift - echo $* - fi - -} - -function eval_boolean_parameter { - - # get a boolean parameter from the configuration - - local value - - # get the value - value="`eval_parameter $1 $2`" - - # force case insensitiveness - value="`echo $value | tr '[:upper:]' '[:lower:]'`" - - # convert it to wheter 0 or 1 - if [ "$value" == "yes" ] || [ "$value" == "1" ]; then - echo 1 - else - echo 0 - fi - -} - -function eval_config { - - # simplepkg config file evaluation - # usage: eval_config <program-name> [-u] - - if [ -f "$CONF" ]; then - - DEFAULT_ARCH="`eval_parameter DEFAULT_ARCH $(default_arch)`" - DEFAULT_VERSION="`eval_parameter DEFAULT_VERSION $(default_version)`" - - STORAGE="`eval_parameter STORAGE /var/simplaret/packages`" - JAIL_ROOT="`eval_parameter JAIL_ROOT /vservers`" - PATCHES_DIR="`eval_parameter PATCHES_DIR /var/simplaret/patches`" - ROOT_PRIORITY="`eval_parameter ROOT_PRIORITY patches slackware extra testing pasture`" - REPOS_PRIORITY="`eval_parameter REPOS_PRIORITY patches slackware extra testing pasture`" - SIMPLARET_PURGE_WEEKS="`eval_parameter SIMPLARET_PURGE_WEEKS 0`" - FTP_TOOL="`eval_parameter FTP_TOOL curl`" - HTTP_TOOL="`eval_parameter HTTP_TOOL curl`" - CONNECT_TIMEOUT="`eval_parameter CONNECT_TIMEOUT 0`" - TEMPLATE_FOLDER="`eval_parameter TEMPLATE_BASE /etc/simplepkg/templates`" - TEMPLATE_STORAGE_STYLE="`eval_parameter TEMPLATE_STORAGE_STYLE own-folder`" - - SIMPLARET_CLEAN="`eval_boolean_parameter SIMPLARET_CLEAN 1`" - SIMPLARET_DELETE_DOWN="`eval_boolean_parameter SIMPLARET_DELETE_DOWN 1`" - SIMPLARET_UPDATE="`eval_boolean_parameter SIMPLARET_UPDATE 0`" - SIMPLARET_DELETE_DURING="`eval_boolean_parameter SIMPLARET_DELETE_DURING 0`" - SIMPLARET_PURGE_PATCHES="`eval_boolean_parameter SIMPLARET_PURGE_PATCHES 1`" - SIMPLARET_DOWNLOAD_FROM_NEXT_REPO="`eval_boolean_parameter SIMPLARET_DOWNLOAD_FROM_NEXT_REPO 1`" - PASSIVE_FTP="`eval_boolean_parameter PASSIVE_FTP 0`" - WARNING="`eval_boolean_parameter WARNING 0`" - SIGNATURE_CHECKING="`eval_boolean_parameter SIGNATURE_CHECKING 0`" - DEPENDENCY_CHECKING="`eval_boolean_parameter DEPENDENCY_CHECKING 1`" - TEMPLATES_UNDER_SVN="`eval_boolean_parameter TEMPLATES_UNDER_SVN 0`" - ADD_TO_JAIL_LIST="`eval_boolean_parameter ADD_TO_JAIL_LIST 1`" - - # Enabling this option (i.e, setting to "1" or "yes"), simplaret will - # donwload even # already applied patches, a good option when you plan - # to keep local copies of all needed patches for your system - DOWNLOAD_EVEN_APPLIED_PATCHES="`eval_boolean_parameter DOWNLOAD_EVEN_APPLIED_PATCHES 0`" - - # Enabling this option, jail-upgrade will look at your - # standard repositories for new packages; if it find a package - # with different version of your current installed package and - # also this package isnt in the packages folder, then the new - # package is apllied; if in doubt, just say no or leave blank. - CONSIDER_ALL_PACKAGES_AS_PATCHES="`eval_boolean_parameter CONSIDER_ALL_PACKAGES_AS_PATCHES 0`" - - # Enabling this option (i.e, setting to "1" or "yes"), simplaret will - # store patches it finds on ROOT repositories on - # - # $PATCHES_DIR/$ARCH/$VERSION/root-$repository_name. - # - # By default this option is turned off because it breaks the standard - # way to store packages and can cause some confusion, but its an useful - # feature if you like to see all patches apart from common packages and/or - # stored in the same tree. - STORE_ROOT_PATCHES_ON_PATCHES_DIR="`eval_boolean_parameter STORE_ROOT_PATCHES_ON_PATCHES_DIR 0`" - - # now we place "patches" on the top of ROOT_PRIORITY - ROOT_PRIORITY="patches `echo $ROOT_PRIORITY | sed -e 's/patches//'`" - - else - echo $1 error: config file $CONFIG not found - exit 1 - fi - - if [ ! -d "$STORAGE" ]; then - mkdir -p $STORAGE - fi - - if [ ! -d "$PATCHES_DIR" ]; then - mkdir -p $PATCHES_DIR - fi - - if [ -z "$ARCH" ]; then - ARCH="$DEFAULT_ARCH" - fi - - if [ -z "$VERSION" ]; then - VERSION="$DEFAULT_VERSION" - fi - - if [ "$FTP_TOOL" != "wget" ] && [ "$FTP_TOOL" != "curl" ] && [ "$FTP_TOOL" != "ncftpget" ]; then - echo "$1 configuration error: invalid value $FTP_TOOL for config parameter FTP_TOOL" - echo "$1 assuming value \"curl\" for variable FTP_TOOL" - FTP_TOOL="curl" - fi - - if [ "$HTTP_TOOL" != "wget" ] && [ "$HTTP_TOOL" != "curl" ]; then - echo "$1 configuration error: invalid value $HTTP_TOOL for config parameter HTTP_TOOL" - echo "$1 assuming value \"curl\" for variable HTTP_TOOL" - HTTP_TOOL="curl" - fi - - if which $SIMPLARET &> /dev/null; then - if [ "$SIMPLARET_UPDATE" == "1" ]; then - if [ "$2" == "-u" ]; then - ARCH=$ARCH VERSION=$VERSION $SIMPLARET --update - fi - fi - else - echo "$SIMPLARET not found, please install it before run $0" - fi - - if [ "$TEMPLATE_STORAGE_STYLE" != "simplepkg-folder" ] && \ - [ "$TEMPLATE_STORAGE_STYLE" != "templates-folder" ] && \ - [ "$TEMPLATE_STORAGE_STYLE" != "own-folder" ]; then - TEMPLATE_STORAGE_STYLE="own-folder" - fi - - if [ ! -z "$ROOT" ]; then - JAIL_ROOT="$ROOT" - fi - -} - -# ----------------------------------------------- -# arch and version functions -# ----------------------------------------------- - -function default_version { - - # get version from /etc/slackware-version - if [ -f "$1/etc/slackware-version" ]; then - cat $1/etc/slackware-version | awk '{ print $2 }' | sed -e 's/.0$//' - else - echo "none" - fi - -} - -function default_arch { - - # get arch from /etc/slackware-version - - local arch - arch="`cat $1/etc/slackware-version | awk '{ print $3 }' | sed -e 's/(//' -e 's/)//'`" - - if [ -z "$arch" ]; then - echo i386 - else - echo $arch - fi - -} - -# ----------------------------------------------- -# template functions -# ----------------------------------------------- - -function search_default_template { - - if [ -e "$BASE_CONF/default.template" ]; then - TEMPLATE_BASE="$BASE_CONF/default" - echo $BASENAME using default template - elif [ -e "$TEMPLATE_FOLDER/default.template" ]; then - TEMPLATE_BASE="$TEMPLATE_FOLDER/default" - echo $BASENAME: using default template - elif [ -e "$TEMPLATE_FOLDER/default/default.template" ]; then - TEMPLATE_BASE="$TEMPLATE_FOLDER/default/default" - echo $BASENAME: using default template - elif [ -e "$BASE_CONF/defaults/templates/default/default.template" ]; then - TEMPLATE_BASE="$BASE_CONF/defaults/templates/default" - echo $BASENAME using default template - else - echo $BASENAME: error: default template not found - echo $BASENAME: please create a template using templatepkg - return 1 - fi - -} - -function search_template { - - # determine the template to be used - # usage: search-template <template-name> [--new | --update] - - # - # templates can be stored either on - # - # - $BASE_CONF/template_name.template - # - $TEMPLATE_FOLDER/template_name.template - # - $TEMPLATE_FOLDER/template_name/template_name.template - # - # also, there's a folder for "oficial" simplepkg templates, - # $BASE_CONF/defaults/templates/ and you can override any template - # in the default folder by placing a template with the same name - # in the template storage folders - # - - if [ -f "$BASE_CONF/$1.template" ]; then - TEMPLATE_BASE="$BASE_CONF/$1" - elif [ -f "$TEMPLATE_FOLDER/$1.template" ]; then - TEMPLATE_BASE="$TEMPLATE_FOLDER/$1" - elif [ -f "$TEMPLATE_FOLDER/$1/$1.template" ]; then - TEMPLATE_BASE="$TEMPLATE_FOLDER/$1/$1" - elif [ -f "$BASE_CONF/defaults/templates/$1/$1.template" ] && \ - [ "$2" != "--update" ]; then - TEMPLATE_BASE="$BASE_CONF/defaults/templates/$1/$1" - else - if [ "$2" == "--new" ]; then - # we need to return the path for a new template - if [ "$TEMPLATE_STORAGE_STYLE" == "simplepkg-folder" ]; then - TEMPLATE_BASE="$BASE_CONF/$1" - elif [ "$TEMPLATE_STORAGE_STYLE" == "templates-folder" ]; then - TEMPLATE_BASE="$TEMPLATE_FOLDER/$1" - else - TEMPLATE_BASE="$TEMPLATE_FOLDER/$1/$1" - fi - elif [ "$2" == "--update" ]; then - return 1 - else - echo $BASENAME: template $1 not found - search_default_template - fi - fi - -} - -# ----------------------------------------------- -# unix permission functions -# ----------------------------------------------- - -function numeric_perm { - - # get the numeric permission of a file - # usage: numeric_perm <file-name> - - # just a bit of forbidden secrets - - if [ -a "$1" ]; then - ls -lnd $1 | awk '{ print $1 }' | \ - sed -e 's/^.//' -e 's/r/4/g' -e 's/w/2/g' -e 's/x/1/g' \ - -e 's/-/0/g' -e 's/\(.\)\(.\)\(.\)/\1+\2+\3/g' | \ - fold -w5 | bc -l | xargs | sed -e 's/ //g' - fi - -} - -function get_owner { - - # get the numeric owner for a file - # usage: get_owner <file> - - if [ -a "$1" ]; then - ls -lnd $1 | awk '{ print $3 }' - fi - -} - -function get_group { - - # get the numeric group for a file - # usage: get_group <file> - - if [ -a "$1" ]; then - ls -lnd $1 | awk '{ print $4 }' - fi - -} - -# ----------------------------------------------- -# subversion functions -# ----------------------------------------------- - -function use_svn { - - # check if svn usage is enabled - - if [ "$TEMPLATES_UNDER_SVN" == "1" ] && \ - [ "$TEMPLATE_STORAGE_STYLE" == "own-folder" ]; then - return 0 - else - return 1 - fi - -} - -function svn_check { - - # check if a file is under svn - # usage: svn_check <file> - - local cwd folder - - cwd="`pwd`" - folder="`dirname $1`" - - if [ -d "$folder/.svn" ]; then - - cd $folder - - if [ "`svn status $1 | awk '{ print $1 }'`" == "?" ]; then - return 1 - else - return 0 - fi - - cd $cwd - - else - - return 1 - - fi - -} - -# ----------------------------------------------- -# update jail functions -# ----------------------------------------------- - -function update_template_files { - - # update template files from svn - # usage: update_template_files - - if use_svn && [ -d "$TEMPLATE_BASE.d/.svn" ]; then - echo Checking out last template revision from svn... - cd `dirname $TEMPLATE_BASE` - svn update - fi - -} - -function copy_template_files { - - # copy template files into jail - # usage: copy_template_files <jail-path> - - if [ -d "$1" ]; then - if [ -d "$TEMPLATE_BASE.d" ]; then - echo "Copying template files to $1..." - if use_svn && [ -d "$TEMPLATE_BASE.d/.svn" ]; then - rsync -av --exclude=.svn $TEMPLATE_BASE.d/ $1/ - else - rsync -av $TEMPLATE_BASE.d/ $1/ - fi - fi - fi - -} - -function set_jail_perms { - - # set template file permissions under a jail - # usage: set_jail_perms <jail-path> - - if [ -s "$TEMPLATE_BASE.perms" ]; then - echo Setting jail $1 permissions... - cat $TEMPLATE_BASE.perms | while read entry; do - file="`echo $entry | cut -d ";" -f 1`" - if [ -e "$TEMPLATE_BASE.d/$file" ] && [ -a "$1/$file" ]; then - owner="`echo $entry | cut -d ";" -f 2`" - group="`echo $entry | cut -d ";" -f 3`" - perms="`echo $entry | cut -d ";" -f 4`" - chmod $perms $1/$file - chown $owner:$group $1/$file - fi - done - fi - -} - -# ----------------------------------------------- -# repository build functions -# ----------------------------------------------- - -function svn_add_meta { - - find *meta -exec svn add {} 2> /dev/null \; - find . -name *meta -exec svn add {} 2> /dev/null \; - -} - -function gen_filelist { - - # generate FILELIST.TXT - # usage: gen_filelist - - find . -type f -name *.tgz -follow -print | sort | tr '\n' '\0' | \ - xargs -0r ls -ldL --time-style=long-iso > FILELIST.TXT - echo "Created new FILELIST.TXT" - -} - -function gen_patches_filelist { - - # generate FILE_LIST - # usage: gen_patches_filelist <folder> - - if [ ! -z "$1" ] && [ -d "$1" ]; then - - cwd="`pwd`" - cd $1 - for file in `find | grep -e ".tgz$"`; do ls -l $file; done > FILE_LIST - cd $cwd - - if [ "$1" == "." ]; then - echo "Created new FILE_LIST" - else - echo "Created new $1/FILE_LIST" - fi - - fi - -} - -function gen_packages_txt { - - # generate PACKAGES.TXT - # usage: gen_packages_txt <folder> - - if [ ! -z "$1" ] && [ -d "$1" ]; then - - cwd="`pwd`" - cd $1 - - echo '' > PACKAGES.TXT - find . -type f -name '*.meta' -exec cat {} \; >> PACKAGES.TXT - cat PACKAGES.TXT | gzip -9 -c - > PACKAGES.TXT.gz - cd $cwd - - if [ "$1" == "." ]; then - echo "Created new PACKAGES.TXT and PACKAGES.TXT.gz" - else - echo "Created new $1/PACKAGES.TXT and $1/PACKAGES.TXT.gz" - fi - - fi - -} - -function gen_md5_checksums { - - # generate CHECKSUMS.md5 - # usage: gen_md5_checksums <folder> - - if [ -d "$1" ]; then - - cwd="`pwd`" - cd $1 - - echo '' > CHECKSUMS.md5 - find . -type f -name '*.tgz' -exec md5sum {} \; >> CHECKSUMS.md5 - cat CHECKSUMS.md5 | gzip -9 -c - > CHECKSUMS.md5.gz - cd $cwd - - if [ "$1" == "." ]; then - echo "Created new CHECKSUMS.md5 and CHECKSUMS.md5.gz" - else - echo "Created new $1/CHECKSUMS.md5 and $1/CHECKSUMS.md5.gz" - fi - - fi - -} - -function gen_meta { - - # generate metafiles - # usage: gen_meta <package-file> - - if [ ! -f $1 ]; then - echo "File not found: $1" - exit 1; - else - echo "Processing $1" - fi - - if [ "`echo $1|grep -E '(.*{1,})\-(.*[\.\-].*[\.\-].*).tgz[ ]{0,}$'`" == "" ]; then - return; - fi - - NAME=$(echo $1|sed -re "s/(.*\/)(.*.tgz)$/\2/") - LOCATION=$(echo $1|sed -re "s/(.*)\/(.*.tgz)$/\1/") - SIZE=$( expr `gunzip -l $1 | tail -n 1|awk '{print $1}'` / 1024 ) - USIZE=$( expr `gunzip -l $1 | tail -n 1|awk '{print $2}'` / 1024 ) - REQUIRED=$(tar xzfO $1 install/slack-required 2>/dev/null|xargs -r -iZ echo -n "Z,"|sed -e "s/,$//") - CONFLICTS=$(tar xzfO $1 install/slack-conflicts 2>/dev/null|xargs -r -iZ echo -n "Z,"|sed -e "s/,$//") - SUGGESTS=$(tar xzfO $1 install/slack-suggests 2>/dev/null|xargs -r ) - METAFILE=${NAME%tgz}meta - - echo "PACKAGE NAME: $NAME" > $LOCATION/$METAFILE - - if [ -n "$DL_URL" ]; then - echo "PACKAGE MIRROR: $DL_URL" >> $LOCATION/$METAFILE - fi - - echo "PACKAGE LOCATION: $LOCATION" >> $LOCATION/$METAFILE - echo "PACKAGE SIZE (compressed): $SIZE K" >> $LOCATION/$METAFILE - echo "PACKAGE SIZE (uncompressed): $USIZE K" >> $LOCATION/$METAFILE - echo "PACKAGE REQUIRED: $REQUIRED" >> $LOCATION/$METAFILE - echo "PACKAGE CONFLICTS: $CONFLICTS" >> $LOCATION/$METAFILE - echo "PACKAGE SUGGESTS: $SUGGESTS" >> $LOCATION/$METAFILE - echo "PACKAGE DESCRIPTION:" >> $LOCATION/$METAFILE - - tar xzfO $1 install/slack-desc | grep -E '\w+\:'|grep -v '^#' >> $LOCATION/$METAFILE - - echo "" >> $LOCATION/$METAFILE - -} - -# ----------------------------------------------- -# misc functions -# ----------------------------------------------- - -function slash { - - # remove additional slashes - echo $* | sed -e 's/\/\+/\//g' - -} - diff --git a/tags/0.5/simplepkg.SlackBuild b/tags/0.5/simplepkg.SlackBuild deleted file mode 100755 index 60ff082..0000000 --- a/tags/0.5/simplepkg.SlackBuild +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash -# -# SlackBuild script for simplepkg -# - -PACKAGE="simplepkg" -PACK_DIR="package-$PACKAGE" -BUILD=${BUILD:=1rha} -VERSION="0.5" -ARCH="noarch" -LIBEXEC="/usr/libexec/$PACKAGE" -BINDIR="/usr/bin" -BINARY_LIST="simplaret repos lspkg mkbuild" -SBINDIR="/usr/sbin" -SBINARY_LIST="exec-slackbuild mkjail templatepkg jail-update jail-commit metapkg rebuildpkg createpkg exec-slackbuild" -LIB_LIST="common.sh" -DOC_DIR="/usr/doc" -DOC_LIST="COPYING TODO CHANGELOG README README.pt_BR README.simplaret README.simplaret.pt_BR" - -rm -rf $PACK_DIR -mkdir -p $PACK_DIR/install -cp install/slack-desc $PACK_DIR/install -cp install/doinst.sh $PACK_DIR/install - -mkdir -p $PACK_DIR/$SBINDIR -for binary in $SBINARY_LIST; do - if [ -f "src/$binary" ]; then - cp src/$binary $PACK_DIR/$SBINDIR - chmod +x $PACK_DIR/$SBINDIR/$binary - fi -done - -mkdir -p $PACK_DIR/$BINDIR -for binary in $BINARY_LIST; do - cp src/$binary $PACK_DIR/$BINDIR/ - chmod +x $PACK_DIR/$BINDIR/$binary -done - -mkdir -p $PACK_DIR/$LIBEXEC -for lib in $LIB_LIST; do - cp lib/$lib $PACK_DIR/$LIBEXEC/ -done - -rm -rf $PACK_DIR/$DOC_DIR -mkdir -p $PACK_DIR/$DOC_DIR/$PACKAGE-$VERSION -for file in $DOC_LIST; do - cp doc/$file $PACK_DIR/$DOC_DIR/$PACKAGE-$VERSION/ -done - -mkdir -p $PACK_DIR/etc/$PACKAGE/{defaults,templates} -rsync -av --exclude=.svn templates/* $PACK_DIR/etc/$PACKAGE/defaults/templates/ -chmod +x $PACK_DIR/etc/$PACKAGE/defaults/templates/vserver/vserver.s/*.sh -chmod +x $PACK_DIR/etc/$PACKAGE/defaults/templates/vserver-legacy/vserver-legacy.s/*.sh -cp conf/simplepkg.conf.new $PACK_DIR/etc/$PACKAGE -cp conf/repos.conf.new $PACK_DIR/etc/$PACKAGE -cp conf/generic.mkSlackBuild.new $PACK_DIR/etc/$PACKAGE -cp utils/exec-slackbuild $PACK_DIR/$SBINDIR/ - -if [ -f "$PACK_DIR/usr/sbin/jail-upgrade" ]; then - cd $PACK_DIR/usr/sbin && ln -s jail-upgrade vserver-upgrade - cd - -fi - -cd $PACK_DIR -chown -R root.root * - -makepkg -c y -l y ../simplepkg-$VERSION-$ARCH-$BUILD.tgz -cd .. - -if [ "$CLEANUP" != "no" ]; then - rm -rf $PACK_DIR -fi - diff --git a/tags/0.5/src/createpkg b/tags/0.5/src/createpkg deleted file mode 100644 index a80b033..0000000 --- a/tags/0.5/src/createpkg +++ /dev/null @@ -1,501 +0,0 @@ -#!/bin/bash -# -# createpkg: package builder using http://slack.sarava.org/slackbuilds scripts -# feedback: rhatto at riseup.net | gpl -# -# createpkg is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# createpkg is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# /etc/simplepkg/slackbuildrc parameters: -# -# SLACKBUILDS_DIR="/folder/to/place/slackbuilds", defaults to /var/slackbuilds -# SVN="svn://repository", defaults do svn://slack.sarava.org/slackbuilds -# SYNC="yes|no", whether to always update the repository -# -# TODO -# -# - optionally show a dependency tree before create the package -# - in function solve_dep: resolve program versions -# - mkdir source directory - error... (please check!) - -#--------------------------------------------------- -# Createpkg functions -#--------------------------------------------------- - -CREATEPKG_VERSION="1.0.4.1" - -function error_codes { - - # Slackbuilds error codes - ERROR_WGET=31 # wget error - ERROR_MAKE=32 # make source error - ERROR_INSTALL=33 # make install error - ERROR_MD5=34 # md5sum error - ERROR_CONF=35 # ./configure error - ERROR_HELP=36 # dasable - ERROR_TAR=37 # tar error - ERROR_MKPKG=38 # makepkg error - ERROR_GPG=39 # gpg check error - ERROR_PATCH=40 # patch error - ERROR_VCS=41 # cvs error - ERROR_MKDIR=42 # make directory error - - # Createpkg error codes - ERROR_INSTPKG=200 # installpkg error - ERROR_DEPEN=201 # dependency error - SCRIPT_OR_PACKAGE_NOT_FOUND=202 # Script or package not found -} - -function eecho { - - # echoes a message - # usage: eecho <message-type> <message> - # message-type can be: commun, messag, error, normal - - echo -e "${1}${2}${normal}" - -} - -function handle_error { - - # This function deals with internal createpkg errors - # and also with non-zero exit codes from slackbuilds - # Input: $1 - error code - # Output: Error mensage - # - # check slackbuild exit status are: - # - # ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 - # ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 - # ERROR_TAR=37; ERROR_MKPKG=38 ERROR_GPG=39 - # ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 - # - # thanks to rudsonalves at yahoo.com.br for this spec. - - # we don't want to process when exit status = 0 - [ "$1" == "0" ] && return - - # Exit codes - case $1 in - 2) usage ;; - 3) eecho $alert "$BASENAME: could not update the repository $2" ;; - 4) eecho $alert "$BASENAME: could not create folder $2" ;; - 5) eecho $alert "$BASENAME: script not found for $2" ;; - $ERROR_WGET) - eecho $error "$BASENAME: error downloading source/package for $2" ;; - $ERROR_MAKE) - eecho $error "$BASENAME: error compiling $2 source code" ;; - $ERROR_INSTALL) - eecho $error "$BASENAME: error installing $2" ;; - $ERROR_MD5) - eecho $error "$BASENAME: error on source code integrity check for $2" ;; - $ERROR_CONF) - eecho $error "$BASENAME: error configuring the source code for $2" ;; - $ERROR_HELP) - exit 0 ;; # its supposed to never happen here :P - $ERROR_TAR) - eecho $error "$BASENAME: error decompressing source code for $2" ;; - $ERROR_MKPKG) - eecho $error "$BASENAME: error creating package $2" ;; - $ERROR_GPG) - eecho $error "$BASENAME: error verifying GPG signature the source code for $2" ;; - $ERROR_PATCH) - eecho $error "$BASENAME: error patching the source code for $2" ;; - $ERROR_VCS) - eecho $error "$BASENAME: error downloading $2 source from version control system" ;; - $ERROR_MKDIR) - eecho $error "$BASENAME: make directory $2 error, aborting" ;; - $ERROR_INSTPKG) - eecho $error "$BASENAME: install package $2 error, aborting" ;; - $ERROR_DEPEN) - eecho $error "$BASENAME: dependency solve error, aborting" ;; - *) eecho $error "$BASENAME: unknown error or user interrupt" ;; - $SCRIPT_OR_PACKAGE_NOT_FOUND) - eecho $error "$BASENAME: SlackBuild or package not found" ;; - esac - - exit $1 - -} - -function build_repo { - - # Checkout a new slackbuild working copy - BASEDIR="`dirname $SLACKBUILDS_DIR`" - mkdir -p $BASEDIR || handle_error 4 $BASEDIR - cd $BASEDIR - svn checkout $SVN - cd $SLACKBUILDS_DIR - -} - -function usage { - - # Help mensage - eecho $commun "Createpkg version $CREATEPKG_VERSION\n" - eecho $commun "Usage: createpkg [--install/-i] package-name" - eecho $commun " createpkg --no-deps/-np package-name" - eecho $commun " createpkg --search/-s package-name" - eecho $commun " createpkg --info/-f package-name" - eecho $commun " createpkg --list/-l" - eecho $commun " createpkg --sync" - eecho $commun " createpkg --help/-h" -} - -function check_config { - - # check the configuration - TMP=${TMP:=/tmp}; - REPOS=${REPOS:=$TMP}; - # Create $TMP and $REPOS if need - [ ! -e $TPM ] && mkdir $TMP - [ ! -e $REPOS ] && mkdir $REPOS - # - SLACKBUILDS_DIR=${SLACKBUILDS_DIR:=/var/slackbuilds} - SVN=${SVN:=svn://slack.sarava.org/slackbuilds} - SYNC=${SYNC:=no} - BASEDIR="`dirname $SLACKBUILDS_DIR`" - -} - -function solve_dep { - - # Solve dependency - local PACK="$1" - local COND="$2" - local VER="$3" - - # Check package in local system - PACK="`echo $PACK | sed -e 's/\+/\\\+/'`" - INSTALLED=`eval "ls /var/log/packages/ | egrep -E '^$PACK-[^-]+-[^-]+-[^-]+$'"` - CHECK=$? - - # TODO: Make check version procedures - if [ -z "$INSTALLED" ]; then - if [ $CHECK -ne 0 ]; then - # Check package in SlackBuilds tree - eecho $messag "$BASENAME: processing $PACKAGE dependency $PACK" - SYNC=no CREATEPKG_CHILD=$CREATEPKG_CHILD createpkg --install $PACK - - # check if the package was built and installed - EXIT_CODE="$?" - - if [ "$EXIT_CODE" == "5" ]; then - - # exit code 5 == slackbuild not found - # try to use simplaret - ARCH=$DEFAULT_ARCH simplaret --update - ARCH=$DEFAULT_ARCH simplaret --install $PACK - EXIT_CODE="$?" - if [ "$EXIT_CODE" != "0" ]; then - handle_error $SCRIPT_OR_PACKAGE_NOT_FOUND $PACK - fi - - elif [ "$EXIT_CODE" != "0" ]; then - handle_error $EXIT_CODE $PACK - fi - - fi - fi - -} - -function check_repo { - - # Verify if repository exist - [ ! -d "$SLACKBUILDS_DIR" ] && build_repo - -} - -function sync_repo { - - # Synchronize repository - cd $SLACKBUILDS_DIR - svn update || build_repo - #simplaret --update - -} - -function find_slackbuild { - - # Find SlackBuild script in the repository - find $SLACKBUILDS_DIR -iname $1.SlackBuild - -} - -function info_builds { - - # Show packages info - if [ "$PKG_PATH" != "" ]; then - for i in $PKG_PATH; do - PACKAGE=`basename $i .SlackBuild` - NAME_UP=`echo $PACKAGE | tr [a-z] [A-Z]` - eecho $commun "$NAME_UP: " - - PKG_DIR=`dirname $i` - if [ -e $PKG_DIR/slack-desc ]; then - eval "cat $PKG_DIR/slack-desc | grep '^$PACKAGE:' | cut -f2- -d:" - eecho $normal - else - eval "cat $i | grep '^$PACKAGE:' | cut -f2- -d:" - eecho $normal - fi - - if [ -e $PKG_DIR/slack-required ]; then - eecho $commun "slack-required" - cat $PKG_DIR/slack-required | sed 's/^/ /' - fi - done - fi - -} - -function list_builds { - - # List all available SlackBuilds - cd $SLACKBUILDS_DIR - echo "Sarava SlackBuilds list" - # level 1 - for i in *; do - if [ -d $i ]; then - echo -e " $i: " - ( - cd $i - # level 2 - for j in *; do - if [ -d $j ]; then - eecho $commun " $j" - ( - cd $j - BUILD="`ls *.SlackBuild 2>/dev/null`" - if [ "$BUILD" != "" ]; then - # level 3 - for k in $BUILD; do - eecho $messag " $k" - done - else - BUILD="" - fi - for k in *; do - if [ -d $k ]; then - eecho $messag " $k.SlackBuild" - fi - done - ) - fi - done - ) - fi - done - -} - -function color_select { - - # Select color mode: gray, color or none (*) - # commun - Communication - # messag - Commum messages - # error - Error messages - # normal - turn off color - case "$1" in - 'gray') - commun="\033[37;1m" - messag="\033[37;1m" - error="\033[30;1m" - alert="\033[37m" - normal="\033[m" - ;; - 'color') - commun="\033[34;1m" # green - messag="\033[32;1m" # blue - error="\033[31;1m" # red - alert="\033[33;1m" # yellow - normal="\033[m" # normal - ;; - *) - commun="" - messag="" - error="" - alert="" - normal="" - ;; - esac - -} - -#--------------------------------------------------- -# Starting createpkg -#--------------------------------------------------- -# Common functions -COMMON="/usr/libexec/simplepkg/common.sh" -SIMPLEPKG_CONF="/etc/simplepkg/simplepkg.conf" - -# Loading error codes -error_codes - -# First load simplepkg helper functions -source $COMMON && source $SIMPLEPKG_CONF -if [ $? -ne 0 ]; then - eecho $error "error: file $COMMON not found, check your $BASENAME installation" - exit 1 -fi - -# Load slackbuildrc definitions -if [ -f ~/.slackbuildrc ]; then - source ~/.slackbuildrc -else - source /etc/slackbuildrc 2>/dev/null -fi - -# Select color mode: gray, color or none (*) -color_select $COLOR - -# This is used to show how many children process we have -if [ -z "$CREATEPKG_CHILD" ]; then - CREATEPKG_CHILD="1" -else - let CREATEPKG_CHILD++ -fi - -BASENAME="`basename $0`[$CREATEPKG_CHILD]" - -check_config -check_repo - -case $1 in - '--search'|'-s') - [ $# -ne 2 ] && handle_error 2 # two parameters is required - find_slackbuild $2 - exit - ;; - '--info'|'-f') - [ $# -ne 2 ] && handle_error 2 # two parameters is required - PKG_PATH=`find_slackbuild $2` - info_builds - exit - ;; - '--install'|'-i') - [ $# -ne 2 ] && handle_error 2 # two parameters is required - PACKAGE="$2" - INSTALL="1" - ;; - '--no-deps'|'-nd') - [ $# -ne 2 ] && handle_error 2 # two parameters is required - NO_DEPS="1" - PACKAGE="$2" - ;; - '--sync') - sync_repo - exit 0 - ;; - '--help'|'-h'|'') - usage - exit 0 - ;; - '--list'|'-l') - list_builds - exit 0 - ;; - *) - if [ "${1:0:1}" != "-" ]; then - PACKAGE="$1" - else - handle_error 2 - fi - ;; -esac - -# Synchronize repository -[ "$SYNC" == "yes" ] && sync_repo - -# Get SlackBuild script -BUILD_SCRIPT="`find_slackbuild $PACKAGE`" - -# Check SlackBuild script found -if [ -z "$BUILD_SCRIPT" ]; then - handle_error 5 $PACKAGE -fi - -# Select one SlackBuild -if [ "`echo $BUILD_SCRIPT | wc -w`" -gt 1 ]; then - AUX="$PS3" - PS3="Choice: " - LIST=`echo $BUILD_SCRIPT | sed 's/ /\n/g' | sed -r 's/.*\/(.*)\.SlackBuild$/\1/'`" EXIT" - - select PACKAGE in `echo $LIST`; do - break - done - - if [ "$PACKAGE" = "EXIT" ]; then - eecho $error "error: None package select" - exit 1 - fi - - # Select only one SlackBuild in BUILD_SCRIPT - BUILD_SCRIPT=`echo $BUILD_SCRIPT | sed 's/ /\n/g' | grep "/$PACKAGE.SlackBuild"` - PS3="$AUX" -else - #PACKAGE=`echo $BUILD_SCRIPT | sed -r 's/.*\/(.*)\.SlackBuild$/\1/'` - PACKAGE=`basename $BUILD_SCRIPT .SlackBuild` -fi - -# Get dirname and script name from slackbuild -SCRIPT_BASE="`dirname $BUILD_SCRIPT`" -SCRIPT_NAME="`basename $BUILD_SCRIPT`" -eecho $messag "$BASENAME: found script $PACKAGE.SlackBuild, now checking for dependencies" - -# Sets the package's slack-required -if [ -f "$SCRIPT_BASE/$PACKAGE.slack-required" ]; then - SLACK_REQUIRED="$SCRIPT_BASE/$PACKAGE.slack-required" -elif [ -f "$SCRIPT_BASE/slack-required" ]; then - SLACK_REQUIRED="$SCRIPT_BASE/slack-required" -fi - -if [ ! -z "$SLACK_REQUIRED" -a "$NO_DEPS" != "1" ]; then - # this routine checks for dependencies in package's slack-required - ( grep '^[^#]' $SLACK_REQUIRED | while read dep; do - if [ ! -z "$dep" ]; then - PROGRAM="`echo $dep | awk '{ print $1 }'`" - CONDITION="`echo $dep | awk '{ print $2 }' | tr [=\>\<] [egl]`" - VERSION="`echo $dep | awk '{ print $3 }' | tr -dc '[:digit:]'`" - solve_dep $PROGRAM $CONDITION $VERSION - fi - true - done ) - if [ $? -ne 0 ]; then - eecho $messag "$BASENAME: dependency solve error" - exit 1 - fi - eecho $messag "$BASENAME: done checking for $PACKAGE dependencies" -else - eecho $messag "$BASENAME: no unmet dependencies for $PACKAGE" -fi - -eecho $messag "$BASENAME: processing $SCRIPT_NAME" - -# Change to script base directory -cd $SCRIPT_BASE - -# Execute SlackBuild script with variables protection -( INTERACT=no sh ./$SCRIPT_NAME ) - -# Check if package was built -handle_error $? $PACKAGE - -PKG_TGZ="`ls -1 -c $REPOS/$PACKAGE-*-*-*.tgz | head -n 1`" - -if [ "$INSTALL" == "1" ]; then - # as we dont have the full package file name, we'll - # use the newer file name that matches our wildcard: - - upgradepkg --install-new $PKG_TGZ -fi diff --git a/tags/0.5/src/jail-commit b/tags/0.5/src/jail-commit deleted file mode 100755 index f40e5cd..0000000 --- a/tags/0.5/src/jail-commit +++ /dev/null @@ -1,175 +0,0 @@ -#!/bin/bash -# -# jail-commit: update config files from a jail to a template -# feedback: rhatto@riseup.net | gpl -# -# Jail-commit is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Jail-commit is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -COMMON="/usr/libexec/simplepkg/common.sh" -BASENAME="`basename $0`" - -if [ -f "$COMMON" ]; then - source $COMMON - eval_config $BASENAME -else - echo "error: file $COMMON found, check your $BASENAME installation" - exit 1 -fi - -function usage { - - echo $BASENAME: commit a jail configuration into a template - echo "usage: \"$BASENAME [<jail-path> [template]]\"" - echo " \"$BASENAME --all\" to commit all templates" - echo " \"$BASENAME --help\" for help" - -} - -function template_merge { - - # copy differences between the jail - # and the template in the template folder - - # usage: template_merge <jail-path> - - if [ -z "$1" ] || [ ! -d "$TEMPLATE_BASE.d" ]; then - return 1 - fi - - echo "" > $TEMPLATE_BASE.perms.tmp - cd $TEMPLATE_BASE.d - - for file in `find | grep -v -e "/.svn$" | grep -v -e "/.svn/" | grep -v -e "^\.$"`; do - - if [[ -e "$file" && -e "$1/$file" ]]; then - - if [ ! -d "$file" ] && [ ! -h "$file" ]; then - if ! diff $file $1/$file; then - echo Updating $file - cp -af $1/$file $file - fi - elif [ -h "$file" ]; then - if [ "`readlink $file`" != "`readlink $1/$file`" ]; then - rm -f $file - ln -s `readlink $1/$file` $file - fi - fi - - perms="`numeric_perm $1/$file`" - owner="`get_owner $1/$file`" - group="`get_group $1/$file`" - - # secure the file - chown root.root $TEMPLATE_BASE.d/$file - chmod $perms $TEMPLATE_BASE.d/$file - - echo "$file;$owner;$group;$perms" >> $TEMPLATE_BASE.perms.tmp - - else - if [ ! -e "$1/$file" ]; then - echo $BASENAME: warning: missing file `slash $1/$file` - fi - fi - - done - - cat $TEMPLATE_BASE.perms.tmp | sed '/^$/d' > $TEMPLATE_BASE.perms - rm -f $TEMPLATE_BASE.perms.tmp - - if ! svn_check $TEMPLATE_BASE,perms; then - svn add $TEMPLATE_BASE,perms - fi - -} - -function template_svn_commit { - - # issue a svn_commit from a template folder - # usage: template_svn_commit <template-folder> - - if use_svn && [ -d "$1/.svn" ]; then - cd $1 - echo First checking out from the repository... - svn update - echo Commiting changes to the repository... - svn commit -m "changes for `date`" - if [ "$?" != "0" ]; then - echo $BASENAME: commit error - fi - fi - -} - -function do_commit { - - # commit jail changes to a repository - # usage: do_commit <jailpath> [template] - - local jailpath template - - jailpath="$1" - jail="`basename $jailpath`" - - if [ ! -z "$2" ]; then - template="$2" - else - template="$jail" - fi - - search_template $template --update - if [ "$?" == "0" ] && ! echo "$TEMPLATE_UPDATE_LIST" | grep -q " `basename $TEMPLATE_BASE` "; then - TEMPLATE_UPDATE_LIST=" $TEMPLATE_UPDATE_LIST `basename $TEMPLATE_BASE` " # the spaces are important - if [ "$jailpath" == "/" ]; then - echo Updating main installation... - else - echo Updating $jailpath... - fi - if [ -d "$TEMPLATE_BASE.d" ] || [ -a "$TEMPLATE_BASE.template" ]; then - SILENT=yes templatepkg -u $template $jailpath - template_merge $jailpath - fi - else - if [ -z "$SILENT" ]; then - echo $BASENAME: template $template not found - fi - return 1 - fi - -} - -TEMPLATE_UPDATE_LIST="" - -if [ "$1" == "--help" ]; then - usage -elif [ "$1" == "--all" ]; then - template_svn_commit $BASE_CONF/templates -elif echo $1 | grep -q -e "^--"; then - usage -elif [ ! -z "$1" ]; then - do_commit $1 $2 - if [ "$?" == "0" ]; then - template_svn_commit `dirname $TEMPLATE_BASE` - fi -else - SILENT="yes" - if [ -e $JAIL_LIST ]; then - for jailpath in `cat $JAIL_LIST`; do - do_commit $jailpath - done - fi - # main jail - do_commit / main - template_svn_commit $BASE_CONF/templates -fi - diff --git a/tags/0.5/src/jail-update b/tags/0.5/src/jail-update deleted file mode 100755 index c5a008f..0000000 --- a/tags/0.5/src/jail-update +++ /dev/null @@ -1,61 +0,0 @@ -#!/bin/bash -# -# jail-update: update config files from a jail to a template -# feedback: rhatto@riseup.net | gpl -# -# Jail-update is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Jail-update is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -COMMON="/usr/libexec/simplepkg/common.sh" -BASENAME="`basename $0`" - -if [ -f "$COMMON" ]; then - source $COMMON - eval_config $BASENAME -else - echo "error: file $COMMON found, check your $BASENAME installation" - exit 1 -fi - -function usage { - - echo "$BASENAME: update a jail configuration from a template" - echo "usage: $BASENAME <jail-path> [template]" - -} - -if [ -z "$1" ] || [ "$1" == "--help" ] || echo $1 | grep -q -e "^--"; then - usage - exit 1 -fi - -if [ -z "$2" ]; then - template_name="`basename $1`" -else - template_name="$2" -fi - -search_template $template_name --update - -if [ "$?" != "0" ]; then - echo $BASENAME: template $template_name not found - exit 1 -elif [ ! -d "$1" ]; then - echo $BASENAME: jail $1 not found - exit 1 -fi - -update_template_files -copy_template_files $1 -set_jail_perms $1 - diff --git a/tags/0.5/src/lspkg b/tags/0.5/src/lspkg deleted file mode 100755 index 01900f2..0000000 --- a/tags/0.5/src/lspkg +++ /dev/null @@ -1,132 +0,0 @@ -#!/bin/bash -# -# lspkg v0.3: view installed and contents of slackware packages -# -# feedback: rhatto at riseup.net | gpl -# -# Lspkg is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Lspkg is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -COMMON="/usr/libexec/simplepkg/common.sh" - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON not found, check your `basename $0` installation" - exit 1 -fi - -function head_line { - echo "usage: [ROOT=/otherroot] `basename $0` [option expression]" -} - -function usage { - head_line - echo " -options are: - - -v, --view: view installed package contents - -p, --print: print the contents of a package file - -r, --remove: remove matching packages - -s, --search: search a file under installed packages - -d, --description: show matching packages' descriptions -" -} - -# ----------------------------------------------------- -# lspkg -# ----------------------------------------------------- - -if [ $# -eq 2 ]; then - LIST_PKGS="`ls /$ROOT/var/log/packages/$2-[0-9]* 2> /dev/null`" - if [ -z "$LIST_PKGS" ]; then - LIST_PKGS="`ls /$ROOT/var/log/packages/$2* 2> /dev/null`" - fi -elif [ $# -eq 1 ]; then - LIST_PKGS="`ls /$ROOT/var/log/packages/$1-[0-9]* 2> /dev/null`" - if [ -z "$LIST_PKGS" ]; then - LIST_PKGS="`ls /$ROOT/var/log/packages/$1* 2> /dev/null`" - fi -else - LIST_PKGS="`ls /$ROOT/var/log/packages/ 2> /dev/null`" -fi - -LIST_PKGS="`slash $LIST_PKGS`" - -case $1 in - "-h"|"--help") - usage - ;; - "-v"|"--view") - if [ ! -z "$2" ]; then - if [ ! -z "$LIST_PKGS" ]; then - for file in $LIST_PKGS; do - less $file - done - else - if [ ! -z "$ROOT" ]; then - echo "$2: package not found on /$ROOT/var/log/packages" - else - echo "$2: package not found on /var/log/packages" - fi - fi - else - head_line - exit 1 - fi - ;; - "-p"|"--print") - if [ -f "$2" ]; then - tar ztvf $2 - else - echo $2: file not found - fi - ;; - "-r"|"--remove") - if [ ! -z "$2" ]; then - if [ ! -z "$LIST_PKGS" ]; then - removepkg /$ROOT/var/log/packages/$1-[0-9]* - fi - fi - ;; - "-s"|"--search") - if [ ! -z "$2" ]; then - eval "grep -l '\/$2$' /$ROOT/var/log/packages/*" - fi - ;; - "-d"|"--description") - if [ ! -z "$2" ]; then - for file in $LIST_PKGS; do - pack="`package_name $file`" - echo -e " Package description for $file:\n" - sed -n "/^$pack:/ { s/$pack://; p; }" $file - done - else - head_line - exit 1 - fi - ;; - *) - if [ ! -z "$LIST_PKGS" ]; then - for pack in $LIST_PKGS; do - echo $pack - done - else - if [ ! -z "$ROOT" ]; then - echo "$1: package not found on /$ROOT/var/log/packages" - else - echo "$1: package not found on /var/log/packages" - fi - fi - ;; -esac diff --git a/tags/0.5/src/mkbuild b/tags/0.5/src/mkbuild deleted file mode 100755 index fce2533..0000000 --- a/tags/0.5/src/mkbuild +++ /dev/null @@ -1,680 +0,0 @@ -#!/bin/bash -# -# Script para gerar SlackBuild -# Por Rudson R. Alves -# -# Este script auxilia a criação de SlackBuilds, com o modelo -# do Luiz do Sarava Linux -# -# SlackBuilds são scripts utilizados no Slackware para gerar -# pacotes tgz. -# -# Version 0.9.8 -PROG_VERSION=0.9.8 - -#-------------------------------------------------------------------- -# Functions -#-------------------------------------------------------------------- -function mkbuild_use() - -{ - # mkbuild help function - echo " -NAME - mkbuild - create SlackBuild script from .mkbuild input file - -SYNOPSIS - mkbuild [OPIONS] [mkbuild_file] - -DESCRIPTION - <mkbuild_file> input file with build rules and variables - - Input options: - -a, --author <author_name> - author name - -ai, --author_initials <initials> - author signature - -cs, --const_string <string> - construction string to source name - -u, --url <url_address> - url address to source - -pn, --pkg_name <package_name> - package name - -sn, --src_name <source_name> - source name - -pv, --pkg_version <version> - package version - -md, --model <SlackBuild_model> - SlackBuild model file - -j, --jobs <jobs_number> - Number of jobs to run simultaneously - --prefix <install_dir> - Prefix install directory - - Program options: - -h, --help - this help mesage - -c, --commit - commit SlackBuilds in local svn tree - -v, --version - program version - -EXAMPLES - mkbuild --prefix /usr/local pyrex.mkbuild - build pyrex.SlackBuild with prefix /usr/local and pyrex.mkbuild - variables and options definitions. - -AUTHOR - Written by Rduson R. Alves - -AVAILABILITY - by svn: svn checkout svn://slack.sarava.org/simplepkg - this mkbuild is found in branches/0.6/ - -REPORTING BUGS - Report bugs to <alves_list@yahoo.com.br> - -COPYRIGHT - Copyright © 2006 Free Software Foundation, Inc. - This is free software. You may redistribute copies of it under the - terms of the GNU General Public License - <http://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY, to the - extent permitted by law. -" | less -} - -function error_codes { - - # Start error codes function - NULL_STRING=499 - ERROR_FILE_NOT_FOUND=500 - ERROR_CONSTRUCTION=501 - ERROR_PROGRAM=502 - ERROR_INPUT_PAR=503 -} - -function mkbuild_error { - - # Error function - case $1 in - "$ERROR_FILE_NOT_FOUND") - echo "File $2 not found!" - ;; - "$ERROR_CONSTRUCTION") - echo "Construction error in $2 variable." - ;; - "$ERROR_PROGRAM") - echo "Program logical error." - ;; - "$ERROR_INPUT_PAR") - echo "Input parameter $2 error. See \"mkbuild --help\"." - ;; - *) - echo "Unknow error!" - ;; - esac - exit $1 -} - -function is_number { - - # Check if argument is a number - local -i int - if [ $# -eq 0 ]; then - return 1 - else - (let int=$1) 2>/dev/null - return $? # Exit status of the let thread - fi -} - -function set_parameters { - - # Get and set mkbuild variables with parameters input - # Use: set_parameters $@ - # where $@ are the parameters input - # - ALL_PAR=( $@ ) # carrega todos os parâmetros - N_PAR=$# # carrega o número de parâmetros - - i=0 # inicia o contador - # Checa todos os parâmetros passados - while [ $i -lt $N_PAR ]; do - # get parameter[i] - PAR=${ALL_PAR[$i]} - case $PAR in - '-c'|'--commit') - # Commit directory - COMMIT=1 - ;; - '-d'|'--debug') - # Debug mode - set -x - ;; - '-h'|'--help' ) - # Show help mesage - mkbuild_use && exit 0 - ;; - '-v'|'--version') - # Show program version - echo -e "\nmkbuild version $PROG_VERSION\n" && exit 0 - ;; - '-a'|'--author') - # Enter with author name - let i++ - AUTHOR=${ALL_PAR[$i]} - [ ${AUTHOR:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR AUTHOR - ;; - '-ai'|'--author_initials') - # Enter with author name - let i++ - AUTHOR_INITIALS=${ALL_PAR[$i]} - [ ${AUTHOR_INITIALS:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR AUTHOR_INITIALS - ;; - '-cs'|'--const_string') - # Enter with construction source name string - let i++ - CONST_STRING=${ALL_PAR[$i]} - [ ${CONST_STRING:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR CONST_STRING - ;; - '-md'|'--model') - # Enter with SlackBuild model - let i++ - MODEL=${ALL_PAR[$i]} - [ ${MODEL:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR MODEL - ;; - '-j'|'--jobs') - # Enter with SlackBuild model - let i++ - NUMJOBS=${ALL_PAR[$i]} - [ ${NUMJOBS:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR NUMJOBS - [ ! is_number $NUMJOBS ] && mkbuild_error $ERROR_INPUT_PAR NUMJOBS - NUMJOBS="-j$NUMJOBS" - ;; - '--prefix') - # Enter with SlackBuild model - let i++ - PREFIX=${ALL_PAR[$i]} - [ ${PREFIX:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR PREFIX - ;; - '-pn'|'--pkg_name') - # Enter with package name - let i++ - PKG_NAME=${ALL_PAR[$i]} - [ ${PKG_NAME:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR PKG_NAME - ;; - '-pv'|'pkg_version') - # Enter with package version - let i++ - VERSION=${ALL_PAR[$i]} - [ ${VERSION:0:1} = "-" ] && mkbuild_error $ERROR_INPUT_PAR VERSION - ;; - '-sn'|'--src_name') - # Enter with source name - let i++ - SRC_NAME=${ALL_PAR[$i]} - [ ${SRC_NAME:0:1} = '-' ] && mkbuild_error $ERROR_INPUT_PAR SRC_NAME - ;; - '-u'|'--url') - # Enter with url address - let i++ - URL=${ALL_PAR[$i]} - [ ${URL:0:1} = '-' ] && mkbuild_error $ERROR_INPUT_PAR URL - ;; - *) - # mkbuild input file - MK_INPUT_FILE="${PAR//.mkbuild}.mkbuild" - [ ! -e $MK_INPUT_FILE ] && mkbuild_error $ERROR_FILE_NOT_FOUND $MK_INPUT_FILE - ;; - esac - let i++ - done -} - -function get_variable { - - # Get variable value from mkbuild file (MK_INPUT_FILE) - [ $# -ne 1 ] && mkbuild_error $ERROR_PROGRAM - [ -z $MK_INPUT_FILE ] && echo "Warning: no [mkbuild_file]." && return 0 - - grep "^\[\[${1}\]\]" $MK_INPUT_FILE | cut -f2 -d\" -} - -function edit_file { - - # Edit file $3, by change string [[$1]] to $2 - local STR_OLD - local STR_NEW - - [ $# -ne 3 ] && mkbuild_error $ERROR_PROGRAM - STR_OLD=$( echo $1 | sed 's/\//\\\//g' ) - STR_NEW=$( echo $2 | sed 's/\//\\\//g' ) - eval "sed 's/\[\[$STR_OLD\]\]/$STR_NEW/' $3 > $AUX_TMP" - mv $AUX_TMP $3 -} - -function edit_file_full { - - # Edit file $3, by change string $1 to $2 - local STR_OLD - local STR_NEW - - [ $# -ne 3 ] && mkbuild_error $ERROR_PROGRAM - STR_OLD=$( echo $1 | sed 's/\//\\\//g' ) - STR_NEW=$( echo $2 | sed 's/\//\\\//g' ) - eval "sed 's/$STR_OLD/$STR_NEW/' $3 > $AUX_TMP" - mv $AUX_TMP $3 -} - -function start_build { - - # Build initial sections - [ $# -ne 1 ] && mkbuild_error $ERROR_PROGRAM - - edit_file "SLACKBUILD AUTHOR" "$AUTHOR" $1 - edit_file "SLACKBUILD AUTHOR INITIALS" $AUTHOR_INITIALS $1 - edit_file "SOURCE NAME" "$SRC_NAME" $1 - edit_file "PROGRAM NAME" "$PKG_NAME" $1 - edit_file "PACKAGE NAME" "$PKG_NAME" $1 - edit_file "DECOMPRESSOR" "$DECOMPRESSOR" $1 - edit_file "DECOMPRESSOR TEST FLAG" "$DECOMPRESSOR_TEST_FLAG" $1 - edit_file "PROGRAM URL" "$URL" $1 - edit_file "ARCH" "$ARCH" $1 - [ `is_number $NUMJOBS` ] && NUMJOBS="-j${NUMJOBS}" - edit_file "NUMBER OF JOBS" "$NUMJOBS" $1 - edit_file "VERSION" $VERSION $1 - edit_file "SOURCE NAME CONSTRUCTION STRING" "$CONST_STRING" $1 - edit_file "EXTENSION" "$EXTENSION" $1 - edit_file "DOWNLOAD FOLDER URL" "$URL_BASE" $1 - edit_file "OTHER CONFIGURE ARGS" "$OPTIONS" $1 - edit_file "DOCUMENTATION FILES" "$DOCFILES" $1 - edit_file "PREFIX" "$PREFIX" $1 - - edit_file_full "\$EXTENSION" "$EXTENSION" $1 -} - -function clear_files { - - # Remove temporary files - rm $AUX_TMP 2>/dev/null - rm $SLACKBUILD_TEMP 2>/dev/null -} - -function set_status { - - # Set status section - # $1 - Section - # $2 - Status - # $3 - file - [ $# -ne 3 ] && mkbuild_error $ERROR_PROGRAM - if [ "`get_status $1 $3`" != "all" ]; then - eval "sed 's/^<$1>.*$/<$1> $2/' $3" > $AUX_TMP - mv $AUX_TMP $3 - else - echo "Warning: Section $1 have status all. Can't change!" - fi -} - -function get_status { - - # Get status from section - # $1 - Section - # $2 - file - [ $# -ne 2 ] && mkbuild_error $ERROR_PROGRAM - eval "sed '/^<$1>.*$/! d' $2" -} - -function activate_sections { - - # Enable and desable sections - ACTIONS_LIST=`sed '/^#>>/,/<</ ! d; /^#/ d ' $MK_INPUT_FILE | tr -d ' '` - for i in $ACTIONS_LIST; do - STATUS=`echo $i | cut -f1 -d:` - SECTION=`echo $i | cut -f2 -d:` - set_status $SECTION $STATUS $SLACKBUILD_TEMP - done -} - -function build_slackbuild { - - # Remove off sections - [ -e $SLACKBUILD ] && mv $SLACKBUILD $SLACKBUILD.old - sed '/^<[a-z].*> off/, /^<\/[a-z].*>$/ d' $SLACKBUILD_TEMP > $AUX_TMP - # Remove sections names - sed '/^<.*$/ d' $AUX_TMP > $SLACKBUILD_TEMP - # Remove clear lines - sed ':i ; $! N; s/\n/<NL>/ ; t i' $SLACKBUILD_TEMP | sed 's/<NL><NL><NL>/<NL><NL>/g' | sed 's/<NL><NL><NL>/<NL><NL>/g' | sed 's/<NL>/\n/g' > $AUX_TMP - sed '1,/^#\!/ {/^#\!/ b; d }' $AUX_TMP > $SLACKBUILD -} - -function section_edit { - - # Edit sections by change you values - [ -z $MK_INPUT_FILE ] && return 0 - - SECTION_LIST=`grep '^#>[a-z]' $MK_INPUT_FILE | cut -c3-` - - # Check for sections change - [ -z "$SECTION_LIST" ] && return 0 - - # Change sections - for i in $SECTION_LIST; do - if [ "$i" = "slackdesc" ]; then - # Special slackdesc section - slackdesc_edit > $AUX_TMP - mv $AUX_TMP $SLACKBUILD_TEMP - else - # Others sections - section_change $i - fi - done -} - -function slackdesc_edit { - - # Edit slackdesc section - sed -n '1,/|-----/ { /<slackdesc>/ b; /|-----/ b; p; }' $SLACKBUILD_TEMP - echo -n $PKG_NAME | tr [a-z+\-] " " - echo -n "|-----handy-ruler" - let N=18+${#PKG_NAME} - for i in `seq $N $SLACKDESC_LEN`; do - echo -n "-" - done - echo -en "|\n" - - sed -n '/#>slackdesc/,/#<slackdesc/ { /^#/ b; p }' $MK_INPUT_FILE - sed '1, /\[\[SLACK-DESC\]\]/ d' $SLACKBUILD_TEMP -} - -function section_change { - - # Change section lines - [ $# -ne 1 ] && mkbuild_error $ERROR_PROGRAM - - # Copy first half - eval "sed '1,/^<$1>/! d' $SLACKBUILD_TEMP > $AUX_TMP" - # Paste new section - eval "sed -n '/#>$1/,/#<$1/ { /^#>/ b; /^#</ b; p }' $MK_INPUT_FILE >> $AUX_TMP" - # Copy second halt - eval "sed '/^<\/$1>/,$ ! d' $SLACKBUILD_TEMP >> $AUX_TMP" - - mv $AUX_TMP $SLACKBUILD_TEMP -} - -function make_slack_required { - - # Build slack-required file - [ -e slack-required ] && mv slack-required slack-required.old - [ -z "$SLACK_REQUIRED" ] && return 0 - - echo -e "# Dependency list to $SRC_NAME\n#\n# dependency [condition] [version]]" > slack-required - - echo $SLACK_REQUIRED | sed 's/:/\n/g' | while read i; do - REQ=`echo $i | awk '{ print $1 }'` - CON=`echo $i | awk '{ print $2 }'` - VER=`echo $i | awk '{ print $3 }'` - echo -e "$REQ\t\t$CON\t\t$VER" >> slack-required - done -} - -function change_others_fields { - - # Change others fields started by '[[' in .mkbuild file - grep '\[\[[A-Za-z]' $MK_INPUT_FILE | while read i; do - CHANGE="`echo $i | sed 's/\[\[\(.*\)\]\]=\"\(.*\)\"/\1/'`" - VALUE="`echo $i | sed 's/\[\[\(.*\)\]\]=\"\(.*\)\"/\2/'`" - edit_file "$CHANGE" "$VALUE" $SLACKBUILD - done -} - -function commit_slackbuild { - - # Commit SlackBuild in local Slack.Sarava tree - # Get SlackBuild path - SLACKBUILD_PATH=`validate_parameter "$SLACKBUILD_PATH" "SLACKBUILD PATH" ""` - if [ $? != 0 ]; then - # Mount SlackBuild path - AUX=`lynx -dump http://gentoo-portage.com/Search?search=$PKG_NAME | sed -n '/Results:/,+1 { /Results:/ b ; p }' | head --lines=1 | tr -d " "` - [ ! -z $AUX ] && SLACKBUILD_PATH="`dirname $AUX | tr - /`/`basename $AUX`" || SLACKBUILD_PATH="others/unclassified/$PKG_NAME" - fi - - # check SlackBuilds directory - [ ! -e $SLACKBUILDS_DIR ] && createpkg --sync - # change to SlackBuilds directory - cd $SLACKBUILDS_DIR/ - - # Add SlackBuild scripts - # check path - [ ! -e $SLACKBUILD_PATH ] && svn_mkdir $SLACKBUILD_PATH - # add SlackBuild - svn_add $SLACKBUILD $SLACKBUILD_PATH - - # check slack-required - # add slack-required - [ -e $WORK/slack-required ] && svn_add slack-required $SLACKBUILD_PATH - - cd $WORK -} - -function svn_mkdir { - - # svn make directory - [ $# -ne 1 ] && mkbuild_error 0 - - echo "svn_mkdir $1 $2" - DIR_LIST=`echo $1 | tr '/' ' '` - - DIR="" - for i in $DIR_LIST; do - DIR=$DIR/$i - [ ! -e ${DIR:1} ] && svn mkdir ${DIR:1} - done -} - -function svn_add { - - # svn add file - [ $# -ne 2 ] && mkbuild_error 0 - - # copy file - if [ -e $2/$1 ]; then - echo "$2/$1 exist. Overwriter it." - cp $WORK/$1 $2/ - else - cp $WORK/$1 $2/ - # add file to svn tree - svn add $2/$1 - fi -} - -function is_number { - - # Check if $1 is a number - local -i int - if [ $# -eq 0 ]; then - return 1 - else - (let int=$1) 2>/dev/null - return $? # Exit status of the let thread - fi -} - -function validate_parameter { - - # Validate parameter in .mkbuild file - if [ ! -z "$1" ]; then - echo "$1" - else - local STRING="`get_variable "$2"`" - if [ -z "$STRING" ]; then - [ ! -z "$3" ] && echo "$3" || return 1 - else - echo "$STRING" - fi - fi -} - -function decompress_find { - - # Find decompressor program and test flag - case $EXTENSION in - 'gz'|'GZ') - DECOMPRESSOR="gunzip" - DECOMPRESSOR_TEST_FLAG="-t" - ;; - 'bz2'|'BZ2') - DECOMPRESSOR="bunzip2" - DECOMPRESSOR_TEST_FLAG="-t" - ;; - 'zip'|'ZIP') - DECOMPRESSOR="unzip" - DECOMPRESSOR_TEST_FLAG="-t" - ;; - *) - mkbuild_error $ERROR_CONSTRUCTION "DECOMPRESSOR" - ;; - esac -} - -#============================= -# Main Program -#============================= -#----------------------------- -# Common functions -COMMON="/usr/libexec/simplepkg/common.sh" -SIMPLEPKG_CONF="/etc/simplepkg/simplepkg.conf" -WORK=`pwd` -LANG=en_US -COMMIT=0 - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your $BASENAME installation" - mk_exit 0 -fi - -# createpkg and mkbuild section -SLACKBUILDS_DIR="`eval_parameter SLACKBUILDS_DIR /var/slackbuilds`" -#----------------------------- - -# Start variables -DOWNLOAD_SOURCE=0 # desable download source -# Auxiliar file -AUX_TMP=/tmp/mkbuild_tmp.$RANDOM -# Derectory to SlackBuild models -MODEL_DIR=${MODEL_DIR:="/etc/simplepkg/defaults/mkbuild"} -# SlackDesk line length -SLACKDESC_LEN=78 - -# Load error codes -error_codes - -[ $# -eq 0 ] && mkbuild_use && exit 1 - -# Configure input parameters -set_parameters $@ - -# Get values -# Author name -AUTHOR=${AUTHOR:="`get_variable "SLACKBUILD AUTHOR"`"} -[ -z "$AUTHOR" ] && mkbuild_error $ERROR_CONSTRUCTION "SLACKBUILD AUTHOR" - -# Author initials -STR_MOUNT=`echo $AUTHOR | sed 's/ /\n/g' | sed 's/^\([A-Z]\).*/\1/' | sed ':i; $!N; s/\n//; ti' | tr [A-Z] [a-z]` -AUTHOR_INITIALS="`validate_parameter "$AUTHOR_INITIALS" "SLACKBUILD AUTHOR INITIALS" "$STR_MOUNT"`" || mkbuild_error $ERROR_CONSTRUCTION "SLACKBUILD AUTHOR INITIALS" - -# URL program -URL=`validate_parameter "$URL" "DOWNLOAD FOLDER URL" ""` || mkbuild_error $ERROR_CONSTRUCTION "URL" - -STR_MOUNT="`echo $URL | rev | cut -c1-3 | rev | tr -d '.'`" -if [ $STR_MOUNT = "gz" -o $STR_MOUNT = "tgz" -o $STR_MOUNT = "bz2" -o $STR_MOUNT = "zip" ]; then - SOURCE_NAME=`basename $URL` - URL_BASE=`dirname $URL` -else - URL_BASE=$URL -fi - -# Extension -EXTENSION=`validate_parameter "$EXTENSION" "EXTENSION" "$STR_MOUNT"` || mkbuild_error $ERROR_CONSTRUCTION "EXTENSION" - -# Build archteture -ARCH=`validate_parameter "$ARCH" "ARCH" "i486"` - -# Source name -STR_MOUNT=`echo $SOURCE_NAME | sed -r 's/(.*)-(.*)\.(.*\..*)$/\1/'` -SRC_NAME=`validate_parameter "$SRC_NAME" "SOURCE NAME" "$STR_MOUNT"` || mkbuild_error $ERROR_CONSTRUCTION "SOURCE NAME" - -# Package name -STR_MOUNT=`echo $SRC_NAME | tr [A-Z_] [a-z\-]` -PKG_NAME=`validate_parameter "$PKG_NAME" "PACKAGE NAME" "$STR_MOUNT"` - -# Version -STR_MOUNT=`echo $SOURCE_NAME | sed -r 's/(.*)-(.*)\.(.*\..*)$/\2/'` -VERSION=`validate_parameter "$VERSION" "VERSION" $STR_MOUNT` || mkbuild_error $ERROR_CONSTRUCTION "VERSION" - -# Construction source name string -CONST_STRING="`validate_parameter "$CONST_STRING" "SOURCE NAME CONSTRUCTION STRING" "\\\$SRC_NAME-\\\$VERSION.tar.$EXTENSION"`" - -# Build Source Name -[ -z $SOURCE_NAME ] && SOURCE_NAME=`eval "echo $CONST_STRING"` - -# Decompressor program and test flag -DECOMPRESSOR=`validate_parameter "$DECOMPRESSOR" "DECOMPRESSOR" ""` || decompress_find - -DECOMPRESSOR_TEST_FLAG=`validate_parameter "$DECOMPRESSOR_TEST_FLAG" "DECOMPRESSOR TEST FLAG" ""` || mkbuild_error $ERROR_CONSTRUCTION "DECOMPRESSOR TEST FLAG" - -# Documentations list -DOCFILES=`validate_parameter "$DOCFILES" "DOCUMENTATION FILES" "NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING readme.*"` - -# ./configure option -OPTIONS=`validate_parameter "$OPTIONS" "OTHER CONFIGURE ARGS" ""` - -# PREFIX -PREFIX=`validate_parameter "$PREFIX" "PREFIX" "/usr"` - -# Number of jobs -NUMJOBS=`validate_parameter "$NUMJOBS" "NUMBER OF JOBS" ""` - -# Make slack-required file. -SLACK_REQUIRED=`validate_parameter "$SLACK_REQUIRED" "SLACK REQUIRED" ""` - -# SlackBuild model -MODEL=`validate_parameter "$MODEL" "SLACKBUILD MODEL" "generic.mkSlackBuild"` - -# -# Start build SlackBuild -SLACKBUILD=${PKG_NAME}.SlackBuild -SLACKBUILD_TEMP=$SLACKBUILD.tmp -cp $MODEL_DIR/$MODEL $SLACKBUILD_TEMP - -# Change Strings from model -start_build $SLACKBUILD_TEMP - -# On/Off sections -activate_sections - -# Change sections -section_edit - -# Remove off sections -build_slackbuild - -# Make slack-required file -make_slack_required - -if [ -e slack-required ]; then - DEPENDENCY_LIST="`cat slack-required | awk '{print $1}' | grep '^[a-z]' | tr '\012' ' '`" - edit_file "REQUIRES" "$DEPENDENCY_LIST" $SLACKBUILD -else - edit_file "REQUIRES" "Null" $SLACKBUILD -fi - -# Others changes -change_others_fields - -# Clear temporary files -clear_files - -[ $COMMIT -eq 1 ] && commit_slackbuild - diff --git a/tags/0.5/src/mkjail b/tags/0.5/src/mkjail deleted file mode 100755 index f6c935c..0000000 --- a/tags/0.5/src/mkjail +++ /dev/null @@ -1,113 +0,0 @@ -#!/bin/bash -# -# mkjail v0.4: chroot jail maker -# -# feedback: rhatto at riseup.net | GPL -# -# Mkjail is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Mkjail is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -COMMON="/usr/libexec/simplepkg/common.sh" -BASENAME="`basename $0`" - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your `basename $0` installation" - exit 1 -fi - -function usage { - - echo "usage: [ARCH=arch] [VERSION=version] [ROOT=/otherroot] $BASENAME <jail-name> [template]" - exit 1 - -} - -function exec_post_install_scripts { - - # exec post installation scripts - # usage: exec_post_install_script <jail-root> <jail-name> - - local list - - if [ -z "$2" ]; then - return 1 - fi - - echo "$BASENAME: executing template scripts..." - if [ -d "$TEMPLATE_BASE.s" ]; then - for file in $TEMPLATE_BASE.s/*; do - if [ -x "$file" ]; then - $file $1 $2 - fi - done - fi - -} - -function jailist_update { - - # update the jail list file - # usage: jailist_update <jail-path> - - if [ "$ADD_TO_JAIL_LIST" == "1" ]; then - touch $JAIL_LIST - if ! grep -q -e "^$1\$" $JAIL_LIST; then - echo $1 >> $JAIL_LIST - fi - fi - -} - -if [ -z "$1" ]; then - usage -else - server="$1" - eval_config $BASENAME -u -fi - -if [ ! -z "$2" ]; then - search_template $2 - result="$?" -else - search_default_template - result="$?" -fi - -if [ "$result" != "0" ]; then - exit 1 -fi - -TEMPLATE="$TEMPLATE_BASE.template" - -if [ ! -d "$JAIL_ROOT/$server" ]; then - mkdir -p $JAIL_ROOT/$server -else - if [ ! -z "`ls $JAIL_ROOT/$server | grep -v 'lost+found'`" ]; then - echo $BASENAME: error: folder $JAIL_ROOT/$server already exists and seens to be not empty - echo $BASENAME: probably the jail $1 already exists - exit 1 - fi -fi - -echo "$BASENAME: instaling packages into $JAIL_ROOT/$server using $TEMPLATE..." - -install_packages -copy_template_files $JAIL_ROOT/$server -set_jail_perms $JAIL_ROOT/$server -jailist_update $JAIL_ROOT/$server -exec_post_install_scripts $JAIL_ROOT $server - -echo $BASENAME: done creating $server jail - diff --git a/tags/0.5/src/rebuildpkg b/tags/0.5/src/rebuildpkg deleted file mode 100755 index 6d3d10c..0000000 --- a/tags/0.5/src/rebuildpkg +++ /dev/null @@ -1,87 +0,0 @@ -#!/bin/bash -# -# rebuildpkg: build a package from a /var/log/packages entry -# -# feedback: rhatto at riseup.net | gpl -# -# Rebuildpkg is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Rebuildpkg is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -COMMON="/usr/libexec/simplepkg/common.sh" -TMP="/tmp" - -function usage { - echo "usage: ROOT=/otherroot `basename $0` <package-name>" -} - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your `basename $0` installation" - exit 1 -fi - -if [ -z "$1" ]; then - usage - exit 1 -fi - -pack="$1" - -for file in `ls $ROOT/var/log/packages/$pack*`; do - if [[ "`package_name $file.tgz`" == "$pack" ]]; then - package_file="$file" - break - fi -done - -if [ -z "$package_file" ]; then - echo error: package $pack does not exist - exit 1 -fi - -if [ -d "$TMP/package-$pack" ]; then - rm -rf $TMP/package-$pack -fi - -mkdir $TMP/package-$pack -cd $TMP/package-$pack - -for file in `grep -v -e "^PACKAGE NAME:" -e "^UNCOMPRESSED PACKAGE SIZE:" \ - -e "^COMPRESSED PACKAGE SIZE:" -e "^PACKAGE LOCATION:" \ - -e "^PACKAGE DESCRIPTION:" -e "^$pack:" -e "^FILE LIST:" $package_file`; do - - if [ "$file" != "install" ] && [ "$file" != "install/slack-desc" ] && [ "$file" != "install/doinst,sh" ]; then - if [ -d /$file ]; then - mkdir -p $TMP/package-$pack/$file - elif [ -f /$file ]; then - cp /$file $TMP/package-$pack/$file - else - echo file /$file was not found, please add it manually, exploding and making the package again - fi - fi - -done - -mkdir $TMP/package-$pack/install -grep "^$pack:" $package_file > $TMP/package-$pack/install/slack-desc - -package_name="`grep "PACKAGE NAME:" $package_file | awk '{ print $3 }'`" - -if [ -f "$ROOT/var/log/scripts/$package_name" ]; then - cp $ROOT/var/log/scripts/$package_name $TMP/package-$pack/install/doinst.sh -fi - -makepkg $package_name.tgz -mv $package_name.tgz $TMP/ -echo "done: package rebuilt and stored at $TMP/$package_name.tgz" diff --git a/tags/0.5/src/repos b/tags/0.5/src/repos deleted file mode 100755 index e4a17ee..0000000 --- a/tags/0.5/src/repos +++ /dev/null @@ -1,87 +0,0 @@ -#!/bin/bash -# -# repos script got from -# http://software.jaos.org/BUILD/slapt-get/FAQ.html#slgFAQ17 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# any later version. -# -# Changes by rhatto at riseup.net to fit http://slack.sarava.org needs -# - -BASENAME="`basename $0`" -REPOS_CONF="/etc/simplepkg/repos.conf" -COMMON="/usr/libexec/simplepkg/common.sh" - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your $BASENAME installation" - exit 1 -fi - -function usage { - - echo "`basename $0` [pkg [file]|all|new|svnmeta|PACKAGESTXT|FILELIST|MD5]" - -} - -function do_all { - - for pkg in `find . -type f -name '*.tgz' -print`; do - gen_meta $pkg - done - $0 PACKAGESTXT - $0 FILELIST - $0 MD5 - -} - -# --------------------------------- -# main -# --------------------------------- - -case "$1" in - pkg) - if [ -n "$2" ]; then - gen_meta $2 - else - usage - fi - ;; - all) - do_all - ;; - new) - for pkg in `find . -type f -name '*.tgz' -print`; do - if [ ! -f ${pkg%tgz}meta ]; then - gen_meta $pkg - fi - done - ;; - svnmeta) - svn_add_meta - ;; - PACKAGESTXT) - gen_packages_txt . - gen_packages_txt patches - ;; - FILELIST) - gen_filelist - gen_patches_filelist patches - ;; - MD5) - gen_md5_checksums . - gen_md5_checksums patches - ;; - usage) - usage - ;; - *) - do_all - svn_add_meta - ;; -esac - diff --git a/tags/0.5/src/simplaret b/tags/0.5/src/simplaret deleted file mode 100755 index c8cc2f7..0000000 --- a/tags/0.5/src/simplaret +++ /dev/null @@ -1,1131 +0,0 @@ -#!/bin/bash -# -# simplaret v0.2: simplepkg's retrieval tool -# feedback: rhatto at riseup.net | gpl -# -# Simplaret is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Simplaret is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -BASENAME="`basename $0`" -REPOS_CONF="/etc/simplepkg/repos.conf" -COMMON="/usr/libexec/simplepkg/common.sh" - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your $BASENAME installation" - exit 1 -fi - -function simplaret_usage { - - echo "usage: [ARCH=otherarch] [VERSION=otherversion] $BASENAME <OPTION> package-name" - echo -e "\t OPTIONS: --install, --update, --upgrade, --search, --get, --get-patches, --purge, --remove" - exit 1 - -} - -function simplaret_get_index { - - for file in `simplaret_metafiles`; do - simplaret_download $1 $file $2 --no-verbose - done - -} - -function simplaret_backup_index { - - for file in `simplaret_metafiles`; do - if [ -f "$1/$file" ]; then - mv $1/$file $1/$file.old - fi - done - -} - -function simplaret_check_index { - - for file in `simplaret_metafiles`; do - if [ ! -f "$1/$file" ] && [ -f "$1/$file" ]; then - echo restoring old $file to $1... - mv $1/$file.old $1/$file - else - rm -f $1/$file.old - fi - done - -} - -function simplaret_download { - - # download a file from a repo to a folder - # usage: simplaret <repository_url> <package> <destination-folder> [--no-verbose] - - local protocol file - local wget_timeout wget_passive_ftp wget_verbose - local curl_timeout curl_passive_ftp curl_verbose - local ncftpget_timeout ncftpget_passive_ftp - - protocol="`echo $1 | cut -d : -f 1`" - file="`basename $2`" - - if [ ! -d "$3" ]; then - mkdir -p $3 - fi - - if [ ! -z "$CONNECT_TIMEOUT" ] || [ "$CONNECT_TIMEOUT" != "0" ]; then - wget_timeout="--timeout $CONNECT_TIMEOUT" - ncftpget_timeout="-t $CONNECT_TIMEOUT" - curl_timeout="--connect-timeout $CONNECT_TIMEOUT" - fi - - if [ "$4" == "--no-verbose" ]; then - wget_verbose="--no-verbose" - curl_verbose="-#" - echo "" - fi - - if [ "$protocol" == "http" ]; then - - echo Getting $1/$2: - if [ "$HTTP_TOOL" == "wget" ]; then - wget $wget_timeout $wget_verbose $1/$2 -O $3/$file - elif [ "$HTTP_TOOL" == "curl" ]; then - curl $curl_timeout $curl_verbose $1/$2 > $3/$file - else - echo $BASENAME: error: invalid value for config variable HTTP_TOOL: $HTTP_TOOL - echo $BASENAME: please check your config file $CONF - exit 1 - fi - - elif [ "$protocol" == "ftp" ]; then - echo Getting $1/$2: - - if [ "$PASSIVE_FTP" == "1" ]; then - wget_passive_ftp="--passive-ftp" - ncftpget_passive_ftp="-F" - curl_passive_ftp="--ftp-pasv" - fi - - if [ "$FTP_TOOL" == "ncftpget" ]; then - ncftpget -c $ncftpget_timeout $ncftpget_passive_ftp $1/$2 > $3/$file - elif [ "$FTP_TOOL" == "wget" ]; then - wget $wget_timeout $wget_passive_ftp $wget_verbose $1/$2 -O $3/$file - elif [ "$FTP_TOOL" == "curl" ]; then - curl $curl_timeout $curl_passive_ftp $curl_verbose $1/$2 > $3/$file - else - echo $BASENAME: error: invalid value for config variable FTP_TOOL: $FTP_TOOL - echo $BASENAME: please check your config file $CONF - exit 1 - fi - - elif [ "$protocol" == "file" ]; then - - url="`echo $1 | sed -e 's/file:\/\///'`" - if [ -f "$3/$file" ]; then - rm -f $3/$file - fi - echo -n "Copying $url/$2..." - if [ -f "$url/$2" ]; then - cp $url/$2 $3/$file 2> /dev/null - fi - if [ -f "$3/$file" ]; then - echo " done." - else - echo " failed." - fi - - else - - echo $BASENAME error: invalid protocol $protocol - - fi - -} - -function simplaret_repository { - - # return a repository definition from $REPOS_CONF file - # usage: simplaret_repository [root|repos|noarch|patches] - - local definition - - if [ -z "$1" ]; then - definition="ROOT" - else - definition="`echo $1 | tr '[:lower:]' '[:upper:]'`" - fi - - if [ "$definition" == "REPOS" ] || [ "$definition" == "PATCHES" ]; then - definition="$definition-$ARCH-$VERSION" - elif [ "$definition" == "ROOT" ]; then - definition="$definition-$ARCH" - fi - - grep -e "^$definition=" $REPOS_CONF | cut -d = -f 2 | sed -e 's/"//g' -e "s/'//g" | cut -d "#" -f 1 - -} - -function simplaret_repository_name { - - # return a repository name according the value of $repository - - if [ -z "$repository" ]; then - false - elif echo $repository | grep -qe %; then - repository_name="`echo $repository | cut -d % -f 1`" - if [ -z "$repository_name" ]; then - echo $BASENAME: you should set a name for the repository $repository - echo $BASENAME: please correct your $REPOS_CONF - exit 1 - fi - else - echo $BASENAME: you should set a name for the repository $repository - echo $BASENAME: please correct your $REPOS_CONF - exit 1 - fi - -} - -function simplaret_repository_url { - - # return a repository url according the value of $repository - - if echo $repository | grep -qe %; then - repository_url="`echo $repository | cut -d % -f 2`" - if [ -z "$repository_url" ]; then - echo $BASENAME: you should set a url for the repository $repository - echo $BASENAME: please correct your $REPOS_CONF - exit 1 - fi - else - echo $BASENAME: you should set a url for the repository $repository - echo $BASENAME: please correct your $REPOS_CONF - exit 1 - fi - - if [ "$repos_type" == "root" ]; then - simplaret_distro_folder - repository_url="$repository_url/$DISTRO_FOLDER/$EXTRA_FOLDER" - fi - -} - -function simplaret_set_storage_folder { - - storage="$STORAGE/$ARCH/$VERSION/$repos_type" - if [ "$repos_type" == "noarch" ]; then - storage="$STORAGE/noarch" - elif [ "$repos_type" == "patches" ]; then - storage="$PATCHES_DIR/$ARCH/$VERSION" - fi - -} - -function simplaret_update { - - local storage - - echo Updating package information for arch $ARCH and version $VERSION... - - for repos_type in patches root repos noarch; do - - simplaret_set_storage_folder - - for repository in `simplaret_repository $repos_type`; do - - simplaret_repository_name - simplaret_repository_url - - if [ ! -d "$storage/$repository_name" ]; then - mkdir -p $storage/$repository_name - else - simplaret_backup_index $storage/$repository_name - fi - - simplaret_get_index $repository_url $storage/$repository_name - simplaret_check_index $storage/$repository_name - - unset repository_name repository_url repository_protocol - - done - done - -} - -function simplaret_find_package { - - # grep packages in a repository's file list - # usage: simplaret_find_package <package-name|-all> <repository-folder> - - if [ "$1" == "-all" ]; then - grep -e ".tgz$" $2/`simplaret_filelist` | awk '{ print $8 }' - else - grep $1 $2/`simplaret_filelist` | awk '{ print $8 }' | grep -e ".tgz$" - fi - -} - -function simplaret_show_package { - - # print a package result - # usage: simplaret_show_package <package-file-name> [--basename-only|--filename-only|--formatted] - - if [ "$2" == "--basename-only" ]; then - echo `basename $1` - elif [ "$2" == "--filename-only" ]; then - echo $1 - elif [ "$2" == "--formatted" ]; then - echo $1,$repos_type,$repository - else - if echo $1 | grep -q "/patches/"; then - patch="(patch)" - fi - if [ "$repos_type" == "noarch" ]; then - echo $name repository $repository_name: `basename $1` $patch - else - echo $name repository $repository_name, arch: $ARCH, version: $VERSION: `basename $1` $patch - fi - fi - unset patch - -} - -function simplaret_filelist { - - if [ "$repos_type" == "patches" ]; then - echo FILE_LIST - else - echo FILELIST.TXT - fi - -} - -function simplaret_metafiles { - - echo `simplaret_filelist` CHECKSUMS.md5 - -} - -function simplaret_search { - - # search packages - # usage: simplaret_search [package-name] [-display_mode] - # display_mode can be any accepted by simplaret_show_package - - local priority priority_match message pattern mode - - if [ ! -z "$1" ] && ! echo $1 | grep -q -e "^-"; then - pattern="$1" - mode="$2" - else - pattern="-all" - mode="$1" - fi - - for repos_type in patches root repos noarch; do - - name="`echo $repos_type | tr '[:lower:]' '[:upper:]'`" - simplaret_set_storage_folder - - for repository in `simplaret_repository $repos_type`; do - - simplaret_repository_name - - if [ ! -f "$storage/$repository_name/`simplaret_filelist`" ]; then - if [ "$WARNING" != "0" ] || [ ! -z "$SILENT" ]; then - if [ "$repos_type" == "noarch" ]; then - message="" - else - message="on arch $ARCH version $VERSION" - fi - echo warning: no file list for $repository_name repository $repository_name $message - echo please do a simplaret --update - fi - else - - if [ "$repos_type" == "root" ]; then - # root repositories has ROOT_PRIORITY - for priority in $ROOT_PRIORITY; do - for file in `simplaret_find_package $pattern $storage/$repository_name | grep "/$priority/"`; do - simplaret_show_package $file $mode - done - priority_match="$priority_match|/$priority/" - done - # now we should return all matches that are not part of ROOT_PRIORITY - priority_match="`echo $priority_match | sed -e 's/^|//'`" - for file in `simplaret_find_package $pattern $storage/$repository_name | egrep -v $priority_match`; do - simplaret_show_package $file $mode - done - priority_match="" - elif [ "$repos_type" == "repos" ]; then - # repos repositories has REPOS_PRIORITY - for priority in $REPOS_PRIORITY; do - for file in `simplaret_find_package $pattern $storage/$repository_name | grep "/$priority/"`; do - simplaret_show_package $file $mode - done - priority_match="$priority_match|/$priority/" - done - # now we should return all matches that are not part of REPOS_PRIORITY - priority_match="`echo $priority_match | sed -e 's/^|//'`" - for file in `simplaret_find_package $pattern $storage/$repository_name | egrep -v $priority_match`; do - simplaret_show_package $file $mode - done - priority_match="" - else - for file in `simplaret_find_package $pattern $storage/$repository_name`; do - simplaret_show_package $file $mode - done - fi - - fi - - done - done - -} - -function simplaret_purge { - - # purge simplaret package cache - # usage: simplaret_purge [-w N] - - local mtime mtime_message which and_patches - - if [ "$1" == "-w" ] && [ ! -z "$2" ]; then - mtime="-mtime +`echo "$2*7" | bc -l`" - mtime_message="older than $2 weeks" - elif [ "$SIMPLARET_PURGE_WEEKS" != "0" ]; then - mtime="-mtime +`echo "$SIMPLARET_PURGE_WEEKS*7" | bc -l`" - mtime_message="older than $SIMPLARET_PURGE_WEEKS weeks" - else - mtime="" - mtime_mesage="" - fi - - which="root repos noarch" - and_patches="" - - if [ "$SIMPLARET_PURGE_PATCHES" == "1" ]; then - which="patches $which" - and_patches="including patches" - fi - - if [ -z "$SILENT" ]; then - if [ -z "$mtime_message" ]; then - echo "$BASENAME: purging all packages for:" - else - echo "$BASENAME: purging all packages $mtime_message for:" - fi - echo -e "\t- Arch $ARCH and version $VERSION $and_patches" - echo -e "\t- Noarch folder" - fi - - for repos_type in $which; do - - simplaret_set_storage_folder - - for file in `find $storage/ $mtime 2> /dev/null`; do - for extension in tgz asc meta txt slack-required; do - if echo $file | grep -qe ".$extension$"; then - rm $file - fi - done - done - - done - - if [ -z "$SILENT" ]; then - echo $BASENAME: done purging simplaret cache - echo $BASENAME: please run $BASENAME --update to retrieve new package listings on this arch and version - fi - -} - -function simplaret_search_and_delete { - - # search and delete packages - # usage: simplaret_search_and_delete <package> <folder> [--silent] - - local file candidate place basename name version build - local name_version name_build - - name="`package_name $1`" - - if [ "$name" != "$1" ]; then - # searching by full package filename - name_version="`package_version $1`" - name_build="`package_build $1`" - - # search wheter the package filename is in the repositories - if [ "`simplaret_search $1 | grep $1 | wc -l`" == "0" ]; then - echo "Error: package not found: $1" - return 1 - fi - - for file in `find $2/ -name $name*tgz 2> /dev/null`; do - candidate="`basename $file`" - version="`package_version $candidate`" - build="`package_build $candidate`" - if [ "`package_name $candidate`" == "$name" ]; then - - if [ "$name_version" == "$version" ] && \ - [ "$name_build" == "$build" ]; then - LAST_DOWNLOADED_PACKAGE="$file" - if [ "$3" != "--silent" ]; then - echo Package $candidate already downloaded - # echo Package $candidate stored at `dirname $file` - else - true - # echo $file - fi - return 1 - else - place="`dirname $file`" - basename="`basename $file tgz`" - rm -f $file - rm -f $place/$candidate.slack-required - rm -f $file.asc $place/$basename.meta $place/$basename.txt - break - fi - - fi - done - - else - - for file in `find $2/ -name $name*tgz 2> /dev/null`; do - candidate="`basename $file`" - version="`package_version $candidate`" - build="`package_build $candidate`" - if [ "`package_name $candidate`" == "$name" ]; then - # check if has the same version and build number, otherwise erase the old one - for result in `simplaret_search $(package_name $candidate) --basename-only`; do - if [ "`package_name $candidate`" == "`package_name $result`" ]; then - - if [ "$version" == "`package_version $result`" ] && \ - [ "$build" == "`package_build $result`" ]; then - LAST_DOWNLOADED_PACKAGE="$file" - if [ "$3" != "--silent" ]; then - echo Package $candidate already downloaded - # echo Package $candidate stored at `dirname $file` - else - true - # echo $file - fi - return 1 - else - place="`dirname $file`" - basename="`basename $file tgz`" - rm -f $file - rm -f $place/$candidate.slack-required - rm -f $file.asc $place/$basename.meta $place/$basename.txt - break - fi - - fi - done - fi - done - - fi - -} - -function simplaret_get { - - # get a package - # usage: simplaret_get <package-name|package-file-name> [--silent] - - local silent generate_patches search search_results - local name version build - - # prevent user to stay in $storage - cd - - name="`package_name $1`" - - if [ "$name" != "$1" ]; then - # simplaret_get was called with the package file - # name and not with just the package name - version="`package_version $1`" - build="`package_build $1`" - else - version="" - build="" - fi - - # first search for an already downloaded package - for repos_type in patches root repos noarch; do - - simplaret_set_storage_folder - simplaret_search_and_delete $1 $storage $2 - - if [ "$?" == "1" ]; then - return 0 - fi - - done - - # then search for the package in the repositories - search="`simplaret_search $1 --formatted`" - search_results="`echo "$search" | wc -l`" - - for result in $search; do - - # remaining search results - let search_results-- - - file="`echo $result | cut -d , -f 1`" - repos_type="`echo $result | cut -d , -f 2`" - repository="`echo $result | cut -d , -f 3`" - - simplaret_set_storage_folder - simplaret_repository_name - - candidate="`basename $file`" - if [ "`package_name $candidate`" == "$name" ]; then - - if [ ! -z "$build" ] && [ ! -z "$version" ]; then - # simplaret_get was called with the package file - # name and not with just the package name - if [ "$version" != "`package_version $candidate`" ] && \ - [ "$build" != "`package_build $candidate`" ]; then - # the package version and/or build doesnt matched - # the desired one - continue - fi - fi - - simplaret_repository_url - - # if repos_type == root, the package is a patch and - # STORE_ROOT_PATCHES_ON_PATCHES_DIR config parameter is enabled, then - # save it on $PATCHES_DIR/root-$repository_name, so all patches - # are placed in the same tree - if [ "$repos_type" == "root" ] && \ - [ "$STORE_ROOT_PATCHES_ON_PATCHES_DIR" == "1" ] && echo $file | grep -q "patches"; then - folder="$PATCHES_DIR/$ARCH/$VERSION/root-$repository_name" - generate_patches="1" - else - folder="$storage/$repository_name" - fi - - # download the package - simplaret_download $repository_url $file $folder - - if [ -f "$folder/$candidate.asc" ]; then - rm $folder/$candidate.asc - fi - - if [ -f "$folder/$name.slack-required" ]; then - rm $folder/$name.slack-required - fi - - # download the signature, if exist - if simplaret_check_url $repository_url/$file.asc; then - simplaret_download $repository_url $file.asc $folder - fi - - # download slack-required, if exist - if simplaret_check_url $repository_url/`dirname $file`/$name.slack-required; then - simplaret_download $repository_url `dirname $file`/$name.slack-required $folder - fi - - if [ ! -f "$folder/$candidate" ]; then - LAST_DOWNLOADED_PACKAGE="0" - if [ "$2" != "--silent" ]; then - echo Error downloading $candidate from $repos_type repository $repository_url, please check your settings - fi - # check if there's also more repositories to try - if [ "$SIMPLARET_DOWNLOAD_FROM_NEXT_REPO" != "1" ]; then - return 1 - else - if [ "$2" != "--silent" ]; then - echo Trying to fetch $candidate from the next repository... - fi - if (($search_results <= 0)); then - return 1 - fi - fi - else - LAST_DOWNLOADED_PACKAGE="$folder/$candidate" - if [ "$2" != "--silent" ]; then - silent="" - echo Package $candidate stored at $folder - else - # echo $folder/$candidate - silent="--silent" - fi - if [ -f "$folder/$candidate.asc" ] || [ "$SIGNATURE_CHECKING" == "1" ]; then - gpg --verify $folder/$candidate.asc $folder/$candidate - fi - # generate the patches FILE_LIST and PACKAGES.TXT if needed - if [ "$generate_patches" == "1" ]; then - gen_patches_filelst $folder - gen_packages_txt $folder - gen_md5_checksums $folder - fi - simplaret_checksum $storage/$repository_name/CHECKSUMS.md5 $folder/$candidate $silent - return $? - fi - - fi - - done - -} - -function simplaret_search_and_process_patch { - - local package_version package_build installed_version - local installed_build repos_type get is_patch package_match - - # get the repository type - repos_type="`echo $sugested | cut -d , -f 2`" - - # get just the file name - sugested="`echo $sugested | cut -d , -f 1`" - - if echo $sugested | grep -q "patches"; then - is_patch="yes" - else - is_patch="no" - fi - - # now split the file name into pieces - package_version="`package_version $sugested`" - package_build="`package_build $sugested`" - sugested="`package_name $sugested`" - - # check if the patch was already downloaded - if echo "$DOWNLOADED_PATCHES" | grep -q " $ARCH:$VERSION:$sugested "; then - if [ "$IS_UPGRADE" != "1" ]; then - echo Package $sugested already downloaded - # echo "Jail $root needs package $sugested (already downloaded, skipping)" - return - fi - fi - - # search if its installed in the jail - installed_packs="`ls /$root/var/log/packages/$sugested* 2> /dev/null`" - if [ ! -z "$installed_packs" ]; then - - for installed in $installed_packs; do - if [[ "$sugested" == "`package_name $installed.tgz`" ]]; then - package_installed="1" - installed_version="`package_version $installed.tgz`" - installed_build="`package_build $installed.tgz`" - break - fi - done - - get="no" - - # if the package is installed, download the patch - if [ "$package_installed" == "1" ]; then - if [ "$repos_type" == "patches" ]; then - - if [ "$package_version" != "$installed_version" ] || [ "$package_build" != "$installed_build" ]; then - get="yes" - package_match="no" - elif [ "$DOWNLOAD_EVEN_APPLIED_PATCHES" == "1" ]; then - get="yes" - fi - - elif [ "$repos_type" == "root" ] && [ "$is_patch" == "yes" ]; then - - if [ "$package_version" != "$installed_version" ] || [ "$package_build" != "$installed_build" ]; then - get="yes" - package_match="no" - elif [ "$DOWNLOAD_EVEN_APPLIED_PATCHES" == "1" ]; then - get="yes" - fi - - else - # here, we're dealing with repositories other than ROOT and REPOS, - # so we need to check if either version or build number are different, - # otherwise all installed packages would be downloaded - if [ "$package_version" != "$installed_version" ] || [ "$package_build" != "$installed_build" ]; then - get="yes" - package_match="no" - fi - fi - fi - - # finally, get the package - if [ "$get" == "yes" ]; then - if [ "$IS_UPGRADE" == "1" ]; then - if [ "$package_match" == "no" ]; then - simplaret_install $sugested - else - simplaret_get $sugested - fi - else - simplaret_get $sugested - fi - if [ "$?" == "0" ]; then - DOWNLOADED_PATCHES="$DOWNLOADED_PATCHES $ARCH:$VERSION:$sugested " # the ending space is important - fi - fi - - fi - - unset package_installed get - -} - -function simplaret_get_jail_patches { - - # get patches from a jail - # usage: simplaret_get_jail_patches <jail-folder> - - local oldarch oldversion - - if [ ! -z "$1" ]; then - root="$1" - else - root="/" - fi - - # save current arch and version - oldarch="$ARCH" - oldversion="$VERSION" - - ARCH="`default_arch $root`" - VERSION="`default_version $root`" - - # in case there's something wrong with the jail, abort - if [ -z "$VERSION" ] || [ -z "$ARCH" ]; then - return - fi - - # we need to do that for each arch/version pairs, but just once for each pair - if ! echo "$DISTRO_UPDATED" | grep -q " $ARCH:$VERSION "; then - simplaret_update - DISTRO_UPDATED="$DISTRO_UPDATED $ARCH:$VERSION " # the ending space is important - echo "" - fi - - echo Fetching patches for arch $ARCH and version $VERSION for jail $root - - # list all available patches from PATCHES and ROOT repositories - for sugested in `simplaret_search --formatted | grep patches | grep -v ",repos," | grep -v ",noarch,"`; do - simplaret_search_and_process_patch - done - - # grab patches from every other places - if [ "$CONSIDER_ALL_PACKAGES_AS_PATCHES" == "1" ]; then - - for sugested in `simplaret_search --formatted | grep patches | grep ",repos," | grep ",noarch,"`; do - simplaret_search_and_process_patch - done - - for sugested in `simplaret_search --formatted | grep -v patches`; do - simplaret_search_and_process_patch - done - - fi - - # restore arch and version - ARCH="$oldarch" - VERSION="$oldversion" - -} - -function simplaret_get_patches { - - local jailpath - - if [ "$1" == "--upgrade" ]; then - IS_UPGRADE="1" - fi - - if [ ! -z "$ROOT" ]; then - simplaret_get_jail_patches $ROOT - return $? - fi - - # first get patches from the root system - simplaret_get_jail_patches - - # then get the needed patches for each installed jail - if [ -s "$JAIL_LIST" ]; then - for jailpath in `cat $JAIL_LIST`; do - if [ -d "$jailpath/var/log/packages" ]; then - ROOT="$jailpath" - simplaret_get_jail_patches $jailpath - fi - done - fi - - ROOT="" - -} - -function simplaret_checksum { - - # simplaret_checksum <md5file> <file-name> [--silent] - - if [ ! -f "$1" ] || [ ! -f "$2" ]; then - if [ "$3" != "--silent" ]; then - echo Checksum error: file not found - fi - return 1 - fi - - pack="`basename $2`" - checksum="`grep -e "$pack\$" $1 | awk '{ print $1 }'`" - - if [ -z "$checksum" ]; then - echo file $2 not in checksum $1 - return 1 - elif [ "$checksum" != "`md5sum $2 | awk '{ print $1 }'`" ]; then - if [ "$3" != "--silent" ]; then - echo Checksum mismatch for file `basename $file` - fi - return 1 - else - if [ "$3" != "--silent" ]; then - echo Checksum ok for file `basename $file` - fi - return 0 - fi - -} - -function simplaret_install { - - # download and install a package - # usage: simplaret_install <package-name|package-file-name> [--skip-checks] - - local package root jail_arch jail_version slack_required dep dependency tmp - local name version build - - name="`package_name $1`" - - root="/$ROOT" - mkdir -p $root/var/log/setup/tmp - - if [ "`echo $1 | sed -e 's/\(..\).*/\1/g'`" == "--" ]; then - echo $BASENAME: install: syntax error: expected package name - return 1 - fi - - # now we check if ARCH and VERSION from the - # repository are the same of the jail - if [ "$2" != "--skip-checks" ]; then - jail_arch="`default_arch $root`" - jail_version="`default_version $root`" - if [ "$ARCH" != "$jail_arch" ]; then - echo "$BASENAME: requested repository arch ($ARCH) doesn't match jail arch ($jail_arch)" - echo "$BASENAME: please use \"$BASENAME --get $1 --skip-checks\" to ignore this warning and install anyway" - return - elif [ "$VERSION" != "$jail_version" ]; then - echo "$BASENAME: requested repository version ($VERSION) doesn't match jail version ($jail_version)" - echo "$BASENAME: please use \"$BASENAME --get $1 --skip-checks\" to ignore this warning and install anyway" - return 1 - fi - fi - - # package="`simplaret_get $1 --silent`" - simplaret_get $1 --silent - package="$LAST_DOWNLOADED_PACKAGE" - - if [ "$package" != "0" ] && [ ! -z "$package" ]; then - slack_required="`dirname $package`/$name.slack-required" - if [ -f "$package" ]; then - - if [ -f "$slack_required" ] && [ "$DEPENDENCY_CHECKING" == "1" ]; then - # this routine checks for dependencies in package's slack-required - # procedure adapted from createpkg script - ( cat $slack_required | while read dep; do - if [ ! -z "$dep" ]; then - dependency="`echo $dep | awk '{ print $1 }'`" - simplaret_solve_dep $name $dependency $root - fi - true - done ) - fi - - ROOT=$root upgradepkg --install-new $package - LAST_DOWNLOADED_PACKAGE="0" - - else - echo "Error: could not install package $1: file not found" - LAST_DOWNLOADED_PACKAGE="0" - return 1 - fi - else - echo "Error: could not install package $1" - LAST_DOWNLOADED_PACKAGE="0" - return 1 - fi - -} - -function simplaret_distro_folder { - - # first we point to the correct arch - simplaret_set_arch - - # then we set the distro folder - if [ "$ARCH" == "i386" ]; then - DISTRO="slackware" - DISTRO_FOLDER="$DISTRO-$VERSION" - elif [ "$ARCH" == "x86_64" ]; then - # EXTRA_FOLDER="tree" - DISTRO="slamd64" - DISTRO_FOLDER="$DISTRO-$VERSION" - elif [ "$ARCH" == "s390" ]; then - DISTRO="slack390" - DISTRO_FOLDER="$DISTRO-$VERSION" - elif [ "$ARCH" == "x86_uclibc" ]; then - DISTRO="ucslack" - DISTRO_FOLDER="$DISTRO-$VERSION" - elif [ "$ARCH" == "arm" ]; then - DISTRO="armedslack" - DISTRO_FOLDER="$DISTRO-$VERSION" - elif [ "$ARCH" == "powerpc" ]; then - DISTRO="slackintosh" - DISTRO_FOLDER="$VERSION" - elif [ "$ARCH" == "sparc" ]; then - DISTRO="splack" - DISTRO_FOLDER="tree-$VERSION" - else - DISTRO="$ARCH" - DISTRO_FOLDER="$DISTRO-$VERSION" - fi - -} - -function simplaret_set_arch { - - # set correct value for ARCH - - local repos_type new_arch - - # any arch defined in ARCH_i386 that hasn't an entry - # on $REPOS_CONF will be mapped to i386 - - ARCH_i386=" nocona prescott pentium4m pentium4 pentium-m pentium3m pentium3 " - ARCH_i386="$ARCH_i386 pentium2 i686 pentium-pro i586 pentium-mmx pentium i486 " - ARCH_i386="$ARCH_i386 athlon-mp athlon-xp athlon4 athlon-tbird athlon k6 k6-2 " - ARCH_i386="$ARCH_i386 k6-3 winchip-c6 winchip2 c3 c3-2 i386 " - - # any arch defined in ARCH_x86_64 that hasn't an entry - # on $REPOS_CONF will be mapped to x86_64 - - ARCH_x86_64=" k8 opteron athlon64 athlon-fx x86_64 " - - for repos_type in patches root repos noarch; do - if [ -z "`simplaret_repository $repos_type`" ]; then - # there's no repository definition for that arch - if echo "$ARCH_i386" | grep -q " $ARCH "; then - new_arch="i386" - elif echo "$ARCH_x86_64" | grep -q " $ARCH "; then - new_arch="x86_64" - else - echo "$BASENAME: error: no repository definition for arch $ARCH" - echo "$BASENAME: please check your $CONF and $REPOS_CONF config files" - exit 1 - fi - else - return - fi - done - - echo "$BASENAME: changing arch from $ARCH to $new_arch" - - ARCH="$new_arch" - -} - -function simplaret_check_url { - - # check if a given url exist, use just with small files - # usage: simplaret_check_url <url> - - if [ -z "$1" ]; then - return 1 - fi - - if [ ! -z "$CONNECT_TIMEOUT" ] || [ "$CONNECT_TIMEOUT" != "0" ]; then - curl_timeout="--connect-timeout $CONNECT_TIMEOUT" - fi - - if [ "`curl $curl_timeout -I $1 2> /dev/null | head -n 1 | awk '{ print $2 }'`" == "200" ]; then - # server gave a 200 response, so the url exist - return 0 - else - # the url is missing - return 1 - fi - -} - -function simplaret_solve_dep { - - # solve dependency for a package - # this function was adapted from createpkg script - # usage: simplaret_solve_dep <package-name> <package-depencency-name> [root-folder] - - local installed check exit_code - - local package="$1" - local pack="$2" - local root="/$3" - - pack="`echo $pack| sed -e 's/\+/\\\+/'`" - installed=`eval "ls $root/var/log/packages/ | egrep -E '^$pack-[^-]+-[^-]+-[^-]+$'"` - check=$? - - if [ -z "$installed" ]; then - if [ $check -ne 0 ]; then - echo "$BASENAME: processing $1 dependency $pack" - # simplaret_install $pack - SIMPLARET_CHILD=$SIMPLARET_CHILD ROOT=$root ARCH=$ARCH VERSION=$VERSION \ - simplaret --install $pack - fi - fi - -} - -if [ -z "$1" ]; then - simplaret_usage - exit 1 -else - eval_config $BASENAME -fi - -# This is used to show how many children process we have -if [ -z "$SIMPLARET_CHILD" ]; then - SIMPLARET_CHILD="1" -else - let SIMPLARET_CHILD++ -fi - -BASENAME="`basename $0`[$SIMPLARET_CHILD]" - -case $1 in - "--update" | "update") simplaret_update ;; - "--search" | "search") shift ; simplaret_search $* ;; - "--get" | "get") shift ; simplaret_get $* ;; - "--get-patches" | "get-patches") simplaret_get_patches ;; - "--purge" | "purge") shift ; simplaret_purge $* ;; - "--install" | "install") shift ; simplaret_install $* ;; - "--upgrade" | "upgrade") simplaret_get_patches --upgrade ;; - "--remove" | "remove") ROOT=/$ROOT removepkg $2 ;; - *) simplaret_usage ;; -esac - diff --git a/tags/0.5/src/templatepkg b/tags/0.5/src/templatepkg deleted file mode 100755 index 4f2592f..0000000 --- a/tags/0.5/src/templatepkg +++ /dev/null @@ -1,980 +0,0 @@ -#!/bin/bash -# -# templatepkg v0.3: template maintenance script from simplepkg suite -# -# feedback: rhatto at riseup.net | gpl -# -# Templatepkg is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Templatepkg is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# - -COMMON="/usr/libexec/simplepkg/common.sh" -BASENAME="`basename $0`" - -if [ -f "$COMMON" ]; then - source $COMMON - eval_config $BASENAME -else - echo "error: file $COMMON found, check your $BASENAME installation" - exit 1 -fi - -function usage_summary { - - echo "options are:" - echo "" - echo " -c | --create: create a template from a jail or existing template" - echo " -u | --update: update a template from a jail" - echo " -a | --add: add files into a template" - echo " -d | --delete: delete files or folders from a template" - echo " -s | --sync: sync $TEMPLATE_FOLDER working copy" - echo " -e | --export: export $TEMPLATE_FOLDER to a svn repository" - echo " -i | --import: grab $TEMPLATE_FOLDER from a svn repository" - echo " -r | --remove: remove a template" - echo " -l | --list: list templates" - echo " -b | --batch-edit: add or edit post-installation scripts" - echo " -p | --pack: create a package from a template" - echo " -t | --template-edit: edit template package list" - echo " -h | --help: display this summary" - echo "" - -} - -function display_help { - - # display help - # usage: help [help-topic] - - local option - - if [ -z "$1" ]; then - echo "type $BASENAME --help <option> for aditional help" - usage_summary - exit - fi - - option="$1" - - if ! echo $option | grep -q -e "^-"; then - option="-`echo $option | sed -e 's/--/-/' -e 's/\(.\).*/\1/'`" - else - option="`echo $option | sed -e 's/--/-/' -e 's/\(..\).*/\1/'`" - fi - - echo "$BASENAME: help for option $option:" - echo "" - - usage_summary | grep -e "^ $option" - - echo "" - case $option in - - "-c" | "--create") - echo " $BASENAME $option <template> [jail-root|template-name]" - ;; - "-u" | "--update") - echo " $BASENAME $option <template> [jail-root]" - ;; - "-a" | "--add") - echo " $BASENAME $option <template> <file-name> [jail-root]" - echo "" - echo " file-name: the file or directory to be added" - echo " jail-root: the jail under file-name is located" - ;; - "-d" | "--delete") - echo " $BASENAME $option <template> <file-name> [jail-root]" - echo "" - echo " file-name: the file or directory to be removed" - echo " jail-root: if specified, the file is also removed from the jail" - ;; - "-s" | "--sync") - echo " $BASENAME $option" - ;; - "-e" | "--export") - echo " $BASENAME $option <svn-repository>" - ;; - "-i" | "--import") - echo " $BASENAME $option <svn-repository>" - ;; - "-r" | "--remove") - echo " $BASENAME $option <template-name>" - ;; - "-l" | "--list") - echo " $BASENAME $option [path]" - ;; - "-b" | "--batch-edit") - echo " $BASENAME $option <template-name> <script-name>" - ;; - "-p" | "--pack") - echo " $BASENAME $option <template-name> [version] [build] [arch]" - ;; - "-t" | "--template-edit") - echo " $BASENAME $option <template-name>" - ;; - "-h" | "--help") - echo " -h | --help: display this help." - ;; - *) - echo $BASENAME: invalid help option $option - esac - - case $option in - "-c" | "-u" | "-a") - echo "" - echo " if ommited, jail-root defaults to /" - ;; - esac - - echo "" - -} - -function usage { - - echo "usage: $BASENAME <option> [<template> [arguments]]" - usage_summary - exit - -} - -function check_svn_repo { - - # check a svn repository URL - # usage: set_svn_repo <repository> - - if [ ! -z "$1" ]; then - if echo $1 | grep -q -v -e "^svn://"; then - if echo $1 | grep -q -v -e "^svn+ssh://"; then - if echo $1 | grep -q -v -e "^file://"; then - echo $BASENAME: invalid repository URL $1 - return 1 - fi - fi - fi - else - echo $BASENAME: no repository defined - return 1 - fi - -} - -function import_export_templates { - - # import from or export to $TEMPLATE_FOLDER in a svn repository - # usage: template_export <import|export> <repository> - - local templates templates_folder basedir repository mode preposition - - if [ "$?" != 0 ]; then - usage - exit 1 - elif ! use_svn; then - echo $BASENAME: simplepkg not configured to use svn - exit 1 - fi - - templates_folder="$TEMPLATE_FOLDER" - templates="`basename $TEMPLATE_FOLDER`" - basedir="`dirname $templates_folder`" - mode="$1" - repository="$2" - preposition="from" - - check_svn_repo $repository - - if [ ! -z "$2" ]; then - - if [ ! -d "$templates_folder/.svn" ]; then - - cd $basedir - - if [ "$mode" == "export" ]; then - preposition="to" - echo Exporting templates to $repository... - svn import $templates/ $repository/ -m "initial import" - if [ "$?" != "0" ]; then - echo $BASENAME: export failed - exit 1 - fi - fi - - if [ -d "templates" ]; then - mv $templates $templates.old - fi - - echo Checking out templates from $repository... - svn checkout $repository $templates - - if [ "$?" == "0" ]; then - rm -rf $templates.old - else - rm -rf $templates - mv $templates.old $templates - echo $BASENAME: $mode failed - exit 1 - fi - - else - echo "$BASENAME: $templates_folder seens to be already $mode""ed $preposition $repository" - exit 1 - fi - - fi - -} - -function template_create { - - # create a new template - - local template_base info_commit orig_template list - - if [ ! -d "`dirname $TEMPLATE_BASE`" ]; then - - echo Creating template `basename $TEMPLATE_BASE`... - - if use_svn && [ -d "`dirname $TEMPLATE_BASE`/.svn" ]; then - cd `dirname $TEMPLATE_BASE` - svn mkdir `dirname $TEMPLATE_BASE` - else - mkdir -p `dirname $TEMPLATE_BASE` - fi - - else - echo $BASENAME: template `basename $TEMPLATE_BASE` already exists - exit 1 - fi - - touch $TEMPLATE_BASE.perms - touch $TEMPLATE_BASE.template - - if use_svn && [ -d "`dirname $TEMPLATE_BASE`/.svn" ]; then - - cd `dirname $TEMPLATE_BASE` - - if ! svn_check $TEMPLATE_BASE.d; then - svn mkdir $TEMPLATE_BASE.d - info_commit="yes" - else - mkdir -p $TEMPLATE_BASE.d - fi - - if ! svn_check $TEMPLATE_BASE.s; then - svn mkdir $TEMPLATE_BASE.s - info_commit="yes" - else - mkdir -p $TEMPLATE_BASE.s - fi - - if ! svn_check $TEMPLATE_BASE.template; then - svn add $TEMPLATE_BASE.template - info_commit="yes" - fi - - if ! svn_check $TEMPLATE_BASE.perms; then - svn add $TEMPLATE_BASE.perms - info_commit="yes" - fi - - elif use_svn && [ -d "$TEMPLATE_FOLDER/.svn" ]; then - - mkdir $TEMPLATE_BASE.{d,s} - cd $TEMPLATE_FOLDER - svn add `basename $TEMPLATE_BASE` - info_commit="yes" - - else - mkdir $TEMPLATE_BASE.{d,s} - fi - - if [ -d "/$ROOT" ]; then - template_update - elif [ ! -z "$ROOT" ]; then - - # copy from an existing template - - if [ -d "$TEMPLATE_FOLDER/$ROOT" ]; then - orig_template="$TEMPLATE_FOLDER/$ROOT" - elif [ -d "$BASE_CONF/templates/$ROOT" ]; then - orig_template="$BASE_CONF/templates/$ROOT" - elif [ -d "$BASE_CONF/defaults/templates/$ROOT" ]; then - orig_template="$BASE_CONF/defaults/templates/$ROOT" - else - return 1 - fi - - if [ -f "$orig_template/$ROOT.perms" ]; then - cat $orig_template/$ROOT.perms > $TEMPLATE_BASE.perms - fi - - if [ -f "$orig_template/$ROOT.template" ]; then - cat $orig_template/$ROOT.template > $TEMPLATE_BASE.template - fi - - if use_svn && [ -d "$orig_template/.svn" ]; then - - cd `dirname $TEMPLATE_BASE` - - list="`ls $orig_template/$ROOT.d/ 2> /dev/null`" - if [ ! -z "$list" ]; then - echo Copying files to the new template... - rsync -av --exclude=.svn $orig_template/$ROOT.d/ $TEMPLATE_BASE.d/ - svn add `basename $TEMPLATE_BASE`.d/* - info_commit="yes" - fi - - list="`ls $orig_template/$ROOT.s/ 2> /dev/null`" - if [ ! -z "$list" ]; then - echo Copying scripts to the new template... - rsync -av --exclude=.svn $orig_template/$ROOT.s/ $TEMPLATE_BASE.s/ - svn add `basename $TEMPLATE_BASE`.s/* - info_commit="yes" - fi - - else - - list="`ls $orig_template/$ROOT.d/ 2> /dev/null`" - if [ ! -z "$list" ]; then - echo Copying files to the new template... - rsync -av $orig_template/$ROOT.d/ $TEMPLATE_BASE.d/ - fi - - list="`ls $orig_template/$ROOT.s/ 2> /dev/null`" - if [ ! -z "$list" ]; then - echo Copying scripts to the new template... - rsync -av $orig_template/$ROOT.s/ $TEMPLATE_BASE.s/ - fi - - fi - - else - echo $BASENAME: warning: no root directory defined - fi - - if [ "$info_commit" == "yes" ] && [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to add files under $file into the svn repository" - fi - -} - -function template_update { - - # update the template package list - - check_template_exist - - if [ ! -d "$ROOT/var/log/packages" ]; then - echo $ROOT/var/log/packages: directory not found - exit 1 - fi - - echo Checking package list for template `basename $TEMPLATE_BASE`... - - for package in `ls -1 $ROOT/var/log/packages/`; do - pack=`package_name $package` - if [ -f $TEMPLATE ]; then - if ! `grep -v -e "^#" $TEMPLATE | cut -d : -f 1 | awk '{ print $1 }' | grep -q -e "^$pack\$"`; then - echo $pack >> $TEMPLATE - echo Added $pack # on $TEMPLATE - fi - else - echo $pack >> $TEMPLATE - echo Added $pack # on $TEMPLATE - fi - done - - # check if each package from the template is installed - grep -v -e "^#" $TEMPLATE | cut -d : -f 1 | awk '{ print $1 }' | while read pack; do - - if [ ! -z "$pack" ]; then - unset found - for candidate in `ls $ROOT/var/log/packages/$pack* 2> /dev/null`; do - candidate="`package_name $candidate`" - if [ "$pack" == "$candidate" ]; then - found="1" - break - fi - done - if [ "$found" != "1" ]; then - # remove a non-installed package from the template - sed "/^$pack$/d" $TEMPLATE | sed "/^$pack $/d" | sed "/^$pack:*/d" | sed "/^$pack */d" > $TEMPLATE.tmp - cat $TEMPLATE.tmp > $TEMPLATE - rm -f $TEMPLATE.tmp - echo Removed $pack # from $TEMPLATE - fi - fi - - done - - if ! svn_check $TEMPLATE_BASE.template && [ -d "`dirname $TEMPLATE_BASE`/.svn" ]; then - cd `dirname $TEMPLATE_BASE` - svn add `basedir $TEMPLATE_BASE`.template - fi - -} - -function template_add { - - # add a file in a template - # usage: template_add <jail-root> <file> - - local info_commit cwd - - if [ -z "$1" ] || [ -z "$2" ]; then - return 1 - fi - - check_template_exist - - jail="/$1" - file="$2" - - if [ -a "$TEMPLATE_BASE.d/$file" ]; then - if [ -d "$TEMPLATE_BASE.d/$file" ]; then - - echo $BASENAME: folder `slash $file` already on $TEMPLATE_BASE.d, checking for contents - - cd $jail - for candidate in `find $file`; do - if [ ! -a "$TEMPLATE_BASE.d/$candidate" ]; then - mkdir -p $TEMPLATE_BASE.d/`dirname $candidate` - cp -a $jail/$candidate $TEMPLATE_BASE.d/$candidate - if use_svn && [ -d "$TEMPLATE_BASE.d/.svn" ]; then - cwd="`pwd`" - cd $TEMPLATE_BASE.d - svn add ./$candidate - if [ "$?" != "0" ]; then - echo $BASENAME: error adding `slash $candidate` into the revision system - fi - cd $cwd - info_commit="yes" - else - echo Added `slash $jail/$candidate` on `slash $TEMPLATE_BASE.d/$candidate` - fi - fi - done - - if [ "$info_commit" == "yes" ] && [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to add files under `slash $file` into the svn repository" - fi - - else - echo $BASENAME: file `slash $file` already on $TEMPLATE_BASE.d - exit 1 - fi - else - - if [ -a "$jail/$file" ]; then - - destination="`echo $TEMPLATE_BASE.d/$file | sed -e 's/\/$//'`" - - if use_svn && [ -d "$TEMPLATE_BASE.d/.svn" ]; then - - if [ ! -d "$TEMPLATE_BASE.d/`dirname $file`/.svn" ]; then - mkdir -p $TEMPLATE_BASE.d/`dirname $file`/ - svn add $TEMPLATE_BASE.d/`dirname $file`/ - fi - - cp -a $jail/$file $destination - - cwd="`pwd`" - cd $TEMPLATE_BASE.d - svn add ./$file - - if [ "$?" != "0" ]; then - echo $BASENAME: error adding `slash $candidate` into the revision system - else - if [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to add `slash $file` into the svn repository" - fi - fi - - cd $cwd - - else - - mkdir -p $TEMPLATE_BASE.d/`dirname $file`/ - cp -a $jail/$file $destination - echo Added `slash $jail/$file` on `slash $destination` - - fi - - else - echo $BASENAME: `slash $jail/$file`: file not found - exit 1 - fi - fi - -} - -function check_template_exist { - - # check if a template exists - # and create missing components - - local components - - components="template perms d s" - - if [ ! -d "`dirname $TEMPLATE_BASE`" ]; then - echo $BASENAME: template not found - exit 1 - fi - - for component in $components; do - - if [ ! -e "$TEMPLATE_BASE.$component" ]; then - - echo "$BASENAME: template component not found: $TEMPLATE_BASE.$component; creating..." - - cd `dirname $TEMPLATE_BASE` - - if [ "$component" == "perms" ] || [ "$component" == "template" ]; then - touch $TEMPLATE_BASE.$component - else - mkdir $TEMPLATE_BASE.$component - fi - - if use_svn && [ -d "`dirname $TEMPLATE_BASE`/.svn" ]; then - svn add $TEMPLATE_BASE.$component - info_commit="yes" - fi - - elif use_svn && [ -d "`dirname $TEMPLATE_BASE`/.svn" ] && \ - ! svn_check $TEMPLATE_BASE.$component; then - - cd `dirname $TEMPLATE_BASE` - svn add $TEMPLATE_BASE.$component - info_commit="yes" - - fi - - done - - if [ "$info_commit" == "yes" ] && [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to add new files in the svn repository" - fi - -} - -function template_delete { - - # delete a file from a template - # usage: template_delete <file> [jail-root] - - if [ -e "$TEMPLATE_BASE.d/$1" ]; then - - # first try to remove the file from the template - if use_svn && [ -d "$TEMPLATE_BASE.d/.svn" ]; then - cd $TEMPLATE_BASE.d - svn del --force ./$1 || rm -rf ./$1 - if [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to del $1 in the svn repository" - fi - else - rm -rf $TEMPLATE_BASE.d/$1 - echo Removed $1 from $TEMPLATE_BASE.d - fi - - # then, if requested, remove the file from the jail - if [ ! -z "$2" ]; then - if [ ! -d "$2" ]; then - echo $BASENAME: jail not found: $2 - elif [ -e "$2/$1" ]; then - rm -rf $2/$1 - echo Removed $1 from jail $2 - else - echo $BASENAME: file not found: $2/$1 - fi - fi - - elif [ -e "$TEMPLATE_BASE.s/$1" ]; then - if use_svn && [ -d "$TEMPLATE_BASE.s/.svn" ]; then - cd $TEMPLATE_BASE.s - svn del --force ./$1 || rm -rf ./$1 - if [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to del $1 in the svn repository" - fi - else - rm -rf $TEMPLATE_BASE.s/$1 - echo Removed $1 from $TEMPLATE_BASE.s - fi - else - if [ ! -d "$TEMPLATE_BASE.d" ]; then - echo $BASENAME: template folder $TEMPLATE_BASE.d not found - else - echo $BASENAME: file $1 not found at $TEMPLATE_BASE.d - fi - exit 1 - fi - -} - -function template_remove { - - # remove a template - # usage: template_remove - - local basedir template - - basedir="`dirname $TEMPLATE_BASE`" - template="`basename $basedir`" - - if [ ! -d "$basedir" ]; then - echo $BASENAME: template $template does not exist - exit 1 - fi - - if use_svn && [ -d "$basedir/.svn" ]; then - cd $TEMPLATE_FOLDER - svn update - svn del --force $template - if [ "$?" != "0" ]; then - echo $BASENAME: error deleting template $template - else - svn commit -m "deleted $template" - if [ "$?" != "0" ]; then - echo $BASENAME: error commiting to svn repository - fi - fi - else - rm -rf $basedir - fi - -} - -function template_list { - - # list templates - # usage: template_list [path] - - local list basedir template - - if [ "$TEMPLATE_STORAGE_STYLE" != "own-folder" ]; then - echo "$BASENAME: option only available if TEMPLATE_STORAGE_STYLE configured as 'own-folder'" - return 1 - fi - - if echo $1 | grep -q "/" || [ ! -z "$1" ]; then - - template="`echo $1 | cut -d "/" -f 1`" - - if [ -e "$BASE_CONF/defaults/templates/$1" ]; then - list="`ls $BASE_CONF/defaults/templates/$1 2> /dev/null`" - if [ "$?" == "0" ]; then - list="`echo $list | xargs`" - echo "In the default template $template: $list" - fi - fi - - if [ -e "$TEMPLATE_FOLDER/$1" ]; then - list="`ls $TEMPLATE_FOLDER/$1 2> /dev/null`" - if [ "$?" == "0" ]; then - list="`echo $list | xargs`" - echo "In the custom template $template: $list" - fi - fi - - else - - list="`ls $BASE_CONF/defaults/templates/$1 2> /dev/null`" - if [ "$?" == "0" ]; then - list="`echo $list | xargs`" - echo "Default templates: $list" - fi - - list="`ls $TEMPLATE_FOLDER/$1 2> /dev/null`" - if [ "$?" == "0" ]; then - list="`echo $list | xargs`" - echo "Custom templates: $list" - fi - - fi - -} - -function template_post_install_edit { - - # add or edit a post-installation script - # usage: template_post_install_edit <script-name> - - if [ -z "$1" ]; then - echo $BASENAME: no template specified - exit 1 - elif echo $1 | grep -q "/"; then - echo $BASENAME: error: invalid script name $1 - fi - - if [ -f "$TEMPLATE_BASE.s/$1" ]; then - sha1sum="`sha1sum $TEMPLATE_BASE.s/$1`" - if [ ! -z "$EDITOR" ]; then - $EDITOR $TEMPLATE_BASE.s/$1 - else - vi $TEMPLATE_BASE.s/$1 - fi - if [ "$sha1sum" != "`sha1sum $TEMPLATE_BASE.s/$1`" ] && \ - [ -d "`dirname $TEMPLATE_BASE`/.svn" ] && [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to send changes to the repository" - fi - else - - if [ -e "$TEMPLATE_BASE.s/$1" ]; then - - echo $BASENAME: file $TEMPLATE_BASE.s/$1 not a regular file - - elif [ -d "$TEMPLATE_BASE.s" ]; then - - touch $TEMPLATE_BASE.s/$1 - chmod +x $TEMPLATE_BASE.s/$1 - - if [ -d "$TEMPLATE_BASE.s/.svn" ]; then - cd $TEMPLATE_BASE.s - svn add $1 - if [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to send the script to the repository" - fi - fi - - echo "$BASENAME: script created; run templatepkg -p `basename $TEMPLATE_BASE` $1 again to edit it" - - else - echo $BASENAME: folder not found: $TEMPLATE_BASE.s - fi - - fi - -} - -function template_edit { - - # edit a template package list - # usage: template_edit - - if [ -f "$TEMPLATE_BASE.template" ]; then - sha1sum="`sha1sum $TEMPLATE_BASE.template`" - if [ ! -z "$EDITOR" ]; then - $EDITOR $TEMPLATE_BASE.template - else - vi $TEMPLATE_BASE.template - fi - if [ "$sha1sum" != "`sha1sum $TEMPLATE_BASE.template`" ] && \ - [ -d "`dirname $TEMPLATE_BASE`/.svn" ] && [ -z "$SILENT" ]; then - echo "Please run 'jail-commit --all' to send changes to the repository" - fi - elif [ -e "$TEMPLATE_BASE.template" ]; then - echo $BASENAME: file $TEMPLATE_BASE.template not a regular file - else - echo $BASENAME: file not found: $TEMPLATE_BASE.template - fi - -} - -function require { - - # requires a string - # usage: require [string] - - if [ -z "$1" ]; then - usage - fi - -} - -function setroot { - - # set ROOT variable - # usage: setroot <value1> <value2> - - if [ -z "$1" ]; then - ROOT="/" - else - ROOT="$1" - fi - -} - -function create_doinst { - - # create a doinst.sh from a template.perms file - # usage: create_doinst <doinst-path> - - rm -f $1/doinst.sh - - if [ -s "$TEMPLATE_BASE.perms" ]; then - echo Creating doinst.sh... - cat $TEMPLATE_BASE.perms | while read entry; do - file="`echo $entry | cut -d ";" -f 1`" - if [ -e "$TEMPLATE_BASE.d/$file" ]; then - owner="`echo $entry | cut -d ";" -f 2`" - group="`echo $entry | cut -d ";" -f 3`" - perms="`echo $entry | cut -d ";" -f 4`" - echo "( chmod $perms /$file )" >> $1/doinst.sh - echo "( chown $owner:$group /$file )" >> $1/doinst.sh - fi - done - fi - -} - -function package_template { - - # make a package from a template - # usage: package_template [version] [build] [arch] - - local template version build arch - - template="`basename $TEMPLATE_BASE`" - - if [ ! -d "$TEMPLATE_BASE.d" ]; then - $BASENAME: folder not found: $TEMPLATE.base.d - return 1 - fi - - echo Buiding package for template $template... - - if [ -z "$1" ]; then - version="1" - else - version="$1" - fi - - if [ -z "$2" ]; then - build="1" - else - build="$2" - fi - - if [ -z "$3" ]; then - arch="noarch" - else - arch="$3" - fi - - TMP=${TMP:=/tmp} - rm -rf $TMP/templatepkg - mkdir -p $TMP/templatepkg - - rsync -av --exclude=.svn $TEMPLATE_BASE.d/ $TMP/templatepkg/ - mkdir $TMP/templatepkg/install - create_doinst $TMP/templatepkg/install - - echo "template-$template: template-$template" > $TMP/templatepkg/install/slack-desc - echo "template-$template: " >> $TMP/templatepkg/install/slack-desc - echo "template-$template: simplepkg template $template" >> $TMP/templatepkg/install/slack-desc - - for ((n=1;n<=8;n++)); do - echo "template-$template: " >> $TMP/templatepkg/install/slack-desc - done - - cd $TMP/templatepkg - - makepkg -c n -l y $TMP/template-$template-$version-noarch-$build.tgz - - cd $TMP - rm -rf templatepkg - -} - -# ----------------------------------------------------- -# main -# ----------------------------------------------------- - -if [ ! -z "$2" ]; then - search_template $2 --new -fi - -TEMPLATE="$TEMPLATE_BASE.template" - -if [ "$1" == "-u" ] || [ "$1" == "--update" ]; then - - require $2 - setroot $3 - template_update - -elif [ "$1" == "-c" ] || [ "$1" == "--create" ]; then - - require $2 - setroot $3 - template_create - -elif [ "$1" == "-a" ] || [ "$1" == "--add" ]; then - - require $2 - - if [ -z "$3" ]; then - usage - else - setroot $4 - fi - - template_add $ROOT $3 - -elif [ "$1" == "-d" ] || [ "$1" == "--delete" ]; then - - require $2 - - if [ -z "$3" ]; then - usage - else - template_delete $3 $4 - fi - -elif [ "$1" == "-s" ] || [ "$1" == "--sync" ]; then - - if use_svn && [ -d "$TEMPLATE_FOLDER/.svn" ]; then - ( cd $TEMPLATE_FOLDER && svn update ) - true - fi - -elif [ "$1" == "-e" ] || [ "$1" == "--export" ]; then - - require $2 - import_export_templates export $2 - -elif [ "$1" == "-i" ] || [ "$1" == "--import" ]; then - - require $2 - import_export_templates import $2 - -elif [ "$1" == "-r" ] || [ "$1" == "--remove" ]; then - - require $2 - template_remove - -elif [ "$1" == "-l" ] || [ "$1" == "--list" ]; then - - template_list $2 - -elif [ "$1" == "-b" ] || [ "$1" == "--batch-edit" ]; then - - require $3 - template_post_install_edit $3 - -elif [ "$1" == "-t" ] || [ "$1" == "--template-edit" ]; then - - require $2 - template_edit - -elif [ "$1" == "-p" ] || [ "$1" == "--pack" ]; then - - require $2 - shift ; shift - package_template $* - -elif [ "$1" == "-h" ] || [ "$1" == "--help" ]; then - - display_help $2 - -else - usage -fi - diff --git a/tags/0.5/templates/openoffice/openoffice.d/etc/profile.d/lang.csh b/tags/0.5/templates/openoffice/openoffice.d/etc/profile.d/lang.csh deleted file mode 100755 index 94e8a92..0000000 --- a/tags/0.5/templates/openoffice/openoffice.d/etc/profile.d/lang.csh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/csh -# Set the system locale. (no, we don't have a menu for this ;-) -# For a list of locales which are supported by this machine, type: -# locale -a - -# en_US is the Slackware default locale: -setenv LANG pt_BR - -# 'C' is the old Slackware (and UNIX) default, which is 127-bit -# ASCII with a charmap setting of ANSI_X3.4-1968. These days, -# it's better to use en_US or another modern $LANG setting to -# support extended character sets. -#setenv LANG C - -# There is also support for UTF-8 locales, but be aware that -# some programs are not yet able to handle UTF-8 and will fail to -# run properly. In those cases, you can set LANG=C before -# starting them. Still, I'd avoid UTF unless you actually need it. -#setenv LANG en_US.UTF-8 - -# Another option for en_US: -#setenv LANG en_US.ISO8859-1 - -# One side effect of the newer locales is that the sort order -# is no longer according to ASCII values, so the sort order will -# change in many places. Since this isn't usually expected and -# can break scripts, we'll stick with traditional ASCII sorting. -# If you'd prefer the sort algorithm that goes with your $LANG -# setting, comment this out. -setenv LC_COLLATE C - -# End of /etc/profile.d/lang.csh - diff --git a/tags/0.5/templates/openoffice/openoffice.d/etc/profile.d/lang.sh b/tags/0.5/templates/openoffice/openoffice.d/etc/profile.d/lang.sh deleted file mode 100755 index c9cde20..0000000 --- a/tags/0.5/templates/openoffice/openoffice.d/etc/profile.d/lang.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh -# Set the system locale. (no, we don't have a menu for this ;-) -# For a list of locales which are supported by this machine, type: -# locale -a - -# en_US is the Slackware default locale: -export LANG=pt_BR - -# 'C' is the old Slackware (and UNIX) default, which is 127-bit -# ASCII with a charmap setting of ANSI_X3.4-1968. These days, -# it's better to use en_US or another modern $LANG setting to -# support extended character sets. -#export LANG=C - -# There is also support for UTF-8 locales, but be aware that -# some programs are not yet able to handle UTF-8 and will fail to -# run properly. In those cases, you can set LANG=C before -# starting them. Still, I'd avoid UTF unless you actually need it. -#export LANG=en_US.UTF-8 - -# Another option for en_US: -#export LANG=en_US.ISO8859-1 - -# One side effect of the newer locales is that the sort order -# is no longer according to ASCII values, so the sort order will -# change in many places. Since this isn't usually expected and -# can break scripts, we'll stick with traditional ASCII sorting. -# If you'd prefer the sort algorithm that goes with your $LANG -# setting, comment this out. -export LC_COLLATE=C - -# End of /etc/profile.d/lang.sh - diff --git a/tags/0.5/templates/openoffice/openoffice.d/opt/OpenOffice.org b/tags/0.5/templates/openoffice/openoffice.d/opt/OpenOffice.org deleted file mode 120000 index 7146afd..0000000 --- a/tags/0.5/templates/openoffice/openoffice.d/opt/OpenOffice.org +++ /dev/null @@ -1 +0,0 @@ -../opt2/OpenOffice.org
\ No newline at end of file diff --git a/tags/0.5/templates/openoffice/openoffice.perms b/tags/0.5/templates/openoffice/openoffice.perms deleted file mode 100644 index e69de29..0000000 --- a/tags/0.5/templates/openoffice/openoffice.perms +++ /dev/null diff --git a/tags/0.5/templates/openoffice/openoffice.s/post-install.sh b/tags/0.5/templates/openoffice/openoffice.s/post-install.sh deleted file mode 100755 index 086c7a4..0000000 --- a/tags/0.5/templates/openoffice/openoffice.s/post-install.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -if [ -z "$2" ]; then - echo "usage: `basename $0` <jail-root> <jail-name>" - exit 1 -elif [ ! -d "$1/$2" ]; then - echo "folder $1/$2 does not exist" - exit 1 -fi - -echo running post-installation script for $1/$2 jail... - -# copia de arquivos -cp -p /etc/passwd $1/$2/etc/ -cp -p /etc/group $1/$2/etc/ -cp /etc/localtime $1/$2/etc/ - -# pos-instalacao -mount -t proc proc $1/$2/proc -chroot $1/$2 /sbin/ldconfig -cd $1/$2 && exec ./var/log/scripts/glibc-zoneinfo-* -umount $1/$2/proc diff --git a/tags/0.5/templates/openoffice/openoffice.template b/tags/0.5/templates/openoffice/openoffice.template deleted file mode 100644 index ef3ae52..0000000 --- a/tags/0.5/templates/openoffice/openoffice.template +++ /dev/null @@ -1,60 +0,0 @@ -aaa_base: ADD -aaa_elflibs: ADD -acpid: REC -bash: ADD -bin: ADD -bzip2: ADD -coreutils: ADD -cups: REC -cxxlibs: ADD -devs: ADD -etc: ADD -a2ps -bc -enscript -espgs -etc -findutils -gawk -gettext -getty-ps -gimp-print -glibc -glibc-i18n -glibc-profile -glibc-solibs -glibc-zoneinfo -grep -gzip -hpijs -infozip -ispell -kbd -kde-i18n-pt_BR -kdebase -kdelibs -koffice-i18n-pt_BR -less -libart_lgpl -libidn -libmng -pkgtools -qt -sed -shadow -sudo -sysklogd -sysvinit -utempter -util-linux -x11 -x11-devel -x11-fonts-100dpi -x11-fonts-cyrillic -x11-fonts-misc -x11-fonts-scale -x11-xdmx -x11-xnest -x11-xvfb -openoffice-chroot -openssl diff --git a/tags/0.5/templates/slackware/slackware.perms b/tags/0.5/templates/slackware/slackware.perms deleted file mode 100644 index e69de29..0000000 --- a/tags/0.5/templates/slackware/slackware.perms +++ /dev/null diff --git a/tags/0.5/templates/slackware/slackware.template b/tags/0.5/templates/slackware/slackware.template deleted file mode 100644 index c3590c1..0000000 --- a/tags/0.5/templates/slackware/slackware.template +++ /dev/null @@ -1,566 +0,0 @@ -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: A1 (Base Linux series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -aaa_base: ADD -aaa_elflibs: ADD -acpid: REC -apmd: REC -bash: ADD -bin: ADD -bzip2: ADD -coreutils: ADD -cpio: ADD -cups: REC -cxxlibs: ADD -dcron: ADD -devs: ADD -e2fsprogs: ADD -elvis: ADD -etc: ADD -findutils: ADD -floppy: ADD -gawk: ADD -genpower: OPT -gettext: REC -getty-ps: OPT -glibc-solibs: ADD -glibc-zoneinfo: ADD -gpm: REC -grep: ADD -gzip: ADD -hdparm: ADD -hotplug: ADD -infozip: ADD -isapnptools: OPT -jfsutils: OPT -kbd: REC -kernel-ide: REC -kernel-modules: ADD -less: ADD -lilo: ADD -loadlin: REC -logrotate: ADD -minicom: REC -mkinitrd: REC -module-init-tools: ADD -openssl-solibs: ADD -pciutils: OPT -pcmcia-cs: REC -pkgtools: ADD -procps: ADD -reiserfsprogs: ADD -sed: ADD -shadow: ADD -slocate: ADD -smartmontools: ADD -sysklogd: ADD -syslinux: ADD -sysvinit: ADD -tar: ADD -tcsh: REC -udev: ADD -umsdos-progs: ADD -usbutils: ADD -utempter: REC -util-linux: ADD -xfsprogs: OPT -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: AP1 (Applications series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -a2ps: REC -acct: OPT -alsa-utils: REC -amp: OPT -ash: OPT -at: OPT -aumix: OPT -bc: OPT -bpe: OPT -cdparanoia: OPT -cdrdao: OPT -cdrtools: OPT -diffutils: REC -dvd+rw-tools: OPT -enscript: OPT -espgs: REC -flac: OPT -gimp-print: OPT -groff: ADD -gnu-gs-fonts: REC -hpijs: REC -ispell: OPT -jed: OPT -joe: OPT -jove: OPT -ksh93: OPT -lsof: OPT -lvm: OPT -madplay: OPT -man: ADD -man-pages: REC -mc: OPT -mdadm: OPT -most: OPT -mpg321: OPT -mt-st: OPT -mysql: OPT -normalize: OPT -quota: OPT -raidtools: OPT -rexima: REC -rpm: OPT -rzip: OPT -sc: OPT -screen: OPT -seejpeg: REC -sgml-tools: REC -sox: REC -sudo: OPT -texinfo: REC -vim: OPT -vorbis-tools: OPT -workbone: OPT -zsh: OPT - -autoconf: OPT -automake: OPT -bin86: ADD -binutils: ADD -bison: ADD -byacc: OPT -ccache: OPT -clisp: OPT -cscope: OPT -cvs: REC -distcc: OPT -doxygen: OPT -flex: ADD -gcc: ADD -gcc-g++: REC -gcc-g77: OPT -gcc-gnat: OPT -gcc-java: OPT -gcc-objc: OPT -gdb: REC -gettext-tools: REC -guile: OPT -indent: OPT -kernel-headers: ADD -libtool: OPT -m4: REC -make: ADD -nasm: OPT -oprofile: OPT -p2c: OPT -perl: REC -pkgconfig: REC -pmake: REC -python: OPT -python-demo: OPT -python-tools: OPT -rcs: OPT -strace: REC -subversion: OPT -# Tagfile for emacs series -emacs: ADD -emacs-misc: REC -emacs-lisp: OPT -emacs-leim: OPT -emacs-nox: OPT -emacs-info: REC -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: F1 (Frequently Asked Questions) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -linux-faqs: ADD -linux-howtos: ADD -kernel-source: REC -aalib: REC -alsa-driver: ADD -alsa-lib: ADD -alsa-oss: OPT -arts: ADD -aspell: REC -aspell-en: REC -atk: REC -audiofile: REC -db3: REC -db31: REC -db4: REC -esound: REC -expat: REC -fribidi: REC -gdbm: REC -gdk-pixbuf: REC -glib: REC -glib2: REC -glibc: REC -glibc-i18n: OPT -glibc-profile: OPT -glut: REC -gmp: REC -gnet: REC -gtk+: REC -gtk+2: REC -imlib: REC -jre: OPT -lcms: REC -lesstif: REC -libao: REC -libart_lgpl: REC -libcaca: OPT -libexif: REC -libglade: REC -libgsf: REC -libgtkhtml: REC -libid3tag: REC -libidl: REC -libidn: REC -libieee1284: REC -libjpeg: REC -libmad: REC -libmikmod: REC -libmng: REC -libogg: REC -libpng: REC -librsvg: REC -libtermcap: REC -libtiff: REC -libungif: REC -libusb: REC -libvorbis: REC -libwmf: REC -libwmf-docs: OPT -libwpd: REC -libxml2: REC -libxslt: REC -mhash: REC -mpeg_lib: OPT -ncurses: REC -netpbm: REC -pango: REC -pcre: REC -pilot-link: REC -popt: REC -readline: REC -sdl: REC -shared-mime-info: REC -slang: REC -startup-notification: ADD -svgalib: REC -t1lib: REC -taglib: REC -wv2: REC -xaw3d: REC -zlib: REC -# This is a Slackware Installation Tagfile. -# -# This one comes from the N (Network/UUCP/Mail/News) series. -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# -apache: OPT -autofs: OPT -bind: REC -bitchx: OPT -bootp: OPT -curl: OPT -cyrus-sasl: REC -dhcp: OPT -dhcpcd: REC -dnsmasq: OPT -elm: OPT -epic4: OPT -fetchmail: OPT -getmail: REC -gnupg: OPT -htdig: OPT -imapd: OPT -inetd: REC -iproute2: OPT -iptables: ADD -iptraf: OPT -irssi: OPT -lftp: OPT -links: OPT -lynx: OPT -metamail: REC -mod_ssl: OPT -mutt: OPT -nail: REC -nc: OPT -ncftp: OPT -netatalk: OPT -netpipes: OPT -netwatch: OPT -newspost: OPT -nfs-utils: OPT -nmap: OPT -nn: OPT -ntp: OPT -openssh: REC -openssl: REC -php: OPT -pidentd: REC -pine: OPT -popa3d: REC -portmap: REC -ppp: OPT -procmail: REC -proftpd: OPT -rdist: OPT -rp-pppoe: OPT -rsync: OPT -samba: OPT -sendmail-cf: OPT -sendmail: REC -slrn: OPT -stunnel: OPT -tcpdump: REC -tcpip: REC -tin: OPT -traceroute: OPT -trn: OPT -uucp: OPT -vsftpd: REC -wget: OPT -whois: OPT -wireless-tools: OPT -yptools: OPT -ytalk: OPT -tetex: ADD -tetex-doc: REC -xfig: OPT -transfig: OPT -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: TCL1 (Tcl/Tk series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -expect: OPT -hfsutils: OPT -tcl: ADD -tk: REC -tclx: REC -tix: OPT -x11: ADD -x11-devel: ADD -x11-docs: REC -x11-docs-html: OPT -x11-fonts-100dpi: OPT -x11-fonts-cyrillic: OPT -x11-fonts-misc: ADD -x11-fonts-scale: ADD -x11-xdmx: OPT -x11-xnest: OPT -x11-xvfb: OPT -abiword: OPT -blackbox: OPT -fluxbox: OPT -fvwm: REC -gaim: OPT -gftp: OPT -gimp: REC -gimp-help-2: REC -gkrellm: OPT -gnuchess: REC -gnuplot: OPT -gucharmap: OPT -gv: REC -gxine: OPT -imagemagick: REC -mozilla: REC -mozilla-firefox: REC -mozilla-thunderbird: REC -pan: REC -rxvt: REC -sane: OPT -seyon: OPT -windowmaker: REC -x3270: OPT -xchat: OPT -xfce: OPT -xfm: OPT -xfractint: OPT -xgames: REC -xine-lib: REC -xine-ui: REC -xpaint: OPT -xpdf: OPT -xmms: OPT -xsane: OPT -xlockmore: REC -xscreensaver: REC -xv: REC -xvim: REC -xxgdb: REC -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: Y1 (Yaaaaaahhoooo? Games and Amusements). -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -bsd-games: OPT - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/httpd.conf b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/httpd.conf deleted file mode 100644 index 7b7115d..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/httpd.conf +++ /dev/null @@ -1,1046 +0,0 @@ -## -## httpd.conf -- Apache HTTP server configuration file -## - -# -# Based upon the NCSA server configuration files originally by Rob McCool. -# -# This is the main Apache server configuration file. It contains the -# configuration directives that give the server its instructions. -# See <URL:http://httpd.apache.org/docs/> for detailed information about -# the directives. -# -# Do NOT simply read the instructions in here without understanding -# what they do. They're here only as hints or reminders. If you are unsure -# consult the online docs. You have been warned. -# -# After this file is processed, the server will look for and process -# /etc/apache/srm.conf and then /etc/apache/access.conf -# unless you have overridden these with ResourceConfig and/or -# AccessConfig directives here. -# -# The configuration directives are grouped into three basic sections: -# 1. Directives that control the operation of the Apache server process as a -# whole (the 'global environment'). -# 2. Directives that define the parameters of the 'main' or 'default' server, -# which responds to requests that aren't handled by a virtual host. -# These directives also provide default values for the settings -# of all virtual hosts. -# 3. Settings for virtual hosts, which allow Web requests to be sent to -# different IP addresses or hostnames and have them handled by the -# same Apache server process. -# -# Configuration and logfile names: If the filenames you specify for many -# of the server's control files begin with "/" (or "drive:/" for Win32), the -# server will use that explicit path. If the filenames do *not* begin -# with "/", the value of ServerRoot is prepended -- so "logs/foo.log" -# with ServerRoot set to "/usr/local/apache" will be interpreted by the -# server as "/usr/local/apache/logs/foo.log". -# - -### Section 1: Global Environment -# -# The directives in this section affect the overall operation of Apache, -# such as the number of concurrent requests it can handle or where it -# can find its configuration files. -# - -# -# ServerType is either inetd, or standalone. Inetd mode is only supported on -# Unix platforms. -# -ServerType standalone - -# ServerTokens directive -ServerTokens ProductOnly - -# -# ServerRoot: The top of the directory tree under which the server's -# configuration, error, and log files are kept. -# -# NOTE! If you intend to place this on an NFS (or otherwise network) -# mounted filesystem then please read the LockFile documentation -# (available at <URL:http://www.apache.org/docs/mod/core.html#lockfile>); -# you will save yourself a lot of trouble. -# -ServerRoot "/usr" - -# -# The LockFile directive sets the path to the lockfile used when Apache -# is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or -# USE_FLOCK_SERIALIZED_ACCEPT. This directive should normally be left at -# its default value. The main reason for changing it is if the logs -# directory is NFS mounted, since the lockfile MUST BE STORED ON A LOCAL -# DISK. The PID of the main server process is automatically appended to -# the filename. -# -#LockFile /var/run/httpd.lock - -# -# PidFile: The file in which the server should record its process -# identification number when it starts. -# -PidFile /var/run/httpd.pid - -# -# ScoreBoardFile: File used to store internal server process information. -# Not all architectures require this. But if yours does (you'll know because -# this file will be created when you run Apache) then you *must* ensure that -# no two invocations of Apache share the same scoreboard file. -# -ScoreBoardFile /var/run/httpd.scoreboard - -# -# In the standard configuration, the server will process httpd.conf (this -# file, specified by the -f command line option), srm.conf, and access.conf -# in that order. The latter two files are now distributed empty, as it is -# recommended that all directives be kept in a single file for simplicity. -# The commented-out values below are the built-in defaults. You can have the -# server ignore these files altogether by using "/dev/null" (for Unix) or -# "nul" (for Win32) for the arguments to the directives. -# -#ResourceConfig /etc/apache/srm.conf -#AccessConfig /etc/apache/access.conf - -# -# Timeout: The number of seconds before receives and sends time out. -# -Timeout 300 - -# -# KeepAlive: Whether or not to allow persistent connections (more than -# one request per connection). Set to "Off" to deactivate. -# -KeepAlive On - -# -# MaxKeepAliveRequests: The maximum number of requests to allow -# during a persistent connection. Set to 0 to allow an unlimited amount. -# We recommend you leave this number high, for maximum performance. -# -MaxKeepAliveRequests 100 - -# -# KeepAliveTimeout: Number of seconds to wait for the next request from the -# same client on the same connection. -# -KeepAliveTimeout 2 - -# -# Server-pool size regulation. Rather than making you guess how many -# server processes you need, Apache dynamically adapts to the load it -# sees --- that is, it tries to maintain enough server processes to -# handle the current load, plus a few spare servers to handle transient -# load spikes (e.g., multiple simultaneous requests from a single -# Netscape browser). -# -# It does this by periodically checking how many servers are waiting -# for a request. If there are fewer than MinSpareServers, it creates -# a new spare. If there are more than MaxSpareServers, some of the -# spares die off. The default values are probably OK for most sites. -# -MinSpareServers 5 -MaxSpareServers 10 - -# -# Number of servers to start initially --- should be a reasonable ballpark -# figure. -# -StartServers 5 - -# -# Limit on total number of servers running, i.e., limit on the number -# of clients who can simultaneously connect --- if this limit is ever -# reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW. -# It is intended mainly as a brake to keep a runaway server from taking -# the system with it as it spirals down... -# -MaxClients 150 - -# -# MaxRequestsPerChild: the number of requests each child process is -# allowed to process before the child dies. The child will exit so -# as to avoid problems after prolonged use when Apache (and maybe the -# libraries it uses) leak memory or other resources. On most systems, this -# isn't really needed, but a few (such as Solaris) do have notable leaks -# in the libraries. For these platforms, set to something like 10000 -# or so; a setting of 0 means unlimited. -# -# NOTE: This value does not include keepalive requests after the initial -# request per connection. For example, if a child process handles -# an initial request and 10 subsequent "keptalive" requests, it -# would only count as 1 request towards this limit. -# -MaxRequestsPerChild 0 - -# -# Listen: Allows you to bind Apache to specific IP addresses and/or -# ports, instead of the default. See also the <VirtualHost> -# directive. -# -#Listen 3000 -#Listen 12.34.56.78:80 - -# -# BindAddress: You can support virtual hosts with this option. This directive -# is used to tell the server which IP address to listen to. It can either -# contain "*", an IP address, or a fully qualified Internet domain name. -# See also the <VirtualHost> and Listen directives. -# -#BindAddress * - -# -# Dynamic Shared Object (DSO) Support -# -# To be able to use the functionality of a module which was built as a DSO you -# have to place corresponding `LoadModule' lines at this location so the -# directives contained in it are actually available _before_ they are used. -# Please read the file http://httpd.apache.org/docs/dso.html for more -# details about the DSO mechanism and run `httpd -l' for the list of already -# built-in (statically linked and thus always available) modules in your httpd -# binary. -# -# Note: The order in which modules are loaded is important. Don't change -# the order below without expert advice. -# -# Example: -# LoadModule foo_module libexec/mod_foo.so -LoadModule vhost_alias_module libexec/apache/mod_vhost_alias.so -#LoadModule env_module libexec/apache/mod_env.so -LoadModule define_module libexec/apache/mod_define.so -LoadModule config_log_module libexec/apache/mod_log_config.so -LoadModule mime_magic_module libexec/apache/mod_mime_magic.so -LoadModule mime_module libexec/apache/mod_mime.so -LoadModule negotiation_module libexec/apache/mod_negotiation.so -#LoadModule status_module libexec/apache/mod_status.so -#LoadModule info_module libexec/apache/mod_info.so -LoadModule includes_module libexec/apache/mod_include.so -LoadModule autoindex_module libexec/apache/mod_autoindex.so -LoadModule dir_module libexec/apache/mod_dir.so -LoadModule cgi_module libexec/apache/mod_cgi.so -#LoadModule asis_module libexec/apache/mod_asis.so -#LoadModule imap_module libexec/apache/mod_imap.so -#LoadModule action_module libexec/apache/mod_actions.so -#LoadModule speling_module libexec/apache/mod_speling.so -#LoadModule userdir_module libexec/apache/mod_userdir.so -LoadModule alias_module libexec/apache/mod_alias.so -LoadModule rewrite_module libexec/apache/mod_rewrite.so -LoadModule access_module libexec/apache/mod_access.so -LoadModule auth_module libexec/apache/mod_auth.so -LoadModule anon_auth_module libexec/apache/mod_auth_anon.so -#LoadModule dbm_auth_module libexec/apache/mod_auth_dbm.so -#LoadModule digest_module libexec/apache/mod_digest.so -LoadModule proxy_module libexec/apache/libproxy.so -LoadModule cern_meta_module libexec/apache/mod_cern_meta.so -LoadModule expires_module libexec/apache/mod_expires.so -LoadModule headers_module libexec/apache/mod_headers.so -#LoadModule usertrack_module libexec/apache/mod_usertrack.so -#LoadModule log_forensic_module libexec/apache/mod_log_forensic.so -#LoadModule unique_id_module libexec/apache/mod_unique_id.so -LoadModule setenvif_module libexec/apache/mod_setenvif.so - -# Reconstruction of the complete module list from all available modules -# (static and shared ones) to achieve correct module execution order. -# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO] -ClearModuleList -AddModule mod_vhost_alias.c -#AddModule mod_env.c -AddModule mod_define.c -AddModule mod_log_config.c -AddModule mod_mime_magic.c -AddModule mod_mime.c -AddModule mod_negotiation.c -#AddModule mod_status.c -#AddModule mod_info.c -AddModule mod_include.c -AddModule mod_autoindex.c -AddModule mod_dir.c -AddModule mod_cgi.c -#AddModule mod_asis.c -#AddModule mod_imap.c -#AddModule mod_actions.c -#AddModule mod_speling.c -#AddModule mod_userdir.c -AddModule mod_alias.c -AddModule mod_rewrite.c -AddModule mod_access.c -AddModule mod_auth.c -AddModule mod_auth_anon.c -#AddModule mod_auth_dbm.c -#AddModule mod_digest.c -AddModule mod_proxy.c -AddModule mod_cern_meta.c -AddModule mod_expires.c -AddModule mod_headers.c -#AddModule mod_usertrack.c -#AddModule mod_log_forensic.c -#AddModule mod_unique_id.c -AddModule mod_so.c -AddModule mod_setenvif.c - -# -# ExtendedStatus controls whether Apache will generate "full" status -# information (ExtendedStatus On) or just basic information (ExtendedStatus -# Off) when the "server-status" handler is called. The default is Off. -# -#ExtendedStatus On - -### Section 2: 'Main' server configuration -# -# The directives in this section set up the values used by the 'main' -# server, which responds to any requests that aren't handled by a -# <VirtualHost> definition. These values also provide defaults for -# any <VirtualHost> containers you may define later in the file. -# -# All of these directives may appear inside <VirtualHost> containers, -# in which case these default settings will be overridden for the -# virtual host being defined. -# - -# -# If your ServerType directive (set earlier in the 'Global Environment' -# section) is set to "inetd", the next few directives don't have any -# effect since their settings are defined by the inetd configuration. -# Skip ahead to the ServerAdmin directive. -# - -# -# Port: The port to which the standalone server listens. For -# ports < 1023, you will need httpd to be run as root initially. -# -Port 80 - -# -# If you wish httpd to run as a different user or group, you must run -# httpd as root initially and it will switch. -# -# User/Group: The name (or #number) of the user/group to run httpd as. -# . On SCO (ODT 3) use "User nouser" and "Group nogroup". -# . On HPUX you may not be able to use shared memory as nobody, and the -# suggested workaround is to create a user www and use that user. -# NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET) -# when the value of (unsigned)Group is above 60000; -# don't use Group "#-1" on these systems! -# -User nobody -Group nobody - -# -# ServerAdmin: Your address, where problems with the server should be -# e-mailed. This address appears on some server-generated pages, such -# as error documents. -# -ServerAdmin root@midas.slackware.lan - -# -# ServerName allows you to set a host name which is sent back to clients for -# your server if it's different than the one the program would get (i.e., use -# "www" instead of the host's real name). -# -# Note: You cannot just invent host names and hope they work. The name you -# define here must be a valid DNS name for your host. If you don't understand -# this, ask your network administrator. -# If your host doesn't have a registered DNS name, enter its IP address here. -# You will have to access it by its address (e.g., http://123.45.67.89/) -# anyway, and this will make redirections work in a sensible way. -# -# 127.0.0.1 is the TCP/IP local loop-back address, often named localhost. Your -# machine always knows itself by this address. If you use Apache strictly for -# local testing and development, you may use 127.0.0.1 as the server name. -# -#ServerName www.example.com - -# -# DocumentRoot: The directory out of which you will serve your -# documents. By default, all requests are taken from this directory, but -# symbolic links and aliases may be used to point to other locations. -# -DocumentRoot "/var/www/htdocs" - -# -# Each directory to which Apache has access, can be configured with respect -# to which services and features are allowed and/or disabled in that -# directory (and its subdirectories). -# -# First, we configure the "default" to be a very restrictive set of -# permissions. -# -<Directory /> - Options FollowSymLinks - AllowOverride None -</Directory> - -# -# Note that from this point forward you must specifically allow -# particular features to be enabled - so if something's not working as -# you might expect, make sure that you have specifically enabled it -# below. -# - -# -# This should be changed to whatever you set DocumentRoot to. -# -<Directory "/var/www/htdocs"> - -# -# This may also be "None", "All", or any combination of "Indexes", -# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews". -# -# Note that "MultiViews" must be named *explicitly* --- "Options All" -# doesn't give it to you. -# - Options Indexes FollowSymLinks MultiViews - -# -# This controls which options the .htaccess files in directories can -# override. Can also be "All", or any combination of "Options", "FileInfo", -# "AuthConfig", and "Limit" -# - AllowOverride None - -# -# Controls who can get stuff from this server. -# - Order allow,deny - Allow from all -</Directory> - -# -# UserDir: The name of the directory which is appended onto a user's home -# directory if a ~user request is received. -# -<IfModule mod_userdir.c> - UserDir public_html -</IfModule> - -# -# Control access to UserDir directories. The following is an example -# for a site where these directories are restricted to read-only. -# -#<Directory /home/*/public_html> -# AllowOverride FileInfo AuthConfig Limit -# Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec -# <Limit GET POST OPTIONS PROPFIND> -# Order allow,deny -# Allow from all -# </Limit> -# <LimitExcept GET POST OPTIONS PROPFIND> -# Order deny,allow -# Deny from all -# </LimitExcept> -#</Directory> - -# -# DirectoryIndex: Name of the file or files to use as a pre-written HTML -# directory index. Separate multiple entries with spaces. -# -<IfModule mod_dir.c> - DirectoryIndex index.html -</IfModule> - -# -# AccessFileName: The name of the file to look for in each directory -# for access control information. -# -AccessFileName .htaccess - -# -# The following lines prevent .htaccess files from being viewed by -# Web clients. Since .htaccess files often contain authorization -# information, access is disallowed for security reasons. Comment -# these lines out if you want Web visitors to see the contents of -# .htaccess files. If you change the AccessFileName directive above, -# be sure to make the corresponding changes here. -# -# Also, folks tend to use names such as .htpasswd for password -# files, so this will protect those as well. -# -<Files ~ "^\.ht"> - Order allow,deny - Deny from all - Satisfy All -</Files> - -# -# CacheNegotiatedDocs: By default, Apache sends "Pragma: no-cache" with each -# document that was negotiated on the basis of content. This asks proxy -# servers not to cache the document. Uncommenting the following line disables -# this behavior, and proxies will be allowed to cache the documents. -# -#CacheNegotiatedDocs - -# -# UseCanonicalName: (new for 1.3) With this setting turned on, whenever -# Apache needs to construct a self-referencing URL (a URL that refers back -# to the server the response is coming from) it will use ServerName and -# Port to form a "canonical" name. With this setting off, Apache will -# use the hostname:port that the client supplied, when possible. This -# also affects SERVER_NAME and SERVER_PORT in CGI scripts. -# -UseCanonicalName On - -# -# TypesConfig describes where the mime.types file (or equivalent) is -# to be found. -# -<IfModule mod_mime.c> - TypesConfig /etc/apache/mime.types -</IfModule> - -# -# DefaultType is the default MIME type the server will use for a document -# if it cannot otherwise determine one, such as from filename extensions. -# If your server contains mostly text or HTML documents, "text/plain" is -# a good value. If most of your content is binary, such as applications -# or images, you may want to use "application/octet-stream" instead to -# keep browsers from trying to display binary files as though they are -# text. -# -DefaultType text/plain - -# -# The mod_mime_magic module allows the server to use various hints from the -# contents of the file itself to determine its type. The MIMEMagicFile -# directive tells the module where the hint definitions are located. -# mod_mime_magic is not part of the default server (you have to add -# it yourself with a LoadModule [see the DSO paragraph in the 'Global -# Environment' section], or recompile the server and include mod_mime_magic -# as part of the configuration), so it's enclosed in an <IfModule> container. -# This means that the MIMEMagicFile directive will only be processed if the -# module is part of the server. -# -<IfModule mod_mime_magic.c> - MIMEMagicFile /etc/apache/magic -</IfModule> - -# -# HostnameLookups: Log the names of clients or just their IP addresses -# e.g., www.apache.org (on) or 204.62.129.132 (off). -# The default is off because it'd be overall better for the net if people -# had to knowingly turn this feature on, since enabling it means that -# each client request will result in AT LEAST one lookup request to the -# nameserver. -# -HostnameLookups Off - -# -# ErrorLog: The location of the error log file. -# If you do not specify an ErrorLog directive within a <VirtualHost> -# container, error messages relating to that virtual host will be -# logged here. If you *do* define an error logfile for a <VirtualHost> -# container, that host's errors will be logged there and not here. -# -ErrorLog "| /usr/bin/error-log.sh /var/log/apache/error_log" - -# -# LogLevel: Control the number of messages logged to the error_log. -# Possible values include: debug, info, notice, warn, error, crit, -# alert, emerg. -# -LogLevel warn - -# -# The following directives define some format nicknames for use with -# a CustomLog directive (see below). -# -LogFormat "%l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined -LogFormat "%l %u %t \"%r\" %>s %b" common -LogFormat "%{Referer}i -> %U" referer -LogFormat "%{User-agent}i" agent - -# -# The location and format of the access logfile (Common Logfile Format). -# If you do not define any access logfiles within a <VirtualHost> -# container, they will be logged here. Contrariwise, if you *do* -# define per-<VirtualHost> access logfiles, transactions will be -# logged therein and *not* in this file. -# -CustomLog /var/log/apache/access_log common - -# -# If you would like to have agent and referer logfiles, uncomment the -# following directives. -# -#CustomLog /var/log/apache/referer_log referer -#CustomLog /var/log/apache/agent_log agent - -# -# If you prefer a single logfile with access, agent, and referer information -# (Combined Logfile Format) you can use the following directive. -# -#CustomLog /var/log/apache/access_log combined - -# -# Optionally add a line containing the server version and virtual host -# name to server-generated pages (error documents, FTP directory listings, -# mod_status and mod_info output etc., but not CGI generated documents). -# Set to "EMail" to also include a mailto: link to the ServerAdmin. -# Set to one of: On | Off | EMail -# -ServerSignature Off - -# EBCDIC configuration: -# (only for mainframes using the EBCDIC codeset, currently one of: -# Fujitsu-Siemens' BS2000/OSD, IBM's OS/390 and IBM's TPF)!! -# The following default configuration assumes that "text files" -# are stored in EBCDIC (so that you can operate on them using the -# normal POSIX tools like grep and sort) while "binary files" are -# stored with identical octets as on an ASCII machine. -# -# The directives are evaluated in configuration file order, with -# the EBCDICConvert directives applied before EBCDICConvertByType. -# -# If you want to have ASCII HTML documents and EBCDIC HTML documents -# at the same time, you can use the file extension to force -# conversion off for the ASCII documents: -# > AddType text/html .ahtml -# > EBCDICConvert Off=InOut .ahtml -# -# EBCDICConvertByType On=InOut text/* message/* multipart/* -# EBCDICConvertByType On=In application/x-www-form-urlencoded -# EBCDICConvertByType On=InOut application/postscript model/vrml -# EBCDICConvertByType Off=InOut */* - - -# -# Aliases: Add here as many aliases as you need (with no limit). The format is -# Alias fakename realname -# -<IfModule mod_alias.c> - - # - # Note that if you include a trailing / on fakename then the server will - # require it to be present in the URL. So "/icons" isn't aliased in this - # example, only "/icons/". If the fakename is slash-terminated, then the - # realname must also be slash terminated, and if the fakename omits the - # trailing slash, the realname must also omit it. - # - Alias /icons/ "/var/www/icons/" - - <Directory "/var/www/icons"> - Options Indexes MultiViews - AllowOverride None - Order allow,deny - Allow from all - </Directory> - - # This Alias will project the on-line documentation tree under /manual/ - # even if you change the DocumentRoot. Comment it if you don't want to - # provide access to the on-line documentation. - # - Alias /manual/ "/var/www/htdocs/manual/" - - <Directory "/var/www/htdocs/manual"> - Options Indexes FollowSymlinks MultiViews - AllowOverride None - Order allow,deny - Allow from all - </Directory> - - # - # ScriptAlias: This controls which directories contain server scripts. - # ScriptAliases are essentially the same as Aliases, except that - # documents in the realname directory are treated as applications and - # run by the server when requested rather than as documents sent to the client. - # The same rules about trailing "/" apply to ScriptAlias directives as to - # Alias. - # - ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" - - # - # "/var/www/cgi-bin" should be changed to whatever your ScriptAliased - # CGI directory exists, if you have that configured. - # - <Directory "/var/www/cgi-bin"> - AllowOverride None - Options None - Order allow,deny - Allow from all - </Directory> - -</IfModule> -# End of aliases. - -# -# Redirect allows you to tell clients about documents which used to exist in -# your server's namespace, but do not anymore. This allows you to tell the -# clients where to look for the relocated document. -# Format: Redirect old-URI new-URL -# - -# -# Directives controlling the display of server-generated directory listings. -# -<IfModule mod_autoindex.c> - - # - # FancyIndexing is whether you want fancy directory indexing or standard - # - IndexOptions FancyIndexing - - # - # AddIcon* directives tell the server which icon to show for different - # files or filename extensions. These are only displayed for - # FancyIndexed directories. - # - AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip - - AddIconByType (TXT,/icons/text.gif) text/* - AddIconByType (IMG,/icons/image2.gif) image/* - AddIconByType (SND,/icons/sound2.gif) audio/* - AddIconByType (VID,/icons/movie.gif) video/* - - AddIcon /icons/binary.gif .bin .exe - AddIcon /icons/binhex.gif .hqx - AddIcon /icons/tar.gif .tar - AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv - AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip - AddIcon /icons/a.gif .ps .ai .eps - AddIcon /icons/layout.gif .html .shtml .htm .pdf - AddIcon /icons/text.gif .txt - AddIcon /icons/c.gif .c - AddIcon /icons/p.gif .pl .py - AddIcon /icons/f.gif .for - AddIcon /icons/dvi.gif .dvi - AddIcon /icons/uuencoded.gif .uu - AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl - AddIcon /icons/tex.gif .tex - AddIcon /icons/bomb.gif core - - AddIcon /icons/back.gif .. - AddIcon /icons/hand.right.gif README - AddIcon /icons/folder.gif ^^DIRECTORY^^ - AddIcon /icons/blank.gif ^^BLANKICON^^ - - # - # DefaultIcon is which icon to show for files which do not have an icon - # explicitly set. - # - DefaultIcon /icons/unknown.gif - - # - # AddDescription allows you to place a short description after a file in - # server-generated indexes. These are only displayed for FancyIndexed - # directories. - # Format: AddDescription "description" filename - # - #AddDescription "GZIP compressed document" .gz - #AddDescription "tar archive" .tar - #AddDescription "GZIP compressed tar archive" .tgz - - # - # ReadmeName is the name of the README file the server will look for by - # default, and append to directory listings. - # - # HeaderName is the name of a file which should be prepended to - # directory indexes. - # - ReadmeName README.html - HeaderName HEADER.html - - # - # IndexIgnore is a set of filenames which directory indexing should ignore - # and not include in the listing. Shell-style wildcarding is permitted. - # - IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t - -</IfModule> -# End of indexing directives. - -# -# Document types. -# -<IfModule mod_mime.c> - - # - # AddLanguage allows you to specify the language of a document. You can - # then use content negotiation to give a browser a file in a language - # it can understand. - # - # Note 1: The suffix does not have to be the same as the language - # keyword --- those with documents in Polish (whose net-standard - # language code is pl) may wish to use "AddLanguage pl .po" to - # avoid the ambiguity with the common suffix for perl scripts. - # - # Note 2: The example entries below illustrate that in quite - # some cases the two character 'Language' abbreviation is not - # identical to the two character 'Country' code for its country, - # E.g. 'Danmark/dk' versus 'Danish/da'. - # - # Note 3: In the case of 'ltz' we violate the RFC by using a three char - # specifier. But there is 'work in progress' to fix this and get - # the reference data for rfc1766 cleaned up. - # - # Danish (da) - Dutch (nl) - English (en) - Estonian (ee) - # French (fr) - German (de) - Greek-Modern (el) - # Italian (it) - Korean (kr) - Norwegian (no) - Norwegian Nynorsk (nn) - # Portugese (pt) - Luxembourgeois* (ltz) - # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cs) - # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja) - # Russian (ru) - # - AddLanguage da .dk - AddLanguage nl .nl - AddLanguage en .en - AddLanguage et .ee - AddLanguage fr .fr - AddLanguage de .de - AddLanguage el .el - AddLanguage he .he - AddCharset ISO-8859-8 .iso8859-8 - AddLanguage it .it - AddLanguage ja .ja - AddCharset ISO-2022-JP .jis - AddLanguage kr .kr - AddCharset ISO-2022-KR .iso-kr - AddLanguage nn .nn - AddLanguage no .no - AddLanguage pl .po - AddCharset ISO-8859-2 .iso-pl - AddLanguage pt .pt - AddLanguage pt-br .pt-br - AddLanguage ltz .lu - AddLanguage ca .ca - AddLanguage es .es - AddLanguage sv .sv - AddLanguage cs .cz .cs - AddLanguage ru .ru - AddLanguage zh-TW .zh-tw - AddCharset Big5 .Big5 .big5 - AddCharset WINDOWS-1251 .cp-1251 - AddCharset CP866 .cp866 - AddCharset ISO-8859-5 .iso-ru - AddCharset KOI8-R .koi8-r - AddCharset UCS-2 .ucs2 - AddCharset UCS-4 .ucs4 - AddCharset UTF-8 .utf8 - - # LanguagePriority allows you to give precedence to some languages - # in case of a tie during content negotiation. - # - # Just list the languages in decreasing order of preference. We have - # more or less alphabetized them here. You probably want to change this. - # - <IfModule mod_negotiation.c> - LanguagePriority en da nl et fr de el it ja kr no pl pt pt-br ru ltz ca es sv tw - </IfModule> - - # - # AddType allows you to tweak mime.types without actually editing it, or to - # make certain files to be certain types. - # - AddType application/x-tar .tgz - - # - # AddEncoding allows you to have certain browsers uncompress - # information on the fly. Note: Not all browsers support this. - # Despite the name similarity, the following Add* directives have nothing - # to do with the FancyIndexing customization directives above. - # - AddEncoding x-compress .Z - AddEncoding x-gzip .gz .tgz - # - # If the AddEncoding directives above are commented-out, then you - # probably should define those extensions to indicate media types: - # - #AddType application/x-compress .Z - #AddType application/x-gzip .gz .tgz - - # - # AddHandler allows you to map certain file extensions to "handlers", - # actions unrelated to filetype. These can be either built into the server - # or added with the Action command (see below) - # - # If you want to use server side includes, or CGI outside - # ScriptAliased directories, uncomment the following lines. - # - # To use CGI scripts: - # - #AddHandler cgi-script .cgi - - # - # To use server-parsed HTML files - # - #AddType text/html .shtml - #AddHandler server-parsed .shtml - - # - # Uncomment the following line to enable Apache's send-asis HTTP file - # feature - # - #AddHandler send-as-is asis - - # - # If you wish to use server-parsed imagemap files, use - # - #AddHandler imap-file map - - # - # To enable type maps, you might want to use - # - #AddHandler type-map var - -</IfModule> -# End of document types. - -# -# Action lets you define media types that will execute a script whenever -# a matching file is called. This eliminates the need for repeated URL -# pathnames for oft-used CGI file processors. -# Format: Action media/type /cgi-script/location -# Format: Action handler-name /cgi-script/location -# - -# -# MetaDir: specifies the name of the directory in which Apache can find -# meta information files. These files contain additional HTTP headers -# to include when sending the document -# -#MetaDir .web - -# -# MetaSuffix: specifies the file name suffix for the file containing the -# meta information. -# -#MetaSuffix .meta - -# -# Customizable error response (Apache style) -# these come in three flavors -# -# 1) plain text -ErrorDocument 500 /missing.html -# n.b. the single leading (") marks it as text, it does not get output -# -# 2) local redirects -ErrorDocument 404 /missing.html -# to redirect to local URL /missing.html -#ErrorDocument 404 /cgi-bin/missing_handler.pl -# N.B.: You can redirect to a script or a document using server-side-includes. -# -# 3) external redirects -ErrorDocument 402 /missing.html -# N.B.: Many of the environment variables associated with the original -# request will *not* be available to such a script. - -# -# Customize behaviour based on the browser -# -<IfModule mod_setenvif.c> - - # - # The following directives modify normal HTTP response behavior. - # The first directive disables keepalive for Netscape 2.x and browsers that - # spoof it. There are known problems with these browser implementations. - # The second directive is for Microsoft Internet Explorer 4.0b2 - # which has a broken HTTP/1.1 implementation and does not properly - # support keepalive when it is used on 301 or 302 (redirect) responses. - # - BrowserMatch "Mozilla/2" nokeepalive - BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 - - # - # The following directive disables HTTP/1.1 responses to browsers which - # are in violation of the HTTP/1.0 spec by not being able to grok a - # basic 1.1 response. - # - BrowserMatch "RealPlayer 4\.0" force-response-1.0 - BrowserMatch "Java/1\.0" force-response-1.0 - BrowserMatch "JDK/1\.0" force-response-1.0 - -</IfModule> -# End of browser customization directives - -# -# Allow server status reports, with the URL of http://servername/server-status -# Change the ".example.com" to match your domain to enable. -# -#<Location /server-status> -# SetHandler server-status -# Order deny,allow -# Deny from all -# Allow from .example.com -#</Location> - -# -# Allow remote server configuration reports, with the URL of -# http://servername/server-info (requires that mod_info.c be loaded). -# Change the ".example.com" to match your domain to enable. -# -#<Location /server-info> -# SetHandler server-info -# Order deny,allow -# Deny from all -# Allow from .example.com -#</Location> - -# -# There have been reports of people trying to abuse an old bug from pre-1.1 -# days. This bug involved a CGI script distributed as a part of Apache. -# By uncommenting these lines you can redirect these attacks to a logging -# script on phf.apache.org. Or, you can record them yourself, using the script -# support/phf_abuse_log.cgi. -# -#<Location /cgi-bin/phf*> -# Deny from all -# ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi -#</Location> - -### Section 3: Virtual Hosts -# -# VirtualHost: If you want to maintain multiple domains/hostnames on your -# machine you can setup VirtualHost containers for them. Most configurations -# use only name-based virtual hosts so the server doesn't need to worry about -# IP addresses. This is indicated by the asterisks in the directives below. -# -# Please see the documentation at <URL:http://www.apache.org/docs/vhosts/> -# for further details before you try to setup virtual hosts. -# -# You may use the command line option '-S' to verify your virtual host -# configuration. - -# -# Use name-based virtual hosting. -# -#NameVirtualHost *:80 - -# -# VirtualHost example: -# Almost any Apache directive may go into a VirtualHost container. -# The first VirtualHost section is used for requests without a known -# server name. -# -#<VirtualHost *:80> -# ServerAdmin webmaster@dummy-host.example.com -# DocumentRoot /www/docs/dummy-host.example.com -# ServerName dummy-host.example.com -# ErrorLog logs/dummy-host.example.com-error_log -# CustomLog logs/dummy-host.example.com-access_log common -#</VirtualHost> - -# By default, all external Apache modules are disabled. To enable a particular -# module for Apache, make sure the necessary packages are installed. Then -# uncomment the appropriate Include line below, save the file, and restart -# Apache. Note that some modules may need additional configuration steps. For -# example, mod_ssl requires a site certificate which you may need to generate. -# -# Lastly, if you remove a module package, be sure to edit this file and comment -# out the appropriate Include line. - -# ==> mod_php configuration settings <== -# -# PACKAGES REQUIRED: openssl-solibs (A series) and/or openssl (N series), -# mysql (AP series), gmp (L series), mhash (L series), -# and apache (N series) -# -#Include /etc/apache/mod_php.conf - -# ==> mod_ssl configuration settings <== -# -# PACKAGES REQUIRED: apache (N series) and openssl (N series) -# -#Include /etc/apache/mod_ssl.conf - -#NameVirtualHost VSERVER_IP - -Include /etc/apache/vhosts diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/php.ini b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/php.ini deleted file mode 100644 index e6cddef..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/php.ini +++ /dev/null @@ -1,1122 +0,0 @@ -[PHP] - -;;;;;;;;;;;;;;;;;;; -; About this file ; -;;;;;;;;;;;;;;;;;;; -; -; This is the recommended, PHP 4-style version of the php.ini-dist file. It -; sets some non standard settings, that make PHP more efficient, more secure, -; and encourage cleaner coding. -; The price is that with these settings, PHP may be incompatible with some -; applications, and sometimes, more difficult to develop with. Using this -; file is warmly recommended for production sites. As all of the changes from -; the standard settings are thoroughly documented, you can go over each one, -; and decide whether you want to use it or not. -; -; For general information about the php.ini file, please consult the php.ini-dist -; file, included in your PHP distribution. -; -; This file is different from the php.ini-dist file in the fact that it features -; different values for several directives, in order to improve performance, while -; possibly breaking compatibility with the standard out-of-the-box behavior of -; PHP 3. Please make sure you read what's different, and modify your scripts -; accordingly, if you decide to use this file instead. -; -; - register_globals = Off [Security, Performance] -; Global variables are no longer registered for input data (POST, GET, cookies, -; environment and other server variables). Instead of using $foo, you must use -; you can use $_REQUEST["foo"] (includes any variable that arrives through the -; request, namely, POST, GET and cookie variables), or use one of the specific -; $_GET["foo"], $_POST["foo"], $_COOKIE["foo"] or $_FILES["foo"], depending -; on where the input originates. Also, you can look at the -; import_request_variables() function. -; Note that register_globals is going to be depracated (i.e., turned off by -; default) in the next version of PHP, because it often leads to security bugs. -; Read http://php.net/manual/en/security.registerglobals.php for further -; information. -; - display_errors = Off [Security] -; With this directive set to off, errors that occur during the execution of -; scripts will no longer be displayed as a part of the script output, and thus, -; will no longer be exposed to remote users. With some errors, the error message -; content may expose information about your script, web server, or database -; server that may be exploitable for hacking. Production sites should have this -; directive set to off. -; - log_errors = On [Security] -; This directive complements the above one. Any errors that occur during the -; execution of your script will be logged (typically, to your server's error log, -; but can be configured in several ways). Along with setting display_errors to off, -; this setup gives you the ability to fully understand what may have gone wrong, -; without exposing any sensitive information to remote users. -; - output_buffering = 4096 [Performance] -; Set a 4KB output buffer. Enabling output buffering typically results in less -; writes, and sometimes less packets sent on the wire, which can often lead to -; better performance. The gain this directive actually yields greatly depends -; on which Web server you're working with, and what kind of scripts you're using. -; - register_argc_argv = Off [Performance] -; Disables registration of the somewhat redundant $argv and $argc global -; variables. -; - magic_quotes_gpc = Off [Performance] -; Input data is no longer escaped with slashes so that it can be sent into -; SQL databases without further manipulation. Instead, you should use the -; function addslashes() on each input element you wish to send to a database. -; - variables_order = "GPCS" [Performance] -; The environment variables are not hashed into the $HTTP_ENV_VARS[]. To access -; environment variables, you can use getenv() instead. -; - error_reporting = E_ALL [Code Cleanliness, Security(?)] -; By default, PHP surpresses errors of type E_NOTICE. These error messages -; are emitted for non-critical errors, but that could be a symptom of a bigger -; problem. Most notably, this will cause error messages about the use -; of uninitialized variables to be displayed. -; - allow_call_time_pass_reference = Off [Code cleanliness] -; It's not possible to decide to force a variable to be passed by reference -; when calling a function. The PHP 4 style to do this is by making the -; function require the relevant argument by reference. - - -;;;;;;;;;;;;;;;;;;;; -; Language Options ; -;;;;;;;;;;;;;;;;;;;; - -; Enable the PHP scripting language engine under Apache. -engine = On - -; Allow the <? tag. Otherwise, only <?php and <script> tags are recognized. -; NOTE: Using short tags should be avoided when developing applications or -; libraries that are meant for redistribution, or deployment on PHP -; servers which are not under your control, because short tags may not -; be supported on the target server. For portable, redistributable code, -; be sure not to use short tags. -short_open_tag = On - -; Allow ASP-style <% %> tags. -asp_tags = Off - -; The number of significant digits displayed in floating point numbers. -precision = 14 - -; Enforce year 2000 compliance (will cause problems with non-compliant browsers) -y2k_compliance = On - -; Output buffering allows you to send header lines (including cookies) even -; after you send body content, at the price of slowing PHP's output layer a -; bit. You can enable output buffering during runtime by calling the output -; buffering functions. You can also enable output buffering for all files by -; setting this directive to On. If you wish to limit the size of the buffer -; to a certain size - you can use a maximum number of bytes instead of 'On', as -; a value for this directive (e.g., output_buffering=4096). -output_buffering = 4096 - -; You can redirect all of the output of your scripts to a function. For -; example, if you set output_handler to "mb_output_handler", character -; encoding will be transparently converted to the specified encoding. -; Setting any output handler automatically turns on output buffering. -; Note: People who wrote portable scripts should not depend on this ini -; directive. Instead, explicitly set the output handler using ob_start(). -; Using this ini directive may cause problems unless you know what script -; is doing. -; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler" -; and you cannot use both "ob_gzhandler" and "zlib.output_compression". -;output_handler = - -; Transparent output compression using the zlib library -; Valid values for this option are 'off', 'on', or a specific buffer size -; to be used for compression (default is 4KB) -; Note: Resulting chunk size may vary due to nature of compression. PHP -; outputs chunks that are few handreds bytes each as a result of compression. -; If you want larger chunk size for better performence, enable output_buffering -; also. -; Note: output_handler must be empty if this is set 'On' !!!! -; Instead you must use zlib.output_handler. -zlib.output_compression = Off - -; You cannot specify additional output handlers if zlib.output_compression -; is activated here. This setting does the same as output_handler but in -; a different order. -;zlib.output_handler = - -; Implicit flush tells PHP to tell the output layer to flush itself -; automatically after every output block. This is equivalent to calling the -; PHP function flush() after each and every call to print() or echo() and each -; and every HTML block. Turning this option on has serious performance -; implications and is generally recommended for debugging purposes only. -implicit_flush = Off - -; The unserialize callback function will be called (with the undefined class' -; name as parameter), if the unserializer finds an undefined class -; which should be instanciated. -; A warning appears if the specified function is not defined, or if the -; function doesn't include/implement the missing class. -; So only set this entry, if you really want to implement such a -; callback-function. -unserialize_callback_func= - -; When floats & doubles are serialized store serialize_precision significant -; digits after the floating point. The default value ensures that when floats -; are decoded with unserialize, the data will remain the same. -serialize_precision = 100 - -; Whether to enable the ability to force arguments to be passed by reference -; at function call time. This method is deprecated and is likely to be -; unsupported in future versions of PHP/Zend. The encouraged method of -; specifying which arguments should be passed by reference is in the function -; declaration. You're encouraged to try and turn this option Off and make -; sure your scripts work properly with it in order to ensure they will work -; with future versions of the language (you will receive a warning each time -; you use this feature, and the argument will be passed by value instead of by -; reference). -allow_call_time_pass_reference = Off - -; -; Safe Mode -; -safe_mode = Off - -; By default, Safe Mode does a UID compare check when -; opening files. If you want to relax this to a GID compare, -; then turn on safe_mode_gid. -safe_mode_gid = Off - -; When safe_mode is on, UID/GID checks are bypassed when -; including files from this directory and its subdirectories. -; (directory must also be in include_path or full path must -; be used when including) -safe_mode_include_dir = - -; When safe_mode is on, only executables located in the safe_mode_exec_dir -; will be allowed to be executed via the exec family of functions. -safe_mode_exec_dir = - -; Setting certain environment variables may be a potential security breach. -; This directive contains a comma-delimited list of prefixes. In Safe Mode, -; the user may only alter environment variables whose names begin with the -; prefixes supplied here. By default, users will only be able to set -; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR). -; -; Note: If this directive is empty, PHP will let the user modify ANY -; environment variable! -safe_mode_allowed_env_vars = PHP_ - -; This directive contains a comma-delimited list of environment variables that -; the end user won't be able to change using putenv(). These variables will be -; protected even if safe_mode_allowed_env_vars is set to allow to change them. -safe_mode_protected_env_vars = LD_LIBRARY_PATH - -; open_basedir, if set, limits all file operations to the defined directory -; and below. This directive makes most sense if used in a per-directory -; or per-virtualhost web server configuration file. This directive is -; *NOT* affected by whether Safe Mode is turned On or Off. -;open_basedir = - -; This directive allows you to disable certain functions for security reasons. -; It receives a comma-delimited list of function names. This directive is -; *NOT* affected by whether Safe Mode is turned On or Off. -disable_functions = - -; This directive allows you to disable certain classes for security reasons. -; It receives a comma-delimited list of class names. This directive is -; *NOT* affected by whether Safe Mode is turned On or Off. -disable_classes = - -; Colors for Syntax Highlighting mode. Anything that's acceptable in -; <font color="??????"> would work. -;highlight.string = #DD0000 -;highlight.comment = #FF9900 -;highlight.keyword = #007700 -;highlight.bg = #FFFFFF -;highlight.default = #0000BB -;highlight.html = #000000 - - -; -; Misc -; -; Decides whether PHP may expose the fact that it is installed on the server -; (e.g. by adding its signature to the Web server header). It is no security -; threat in any way, but it makes it possible to determine whether you use PHP -; on your server or not. -expose_php = On - - -;;;;;;;;;;;;;;;;;;; -; Resource Limits ; -;;;;;;;;;;;;;;;;;;; - -max_execution_time = 30 ; Maximum execution time of each script, in seconds -max_input_time = 60 ; Maximum amount of time each script may spend parsing request data -memory_limit = 8M ; Maximum amount of memory a script may consume (8MB) - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Error handling and logging ; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -; error_reporting is a bit-field. Or each number up to get desired error -; reporting level -; E_ALL - All errors and warnings -; E_ERROR - fatal run-time errors -; E_WARNING - run-time warnings (non-fatal errors) -; E_PARSE - compile-time parse errors -; E_NOTICE - run-time notices (these are warnings which often result -; from a bug in your code, but it's possible that it was -; intentional (e.g., using an uninitialized variable and -; relying on the fact it's automatically initialized to an -; empty string) -; E_CORE_ERROR - fatal errors that occur during PHP's initial startup -; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's -; initial startup -; E_COMPILE_ERROR - fatal compile-time errors -; E_COMPILE_WARNING - compile-time warnings (non-fatal errors) -; E_USER_ERROR - user-generated error message -; E_USER_WARNING - user-generated warning message -; E_USER_NOTICE - user-generated notice message -; -; Examples: -; -; - Show all errors, except for notices -; -;error_reporting = E_ALL & ~E_NOTICE -; -; - Show only errors -; -;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR -; -; - Show all errors -; -error_reporting = E_ALL - -; Print out errors (as a part of the output). For production web sites, -; you're strongly encouraged to turn this feature off, and use error logging -; instead (see below). Keeping display_errors enabled on a production web site -; may reveal security information to end users, such as file paths on your Web -; server, your database schema or other information. -display_errors = Off - -; Even when display_errors is on, errors that occur during PHP's startup -; sequence are not displayed. It's strongly recommended to keep -; display_startup_errors off, except for when debugging. -display_startup_errors = Off - -; Log errors into a log file (server-specific log, stderr, or error_log (below)) -; As stated above, you're strongly advised to use error logging in place of -; error displaying on production web sites. -log_errors = On - -; Set maximum length of log_errors. In error_log information about the source is -; added. The default is 1024 and 0 allows to not apply any maximum length at all. -log_errors_max_len = 1024 - -; Do not log repeated messages. Repeated errors must occur in same file on same -; line until ignore_repeated_source is set true. -ignore_repeated_errors = Off - -; Ignore source of message when ignoring repeated messages. When this setting -; is On you will not log errors with repeated messages from different files or -; sourcelines. -ignore_repeated_source = Off - -; If this parameter is set to Off, then memory leaks will not be shown (on -; stdout or in the log). This has only effect in a debug compile, and if -; error reporting includes E_WARNING in the allowed list -report_memleaks = On - -; Store the last error/warning message in $php_errormsg (boolean). -track_errors = Off - -; Disable the inclusion of HTML tags in error messages. -;html_errors = Off - -; If html_errors is set On PHP produces clickable error messages that direct -; to a page describing the error or function causing the error in detail. -; You can download a copy of the PHP manual from http://www.php.net/docs.php -; and change docref_root to the base URL of your local copy including the -; leading '/'. You must also specify the file extension being used including -; the dot. -;docref_root = "/phpmanual/" -;docref_ext = .html - -; String to output before an error message. -;error_prepend_string = "<font color=ff0000>" - -; String to output after an error message. -;error_append_string = "</font>" - -; Log errors to specified file. -;error_log = filename - -; Log errors to syslog (Event Log on NT, not valid in Windows 95). -;error_log = syslog - - -;;;;;;;;;;;;;;;;; -; Data Handling ; -;;;;;;;;;;;;;;;;; -; -; Note - track_vars is ALWAYS enabled as of PHP 4.0.3 - -; The separator used in PHP generated URLs to separate arguments. -; Default is "&". -;arg_separator.output = "&" - -; List of separator(s) used by PHP to parse input URLs into variables. -; Default is "&". -; NOTE: Every character in this directive is considered as separator! -;arg_separator.input = ";&" - -; This directive describes the order in which PHP registers GET, POST, Cookie, -; Environment and Built-in variables (G, P, C, E & S respectively, often -; referred to as EGPCS or GPC). Registration is done from left to right, newer -; values override older values. -variables_order = "GPCS" - -; Whether or not to register the EGPCS variables as global variables. You may -; want to turn this off if you don't want to clutter your scripts' global scope -; with user data. This makes most sense when coupled with track_vars - in which -; case you can access all of the GPC variables through the $HTTP_*_VARS[], -; variables. -; -; You should do your best to write your scripts so that they do not require -; register_globals to be on; Using form variables as globals can easily lead -; to possible security problems, if the code is not very well thought of. -register_globals = Off - -; This directive tells PHP whether to declare the argv&argc variables (that -; would contain the GET information). If you don't use these variables, you -; should turn it off for increased performance. -register_argc_argv = Off - -; Maximum size of POST data that PHP will accept. -post_max_size = 8M - -; This directive is deprecated. Use variables_order instead. -gpc_order = "GPC" - -; Magic quotes -; - -; Magic quotes for incoming GET/POST/Cookie data. -magic_quotes_gpc = Off - -; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc. -magic_quotes_runtime = Off - -; Use Sybase-style magic quotes (escape ' with '' instead of \'). -magic_quotes_sybase = Off - -; Automatically add files before or after any PHP document. -auto_prepend_file = -auto_append_file = - -; As of 4.0b4, PHP always outputs a character encoding by default in -; the Content-type: header. To disable sending of the charset, simply -; set it to be empty. -; -; PHP's built-in default is text/html -default_mimetype = "text/html" -;default_charset = "iso-8859-1" - -; Always populate the $HTTP_RAW_POST_DATA variable. -;always_populate_raw_post_data = On - - -;;;;;;;;;;;;;;;;;;;;;;;;; -; Paths and Directories ; -;;;;;;;;;;;;;;;;;;;;;;;;; - -; UNIX: "/path1:/path2" -;include_path = ".:/php/includes" -; -; Windows: "\path1;\path2" -;include_path = ".;c:\php\includes" - -; The root of the PHP pages, used only if nonempty. -; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root -; if you are running php as a CGI under any web server (other than IIS) -; see documentation for security issues. The alternate is to use the -; cgi.force_redirect configuration below -doc_root = - -; The directory under which PHP opens the script using /~usernamem used only -; if nonempty. -user_dir = - -; Directory in which the loadable extensions (modules) reside. -; extension_dir = "./" -extension_dir = "/usr/lib/php/extensions/" - -; Whether or not to enable the dl() function. The dl() function does NOT work -; properly in multithreaded servers, such as IIS or Zeus, and is automatically -; disabled on them. -enable_dl = On - -; cgi.force_redirect is necessary to provide security running PHP as a CGI under -; most web servers. Left undefined, PHP turns this on by default. You can -; turn it off here AT YOUR OWN RISK -; **You CAN safely turn this off for IIS, in fact, you MUST.** -; cgi.force_redirect = 1 - -; if cgi.nph is enabled it will force cgi to always sent Status: 200 with -; every request. -; cgi.nph = 1 - -; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape -; (iPlanet) web servers, you MAY need to set an environment variable name that PHP -; will look for to know it is OK to continue execution. Setting this variable MAY -; cause security issues, KNOW WHAT YOU ARE DOING FIRST. -; cgi.redirect_status_env = ; - -; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's -; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok -; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting -; this to 1 will cause PHP CGI to fix it's paths to conform to the spec. A setting -; of zero causes PHP to behave as before. Default is zero. You should fix your scripts -; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. -; cgi.fix_pathinfo=1 - -; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate -; security tokens of the calling client. This allows IIS to define the -; security context that the request runs under. mod_fastcgi under Apache -; does not currently support this feature (03/17/2002) -; Set to 1 if running under IIS. Default is zero. -; fastcgi.impersonate = 1; - -; Disable logging through FastCGI connection -; fastcgi.log = 0 - -; cgi.rfc2616_headers configuration option tells PHP what type of headers to -; use when sending HTTP response code. If it's set 0 PHP sends Status: header that -; is supported by Apache. When this option is set to 1 PHP will send -; RFC2616 compliant header. -; Default is zero. -;cgi.rfc2616_headers = 0 - - -;;;;;;;;;;;;;;;; -; File Uploads ; -;;;;;;;;;;;;;;;; - -; Whether to allow HTTP file uploads. -file_uploads = On - -; Temporary directory for HTTP uploaded files (will use system default if not -; specified). -;upload_tmp_dir = - -; Maximum allowed size for uploaded files. -upload_max_filesize = 10M - - -;;;;;;;;;;;;;;;;;; -; Fopen wrappers ; -;;;;;;;;;;;;;;;;;; - -; Whether to allow the treatment of URLs (like http:// or ftp://) as files. -allow_url_fopen = On - -; Define the anonymous ftp password (your email address) -;from="john@doe.com" - -; Define the user agent for php to send -;user_agent="PHP" - -; Default timeout for socket based streams (seconds) -default_socket_timeout = 60 - -; If your scripts have to deal with files from Macintosh systems, -; or you are running on a Mac and need to deal with files from -; unix or win32 systems, setting this flag will cause PHP to -; automatically detect the EOL character in those files so that -; fgets() and file() will work regardless of the source of the file. -; auto_detect_line_endings = Off - - -;;;;;;;;;;;;;;;;;;;;;; -; Dynamic Extensions ; -;;;;;;;;;;;;;;;;;;;;;; -; -; If you wish to have an extension loaded automatically, use the following -; syntax: -; -; extension=modulename.extension -; -; For example, on Windows: -; -; extension=msql.dll -; -; ... or under UNIX: -; -; extension=msql.so -; -; Note that it should be the name of the module only; no directory information -; needs to go here. Specify the location of the extension with the -; extension_dir directive above. -; -; Load the MySQL module by default. Comment this out if you don't use MySQL. -extension=mysql.so - -; Load the gettext extension by default. Comment this out if you don't have the -; gettext shared library installed. -extension=gettext.so - -;Windows Extensions -;Note that MySQL and ODBC support is now built in, so no dll is needed for it. -; -;extension=php_mbstring.dll -;extension=php_bz2.dll -;extension=php_cpdf.dll -;extension=php_crack.dll -;extension=php_curl.dll -;extension=php_db.dll -;extension=php_dba.dll -;extension=php_dbase.dll -;extension=php_dbx.dll -;extension=php_domxml.dll -;extension=php_exif.dll -;extension=php_fdf.dll -;extension=php_filepro.dll -;extension=php_gd2.dll -;extension=php_gettext.dll -;extension=php_hyperwave.dll -;extension=php_iconv.dll -;extension=php_ifx.dll -;extension=php_iisfunc.dll -;extension=php_imap.dll -;extension=php_interbase.dll -;extension=php_java.dll -;extension=php_ldap.dll -;extension=php_mcrypt.dll -;extension=php_mhash.dll -;extension=php_mime_magic.dll -;extension=php_ming.dll -;extension=php_mssql.dll -;extension=php_msql.dll -;extension=php_oci8.dll -;extension=php_openssl.dll -;extension=php_oracle.dll -;extension=php_pdf.dll -;extension=php_pgsql.dll -;extension=php_printer.dll -;extension=php_shmop.dll -;extension=php_snmp.dll -;extension=php_sockets.dll -;extension=php_sybase_ct.dll -;extension=php_w32api.dll -;extension=php_xmlrpc.dll -;extension=php_xslt.dll -;extension=php_yaz.dll -;extension=php_zip.dll - - -;;;;;;;;;;;;;;;;;;; -; Module Settings ; -;;;;;;;;;;;;;;;;;;; - -[Syslog] -; Whether or not to define the various syslog variables (e.g. $LOG_PID, -; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In -; runtime, you can define these variables by calling define_syslog_variables(). -define_syslog_variables = Off - -[mail function] -; For Win32 only. -SMTP = localhost -smtp_port = 25 - -; For Win32 only. -;sendmail_from = me@example.com - -; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). -;sendmail_path = - -[Java] -;java.class.path = .\php_java.jar -;java.home = c:\jdk -;java.library = c:\jdk\jre\bin\hotspot\jvm.dll -;java.library.path = .\ - -[SQL] -sql.safe_mode = Off - -[ODBC] -;odbc.default_db = Not yet implemented -;odbc.default_user = Not yet implemented -;odbc.default_pw = Not yet implemented - -; Allow or prevent persistent links. -odbc.allow_persistent = On - -; Check that a connection is still valid before reuse. -odbc.check_persistent = On - -; Maximum number of persistent links. -1 means no limit. -odbc.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -odbc.max_links = -1 - -; Handling of LONG fields. Returns number of bytes to variables. 0 means -; passthru. -odbc.defaultlrl = 4096 - -; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char. -; See the documentation on odbc_binmode and odbc_longreadlen for an explanation -; of uodbc.defaultlrl and uodbc.defaultbinmode -odbc.defaultbinmode = 1 - -[MySQL] -; Allow or prevent persistent links. -mysql.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -mysql.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -mysql.max_links = -1 - -; Default port number for mysql_connect(). If unset, mysql_connect() will use -; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the -; compile-time value defined MYSQL_PORT (in that order). Win32 will only look -; at MYSQL_PORT. -mysql.default_port = - -; Default socket name for local MySQL connects. If empty, uses the built-in -; MySQL defaults. -mysql.default_socket = - -; Default host for mysql_connect() (doesn't apply in safe mode). -mysql.default_host = - -; Default user for mysql_connect() (doesn't apply in safe mode). -mysql.default_user = - -; Default password for mysql_connect() (doesn't apply in safe mode). -; Note that this is generally a *bad* idea to store passwords in this file. -; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password") -; and reveal this password! And of course, any users with read access to this -; file will be able to reveal the password as well. -mysql.default_password = - -; Maximum time (in seconds) for connect timeout. -1 means no limit -mysql.connect_timeout = 60 - -; Trace mode. When trace_mode is active (=On), warnings for table/index scans and -; SQL-Errors will be displayed. -mysql.trace_mode = Off - -[mSQL] -; Allow or prevent persistent links. -msql.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -msql.max_persistent = -1 - -; Maximum number of links (persistent+non persistent). -1 means no limit. -msql.max_links = -1 - -[PostgresSQL] -; Allow or prevent persistent links. -pgsql.allow_persistent = On - -; Detect broken persistent links always with pg_pconnect(). -; Auto reset feature requires a little overheads. -pgsql.auto_reset_persistent = Off - -; Maximum number of persistent links. -1 means no limit. -pgsql.max_persistent = -1 - -; Maximum number of links (persistent+non persistent). -1 means no limit. -pgsql.max_links = -1 - -; Ignore PostgreSQL backends Notice message or not. -; Notice message logging require a little overheads. -pgsql.ignore_notice = 0 - -; Log PostgreSQL backends Noitce message or not. -; Unless pgsql.ignore_notice=0, module cannot log notice message. -pgsql.log_notice = 0 - -[Sybase] -; Allow or prevent persistent links. -sybase.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -sybase.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -sybase.max_links = -1 - -;sybase.interface_file = "/usr/sybase/interfaces" - -; Minimum error severity to display. -sybase.min_error_severity = 10 - -; Minimum message severity to display. -sybase.min_message_severity = 10 - -; Compatability mode with old versions of PHP 3.0. -; If on, this will cause PHP to automatically assign types to results according -; to their Sybase type, instead of treating them all as strings. This -; compatibility mode will probably not stay around forever, so try applying -; whatever necessary changes to your code, and turn it off. -sybase.compatability_mode = Off - -[Sybase-CT] -; Allow or prevent persistent links. -sybct.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -sybct.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -sybct.max_links = -1 - -; Minimum server message severity to display. -sybct.min_server_severity = 10 - -; Minimum client message severity to display. -sybct.min_client_severity = 10 - -[dbx] -; returned column names can be converted for compatibility reasons -; possible values for dbx.colnames_case are -; "unchanged" (default, if not set) -; "lowercase" -; "uppercase" -; the recommended default is either upper- or lowercase, but -; unchanged is currently set for backwards compatibility -dbx.colnames_case = "lowercase" - -[bcmath] -; Number of decimal digits for all bcmath functions. -bcmath.scale = 0 - -[browscap] -;browscap = extra/browscap.ini - -[Informix] -; Default host for ifx_connect() (doesn't apply in safe mode). -ifx.default_host = - -; Default user for ifx_connect() (doesn't apply in safe mode). -ifx.default_user = - -; Default password for ifx_connect() (doesn't apply in safe mode). -ifx.default_password = - -; Allow or prevent persistent links. -ifx.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -ifx.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -ifx.max_links = -1 - -; If on, select statements return the contents of a text blob instead of its id. -ifx.textasvarchar = 0 - -; If on, select statements return the contents of a byte blob instead of its id. -ifx.byteasvarchar = 0 - -; Trailing blanks are stripped from fixed-length char columns. May help the -; life of Informix SE users. -ifx.charasvarchar = 0 - -; If on, the contents of text and byte blobs are dumped to a file instead of -; keeping them in memory. -ifx.blobinfile = 0 - -; NULL's are returned as empty strings, unless this is set to 1. In that case, -; NULL's are returned as string 'NULL'. -ifx.nullformat = 0 - -[Session] -; Handler used to store/retrieve data. -session.save_handler = files - -; Argument passed to save_handler. In the case of files, this is the path -; where data files are stored. Note: Windows users have to change this -; variable in order to use PHP's session functions. -;session.save_path = /tmp - -; Whether to use cookies. -session.use_cookies = 1 - -; This option enables administrators to make their users invulnerable to -; attacks which involve passing session ids in URLs; defaults to 0. -; session.use_only_cookies = 1 - -; Name of the session (used as cookie name). -session.name = PHPSESSID - -; Initialize session on request startup. -session.auto_start = 0 - -; Lifetime in seconds of cookie or, if 0, until browser is restarted. -session.cookie_lifetime = 0 - -; The path for which the cookie is valid. -session.cookie_path = / - -; The domain for which the cookie is valid. -session.cookie_domain = - -; Handler used to serialize data. php is the standard serializer of PHP. -session.serialize_handler = php - -; Define the probability that the 'garbage collection' process is started -; on every session initialization. -; The probability is calculated by using gc_probability/gc_divisor, -; e.g. 1/100 means there is a 1% chance that the GC process starts -; on each request. - -session.gc_probability = 1 -session.gc_divisor = 1000 - -; After this number of seconds, stored data will be seen as 'garbage' and -; cleaned up by the garbage collection process. -session.gc_maxlifetime = 1440 - -; PHP 4.2 and less have an undocumented feature/bug that allows you to -; to initialize a session variable in the global scope, albeit register_globals -; is disabled. PHP 4.3 and later will warn you, if this feature is used. -; You can disable the feature and the warning separately. At this time, -; the warning is only displayed, if bug_compat_42 is enabled. - -session.bug_compat_42 = 0 -session.bug_compat_warn = 1 - -; Check HTTP Referer to invalidate externally stored URLs containing ids. -; HTTP_REFERER has to contain this substring for the session to be -; considered as valid. -session.referer_check = - -; How many bytes to read from the file. -session.entropy_length = 0 - -; Specified here to create the session id. -session.entropy_file = - -;session.entropy_length = 16 - -;session.entropy_file = /dev/urandom - -; Set to {nocache,private,public,} to determine HTTP caching aspects. -; or leave this empty to avoid sending anti-caching headers. -session.cache_limiter = nocache - -; Document expires after n minutes. -session.cache_expire = 180 - -; trans sid support is disabled by default. -; Use of trans sid may risk your users security. -; Use this option with caution. -; - User may send URL contains active session ID -; to other person via. email/irc/etc. -; - URL that contains active session ID may be stored -; in publically accessible computer. -; - User may access your site with the same session ID -; always using URL stored in browser's history or bookmarks. -session.use_trans_sid = 0 - -; The URL rewriter will look for URLs in a defined set of HTML tags. -; form/fieldset are special; if you include them here, the rewriter will -; add a hidden <input> field with the info which is otherwise appended -; to URLs. If you want XHTML conformity, remove the form entry. -; Note that all valid entries require a "=", even if no value follows. -url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" - -[MSSQL] -; Allow or prevent persistent links. -mssql.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -mssql.max_persistent = -1 - -; Maximum number of links (persistent+non persistent). -1 means no limit. -mssql.max_links = -1 - -; Minimum error severity to display. -mssql.min_error_severity = 10 - -; Minimum message severity to display. -mssql.min_message_severity = 10 - -; Compatability mode with old versions of PHP 3.0. -mssql.compatability_mode = Off - -; Connect timeout -;mssql.connect_timeout = 5 - -; Query timeout -;mssql.timeout = 60 - -; Valid range 0 - 2147483647. Default = 4096. -;mssql.textlimit = 4096 - -; Valid range 0 - 2147483647. Default = 4096. -;mssql.textsize = 4096 - -; Limits the number of records in each batch. 0 = all records in one batch. -;mssql.batchsize = 0 - -; Specify how datetime and datetim4 columns are returned -; On => Returns data converted to SQL server settings -; Off => Returns values as YYYY-MM-DD hh:mm:ss -;mssql.datetimeconvert = On - -; Use NT authentication when connecting to the server -mssql.secure_connection = Off - -; Specify max number of processes. Default = 25 -;mssql.max_procs = 25 - -[Assertion] -; Assert(expr); active by default. -;assert.active = On - -; Issue a PHP warning for each failed assertion. -;assert.warning = On - -; Don't bail out by default. -;assert.bail = Off - -; User-function to be called if an assertion fails. -;assert.callback = 0 - -; Eval the expression with current error_reporting(). Set to true if you want -; error_reporting(0) around the eval(). -;assert.quiet_eval = 0 - -[Ingres II] -; Allow or prevent persistent links. -ingres.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -ingres.max_persistent = -1 - -; Maximum number of links, including persistents. -1 means no limit. -ingres.max_links = -1 - -; Default database (format: [node_id::]dbname[/srv_class]). -ingres.default_database = - -; Default user. -ingres.default_user = - -; Default password. -ingres.default_password = - -[Verisign Payflow Pro] -; Default Payflow Pro server. -pfpro.defaulthost = "test-payflow.verisign.com" - -; Default port to connect to. -pfpro.defaultport = 443 - -; Default timeout in seconds. -pfpro.defaulttimeout = 30 - -; Default proxy IP address (if required). -;pfpro.proxyaddress = - -; Default proxy port. -;pfpro.proxyport = - -; Default proxy logon. -;pfpro.proxylogon = - -; Default proxy password. -;pfpro.proxypassword = - -[com] -; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs -;com.typelib_file = -; allow Distributed-COM calls -;com.allow_dcom = true -; autoregister constants of a components typlib on com_load() -;com.autoregister_typelib = true -; register constants casesensitive -;com.autoregister_casesensitive = false -; show warnings on duplicate constat registrations -;com.autoregister_verbose = true - -[Printer] -;printer.default_printer = "" - -[mbstring] -; language for internal character representation. -;mbstring.language = Japanese - -; internal/script encoding. -; Some encoding cannot work as internal encoding. -; (e.g. SJIS, BIG5, ISO-2022-*) -;mbstring.internal_encoding = EUC-JP - -; http input encoding. -;mbstring.http_input = auto - -; http output encoding. mb_output_handler must be -; registered as output buffer to function -;mbstring.http_output = SJIS - -; enable automatic encoding translation accoding to -; mbstring.internal_encoding setting. Input chars are -; converted to internal encoding by setting this to On. -; Note: Do _not_ use automatic encoding translation for -; portable libs/applications. -;mbstring.encoding_translation = Off - -; automatic encoding detection order. -; auto means -;mbstring.detect_order = auto - -; substitute_character used when character cannot be converted -; one from another -;mbstring.substitute_character = none; - -; overload(replace) single byte functions by mbstring functions. -; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(), -; etc. Possible values are 0,1,2,4 or combination of them. -; For example, 7 for overload everything. -; 0: No overload -; 1: Overload mail() function -; 2: Overload str*() functions -; 4: Overload ereg*() functions -;mbstring.func_overload = 0 - -[FrontBase] -;fbsql.allow_persistent = On -;fbsql.autocommit = On -;fbsql.default_database = -;fbsql.default_database_password = -;fbsql.default_host = -;fbsql.default_password = -;fbsql.default_user = "_SYSTEM" -;fbsql.generate_warnings = Off -;fbsql.max_connections = 128 -;fbsql.max_links = 128 -;fbsql.max_persistent = -1 -;fbsql.max_results = 128 -;fbsql.batchSize = 1000 - -[Crack] -; Modify the setting below to match the directory location of the cracklib -; dictionary files. Include the base filename, but not the file extension. -; crack.default_dictionary = "c:\php\lib\cracklib_dict" - -[exif] -; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. -; With mbstring support this will automatically be converted into the encoding -; given by corresponding encode setting. When empty mbstring.internal_encoding -; is used. For the decode settings you can distinguish between motorola and -; intel byte order. A decode setting cannot be empty. -;exif.encode_unicode = ISO-8859-15 -;exif.decode_unicode_motorola = UCS-2BE -;exif.decode_unicode_intel = UCS-2LE -;exif.encode_jis = -;exif.decode_jis_motorola = JIS -;exif.decode_jis_intel = JIS - -; Local Variables: -; tab-width: 4 -; End: diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/vhosts b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/vhosts deleted file mode 100644 index e69de29..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/apache/vhosts +++ /dev/null diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/hosts b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/hosts deleted file mode 100644 index 6e33147..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/hosts +++ /dev/null @@ -1,21 +0,0 @@ -# -# hosts This file describes a number of hostname-to-address -# mappings for the TCP/IP subsystem. It is mostly -# used at boot time, when no name servers are running. -# On small systems, this file can be used instead of a -# "named" name server. Just add the names, addresses -# and any aliases to this file... -# -# By the way, Arnt Gulbrandsen <agulbra@nvg.unit.no> says that 127.0.0.1 -# should NEVER be named with the name of the machine. It causes problems -# for some (stupid) programs, irc and reputedly talk. :^) -# - -# For loopbacking. -127.0.0.1 localhost -# This next entry is technically wrong, but good enough to get TCP/IP apps -# to quit complaining that they can't verify the hostname on a loopback-only -# Linux box. -127.0.0.1 darkstar.example.net darkstar - -# End of hosts. diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/logrotate.d/apache b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/logrotate.d/apache deleted file mode 100644 index f31fbe2..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/logrotate.d/apache +++ /dev/null @@ -1,11 +0,0 @@ -/var/log/apache/access_log /var/log/apache/error_log { - monthly - nomail - compress - create 0664 root root - rotate 12 - postrotate - /etc/rc.d/rc.httpd restart > /dev/null - endscript -} - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/profile b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/profile deleted file mode 100644 index 563594a..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/profile +++ /dev/null @@ -1,87 +0,0 @@ -# /etc/profile: This file contains system-wide defaults used by -# all Bourne (and related) shells. - -# Set the values for some environment variables: -export MINICOM="-c on" -export MANPATH=/usr/local/man:/usr/man:/usr/X11R6/man -export HOSTNAME="`cat /etc/HOSTNAME`" -export LESSOPEN="|lesspipe.sh %s" -export LESS="-M" - -# If the user doesn't have a .inputrc, use the one in /etc. -if [ ! -r "$HOME/.inputrc" ]; then - export INPUTRC=/etc/inputrc -fi - -# Set the default system $PATH: -PATH="/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games" - -# For root users, ensure that /usr/local/sbin, /usr/sbin, and /sbin are in -# the $PATH. Some means of connection don't add these by default (sshd comes -# to mind). -if [ "`id -u`" = "0" ]; then - echo $PATH | grep /usr/local/sbin 1> /dev/null 2> /dev/null - if [ ! $? = 0 ]; then - PATH=/usr/local/sbin:/usr/sbin:/sbin:$PATH - fi -fi - -# I had problems using 'eval tset' instead of 'TERM=', but you might want to -# try it anyway. I think with the right /etc/termcap it would work great. -# eval `tset -sQ "$TERM"` -if [ "$TERM" = "" -o "$TERM" = "unknown" ]; then - TERM=linux -fi - -# Set ksh93 visual editing mode: -if [ "$SHELL" = "/bin/ksh" ]; then - VISUAL=emacs -# VISUAL=gmacs -# VISUAL=vi -fi - -# Set a default shell prompt: -#PS1='`hostname`:`pwd`# ' -if [ "$SHELL" = "/bin/pdksh" ]; then - PS1='! $ ' -elif [ "$SHELL" = "/bin/ksh" ]; then - PS1='! ${PWD/#$HOME/~}$ ' -elif [ "$SHELL" = "/bin/zsh" ]; then - PS1='%n@%m:%~%# ' -elif [ "$SHELL" = "/bin/ash" ]; then - PS1='$ ' -else - PS1='\u@\h:\w\$ ' -fi -PS2='> ' -export PATH DISPLAY LESS TERM PS1 PS2 - -# Default umask. A umask of 022 prevents new files from being created group -# and world writable. -umask 022 - -# Set up the LS_COLORS and LS_OPTIONS environment variables for color ls: -if [ "$SHELL" = "/bin/zsh" ]; then - eval `dircolors -z` -elif [ "$SHELL" = "/bin/ash" ]; then - eval `dircolors -s` -else - eval `dircolors -b` -fi - -# Append any additional sh scripts found in /etc/profile.d/: -for profile_script in /etc/profile.d/*.sh ; do - if [ -x $profile_script ]; then - . $profile_script - fi -done -unset profile_script - -# For non-root users, add the current directory to the search path: -if [ ! "`id -u`" = "0" ]; then - PATH="$PATH:." -fi - -# firewall: -export FTP_PASSIVE=1 - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.0 b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.0 deleted file mode 100755 index bfec90a..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.0 +++ /dev/null @@ -1,110 +0,0 @@ -#! /bin/sh -# -# rc.6 This file is executed by init when it goes into runlevel -# 0 (halt) or runlevel 6 (reboot). It kills all processes, -# unmounts file systems and then either halts or reboots. -# -# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001 -# -# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org> -# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com> -# - -# Set the path. -PATH=/sbin:/etc:/bin:/usr/bin - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Set linefeed mode to avoid staircase effect. -stty onlcr - -echo "Running shutdown script $0:" - -# Find out how we were called. -case "$0" in - *0) - command="halt" - ;; - *6) - command=reboot - ;; - *) - echo "$0: call me as \"rc.0\" or \"rc.6\" please!" - exit 1 - ;; -esac - -# Stop the Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - /etc/rc.d/rc.httpd stop -fi - -# Stop the MySQL database: -if [ -r /var/run/mysql/mysql.pid ]; then - . /etc/rc.d/rc.mysqld stop -fi - -# Stop the Samba server: -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba stop -fi - -# Try to kill dhcpcd so the DHCP leases can be returned: -killall -15 dhcpcd 1> /dev/null 2> /dev/null - -# Try to shut down pppd: -PS="$(ps ax)" -if echo "$PS" | grep -q -w pppd ; then - if [ -x /usr/sbin/ppp-off ]; then - /usr/sbin/ppp-off - fi -fi - -# Turn off process accounting: -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - echo "Turning off process accounting." - /sbin/accton -fi - -# Kill all processes. -# INIT is supposed to handle this entirely now, but this didn't always -# work correctly without this second pass at killing off the processes. -# Since INIT already notified the user that processes were being killed, -# we'll avoid echoing this info this time around. -if [ "$1" != "fast" ]; then # shutdown did not already kill all processes - killall5 -15 - sleep 5 - killall5 -9 -fi - -# Carry a random seed between reboots. -echo "Saving random seed from /dev/urandom in /etc/random-seed." -# Use the pool size from /proc, or 512 bytes: -if [ -r /proc/sys/kernel/random/poolsize ]; then - dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null -else - dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null -fi -chmod 600 /etc/random-seed - -# Before unmounting file systems write a reboot or halt record to wtmp. -$command -w - -# Clear /var/lock/subsys. -if [ -d /var/lock/subsys ]; then - rm -f /var/lock/subsys/* -fi - -# This never hurts: -sync - -# sleep 1 fixes problems with some hard drives that don't -# otherwise finish syncing before reboot or poweroff -sleep 1 - -# This is to ensure all processes have completed on SMP machines: -wait - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.4 b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.4 deleted file mode 100644 index b972052..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.4 +++ /dev/null @@ -1,256 +0,0 @@ -#!/bin/sh -# -# rc.M This file is executed by init(8) when the system is being -# initialized for one of the "multi user" run levels (i.e. -# levels 1 through 6). It usually does mounting of file -# systems et al. -# -# Version: @(#)/etc/rc.d/rc.M 2.23 Wed Feb 26 19:20:58 PST 2003 -# -# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> -# Heavily modified by Patrick Volkerding <volkerdi@slackware.com> -# - -# Tell the viewers what's going to happen. -echo "Going multiuser..." - -# Screen blanks after 15 minutes idle time, and powers down in one hour -# if the kernel supports APM or ACPI power management: -#/bin/setterm -blank 15 -powersave powerdown -powerdown 60 - -# Set the hostname. -#if [ -r /etc/HOSTNAME ]; then -# /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .) -#else - # fall back on this old default: -# echo "darkstar.example.net" > /etc/HOSTNAME -# /bin/hostname darkstar -#fi - -# Save the contents of 'dmesg': -#/bin/dmesg -s 65536 > /var/log/dmesg - -# Start the system logger. -if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then - . /etc/rc.d/rc.syslog start -fi - -# Initialize PCMCIA devices: -# -# NOTE: This used to be started near the top of rc.S so that PCMCIA devices -# could be fsck'ed along with the other drives. This had some unfortunate -# side effects, however, since root isn't yet read-write, and /var might not -# even be mounted the .pid files can't be correctly written in /var/run and -# the pcmcia system can't be correctly shut down. If you want some PCMCIA -# partition to be mounted at boot (or when the card is inserted) then add -# the appropriate lines to /etc/pcmcia/scsi.opts. -# -if [ -x /etc/rc.d/rc.pcmcia ] ; then - . /etc/rc.d/rc.pcmcia start - # The cards might need a little extra time here to initialize. - if [ -r /var/run/cardmgr.pid ]; then - sleep 5 - fi -fi - -# Initialize the networking hardware. If your network driver is a module -# and you haven't loaded it manually, this will be deferred until after -# the hotplug system loads the module below. -#if [ -x /etc/rc.d/rc.inet1 ]; then -# . /etc/rc.d/rc.inet1 -#fi - -# Initialize the hotplugging subsystem for Cardbus, IEEE1394, PCI, and USB devices: -if [ -x /etc/rc.d/rc.hotplug -a -r /proc/modules ]; then - # Don't run hotplug if 'nohotplug' was given at boot. - if ! grep nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - echo "Activating hardware detection: /etc/rc.d/rc.hotplug start" - . /etc/rc.d/rc.hotplug start - fi -fi - -# Start networking daemons: -if [ -x /etc/rc.d/rc.inet2 ]; then - . /etc/rc.d/rc.inet2 -fi - -# Remove stale locks and junk files (must be done after mount -a!) -/bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/core /core 2> /dev/null - -# Remove stale hunt sockets so the game can start. -if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then - echo "Removing your stale hunt sockets from /tmp." - /bin/rm -f /tmp/hunt* -fi - -# Ensure basic filesystem permissions sanity. -chmod 755 / 2> /dev/null -chmod 1777 /tmp /var/tmp - -# Update all the shared library links: -if [ -x /sbin/ldconfig ]; then - echo "Updating shared library links: /sbin/ldconfig" - /sbin/ldconfig -fi - -# Update the X font indexes: -if [ -x /usr/X11R6/bin/fc-cache ]; then - echo "Updating X font indexes: /usr/X11R6/bin/fc-cache" - /usr/X11R6/bin/fc-cache -fi - -# Start the print spooling system. This will usually be LPRng (lpd) or CUPS. -if [ -x /etc/rc.d/rc.cups ]; then - # Start CUPS: - /etc/rc.d/rc.cups start -elif [ -x /etc/rc.d/rc.lprng ]; then - # Start LPRng (lpd): - . /etc/rc.d/rc.lprng start -fi - -# Start netatalk. (a file/print server for Macs using Appletalk) -if [ -x /etc/rc.d/rc.atalk ]; then - /etc/rc.d/rc.atalk -fi - -# Start smartd, which monitors the status of S.M.A.R.T. compatible -# hard drives and reports any problems. Note some devices (which aren't -# smart, I guess ;) will hang if probed by smartd, so it's commented out -# by default. -#if [ -x /usr/sbin/smartd ]; then -# /usr/sbin/smartd -#fi - -# Monitor the UPS with genpowerd. -# To use this, uncomment this section and edit your settings in -# /etc/genpowerd.conf (serial device, UPS type, etc). For more information, -# see "man genpowerd" or the extensive documentation in the -# /usr/doc/genpower-1.0.3 directory. -# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want -# support for stopping the UPS's inverter after the machine halts. -#if [ -x /sbin/genpowerd ]; then -# echo "Starting genpowerd daemon..." -# /sbin/genpowerd -#fi - -# Turn on process accounting. To enable process accounting, make sure the -# option for BSD process accounting is enabled in your kernel, and then -# create the file /var/log/pacct (touch /var/log/pacct). By default, process -# accounting is not enabled (since /var/log/pacct does not exist). This is -# because the log file can get VERY large. -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - /sbin/accton /var/log/pacct - chmod 640 /var/log/pacct - echo "Process accounting turned on." -fi - -# Start crond (Dillon's crond): -# If you want cron to actually log activity to /var/log/cron, then change -# -l10 to -l8 to increase the logging level. -if [ -x /usr/sbin/crond ]; then - /usr/sbin/crond -l10 >>/var/log/cron 2>&1 -fi - -# Start atd (manages jobs scheduled with 'at'): -if [ -x /usr/sbin/atd ]; then - /usr/sbin/atd -b 15 -l 1 -fi - -# Slackware-Mini-Quota-HOWTO: -# To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to -# the appropriate partitions as listed in /etc/fstab. Here's an example: -# -# /dev/hda2 /home ext3 defaults,usrquota 1 1 -# -# You'll then need to setup initial quota files at the top of the partitions -# to support quota, like this: -# touch /home/aquota.user /home/aquota.group -# chmod 600 /home/aquota.user /home/aquota.group -# -# Then, reboot to activate the system. -# To edit user quotas, use 'edquota'. See 'man edquota'. Also, the -# official Quota Mini-HOWTO has lots of useful information. That can be found -# here: /usr/doc/Linux-HOWTOs/Quota - -# Check quotas and then turn quota system on: -if grep -q quota /etc/fstab ; then - if [ -x /sbin/quotacheck ]; then - echo "Checking filesystem quotas: /sbin/quotacheck -avugm" - /sbin/quotacheck -avugm - fi - if [ -x /sbin/quotaon ]; then - echo "Activating filesystem quotas: /sbin/quotaon -avug" - /sbin/quotaon -avug - fi -fi - -# Start the sendmail daemon: -if [ -x /etc/rc.d/rc.sendmail ]; then - . /etc/rc.d/rc.sendmail start -fi - -# Start the APM daemon if APM is enabled in the kernel: -if [ -x /usr/sbin/apmd ]; then - if cat /proc/apm 1> /dev/null 2> /dev/null ; then - echo "Starting APM daemon: /usr/sbin/apmd" - /usr/sbin/apmd - fi -fi - -# Start the ACPI (Advanced Configuration and Power Interface) daemon: -if [ -x /etc/rc.d/rc.acpid ]; then - . /etc/rc.d/rc.acpid start -fi - -# Load ALSA (sound) defaults: -if [ -x /etc/rc.d/rc.alsa ]; then - . /etc/rc.d/rc.alsa -fi - -# Load a custom screen font if the user has an rc.font script. -if [ -x /etc/rc.d/rc.font ]; then - . /etc/rc.d/rc.font -fi - -# Load a custom keymap if the user has an rc.keymap script. -if [ -x /etc/rc.d/rc.keymap ]; then - . /etc/rc.d/rc.keymap -fi - -# Initialize HP Officejet support: -if [ -x /etc/rc.d/rc.hpoj ]; then - . /etc/rc.d/rc.hpoj start -fi - -# Start the MySQL database: -if [ -x /etc/rc.d/rc.mysqld ]; then - . /etc/rc.d/rc.mysqld start -fi - -# Start Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - . /etc/rc.d/rc.httpd start -fi - -# Start Samba (a file/print server for Win95/NT machines). -# Samba can be started in /etc/inetd.conf instead. -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba start -fi - -# Start the GPM mouse server: -if [ -x /etc/rc.d/rc.gpm ]; then - . /etc/rc.d/rc.gpm start -fi - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Start the local setup procedure. -if [ -x /etc/rc.d/rc.local ]; then - . /etc/rc.d/rc.local -fi - -# All done. diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.6 b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.6 deleted file mode 100755 index bfec90a..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.6 +++ /dev/null @@ -1,110 +0,0 @@ -#! /bin/sh -# -# rc.6 This file is executed by init when it goes into runlevel -# 0 (halt) or runlevel 6 (reboot). It kills all processes, -# unmounts file systems and then either halts or reboots. -# -# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001 -# -# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org> -# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com> -# - -# Set the path. -PATH=/sbin:/etc:/bin:/usr/bin - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Set linefeed mode to avoid staircase effect. -stty onlcr - -echo "Running shutdown script $0:" - -# Find out how we were called. -case "$0" in - *0) - command="halt" - ;; - *6) - command=reboot - ;; - *) - echo "$0: call me as \"rc.0\" or \"rc.6\" please!" - exit 1 - ;; -esac - -# Stop the Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - /etc/rc.d/rc.httpd stop -fi - -# Stop the MySQL database: -if [ -r /var/run/mysql/mysql.pid ]; then - . /etc/rc.d/rc.mysqld stop -fi - -# Stop the Samba server: -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba stop -fi - -# Try to kill dhcpcd so the DHCP leases can be returned: -killall -15 dhcpcd 1> /dev/null 2> /dev/null - -# Try to shut down pppd: -PS="$(ps ax)" -if echo "$PS" | grep -q -w pppd ; then - if [ -x /usr/sbin/ppp-off ]; then - /usr/sbin/ppp-off - fi -fi - -# Turn off process accounting: -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - echo "Turning off process accounting." - /sbin/accton -fi - -# Kill all processes. -# INIT is supposed to handle this entirely now, but this didn't always -# work correctly without this second pass at killing off the processes. -# Since INIT already notified the user that processes were being killed, -# we'll avoid echoing this info this time around. -if [ "$1" != "fast" ]; then # shutdown did not already kill all processes - killall5 -15 - sleep 5 - killall5 -9 -fi - -# Carry a random seed between reboots. -echo "Saving random seed from /dev/urandom in /etc/random-seed." -# Use the pool size from /proc, or 512 bytes: -if [ -r /proc/sys/kernel/random/poolsize ]; then - dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null -else - dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null -fi -chmod 600 /etc/random-seed - -# Before unmounting file systems write a reboot or halt record to wtmp. -$command -w - -# Clear /var/lock/subsys. -if [ -d /var/lock/subsys ]; then - rm -f /var/lock/subsys/* -fi - -# This never hurts: -sync - -# sleep 1 fixes problems with some hard drives that don't -# otherwise finish syncing before reboot or poweroff -sleep 1 - -# This is to ensure all processes have completed on SMP machines: -wait - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.K b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.K deleted file mode 100755 index 00a1501..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.K +++ /dev/null @@ -1,88 +0,0 @@ -#! /bin/sh -# -# rc.K This file is executed by init when it goes into runlevel -# 1, which is the administrative state. It kills all -# daemons and then puts the system into single user mode. -# Note that the file systems are kept mounted. -# -# Version: @(#)/etc/rc.d/rc.K 3.1415 Sat Jan 13 13:37:26 PST 2001 -# -# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org> -# Modified by: Patrick J. Volkerding <volkerdi@slackware.com> -# - -# Set the path. -PATH=/sbin:/bin:/usr/bin:/usr/sbin - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Try to turn off quota: -if grep -q quota /etc/fstab ; then - if [ -x /sbin/quotaoff ]; then - echo "Turning off filesystem quotas." - /sbin/quotaoff -a - fi -fi - -# Try to turn off accounting: -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - echo "Turning off accounting." - /sbin/accton -fi - -# Stop the Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - /etc/rc.d/rc.httpd stop -fi - -# Stop the Samba server: -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba stop -fi - -# Shut down the NFS server: -if [ -x /etc/rc.d/rc.nfsd ]; then - /etc/rc.d/rc.nfsd stop -fi - -# Shut down PCMCIA devices: -if [ -x /etc/rc.d/rc.pcmcia ] ; then - . /etc/rc.d/rc.pcmcia stop - # The cards might need a little extra time here to initialize. - sleep 5 -fi - -# Kill all processes. -echo -echo "Sending all processes the SIGHUP signal." -killall5 -1 -echo -n "Waiting for processes to hang up" -for loop in 0 1 2 3 4 5 ; do - sleep 1 - echo -n "." -done -echo -echo "Sending all processes the SIGTERM signal." -killall5 -15 -echo -n "Waiting for processes to terminate" -for loop in 0 1 2 3 4 5 ; do - sleep 1 - echo -n "." -done -echo -echo "Sending all processes the SIGKILL signal." -killall5 -9 -echo -n "Waiting for processes to exit" -for loop in 0 1 2 3 4 5 ; do - sleep 1 - echo -n "." -done -echo - -# Now go to the single user level -echo "Going to single user mode..." -telinit -t 1 1 - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.M b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.M deleted file mode 100755 index 0cb3343..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.M +++ /dev/null @@ -1,256 +0,0 @@ -#!/bin/sh -# -# rc.M This file is executed by init(8) when the system is being -# initialized for one of the "multi user" run levels (i.e. -# levels 1 through 6). It usually does mounting of file -# systems et al. -# -# Version: @(#)/etc/rc.d/rc.M 2.23 Wed Feb 26 19:20:58 PST 2003 -# -# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> -# Heavily modified by Patrick Volkerding <volkerdi@slackware.com> -# - -# Tell the viewers what's going to happen. -echo "Going multiuser..." - -# Screen blanks after 15 minutes idle time, and powers down in one hour -# if the kernel supports APM or ACPI power management: -#/bin/setterm -blank 15 -powersave powerdown -powerdown 60 - -# Set the hostname. -#if [ -r /etc/HOSTNAME ]; then -# /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .) -#else - # fall back on this old default: -# echo "darkstar.example.net" > /etc/HOSTNAME -# /bin/hostname darkstar -#fi - -# Save the contents of 'dmesg': -#/bin/dmesg -s 65536 > /var/log/dmesg - -# Start the system logger. -if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then - . /etc/rc.d/rc.syslog start -fi - -# Initialize PCMCIA devices: -# -# NOTE: This used to be started near the top of rc.S so that PCMCIA devices -# could be fsck'ed along with the other drives. This had some unfortunate -# side effects, however, since root isn't yet read-write, and /var might not -# even be mounted the .pid files can't be correctly written in /var/run and -# the pcmcia system can't be correctly shut down. If you want some PCMCIA -# partition to be mounted at boot (or when the card is inserted) then add -# the appropriate lines to /etc/pcmcia/scsi.opts. -# -if [ -x /etc/rc.d/rc.pcmcia ] ; then - . /etc/rc.d/rc.pcmcia start - # The cards might need a little extra time here to initialize. - if [ -r /var/run/cardmgr.pid ]; then - sleep 5 - fi -fi - -# Initialize the networking hardware. If your network driver is a module -# and you haven't loaded it manually, this will be deferred until after -# the hotplug system loads the module below. -#if [ -x /etc/rc.d/rc.inet1 ]; then -# . /etc/rc.d/rc.inet1 -#fi - -# Initialize the hotplugging subsystem for Cardbus, IEEE1394, PCI, and USB devices: -if [ -x /etc/rc.d/rc.hotplug -a -r /proc/modules ]; then - # Don't run hotplug if 'nohotplug' was given at boot. - if ! grep nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - echo "Activating hardware detection: /etc/rc.d/rc.hotplug start" - . /etc/rc.d/rc.hotplug start - fi -fi - -# Start networking daemons: -if [ -x /etc/rc.d/rc.inet2 ]; then - . /etc/rc.d/rc.inet2 -fi - -# Remove stale locks and junk files (must be done after mount -a!) -/bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/core /core 2> /dev/null - -# Remove stale hunt sockets so the game can start. -if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then - echo "Removing your stale hunt sockets from /tmp." - /bin/rm -f /tmp/hunt* -fi - -# Ensure basic filesystem permissions sanity. -chmod 755 / 2> /dev/null -chmod 1777 /tmp /var/tmp - -# Update all the shared library links: -if [ -x /sbin/ldconfig ]; then - echo "Updating shared library links: /sbin/ldconfig" - /sbin/ldconfig -fi - -# Update the X font indexes: -if [ -x /usr/X11R6/bin/fc-cache ]; then - echo "Updating X font indexes: /usr/X11R6/bin/fc-cache" - /usr/X11R6/bin/fc-cache -fi - -# Start the print spooling system. This will usually be LPRng (lpd) or CUPS. -if [ -x /etc/rc.d/rc.cups ]; then - # Start CUPS: - /etc/rc.d/rc.cups start -elif [ -x /etc/rc.d/rc.lprng ]; then - # Start LPRng (lpd): - . /etc/rc.d/rc.lprng start -fi - -# Start netatalk. (a file/print server for Macs using Appletalk) -if [ -x /etc/rc.d/rc.atalk ]; then - /etc/rc.d/rc.atalk -fi - -# Start smartd, which monitors the status of S.M.A.R.T. compatible -# hard drives and reports any problems. Note some devices (which aren't -# smart, I guess ;) will hang if probed by smartd, so it's commented out -# by default. -#if [ -x /usr/sbin/smartd ]; then -# /usr/sbin/smartd -#fi - -# Monitor the UPS with genpowerd. -# To use this, uncomment this section and edit your settings in -# /etc/genpowerd.conf (serial device, UPS type, etc). For more information, -# see "man genpowerd" or the extensive documentation in the -# /usr/doc/genpower-1.0.3 directory. -# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want -# support for stopping the UPS's inverter after the machine halts. -#if [ -x /sbin/genpowerd ]; then -# echo "Starting genpowerd daemon..." -# /sbin/genpowerd -#fi - -# Turn on process accounting. To enable process accounting, make sure the -# option for BSD process accounting is enabled in your kernel, and then -# create the file /var/log/pacct (touch /var/log/pacct). By default, process -# accounting is not enabled (since /var/log/pacct does not exist). This is -# because the log file can get VERY large. -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - /sbin/accton /var/log/pacct - chmod 640 /var/log/pacct - echo "Process accounting turned on." -fi - -# Start crond (Dillon's crond): -# If you want cron to actually log activity to /var/log/cron, then change -# -l10 to -l8 to increase the logging level. -if [ -x /usr/sbin/crond ]; then - /usr/sbin/crond -l10 >>/var/log/cron 2>&1 -fi - -# Start atd (manages jobs scheduled with 'at'): -if [ -x /usr/sbin/atd ]; then - /usr/sbin/atd -b 15 -l 1 -fi - -# Slackware-Mini-Quota-HOWTO: -# To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to -# the appropriate partitions as listed in /etc/fstab. Here's an example: -# -# /dev/hda2 /home ext3 defaults,usrquota 1 1 -# -# You'll then need to setup initial quota files at the top of the partitions -# to support quota, like this: -# touch /home/aquota.user /home/aquota.group -# chmod 600 /home/aquota.user /home/aquota.group -# -# Then, reboot to activate the system. -# To edit user quotas, use 'edquota'. See 'man edquota'. Also, the -# official Quota Mini-HOWTO has lots of useful information. That can be found -# here: /usr/doc/Linux-HOWTOs/Quota - -# Check quotas and then turn quota system on: -if grep -q quota /etc/fstab ; then - if [ -x /sbin/quotacheck ]; then - echo "Checking filesystem quotas: /sbin/quotacheck -avugm" - /sbin/quotacheck -avugm - fi - if [ -x /sbin/quotaon ]; then - echo "Activating filesystem quotas: /sbin/quotaon -avug" - /sbin/quotaon -avug - fi -fi - -# Start the sendmail daemon: -if [ -x /etc/rc.d/rc.sendmail ]; then - . /etc/rc.d/rc.sendmail start -fi - -# Start the APM daemon if APM is enabled in the kernel: -if [ -x /usr/sbin/apmd ]; then - if cat /proc/apm 1> /dev/null 2> /dev/null ; then - echo "Starting APM daemon: /usr/sbin/apmd" - /usr/sbin/apmd - fi -fi - -# Start the ACPI (Advanced Configuration and Power Interface) daemon: -if [ -x /etc/rc.d/rc.acpid ]; then - . /etc/rc.d/rc.acpid start -fi - -# Load ALSA (sound) defaults: -if [ -x /etc/rc.d/rc.alsa ]; then - . /etc/rc.d/rc.alsa -fi - -# Load a custom screen font if the user has an rc.font script. -if [ -x /etc/rc.d/rc.font ]; then - . /etc/rc.d/rc.font -fi - -# Load a custom keymap if the user has an rc.keymap script. -if [ -x /etc/rc.d/rc.keymap ]; then - . /etc/rc.d/rc.keymap -fi - -# Initialize HP Officejet support: -if [ -x /etc/rc.d/rc.hpoj ]; then - . /etc/rc.d/rc.hpoj start -fi - -# Start the MySQL database: -if [ -x /etc/rc.d/rc.mysqld ]; then - . /etc/rc.d/rc.mysqld start -fi - -# Start Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - . /etc/rc.d/rc.httpd start -fi - -# Start Samba (a file/print server for Win95/NT machines). -# Samba can be started in /etc/inetd.conf instead. -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba start -fi - -# Start the GPM mouse server: -if [ -x /etc/rc.d/rc.gpm ]; then - . /etc/rc.d/rc.gpm start -fi - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Start the local setup procedure. -if [ -x /etc/rc.d/rc.local ]; then - . /etc/rc.d/rc.local -fi - -# All done. diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.S b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.S deleted file mode 100755 index 05c75b4..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.S +++ /dev/null @@ -1,294 +0,0 @@ -#!/bin/sh -# -# /etc/rc.d/rc.S: System initialization script. -# -# Mostly written by: Patrick J. Volkerding, <volkerdi@slackware.com> -# - -PATH=/sbin:/usr/sbin:/bin:/usr/bin - -# Mount /proc right away: -/sbin/mount -v proc /proc -n -t proc - -# If 'nohotplug' was given at boot, or rc.hotplug has been turned off -# (is not executable), then shut off hotplugging in the kernel now. -# Turning off hotplug is *not* recommended, and will break some things. -if [ -w /proc/sys/kernel/hotplug ]; then - if grep -w nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - echo "/dev/null" > /proc/sys/kernel/hotplug - elif [ ! -x /etc/rc.d/rc.hotplug ]; then - echo "/dev/null" > /proc/sys/kernel/hotplug - fi -fi - -# Start devfsd if necessary. On newer kernels, udev should be used instead. -if [ -x /etc/rc.d/rc.devfsd ]; then - /etc/rc.d/rc.devfsd start -fi - -# Mount sysfs next, if the kernel supports it: -if [ -d /sys ]; then - if cat /proc/filesystems | grep -w sysfs 1> /dev/null 2> /dev/null ; then - if ! cat /proc/mounts | grep -w sysfs 1> /dev/null 2> /dev/null ; then - /sbin/mount -v sysfs /sys -n -t sysfs - fi - fi -fi - -# Initialize udev to manage /dev entries for 2.6.x kernels: -if [ -x /etc/rc.d/rc.udev ]; then - if ! grep -w nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - /etc/rc.d/rc.udev - fi -fi - -# Enable swapping: -/sbin/swapon -a - -# Test to see if the root partition is read-only, like it ought to be. -READWRITE=no -if touch /fsrwtestfile 2>/dev/null; then - rm -f /fsrwtestfile - READWRITE=yes -else - echo "Testing root filesystem status: read-only filesystem" -fi - -# See if a forced filesystem check was requested at shutdown: -if [ -r /etc/forcefsck ]; then - FORCEFSCK="-f" -fi - -# Check the root filesystem: -if [ ! $READWRITE = yes ]; then - RETVAL=0 - if [ ! -r /etc/fastboot ]; then - echo "Checking root filesystem:" - /sbin/fsck $FORCEFSCK -C -a / - RETVAL=$? - fi - # An error code of 2 or higher will require a reboot. - if [ $RETVAL -ge 2 ]; then - # An error code equal to or greater than 4 means that some errors - # could not be corrected. This requires manual attention, so we - # offer a chance to try to fix the problem in single-user mode: - if [ $RETVAL -ge 4 ]; then - echo - echo "***********************************************************" - echo "*** An error occurred during the root filesystem check. ***" - echo "*** You will now be given a chance to log into the ***" - echo "*** system in single-user mode to fix the problem. ***" - echo "*** ***" - echo "*** If you are using the ext2 filesystem, running ***" - echo "*** 'e2fsck -v -y <partition>' might help. ***" - echo "***********************************************************" - echo - echo "Once you exit the single-user shell, the system will reboot." - echo - PS1="(Repair filesystem) \#"; export PS1 - sulogin - else # With an error code of 2 or 3, reboot the machine automatically: - echo - echo "***********************************" - echo "*** The filesystem was changed. ***" - echo "*** The system will now reboot. ***" - echo "***********************************" - echo - fi - echo "Unmounting file systems." - /sbin/umount -a -r - /sbin/mount -n -o remount,ro / - echo "Rebooting system." - sleep 2 - reboot -f - fi - # Remount the root filesystem in read-write mode - echo "Remounting root device with read-write enabled." - /sbin/mount -w -v -n -o remount / - if [ $? -gt 0 ] ; then - echo - echo "Attempt to remount root device as read-write failed! This is going to" - echo "cause serious problems." - echo - echo "If you're using the UMSDOS filesystem, you **MUST** mount the root partition" - echo "read-write! You can make sure the root filesystem is getting mounted " - echo "read-write with the 'rw' flag to Loadlin:" - echo - echo "loadlin vmlinuz root=/dev/hda1 rw (replace /dev/hda1 with your root device)" - echo - echo "Normal bootdisks can be made to mount a system read-write with the rdev command:" - echo - echo "rdev -R /dev/fd0 0" - echo - echo "You can also get into your system by using a boot disk with a command like this" - echo "on the LILO prompt line: (change the root partition name as needed)" - echo - echo "LILO: mount root=/dev/hda1 rw" - echo - echo "Please press ENTER to continue, then reboot and use one of the above methods to" - echo -n "get into your machine and start looking for the problem. " - read junk; - fi -else - echo "Testing root filesystem status: read-write filesystem" - if cat /etc/fstab | grep ' / ' | grep umsdos 1> /dev/null 2> /dev/null ; then - ROOTTYPE="umsdos" - fi - if [ ! "$ROOTTYPE" = "umsdos" ]; then # no warn for UMSDOS - echo - echo "*** ERROR: Root partition has already been mounted read-write. Cannot check!" - echo - echo "For filesystem checking to work properly, your system must initially mount" - echo "the root partition as read only. Please modify your kernel with 'rdev' so that" - echo "it does this. If you're booting with LILO, add a line:" - echo - echo " read-only" - echo - echo "to the Linux section in your /etc/lilo.conf and type 'lilo' to reinstall it." - echo - echo "If you boot from a kernel on a floppy disk, put it in the drive and type:" - echo " rdev -R /dev/fd0 1" - echo - echo "If you boot from a bootdisk, or with Loadlin, you can add the 'ro' flag." - echo - echo "This will fix the problem *AND* eliminate this annoying message. :^)" - echo - echo -n "Press ENTER to continue. " - read junk; - fi -fi # Done checking root filesystem - -# Any /etc/mtab that exists here is old, so we delete it to start over: -/bin/rm -f /etc/mtab* -# Remounting the / partition will initialize the new /etc/mtab: -/sbin/mount -w -o remount / - -# Fix /etc/mtab to list sys and proc if they were not yet entered in -# /etc/mtab because / was still mounted read-only: -if [ -d /proc/sys ]; then - /sbin/mount -f proc /proc -t proc -fi -if [ -d /sys/bus ]; then - /sbin/mount -f sysfs /sys -t sysfs -fi - -# Set the system time from the hardware clock using hwclock --hctosys. -if [ -x /sbin/hwclock ]; then - if grep "^UTC" /etc/hardwareclock 1> /dev/null 2> /dev/null ; then - echo "Setting system time from the hardware clock (UTC)." - /sbin/hwclock --utc --hctosys - else - echo "Setting system time from the hardware clock (localtime)." - /sbin/hwclock --localtime --hctosys - fi -fi - -# Configure ISA Plug-and-Play devices: -if [ -r /etc/isapnp.conf ]; then - if [ -x /sbin/isapnp ]; then - /sbin/isapnp /etc/isapnp.conf - fi -fi - -# This loads any kernel modules that are needed. These might be required to -# use your ethernet card, sound card, or other optional hardware. -if [ -x /etc/rc.d/rc.modules -a -r /proc/modules ]; then - . /etc/rc.d/rc.modules -fi - -# Configure runtime kernel parameters: -if [ -x /sbin/sysctl -a -r /etc/sysctl.conf ]; then - /sbin/sysctl -e -p /etc/sysctl.conf -fi - -# Initialize the Logical Volume Manager. -# This won't start unless we find /etc/lvmtab (LVM1) or -# /etc/lvm/backup/ (LVM2). This is created by /sbin/vgscan, so to -# use LVM you must run /sbin/vgscan yourself the first time (and -# create some VGs and LVs). -if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then - echo "Initializing LVM (Logical Volume Manager):" - # Check for device-mapper support. - if ! cat /proc/devices | grep -w device-mapper 1> /dev/null 2> /dev/null ; then - # If device-mapper exists as a module, try to load it. - if [ -r /lib/modules/$(cat /proc/sys/kernel/osrelease)/kernel/drivers/md/dm-mod.ko ]; then - insmod /lib/modules/$(cat /proc/sys/kernel/osrelease)/kernel/drivers/md/dm-mod.ko - fi - fi - # Scan for new volume groups: - /sbin/vgscan 2> /dev/null - if [ $? = 0 ]; then - # This needs a moment to register. - sleep 10 - # Make volume groups available to the kernel. - # This should also make logical volumes available. - /sbin/vgchange -ay - # Enable swapping again in case any LVs are used for swap. Ignore previous error. :-) - /sbin/swapon -a - fi -fi - -# Check all the non-root filesystems: -if [ ! -r /etc/fastboot ]; then - echo "Checking non-root filesystems:" - /sbin/fsck $FORCEFSCK -C -R -A -a -fi - -# mount non-root file systems in fstab (but not NFS or SMB -# because TCP/IP is not yet configured, and not proc because -# that has already been mounted): -/sbin/mount -a -v -t nonfs,nosmbfs,noproc - -# Clean up some temporary files: -( cd /var/log/setup/tmp && rm -rf * ) -/bin/rm -f /var/run/utmp /var/run/*pid /etc/nologin /var/run/lpd* \ - /var/run/ppp* /etc/dhcpc/*.pid /etc/forcefsck /etc/fastboot - -# Attempt to umount and remove any leftover /initrd: -if [ -d /initrd ]; then - /sbin/umount /initrd 2> /dev/null - rmdir /initrd 2> /dev/null - blockdev --flushbufs /dev/ram0 2> /dev/null -fi - -# Create a fresh utmp file: -touch /var/run/utmp -chown root.utmp /var/run/utmp -chmod 664 /var/run/utmp - -if [ "$ROOTTYPE" = "umsdos" ]; then # we need to update any files added in DOS: - echo "Synchronizing UMSDOS directory structure:" - echo " /sbin/umssync -r99 -v- /" - /sbin/umssync -r99 -v- / -fi - -# Setup the /etc/motd to reflect the current kernel level: -# THIS WIPES ANY CHANGES YOU MAKE TO /ETC/MOTD WITH EACH BOOT. -# COMMENT THIS OUT IF YOU WANT TO MAKE A CUSTOM VERSION. -echo "$(/bin/uname -sr)." > /etc/motd - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Run serial port setup script: -# (CAREFUL! This can make some systems hang if the rc.serial script isn't -# set up correctly. If this happens, you may have to edit the file from a -# boot disk) -# -# . /etc/rc.d/rc.serial - -# Carry an entropy pool between reboots to improve randomness. -if [ -f /etc/random-seed ]; then - echo "Using /etc/random-seed to initialize /dev/urandom." - cat /etc/random-seed > /dev/urandom -fi -# Use the pool size from /proc, or 512 bytes: -if [ -r /proc/sys/kernel/random/poolsize ]; then - dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null -else - dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null -fi -chmod 600 /etc/random-seed - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.httpd b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.httpd deleted file mode 100644 index 00b8837..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.httpd +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh -# -# /etc/rc.d/rc.httpd -# -# Start/stop/restart the Apache web server. -# -# To make Apache start automatically at boot, make this -# file executable: chmod 755 /etc/rc.d/rc.httpd -# - -case "$1" in - 'start') - /usr/sbin/apachectl start ;; - 'stop') - /usr/sbin/apachectl stop ;; - 'restart') - /usr/sbin/apachectl restart ;; - *) - echo "usage $0 start|stop|restart" ;; -esac - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.inet2 b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.inet2 deleted file mode 100755 index db56589..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.inet2 +++ /dev/null @@ -1,129 +0,0 @@ -#!/bin/sh -# -# rc.inet2 This shell script boots up the entire network system. -# Note, that when this script is used to also fire -# up any important remote NFS disks (like the /usr -# directory), care must be taken to actually -# have all the needed binaries online _now_ ... -# -# Uncomment or comment out sections depending on which -# services your site requires. -# -# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> -# Modified for Slackware by Patrick Volkerding <volkerdi@slackware.com> - - -# At this point, we are ready to talk to The World... - - -# Mount remote (NFS) filesystems: -if cat /etc/fstab | grep -v '^#' | grep -w nfs 1> /dev/null 2> /dev/null ; then - # Start the RPC portmapper if we find NFS volumes defined in /etc/fstab, - # since it will need to be running in order to mount them. If portmap - # is not running, attempting to mount an NFS partition will cause mount - # to hang. Keep this in mind if you plan to mount unlisted partitions... - if [ -x /etc/rc.d/rc.portmap ]; then - . /etc/rc.d/rc.portmap start - else - # Warn about a possible NFS problem. It's also possible to mount NFS partitions - # without rpc.portmap by using '-o nolock' (not a good idea in most cases). - echo "WARNING: NFS partitions found in /etc/fstab, but /etc/rc.d/rc.portmap is" - echo " not executable. If you do not run portmap, NFS partitions will" - echo " not mount properly. To start rpc.portmap at boot, change the" - echo " permissions on /etc/rc.d/rc.portmap: chmod 755 /etc/rc.d/rc.portmap" - sleep 10 - fi - echo "Mounting remote (NFS) file systems: /sbin/mount -a -t nfs" - /sbin/mount -a -t nfs # This may be our /usr runtime! - # Show the mounted volumes: - /sbin/mount -v -t nfs -fi - -# Load the RPC portmapper if /etc/rc.d/rc.portmap is executable. -# This might be needed to mount NFS partitions that are not listed in /etc/fstab. -if [ -x /etc/rc.d/rc.portmap ]; then - . /etc/rc.d/rc.portmap start -fi - -# Mount remote (SMB) filesystems: -if cat /etc/fstab | grep -v '^#' | grep -w smbfs 1> /dev/null 2> /dev/null ; then - echo "Mounting remote (SMB) file systems: /sbin/mount -a -t smbfs" - /sbin/mount -a -t smbfs - # Show the mounted volumes: - /sbin/mount -v -t smbfs -fi - -# Start the system logger if it is not already running (maybe because /usr -# is on a network partition). -if [ -x /etc/rc.d/rc.syslog -a -d /var/log -a ! -r /var/run/syslogd.pid ]; then - . /etc/rc.d/rc.syslog start -fi - -# If there is a firewall script, run it before enabling packet forwarding. -# See the HOWTOs on http://www.netfilter.org/ for documentation on -# setting up a firewall or NAT on Linux. In some cases this might need to -# be moved past the section below dealing with IP packet forwarding. -if [ -x /etc/rc.d/rc.firewall ]; then - /etc/rc.d/rc.firewall start -fi - -# Turn on IPv4 packet forwarding support. -if [ -x /etc/rc.d/rc.ip_forward ]; then - . /etc/rc.d/rc.ip_forward start -fi - -# Start the inetd server: -if [ -x /etc/rc.d/rc.inetd ]; then - /etc/rc.d/rc.inetd start -fi - -# Start the OpenSSH SSH daemon: -if [ -x /etc/rc.d/rc.sshd ]; then - echo "Starting OpenSSH SSH daemon: /usr/sbin/sshd" - /etc/rc.d/rc.sshd start -fi - -# Start the BIND name server daemon: -if [ -x /etc/rc.d/rc.bind ]; then - /etc/rc.d/rc.bind start -fi - -# Start NIS (the Network Information Service): -if [ -x /etc/rc.d/rc.yp ]; then - . /etc/rc.d/rc.yp start -fi - -# Start the NFS server. Note that for this to work correctly, you'll -# need to load the knfsd module for kernel NFS server support. -# You'll also need to set up some shares in /etc/exports, and be sure -# that /etc/rc.d/rc.portmap is executable. -# Starting the NFS server: -if [ -x /etc/rc.d/rc.nfsd ]; then - /etc/rc.d/rc.nfsd start -fi - -# Stuff you won't need follows. ;-) - -# # Start the network routing daemon: -# if [ -x /usr/sbin/routed ]; then -# echo "Starting network routing daemon: /usr/sbin/routed" -# /usr/sbin/routed -g -s -# fi - -# # Start the system status server: -# if [ -x /usr/sbin/rwhod ]; then -# echo "Starting system status server: /usr/sbin/rwhod" -# /usr/sbin/rwhod -# fi - -# # Fire up the PC-NFS daemon(s). This is a primarily obsolete system, and may -# # not be very secure. It's not at all needed for normal NFS server support. -# # You probably should not run this. -# if [ -x /usr/sbin/rpc.pcnfsd ]; then -# echo "Starting PC-NFS daemons: /usr/sbin/rpc.pcnfsd /usr/sbin/rpc.bwnfsd" -# /usr/sbin/rpc.pcnfsd /var/spool/lpd -# fi -# if [ -x /usr/sbin/rpc.bwnfsd ]; then -# /usr/sbin/rpc.bwnfsd /var/spool/lpd -# fi - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.inetd b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.inetd deleted file mode 100644 index 9fe1419..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.inetd +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh -# Start/stop/restart inetd, the BSD Internet super-daemon. - -# Start inetd: -inetd_start() { - if [ -x /usr/sbin/inetd ]; then - echo "Starting Internet super-server daemon: /usr/sbin/inetd" - /usr/sbin/inetd - fi -} - -# Stop inetd: -inetd_stop() { - killall inetd -} - -# Restart inetd: -inetd_restart() { - inetd_stop - sleep 1 - inetd_start -} - -case "$1" in -'start') - inetd_start - ;; -'stop') - inetd_stop - ;; -'restart') - inetd_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.ip_forward b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.ip_forward deleted file mode 100644 index 52bd2fe..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.ip_forward +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/sh -# /etc/rc.d/rc.ip_forward: start/stop IP packet forwarding -# -# If you intend to run your Linux box as a router, i.e. as a -# computer that forwards and redistributes network packets, you -# will need to enable IP packet forwarding in your kernel. -# -# To activate IP packet forwarding at boot time, make this -# script executable: chmod 755 /etc/rc.d/rc.ip_forward -# -# To disable IP packet forwarding at boot time, make this -# script non-executable: chmod 644 /etc/rc.d/rc.ip_forward - -# Start IP packet forwarding: -ip_forward_start() { - if [ -f /proc/sys/net/ipv4/ip_forward ]; then - echo "Activating IPv4 packet forwarding." - echo 1 > /proc/sys/net/ipv4/ip_forward - fi - # When using IPv4 packet forwarding, you will also get the - # rp_filter, which automatically rejects incoming packets if the - # routing table entry for their source address doesn't match the - # network interface they're arriving on. This has security - # advantages because it prevents the so-called IP spoofing, - # however it can pose problems if you use asymmetric routing - # (packets from you to a host take a different path than packets - # from that host to you) or if you operate a non-routing host - # which has several IP addresses on different interfaces. To - # turn rp_filter off, uncomment the lines below: - #if [ -r /proc/sys/net/ipv4/conf/all/rp_filter ]; then - # echo "Disabling rp_filter." - # echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter - #fi -} - -# Stop IP packet forwarding: -ip_forward_stop() { - if [ -f /proc/sys/net/ipv4/ip_forward ]; then - echo "Disabling IPv4 packet forwarding." - echo 0 > /proc/sys/net/ipv4/ip_forward - fi -} - -# Restart IP packet forwarding: -ip_forward_restart() { - ip_forward_stop - sleep 1 - ip_forward_start -} - -case "$1" in -'start') - ip_forward_start - ;; -'stop') - ip_forward_stop - ;; -'restart') - ip_forward_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.local b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.local deleted file mode 100755 index 3cf2076..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.local +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -# -# /etc/rc.d/rc.local: Local system initialization script. -# -# Put any local setup commands in here: diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.mysqld b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.mysqld deleted file mode 100644 index 239e2e6..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.mysqld +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/sh -# Start/stop/restart mysqld. -# -# Copyright 2003 Patrick J. Volkerding, Concord, CA -# Copyright 2003 Slackware Linux, Inc., Concord, CA -# -# This program comes with NO WARRANTY, to the extent permitted by law. -# You may redistribute copies of this program under the terms of the -# GNU General Public License. - -# To start MySQL automatically at boot, be sure this script is executable: -# chmod 755 /etc/rc.d/rc.mysqld - -# Before you can run MySQL, you must have a database. To install an initial -# database, do this as root: -# -# su - mysql -# mysql_install_db -# -# Note that step one is becoming the mysql user. It's important to do this -# before making any changes to the database, or mysqld won't be able to write -# to it later (this can be fixed with 'chown -R mysql.mysql /var/lib/mysql'). - -# To disallow outside connections to the database (if you don't need them, this -# is recommended to increase security), uncomment the next line: -#SKIP="--skip-networking" - -# Start mysqld: -mysqld_start() { - if [ -x /usr/bin/mysqld_safe ]; then - # If there is an old PID file (no mysqld running), clean it up: - if [ -r /var/run/mysql/mysql.pid ]; then - if ! ps ax | grep mysqld 1> /dev/null 2> /dev/null ; then - echo "Cleaning up old /var/run/mysql/mysql.pid." - rm -f /var/run/mysql/mysql.pid - fi - fi - /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/run/mysql/mysql.pid $SKIP & - fi -} - -# Stop mysqld: -mysqld_stop() { - # If there is no PID file, ignore this request... - if [ -r /var/run/mysql/mysql.pid ]; then - killall mysqld - # Wait at least one minute for it to exit, as we don't know how big the DB is... - for second in 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 \ - 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 60 ; do - if [ ! -r /var/run/mysql/mysql.pid ]; then - break; - fi - sleep 1 - done - if [ "$second" = "60" ]; then - echo "WARNING: Gave up waiting for mysqld to exit!" - sleep 15 - fi - fi -} - -# Restart mysqld: -mysqld_restart() { - mysqld_stop - mysqld_start -} - -case "$1" in -'start') - mysqld_start - ;; -'stop') - mysqld_stop - ;; -'restart') - mysqld_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.postfix b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.postfix deleted file mode 100644 index bc32367..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.postfix +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh -# -## Slackware init script for postfix -## 20030828 Manolis Tzanidakis -# - -postfix_start() { - if [ -x /usr/sbin/postfix ]; then - echo -n "Starting postfix MTA: " - echo "/usr/sbin/postfix start" - /usr/sbin/postfix start 2>/dev/null - fi -} - -postfix_stop() { - /usr/sbin/postfix stop 2>/dev/null -} - -postfix_restart() { - sh $0 stop - sleep 1 - sh $0 start -} - -postfix_reload() { - /usr/sbin/postfix reload 2>/dev/null -} - -case "$1" in - 'start') - postfix_start - ;; - 'stop') - postfix_stop - ;; - 'restart') - postfix_restart - ;; - 'reload') - postfix_reload - ;; - *) - echo "usage $0 start|stop|restart|reload" -esac - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sendmail b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sendmail deleted file mode 100644 index 1a31c52..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sendmail +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh -# Start/stop/restart sendmail. - -# Start sendmail: -sendmail_start() { - if [ -x /usr/sbin/sendmail ]; then - echo "Starting sendmail MTA daemon: /usr/sbin/sendmail -L sm-mta -bd -q25m" - /usr/sbin/sendmail -L sm-mta -bd -q25m - echo "Starting sendmail MSP queue runner: /usr/sbin/sendmail -L sm-msp-queue -Ac -q25m" - /usr/sbin/sendmail -L sm-msp-queue -Ac -q25m - fi -} - -# Stop sendmail: -sendmail_stop() { - killall sendmail -} - -# Restart sendmail: -sendmail_restart() { - sendmail_stop - sleep 1 - sendmail_start -} - -case "$1" in -'start') - sendmail_start - ;; -'stop') - sendmail_stop - ;; -'restart') - sendmail_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.serial b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.serial deleted file mode 100755 index 5f31c01..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.serial +++ /dev/null @@ -1,132 +0,0 @@ -# -# /etc/rc.serial -# Initializes the serial ports on your system -# -# chkconfig: 2345 50 75 -# description: This initializes the settings of the serial port -# -# FILE_VERSION: 19981128 -# -# Distributed with setserial and the serial driver. We need to use the -# FILE_VERSION field to assure that we don't overwrite a newer rc.serial -# file with a newer one. -# -# XXXX For now, the autosave feature doesn't work if you are -# using the multiport feature; it doesn't save the multiport configuration -# (for now). Autosave also doesn't work for the hayes devices. -# - -RCLOCKFILE=/var/lock/subsys/serial -DIRS="/lib/modules/`uname -r`/misc /lib/modules /usr/lib/modules ." -PATH=/bin:/sbin:/usr/bin -DRIVER=serial -DRIVER_NAME=serial -MODULE_REGEXP="serial\b" - -ALLDEVS="/dev/ttyS?" -if /bin/ls /dev/ttyS?? >& /dev/null ; then - ALLDEVS="$ALLDEVS /dev/ttyS??" -fi - -SETSERIAL="" -if test -x /bin/setserial ; then - SETSERIAL=/bin/setserial -elif test -x /sbin/setserial ; then - SETSERIAL=/sbin/setserial -fi - -# -# See if the serial driver is loaded -# -LOADED="" -if test -f /proc/devices; then - if grep -q " ttyS$" /proc/devices ; then - LOADED="yes" - else - LOADED="no" - fi -fi - -# -# Find the serial driver -# -for i in $DIRS -do - if test -z "$MODULE" -a -f $i/$DRIVER.o ; then - MODULE=$i/$DRIVER.o - fi -done - -if ! test -f /proc/modules ; then - MODULE="" -fi - -# -# Handle System V init conventions... -# -case $1 in -start) - action="start"; - ;; -stop) - action="stop"; - ;; -*) - action="start"; -esac - -if test $action = stop ; then - if test -n ${SETSERIAL} -a "$LOADED" != "no" -a \ - `head -1 /etc/serial.conf`X = "###AUTOSAVE###X" ; then - echo -n "Saving state of serial devices... " - grep "^#" /etc/serial.conf > /etc/.serial.conf.new - ${SETSERIAL} -G -g ${ALLDEVS} >> /etc/.serial.conf.new - mv /etc/serial.conf /etc/.serial.conf.old - mv /etc/.serial.conf.new /etc/serial.conf - echo "done." - fi - if test -n "$MODULE" ; then - module=`grep $MODULE_REGEXP /proc/modules | awk '{print $1}'` - if test -z "$module" ; then - echo "The $DRIVER_NAME driver is not loaded." - rm -f ${RCLOCKFILE} - exit 0 - fi - if rmmod $module ; then :; else - echo "The $DRIVER_NAME driver could NOT be unloaded." - exit 1; - fi - echo "The $DRIVER_NAME driver has been unloaded." - fi - rm -f ${RCLOCKFILE} - exit 0 -fi - -# -# If not stop, it must be a start.... -# - -if test -n "$MODULE" -a "$LOADED" != "yes" ; then - if insmod -f $MODULE $DRIVER_ARG ; then - true - else - echo "Couldn't load $DRIVER_NAME driver." - exit 1 - fi -fi - -if test -f /etc/serial.conf ; then - if test -n ${SETSERIAL} ; then - grep -v ^# < /etc/serial.conf | while read device args - do - if [ ! "$device" = "" -a ! "$args" = "" ]; then - ${SETSERIAL} -z $device $args - fi - done - fi -else - echo "###AUTOSAVE###" > /etc/serial.conf -fi - -touch ${RCLOCKFILE} -${SETSERIAL} -bg ${ALLDEVS} diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sshd b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sshd deleted file mode 100755 index a3707e3..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sshd +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh -# Start/stop/restart the secure shell server: - -sshd_start() { - # Create host keys if needed. - if [ ! -r /etc/ssh/ssh_host_key ]; then - /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key -N '' - fi - if [ ! -f /etc/ssh/ssh_host_dsa_key ]; then - /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N '' - fi - if [ ! -f /etc/ssh/ssh_host_rsa_key ]; then - /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' - fi - /usr/sbin/sshd -} - -sshd_stop() { - killall sshd -} - -sshd_restart() { - if [ -r /var/run/sshd.pid ]; then - echo "WARNING: killing listener process only. To kill every sshd process, you must" - echo " use 'rc.sshd stop'. 'rc.sshd restart' kills only the parent sshd to" - echo " allow an admin logged in through sshd to use 'rc.sshd restart' without" - echo " being cut off. If sshd has been upgraded, new connections will now" - echo " use the new version, which should be a safe enough approach." - kill `cat /var/run/sshd.pid` - else - killall sshd - fi - sleep 1 - sshd_start -} - -case "$1" in -'start') - sshd_start - ;; -'stop') - sshd_stop - ;; -'restart') - sshd_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.syslog b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.syslog deleted file mode 100755 index a005fb7..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.syslog +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh -# Start/stop/restart the system logging daemons. -# -# Written for Slackware Linux by Patrick J. Volkerding <volkerdi@slackware.com>. - -syslogd_start() { - if [ -x /usr/sbin/syslogd -a -x /usr/sbin/klogd ]; then - echo -n "Starting sysklogd daemons: " - echo -n "/usr/sbin/syslogd " - /usr/sbin/syslogd - sleep 1 # prevent syslogd/klogd race condition on SMP kernels - echo "/usr/sbin/klogd -c 3 -x" - # '-c 3' = display level 'error' or higher messages on console - # '-x' = turn off broken EIP translation - /usr/sbin/klogd -c 3 -x - fi -} - -syslogd_stop() { - killall syslogd 2> /dev/null - killall klogd 2> /dev/null -} - -syslogd_restart() { - syslogd_stop - sleep 1 - syslogd_start -} - -case "$1" in -'start') - syslogd_start - ;; -'stop') - syslogd_stop - ;; -'restart') - syslogd_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sysvinit b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sysvinit deleted file mode 100755 index 916e59e..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rc.d/rc.sysvinit +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/sh -# -# rc.sysvinit This file provides basic compatibility with SystemV style -# startup scripts. The SystemV style init system places -# start/stop scripts for each runlevel into directories such as -# /etc/rc.d/rc3.d/ (for runlevel 3) instead of starting them -# from /etc/rc.d/rc.M. This makes for a lot more init scripts, -# and a more complicated execution path to follow through if -# something goes wrong. For this reason, Slackware has always -# used the traditional BSD style init script layout. -# -# However, many binary packages exist that install SystemV -# init scripts. With rc.sysvinit in place, most well-written -# startup scripts will work. This is primarily intended to -# support commercial software, though, and probably shouldn't -# be considered bug free. -# -# Written by Patrick Volkerding <volkerdi@slackware.com>, 1999 -# from an example by Miquel van Smoorenburg <miquels@cistron.nl>. - -# Run an init script: -startup() { - case "$1" in - *.sh) - sh "$@" - ;; - *) - "$@" - ;; - esac -} - -# Set onlcr to avoid staircase effect. -stty onlcr 0>&1 - -if [ "$runlevel" = "" ]; then - runlevel=$RUNLEVEL - export runlevel - prevlevel=$PREVLEVEL - export prevlevel -fi - -# Run kill scripts in the previous runlevel if not "none" -if [ ! "$prevlevel" = "N" ]; then - for script in /etc/rc.d/rc$prevlevel.d/K* ; do - if [ -x $script ]; then - startup $script stop - fi - done -fi - -# Now do the startup scripts: -for script in /etc/rc.d/rc$runlevel.d/S* ; do - if [ -x $script ]; then - startup $script start - fi -done - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rssh.conf b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rssh.conf deleted file mode 100644 index a74acc6..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/rssh.conf +++ /dev/null @@ -1,48 +0,0 @@ -# This is the default rssh config file - -# set the log facility. "LOG_USER" and "user" are equivalent. -logfacility = LOG_USER - -# Leave these all commented out to make the default action for rssh to lock -# users out completely... - -allowscp -allowsftp -#allowcvs -#allowrdist -#allowrsync - -# set the default umask -umask = 022 - -# If you want to chroot users, use this to set the directory where the root of -# the chroot jail will be located. -# -# if you DO NOT want to chroot users, LEAVE THIS COMMENTED OUT. -# You can quote anywhere, but quotes not required unless path contains a -# space... as in this example. - -chrootpath = "/var/users" - -########################################## -# EXAMPLES of configuring per-user options - -#user=rudy:077:00010: # the path can simply be left out to not chroot -#user=rudy:077:00010 # the ending colon is optional - -#spaces in the path must be quoted... -#user=rudy:011:00001:"/usr/local/chroot dir" # scp with chroot -#user=rudy:011:00010:"/usr/local/chroot dir" # sftp with chroot -#user=rudy:011:00011:"/usr/local/chroot dir" # both with chroot -#user=rudy:011:00100: # cvs, with no chroot -#user=rudy:011:01000: # rdist, with no chroot -#user=rudy:011:10000: # rsync, with no chroot -#user="rudy:011:00001:/usr/local/chroot" # whole user string can be quoted -#user=rudy:01"1:00001:/usr/local/chroot" # or somewhere in the middle, freak! -#user=rudy:'011:00001:/usr/local/chroot' # single quotes too - -# Spaces before or after the '=' are fine, but spaces in chrootpath need -# quotes. -#user = "rudy:011:00001:/usr/local/chroot dir" -#user = "rudy:011:00001:/usr/local/chroot dir" # neither do comments at line end - diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/ssh/sshd_config b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/ssh/sshd_config deleted file mode 100644 index a161fec..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/etc/ssh/sshd_config +++ /dev/null @@ -1,103 +0,0 @@ -# $OpenBSD: sshd_config,v 1.69 2004/05/23 23:59:53 dtucker Exp $ - -# This is the sshd server system-wide configuration file. See -# sshd_config(5) for more information. - -# This sshd was compiled with PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin - -# The strategy used for options in the default sshd_config shipped with -# OpenSSH is to specify options with their default value where -# possible, but leave them commented. Uncommented options change a -# default value. - -#Port 22 -#Protocol 2,1 -#ListenAddress 0.0.0.0 -#ListenAddress :: - -# HostKey for protocol version 1 -#HostKey /etc/ssh/ssh_host_key -# HostKeys for protocol version 2 -#HostKey /etc/ssh/ssh_host_rsa_key -#HostKey /etc/ssh/ssh_host_dsa_key - -# Lifetime and size of ephemeral version 1 server key -#KeyRegenerationInterval 1h -#ServerKeyBits 768 - -# Logging -#obsoletes QuietMode and FascistLogging -#SyslogFacility AUTH -#LogLevel INFO - -# Authentication: - -#LoginGraceTime 2m -PermitRootLogin no -#StrictModes yes -#MaxAuthTries 6 - -#RSAAuthentication yes -#PubkeyAuthentication yes -#AuthorizedKeysFile .ssh/authorized_keys - -# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts -#RhostsRSAAuthentication no -# similar for protocol version 2 -#HostbasedAuthentication no -# Change to yes if you don't trust ~/.ssh/known_hosts for -# RhostsRSAAuthentication and HostbasedAuthentication -#IgnoreUserKnownHosts no -# Don't read the user's ~/.rhosts and ~/.shosts files -#IgnoreRhosts yes - -# To disable tunneled clear text passwords, change to no here! -#PasswordAuthentication yes -#PermitEmptyPasswords no - -# Change to no to disable s/key passwords -#ChallengeResponseAuthentication yes - -# Kerberos options -#KerberosAuthentication no -#KerberosOrLocalPasswd yes -#KerberosTicketCleanup yes -#KerberosGetAFSToken no - -# GSSAPI options -#GSSAPIAuthentication no -#GSSAPICleanupCredentials yes - -# Set this to 'yes' to enable PAM authentication, account processing, -# and session processing. If this is enabled, PAM authentication will -# be allowed through the ChallengeResponseAuthentication mechanism. -# Depending on your PAM configuration, this may bypass the setting of -# PasswordAuthentication, PermitEmptyPasswords, and -# "PermitRootLogin without-password". If you just want the PAM account and -# session checks to run without PAM authentication, then enable this but set -# ChallengeResponseAuthentication=no -#UsePAM no - -#AllowTcpForwarding yes -#GatewayPorts no -#X11Forwarding no -#X11DisplayOffset 10 -#X11UseLocalhost yes -#PrintMotd yes -#PrintLastLog yes -#TCPKeepAlive yes -#UseLogin no -#UsePrivilegeSeparation yes -#PermitUserEnvironment no -#Compression yes -#ClientAliveInterval 0 -#ClientAliveCountMax 3 -#UseDNS yes -#PidFile /var/run/sshd.pid -#MaxStartups 10 - -# no default banner path -#Banner /some/path - -# override default of no subsystems -Subsystem sftp /usr/libexec/sftp-server diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/var/www/htdocs/missing.html b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/var/www/htdocs/missing.html deleted file mode 100644 index b2eec17..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/var/www/htdocs/missing.html +++ /dev/null @@ -1,12 +0,0 @@ -<html> -<head> -<title>404 - Not Found</title> -</head> -<body> - <center> - <pre> - O endereço que você requisitou não pôde ser encontrado :( - </pre> - </center> -</body> -</html> diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/var/www/missing.html b/tags/0.5/templates/vserver-legacy/vserver-legacy.d/var/www/missing.html deleted file mode 100644 index b2eec17..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.d/var/www/missing.html +++ /dev/null @@ -1,12 +0,0 @@ -<html> -<head> -<title>404 - Not Found</title> -</head> -<body> - <center> - <pre> - O endereço que você requisitou não pôde ser encontrado :( - </pre> - </center> -</body> -</html> diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.perms b/tags/0.5/templates/vserver-legacy/vserver-legacy.perms deleted file mode 100644 index a323d6c..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.perms +++ /dev/null @@ -1,36 +0,0 @@ -./etc;0;0;755 -./etc/apache;0;0;755 -./etc/apache/httpd.conf;0;0;644 -./etc/apache/php.ini;0;0;644 -./etc/apache/vhosts;0;0;644 -./etc/logrotate.d;0;0;755 -./etc/logrotate.d/apache;0;0;644 -./etc/rc.d;0;0;755 -./etc/rc.d/rc.httpd;0;0;644 -./etc/rc.d/rc.0;0;0;755 -./etc/rc.d/rc.4;0;0;644 -./etc/rc.d/rc.6;0;0;755 -./etc/rc.d/rc.K;0;0;755 -./etc/rc.d/rc.M;0;0;755 -./etc/rc.d/rc.S;0;0;755 -./etc/rc.d/rc.ip_forward;0;0;644 -./etc/rc.d/rc.inet2;0;0;755 -./etc/rc.d/rc.inetd;0;0;644 -./etc/rc.d/rc.mysqld;0;0;644 -./etc/rc.d/rc.local;0;0;755 -./etc/rc.d/rc.postfix;0;0;644 -./etc/rc.d/rc.sendmail;0;0;644 -./etc/rc.d/rc.serial;0;0;755 -./etc/rc.d/rc.sshd;0;0;755 -./etc/rc.d/rc.syslog;0;0;755 -./etc/rc.d/rc.sysvinit;0;0;755 -./etc/ssh;0;0;755 -./etc/ssh/sshd_config;0;0;644 -./etc/rssh.conf;0;0;644 -./etc/hosts;0;0;644 -./etc/profile;0;0;644 -./var;0;0;755 -./var/www;0;0;755 -./var/www/htdocs;0;0;755 -./var/www/htdocs/missing.html;0;0;644 -./var/www/missing.html;0;0;644 diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/GPG-KEY b/tags/0.5/templates/vserver-legacy/vserver-legacy.s/GPG-KEY deleted file mode 100644 index fd23e95..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/GPG-KEY +++ /dev/null @@ -1,88 +0,0 @@ -security@slackware.com public key - -Type bits/keyID Date User ID -pub 1024D/40102233 2003-02-26 Slackware Linux Project <security@slackware.com> -sub 1024g/4E523569 2003-02-26 [expires: 2012-12-21] - ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.1 (GNU/Linux) - -mQGiBD5dIFQRBADB31WinbXdaGk/8RNkpnZclu1w3Xmd5ItACDLB2FhOhArw35EA -MOYzxI0gRtDNWN4pn9n74q4HbFzyRWElThWRtBTYLEpImzrk7HYVCjMxjw5A0fTr -88aiHOth5aS0vPAoq+3TYn6JDSipf2bR03G2JVwgj3Iu066pX4naivNm8wCgldHG -F3y9vT3UPYh3QFgEUlCalt0D/3n6NopRYy0hMN6BPu+NarXwv6NQ9g0GV5FNjEEr -igkrD/htqCyWAUl8zyCKKUFZZx4UGBRZ5guCdNzwgYH3yn3aVMhJYQ6tcSlLsj3f -JIz4LAZ3+rI77rbn7gHHdp7CSAuV+QHv3aNanUD/KGz5SPSvF4w+5qRM4PfPNT1h -LMV8BACzxiyX7vzeE4ZxNYvcuCtv0mvEHl9yD66NFA35RvXaO0QiRVYeoUa5JOQZ -gwq+fIB0zgsEYDhXFkC1hM/QL4NccMRk8C09nFn4eiz4dAEnwKt4rLCJKhkLl1DW -TSoXHe/dOXaLnFyLzB1J8hEYmUvw3SwPt//wMqDiVBLeZfFcdLQwU2xhY2t3YXJl -IExpbnV4IFByb2plY3QgPHNlY3VyaXR5QHNsYWNrd2FyZS5jb20+iF8EExECAB8F -Aj5dIFQFCRJ3owAECwcDAgMVAgMDFgIBAh4BAheAAAoJEGpEY8BAECIzee0An3My -boalJ5nLePD0HCzMuf8Ix8gPAJ9lnU1wqNVGza0t89ACTurDoppQ2rkBDQQ+XSBV -EAQA3VYlpPyRKdOKoM6t1SwNG0YgVFSvxy/eiratBf7misDBsJeH86Pf8H9OfVHO -cqscLiC+iqvDgqeTUX9vASjlnvcoS/3H5TDPlxiifIDggqd2euNtJ8+lyXRBV6yP -sBIA6zki9cR4zphe48hKpSsDfj7uL5sfyc2UmKKboSu3x7cAAwUD/1jmoLQs9bIt -bTosoy+5+Uzrl0ShRlv+iZV8RPzAMFuRJNxUJkUmmThowtXRaPKFI9AVd+pP44aA -J+zxCPtS2isiW20AxubJoBPpXcVatJWi4sG+TM5Z5VRoLg7tIDNVWsyHGXPAhIG2 -Y8Z1kyWwb4P8A/W2b1ZCqS7Fx4yEhTikiEwEGBECAAwFAj5dIFUFCRJ3owAACgkQ -akRjwEAQIjM1uwCdE7V4mPCqdby/nV699NxKX0iW/OsAniaVhEip8Ptff74Sv4JV -tb+Sth2l -=H5uu ------END PGP PUBLIC KEY BLOCK----- - -slamd64 public key - ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.6 (GNU/Linux) - -mQGiBELKSBYRBACiElxGMXqxUwdsQBKPngV6/k0Q5AYT34+WLL0B7XRR9kOotCfc -PTLCP5qLM9etpzKhbMbgWGpaBrA/3KEPOJ7JVhk6JcLgjoi0QsMusaI4BGnmrxkw -3mh9xPwc+jPgiYOljbZhNG6FMQtrdlKYV+BmwS8mt/YBymShghtlgdHJjwCg/PAG -YJDsfoG1ebuwcjYlsGoD2x0EAJX7UnTdxxESvmIuk172MunZqw+o8+o/W684z13/ -wOkcVqvuAcd0ejuY0z09GFfyhtig8E55UcKNyVC50+3aJUXlt9//HnENHZo+OEN1 -ezbOXUcJIw8xkU551qaxubqWXtKYEJP9z/khVPe4N0JW2vWOcAFYhuOEx1ylaNrX -gUY4BACDpn+pntq0ooZqkSPT4v1ibOQg/3xh2F1PgsnOahMRrXbVEdL9ItsVnHM/ -ygHBjLhkEMd612nVVSw1BYMBAwQbsYB8Lgn1QxXl0ISBYR1RYW1LvyaJM6A6TDL+ -EdWp+iTtlKOe/VD+oCfHmMONoucZJM2AtK1vXTX3x4Wb4MgVdLQoRnJlZGVyaWNr -IEVtbW90dCA8bWFpbEBmcmVkZW1tb3R0LmNvLnVrPohkBBMRAgAkBQJCykgWAhsD -BQkDwmcABgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEAd5Da1T/acLGfIAoOqIHrg4 -r2pq/tKi9VifOJS1xg4LAKDpi0I0pzsdDJ2owxCQ88MkoSDKgohMBBARAgAMBQJD -Ed/tBYMDes8pAAoJEFgpV1AFAIOLprQAnRDVVmDPnzVNOWrZ8D55gG2bOwkxAKCl -dGThnu0aQ0IEL7MgUETGtk4hS4iiBBABAgAMBQJDEdpDBYMDetTTAAoJEJugaRW/ -hasxqCwEAKczPTgOrRXXTs4piB14DayJQVgoqVgiNfKzd5qVuvQgYebQrMu7hi5U -0q/n6TbQpjmMDZKxhXhEY1gs32mtzKKDrerTpF+pJAgQVvBLZS2mF4HbVnU74GvL -2UKJtEtgb9u+i1Efd4Q8GIJUzLLJifURQWTk1e3B9qGApKXpWJlviEwEEBECAAwF -AkMR75MFgwN6v4MACgkQTqjEwhXvPN1j7gCbBXZs9MM6YXGI/yTlEhiXyTECxm8A -nj6O1XszSa5kaD7CvnRFzNkm5O5MiEwEEBECAAwFAkMR79UFgwN6v0EACgkQoLYC -8AehV8eLBQCgv8WEdBtFjTh3Wl06WK5dKCw0nHsAn0IIHRbJC5jO4NWrIpupBMnz -3fBsiEwEExECAAwFAkMR9ggFgwN6uQ4ACgkQR+ny47i1wzAfZQCfRACyfYBxs+tu -6OzpLP2DGjEaa1UAnj4MVMH32f/34oN6o9dPKPT8HXWziEwEExECAAwFAkMR9vcF -gwN6uB8ACgkQB0u7y43syeIaogCfVy7lqRjRDbttJs1u1g3FekdbJ1kAnRo726tA -u8Xf+JWD3OrmMo0Uup3giEwEEBECAAwFAkMR+qgFgwN6tG4ACgkQfWXW5We1ioQk -tgCePGa3NpcfEWb8drmO95Mp1C+FaBIAoNEqA89xUvTIpqooucTzFxgAupVgiEwE -EBECAAwFAkMSF+UFgwN6lzEACgkQ/lREvmcCFhscDQCgnMxf4Nmu3B41GWupTWxb -9b+te5sAoIiTZHzOSKtqN4cJ2i22iP/vZPt4iEwEEBECAAwFAkMULeAFgwN4gTYA -CgkQsxZ93p+gHn6bcACgwY/5ZpvvEK+eycM5XNQhVI6w4j8An0JoXlFaGStIzUmW -42obaW6CG4WViEYEExECAAYFAkMUZuAACgkQGnR+RTDgudhG1QCeJelEhnX/3JeW -S5BaM7640suSeLQAnA2RDMH4zIJLI4MWEXBAvaA0lSr7iEwEEBECAAwFAkMUP8gF -gwN4b04ACgkQM/XwBW70U1iAOwCgmah/GnZikIhyeFr6KsKpsmZCQTQAn3Vs7JZm -w4qBLiI+RXxw7vIJlI4AiEwEEBECAAwFAkMUZ9EFgwN4R0UACgkQ72KcVAmwbhAC -FACgiNqao9mzAWZBjIY7iiqz34gbK/QAn34F1bLAb0sHKiSUcFkVi/uZ8R0viEwE -EBECAAwFAkMWFj8FgwN2mNcACgkQn3j4POjENGF+UgCeM+mEKW5+MjNN17QCAvZi -cBVJEHMAn14YyvdSIwBBFUNPWYOw7GwYyAhHiEwEEBECAAwFAkMXW0cFgwN1U88A -CgkQTxqZjtpq5iG4PwCfe2ymOYh5t+bEZGGCtJg3sWJ5hHYAmQGS+jGWcTMlXSe+ -65o/aPfLUkMQuQINBELKSCgQCADjG+pX7C0sRIkX1QQ6lFW3IrajWypXtd4jO1TA -dlLFES7OxF202V15+TRtL9NO34x7u6RPTnF7wi/i2U1dqM9ZjrFcTJA17Y7+OLH+ -yw64/5OJapUi48qI7hnLRTPykz0c+b92pUt1X/BIWmf301jbZ0AbFZV4yvm1OUH4 -wrGLLFeATjiBWTcJarRiR89DzQ/Cm+c791WXdIhEvv5Vp4/d8HzGZhEUVKTCoA3e -Z8ZIdJoy/d7FYfyeg836UDXEqr598n2p9DxMwkRj5oHINB64CrQuKr7zDdP8Zv2g -vKkjeS4mN+07saWK3UTY5ADByNVHSu+P0LZYPhxjze7KOVjHAAUTCACa5ohR/7/N -x2M2OB9VPAwQPjAFNst6fPotcFLDy5Q/jlbBcDNf1OdzgkE/06z7iPGRmIJL6flz -QZH+hYwDqjulVVtPQXiZMVGvlfC9YIAdJX/1Ca2L9mL4c4IBQbFNkSlgkLaPTwUJ -BD2PnA+q+ERy39UANhIR/LVGltK1krDds8CwbxMSYNFvFgf4dmh6GzI5ioByDoTM -8ShfS2GjAekviNVLsGC5UWKuQl/XVaC/j7CTAT7WbikfXWI2uonFBx47vjf2UaPa -E0HnAVwDY0cAZeaObpDKvyogsf8H4CzK9JCKtW9aTUpKurEpyHfcKqB07GMLC/+Q -QiA3bFmrSaTRiE8EGBECAA8FAkLKSCgCGwwFCQPCZwAACgkQB3kNrVP9pwsejwCg -gaQm6lU/H7ja0EUaJJFZnRoqRvAAnRK8CC4PIr/ZYDjd+aeS3R31FjGr -=D1wm ------END PGP PUBLIC KEY BLOCK----- diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/devices.tar.gz b/tags/0.5/templates/vserver-legacy/vserver-legacy.s/devices.tar.gz Binary files differdeleted file mode 100644 index 992ba79..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/devices.tar.gz +++ /dev/null diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/skel.conf b/tags/0.5/templates/vserver-legacy/vserver-legacy.s/skel.conf deleted file mode 100644 index 73985d3..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/skel.conf +++ /dev/null @@ -1,70 +0,0 @@ -if [ "" = "" ] ; then -PROFILE=prod -fi -# Select the IP number assigned to the virtual server -# This IP must be one IP of the server, either an interface -# or an IP alias -# A vserver may have more than one IP. Separate them with spaces. -# do not forget double quotes. -# Some examples: -# IPROOT="1.2.3.4 2.3.4.5" -# IPROOT="eth0:1.2.3.4 eth1:2.3.4.5" -# If the device is not specified, IPROOTDEV is used -case $PROFILE in -prod) -#IPROOT=143.106.35.156 -IPROOT="eth0:192.168.0.1" -# The netmask and broadcast are computed by default from IPROOTDEV -#IPROOTMASK= -#IPROOTBCAST= -# You can define on which device the IP alias will be done -# The IP alias will be set when the server is started and unset -# when the server is stopped -#IPROOTDEV=eth0 -# You can set a different host name for the vserver -# If empty, the host name of the main server is used -S_HOSTNAME=skel -;; -backup) -IPROOT=1.2.3.4 -#IPROOTMASK= -#IPROOTBCAST= -#IPROOTDEV=eth0 -S_HOSTNAME= -;; -esac -# Uncomment the onboot line if you want to enable this -# virtual server at boot time -#ONBOOT=yes -# You can set a different NIS domain for the vserver -# If empty, the current on is kept -# Set it to "none" to have no NIS domain set -S_DOMAINNAME= -# You can set the priority level (nice) of all process in the vserver -# Even root won't be able to raise it -S_NICE= -# You can set various flags for the new security context -# lock: Prevent the vserver from setting new security context -# sched: Merge scheduler priority of all processes in the vserver -# so that it acts a like a single one. -# nproc: Limit the number of processes in the vserver according to ulimit -# (instead of a per user limit, this becomes a per vserver limit) -# private: No other process can join this security context. Even root -# Do not forget the quotes around the flags -S_FLAGS="lock nproc" -# You can set various ulimit flags and they will be inherited by the -# vserver. You enter here various command line argument of ulimit -# ULIMIT="-HS -u 200" -# The example above, combined with the nproc S_FLAGS will limit the -# vserver to a maximum of 200 processes -ULIMIT="-HS -u 1000" -# You can set various capabilities. By default, the vserver are run -# with a limited set, so you can let root run in a vserver and not -# worry about it. He can't take over the machine. In some cases -# you can to give a little more capabilities (such as CAP_NET_RAW) -# S_CAPS="CAP_NET_RAW" -S_CAPS="CAP_SETGID" -# Select an unused context (this is optional) -# The default is to allocate a free context on the fly -# In general you don't need to force a context -#S_CONTEXT= diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/vserver-legacy.sh b/tags/0.5/templates/vserver-legacy/vserver-legacy.s/vserver-legacy.sh deleted file mode 100644 index 4ce8a4b..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.s/vserver-legacy.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/bash -# -# legacy vserver template -# - -BASE="/etc/simplepkg/templates/vserver-legacy/vserver-legacy.s/" -DEVICES="$BASE/devices.tar.gz" -GPGKEY="$BASE/GPG-KEY" -SKEL="$BASE/skel.conf" - -if [ -z "$2" ]; then - echo "usage: `basename $0` <jail-root> <jail-name>" - exit 1 -elif [ ! -d "$1/$2" ]; then - echo "folder $1/$2 does not exist" - exit 1 -fi - -cp /etc/resolv.conf $1/$2/etc/ -cp /etc/localtime $1/$2/etc/ -echo /dev/hdv1 / ext2 defaults 1 1 > $1/$2/etc/fstab -echo /dev/hdv1 / ext2 rw 0 0 > $1/$2/etc/mtab - -echo "creating devices and dependencies" -if [ -f "$DEVICES" ]; then - cd $1/$2/ - tar zxvf $DEVICES - chroot $1/$2/ sbin/ldconfig -else - echo error: device template $DEVICES not found -fi - -if [ -f "$SKEL" ]; then - echo "creating /etc/vservers/$2.conf" - mkdir -p /etc/vservers - cp $SKEL /etc/vservers/$2.conf -else - echo error: config file template $SKEL not found -fi - -if [ -f "$GPGKEY" ]; then - echo "importing slack gpg pubkey" - mkdir $1/$2/root/.gnupg - gpg --homedir $1/$2/root/.gnupg --import $GPGKEY -fi - -echo "done; now edit /etc/vservers/$2.conf" -echo "then, set all desired iptables rules and start $server vserver" -echo "dont forget to change root's password with the command "vserver $2 exec passwd"" diff --git a/tags/0.5/templates/vserver-legacy/vserver-legacy.template b/tags/0.5/templates/vserver-legacy/vserver-legacy.template deleted file mode 100644 index b810e32..0000000 --- a/tags/0.5/templates/vserver-legacy/vserver-legacy.template +++ /dev/null @@ -1,251 +0,0 @@ -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: A1 (Base Linux series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -aaa_base: ADD -aaa_elflibs: ADD -bash: ADD -bin: ADD -bzip2: ADD -coreutils: ADD -cxxlibs: ADD -dcron: ADD -elvis: ADD -etc: ADD -findutils: ADD -gawk: ADD -gettext: REC -grep: ADD -gzip: ADD -infozip: ADD -less: ADD -logrotate: ADD -openssl-solibs: ADD -pkgtools: ADD -procps: ADD -sed: ADD -shadow: ADD -slocate: ADD -sysklogd: ADD -sysvinit: ADD -tar: ADD -util-linux: ADD -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: AP1 (Applications series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -bc: OPT -diffutils: REC -jed: OPT -joe: OPT -jove: OPT -lsof: OPT -mysql: OPT -sudo: OPT -vim: OPT -# Tagfile for emacs series -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: F1 (Frequently Asked Questions) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -libidn: REC -libxml2: REC -mhash: REC -# This is a Slackware Installation Tagfile. -# -# This one comes from the N (Network/UUCP/Mail/News) series. -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# -apache: OPT -curl: OPT -gnupg: OPT -htdig: OPT -inetd: REC -lftp: OPT -lynx: OPT -mod_ssl: OPT -nail: REC -openssh: REC -openssl: REC -php: OPT -rsync: OPT -stunnel: OPT -tcpip: REC -wget: OPT -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: TCL1 (Tcl/Tk series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: Y1 (Yaaaaaahhoooo? Games and Amusements). -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# extra -libsafe -# contrib -simplepkg -ssmtp diff --git a/tags/0.5/templates/vserver/vserver.d/etc/apache/httpd.conf b/tags/0.5/templates/vserver/vserver.d/etc/apache/httpd.conf deleted file mode 100644 index 7b7115d..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/apache/httpd.conf +++ /dev/null @@ -1,1046 +0,0 @@ -## -## httpd.conf -- Apache HTTP server configuration file -## - -# -# Based upon the NCSA server configuration files originally by Rob McCool. -# -# This is the main Apache server configuration file. It contains the -# configuration directives that give the server its instructions. -# See <URL:http://httpd.apache.org/docs/> for detailed information about -# the directives. -# -# Do NOT simply read the instructions in here without understanding -# what they do. They're here only as hints or reminders. If you are unsure -# consult the online docs. You have been warned. -# -# After this file is processed, the server will look for and process -# /etc/apache/srm.conf and then /etc/apache/access.conf -# unless you have overridden these with ResourceConfig and/or -# AccessConfig directives here. -# -# The configuration directives are grouped into three basic sections: -# 1. Directives that control the operation of the Apache server process as a -# whole (the 'global environment'). -# 2. Directives that define the parameters of the 'main' or 'default' server, -# which responds to requests that aren't handled by a virtual host. -# These directives also provide default values for the settings -# of all virtual hosts. -# 3. Settings for virtual hosts, which allow Web requests to be sent to -# different IP addresses or hostnames and have them handled by the -# same Apache server process. -# -# Configuration and logfile names: If the filenames you specify for many -# of the server's control files begin with "/" (or "drive:/" for Win32), the -# server will use that explicit path. If the filenames do *not* begin -# with "/", the value of ServerRoot is prepended -- so "logs/foo.log" -# with ServerRoot set to "/usr/local/apache" will be interpreted by the -# server as "/usr/local/apache/logs/foo.log". -# - -### Section 1: Global Environment -# -# The directives in this section affect the overall operation of Apache, -# such as the number of concurrent requests it can handle or where it -# can find its configuration files. -# - -# -# ServerType is either inetd, or standalone. Inetd mode is only supported on -# Unix platforms. -# -ServerType standalone - -# ServerTokens directive -ServerTokens ProductOnly - -# -# ServerRoot: The top of the directory tree under which the server's -# configuration, error, and log files are kept. -# -# NOTE! If you intend to place this on an NFS (or otherwise network) -# mounted filesystem then please read the LockFile documentation -# (available at <URL:http://www.apache.org/docs/mod/core.html#lockfile>); -# you will save yourself a lot of trouble. -# -ServerRoot "/usr" - -# -# The LockFile directive sets the path to the lockfile used when Apache -# is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or -# USE_FLOCK_SERIALIZED_ACCEPT. This directive should normally be left at -# its default value. The main reason for changing it is if the logs -# directory is NFS mounted, since the lockfile MUST BE STORED ON A LOCAL -# DISK. The PID of the main server process is automatically appended to -# the filename. -# -#LockFile /var/run/httpd.lock - -# -# PidFile: The file in which the server should record its process -# identification number when it starts. -# -PidFile /var/run/httpd.pid - -# -# ScoreBoardFile: File used to store internal server process information. -# Not all architectures require this. But if yours does (you'll know because -# this file will be created when you run Apache) then you *must* ensure that -# no two invocations of Apache share the same scoreboard file. -# -ScoreBoardFile /var/run/httpd.scoreboard - -# -# In the standard configuration, the server will process httpd.conf (this -# file, specified by the -f command line option), srm.conf, and access.conf -# in that order. The latter two files are now distributed empty, as it is -# recommended that all directives be kept in a single file for simplicity. -# The commented-out values below are the built-in defaults. You can have the -# server ignore these files altogether by using "/dev/null" (for Unix) or -# "nul" (for Win32) for the arguments to the directives. -# -#ResourceConfig /etc/apache/srm.conf -#AccessConfig /etc/apache/access.conf - -# -# Timeout: The number of seconds before receives and sends time out. -# -Timeout 300 - -# -# KeepAlive: Whether or not to allow persistent connections (more than -# one request per connection). Set to "Off" to deactivate. -# -KeepAlive On - -# -# MaxKeepAliveRequests: The maximum number of requests to allow -# during a persistent connection. Set to 0 to allow an unlimited amount. -# We recommend you leave this number high, for maximum performance. -# -MaxKeepAliveRequests 100 - -# -# KeepAliveTimeout: Number of seconds to wait for the next request from the -# same client on the same connection. -# -KeepAliveTimeout 2 - -# -# Server-pool size regulation. Rather than making you guess how many -# server processes you need, Apache dynamically adapts to the load it -# sees --- that is, it tries to maintain enough server processes to -# handle the current load, plus a few spare servers to handle transient -# load spikes (e.g., multiple simultaneous requests from a single -# Netscape browser). -# -# It does this by periodically checking how many servers are waiting -# for a request. If there are fewer than MinSpareServers, it creates -# a new spare. If there are more than MaxSpareServers, some of the -# spares die off. The default values are probably OK for most sites. -# -MinSpareServers 5 -MaxSpareServers 10 - -# -# Number of servers to start initially --- should be a reasonable ballpark -# figure. -# -StartServers 5 - -# -# Limit on total number of servers running, i.e., limit on the number -# of clients who can simultaneously connect --- if this limit is ever -# reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW. -# It is intended mainly as a brake to keep a runaway server from taking -# the system with it as it spirals down... -# -MaxClients 150 - -# -# MaxRequestsPerChild: the number of requests each child process is -# allowed to process before the child dies. The child will exit so -# as to avoid problems after prolonged use when Apache (and maybe the -# libraries it uses) leak memory or other resources. On most systems, this -# isn't really needed, but a few (such as Solaris) do have notable leaks -# in the libraries. For these platforms, set to something like 10000 -# or so; a setting of 0 means unlimited. -# -# NOTE: This value does not include keepalive requests after the initial -# request per connection. For example, if a child process handles -# an initial request and 10 subsequent "keptalive" requests, it -# would only count as 1 request towards this limit. -# -MaxRequestsPerChild 0 - -# -# Listen: Allows you to bind Apache to specific IP addresses and/or -# ports, instead of the default. See also the <VirtualHost> -# directive. -# -#Listen 3000 -#Listen 12.34.56.78:80 - -# -# BindAddress: You can support virtual hosts with this option. This directive -# is used to tell the server which IP address to listen to. It can either -# contain "*", an IP address, or a fully qualified Internet domain name. -# See also the <VirtualHost> and Listen directives. -# -#BindAddress * - -# -# Dynamic Shared Object (DSO) Support -# -# To be able to use the functionality of a module which was built as a DSO you -# have to place corresponding `LoadModule' lines at this location so the -# directives contained in it are actually available _before_ they are used. -# Please read the file http://httpd.apache.org/docs/dso.html for more -# details about the DSO mechanism and run `httpd -l' for the list of already -# built-in (statically linked and thus always available) modules in your httpd -# binary. -# -# Note: The order in which modules are loaded is important. Don't change -# the order below without expert advice. -# -# Example: -# LoadModule foo_module libexec/mod_foo.so -LoadModule vhost_alias_module libexec/apache/mod_vhost_alias.so -#LoadModule env_module libexec/apache/mod_env.so -LoadModule define_module libexec/apache/mod_define.so -LoadModule config_log_module libexec/apache/mod_log_config.so -LoadModule mime_magic_module libexec/apache/mod_mime_magic.so -LoadModule mime_module libexec/apache/mod_mime.so -LoadModule negotiation_module libexec/apache/mod_negotiation.so -#LoadModule status_module libexec/apache/mod_status.so -#LoadModule info_module libexec/apache/mod_info.so -LoadModule includes_module libexec/apache/mod_include.so -LoadModule autoindex_module libexec/apache/mod_autoindex.so -LoadModule dir_module libexec/apache/mod_dir.so -LoadModule cgi_module libexec/apache/mod_cgi.so -#LoadModule asis_module libexec/apache/mod_asis.so -#LoadModule imap_module libexec/apache/mod_imap.so -#LoadModule action_module libexec/apache/mod_actions.so -#LoadModule speling_module libexec/apache/mod_speling.so -#LoadModule userdir_module libexec/apache/mod_userdir.so -LoadModule alias_module libexec/apache/mod_alias.so -LoadModule rewrite_module libexec/apache/mod_rewrite.so -LoadModule access_module libexec/apache/mod_access.so -LoadModule auth_module libexec/apache/mod_auth.so -LoadModule anon_auth_module libexec/apache/mod_auth_anon.so -#LoadModule dbm_auth_module libexec/apache/mod_auth_dbm.so -#LoadModule digest_module libexec/apache/mod_digest.so -LoadModule proxy_module libexec/apache/libproxy.so -LoadModule cern_meta_module libexec/apache/mod_cern_meta.so -LoadModule expires_module libexec/apache/mod_expires.so -LoadModule headers_module libexec/apache/mod_headers.so -#LoadModule usertrack_module libexec/apache/mod_usertrack.so -#LoadModule log_forensic_module libexec/apache/mod_log_forensic.so -#LoadModule unique_id_module libexec/apache/mod_unique_id.so -LoadModule setenvif_module libexec/apache/mod_setenvif.so - -# Reconstruction of the complete module list from all available modules -# (static and shared ones) to achieve correct module execution order. -# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO] -ClearModuleList -AddModule mod_vhost_alias.c -#AddModule mod_env.c -AddModule mod_define.c -AddModule mod_log_config.c -AddModule mod_mime_magic.c -AddModule mod_mime.c -AddModule mod_negotiation.c -#AddModule mod_status.c -#AddModule mod_info.c -AddModule mod_include.c -AddModule mod_autoindex.c -AddModule mod_dir.c -AddModule mod_cgi.c -#AddModule mod_asis.c -#AddModule mod_imap.c -#AddModule mod_actions.c -#AddModule mod_speling.c -#AddModule mod_userdir.c -AddModule mod_alias.c -AddModule mod_rewrite.c -AddModule mod_access.c -AddModule mod_auth.c -AddModule mod_auth_anon.c -#AddModule mod_auth_dbm.c -#AddModule mod_digest.c -AddModule mod_proxy.c -AddModule mod_cern_meta.c -AddModule mod_expires.c -AddModule mod_headers.c -#AddModule mod_usertrack.c -#AddModule mod_log_forensic.c -#AddModule mod_unique_id.c -AddModule mod_so.c -AddModule mod_setenvif.c - -# -# ExtendedStatus controls whether Apache will generate "full" status -# information (ExtendedStatus On) or just basic information (ExtendedStatus -# Off) when the "server-status" handler is called. The default is Off. -# -#ExtendedStatus On - -### Section 2: 'Main' server configuration -# -# The directives in this section set up the values used by the 'main' -# server, which responds to any requests that aren't handled by a -# <VirtualHost> definition. These values also provide defaults for -# any <VirtualHost> containers you may define later in the file. -# -# All of these directives may appear inside <VirtualHost> containers, -# in which case these default settings will be overridden for the -# virtual host being defined. -# - -# -# If your ServerType directive (set earlier in the 'Global Environment' -# section) is set to "inetd", the next few directives don't have any -# effect since their settings are defined by the inetd configuration. -# Skip ahead to the ServerAdmin directive. -# - -# -# Port: The port to which the standalone server listens. For -# ports < 1023, you will need httpd to be run as root initially. -# -Port 80 - -# -# If you wish httpd to run as a different user or group, you must run -# httpd as root initially and it will switch. -# -# User/Group: The name (or #number) of the user/group to run httpd as. -# . On SCO (ODT 3) use "User nouser" and "Group nogroup". -# . On HPUX you may not be able to use shared memory as nobody, and the -# suggested workaround is to create a user www and use that user. -# NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET) -# when the value of (unsigned)Group is above 60000; -# don't use Group "#-1" on these systems! -# -User nobody -Group nobody - -# -# ServerAdmin: Your address, where problems with the server should be -# e-mailed. This address appears on some server-generated pages, such -# as error documents. -# -ServerAdmin root@midas.slackware.lan - -# -# ServerName allows you to set a host name which is sent back to clients for -# your server if it's different than the one the program would get (i.e., use -# "www" instead of the host's real name). -# -# Note: You cannot just invent host names and hope they work. The name you -# define here must be a valid DNS name for your host. If you don't understand -# this, ask your network administrator. -# If your host doesn't have a registered DNS name, enter its IP address here. -# You will have to access it by its address (e.g., http://123.45.67.89/) -# anyway, and this will make redirections work in a sensible way. -# -# 127.0.0.1 is the TCP/IP local loop-back address, often named localhost. Your -# machine always knows itself by this address. If you use Apache strictly for -# local testing and development, you may use 127.0.0.1 as the server name. -# -#ServerName www.example.com - -# -# DocumentRoot: The directory out of which you will serve your -# documents. By default, all requests are taken from this directory, but -# symbolic links and aliases may be used to point to other locations. -# -DocumentRoot "/var/www/htdocs" - -# -# Each directory to which Apache has access, can be configured with respect -# to which services and features are allowed and/or disabled in that -# directory (and its subdirectories). -# -# First, we configure the "default" to be a very restrictive set of -# permissions. -# -<Directory /> - Options FollowSymLinks - AllowOverride None -</Directory> - -# -# Note that from this point forward you must specifically allow -# particular features to be enabled - so if something's not working as -# you might expect, make sure that you have specifically enabled it -# below. -# - -# -# This should be changed to whatever you set DocumentRoot to. -# -<Directory "/var/www/htdocs"> - -# -# This may also be "None", "All", or any combination of "Indexes", -# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews". -# -# Note that "MultiViews" must be named *explicitly* --- "Options All" -# doesn't give it to you. -# - Options Indexes FollowSymLinks MultiViews - -# -# This controls which options the .htaccess files in directories can -# override. Can also be "All", or any combination of "Options", "FileInfo", -# "AuthConfig", and "Limit" -# - AllowOverride None - -# -# Controls who can get stuff from this server. -# - Order allow,deny - Allow from all -</Directory> - -# -# UserDir: The name of the directory which is appended onto a user's home -# directory if a ~user request is received. -# -<IfModule mod_userdir.c> - UserDir public_html -</IfModule> - -# -# Control access to UserDir directories. The following is an example -# for a site where these directories are restricted to read-only. -# -#<Directory /home/*/public_html> -# AllowOverride FileInfo AuthConfig Limit -# Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec -# <Limit GET POST OPTIONS PROPFIND> -# Order allow,deny -# Allow from all -# </Limit> -# <LimitExcept GET POST OPTIONS PROPFIND> -# Order deny,allow -# Deny from all -# </LimitExcept> -#</Directory> - -# -# DirectoryIndex: Name of the file or files to use as a pre-written HTML -# directory index. Separate multiple entries with spaces. -# -<IfModule mod_dir.c> - DirectoryIndex index.html -</IfModule> - -# -# AccessFileName: The name of the file to look for in each directory -# for access control information. -# -AccessFileName .htaccess - -# -# The following lines prevent .htaccess files from being viewed by -# Web clients. Since .htaccess files often contain authorization -# information, access is disallowed for security reasons. Comment -# these lines out if you want Web visitors to see the contents of -# .htaccess files. If you change the AccessFileName directive above, -# be sure to make the corresponding changes here. -# -# Also, folks tend to use names such as .htpasswd for password -# files, so this will protect those as well. -# -<Files ~ "^\.ht"> - Order allow,deny - Deny from all - Satisfy All -</Files> - -# -# CacheNegotiatedDocs: By default, Apache sends "Pragma: no-cache" with each -# document that was negotiated on the basis of content. This asks proxy -# servers not to cache the document. Uncommenting the following line disables -# this behavior, and proxies will be allowed to cache the documents. -# -#CacheNegotiatedDocs - -# -# UseCanonicalName: (new for 1.3) With this setting turned on, whenever -# Apache needs to construct a self-referencing URL (a URL that refers back -# to the server the response is coming from) it will use ServerName and -# Port to form a "canonical" name. With this setting off, Apache will -# use the hostname:port that the client supplied, when possible. This -# also affects SERVER_NAME and SERVER_PORT in CGI scripts. -# -UseCanonicalName On - -# -# TypesConfig describes where the mime.types file (or equivalent) is -# to be found. -# -<IfModule mod_mime.c> - TypesConfig /etc/apache/mime.types -</IfModule> - -# -# DefaultType is the default MIME type the server will use for a document -# if it cannot otherwise determine one, such as from filename extensions. -# If your server contains mostly text or HTML documents, "text/plain" is -# a good value. If most of your content is binary, such as applications -# or images, you may want to use "application/octet-stream" instead to -# keep browsers from trying to display binary files as though they are -# text. -# -DefaultType text/plain - -# -# The mod_mime_magic module allows the server to use various hints from the -# contents of the file itself to determine its type. The MIMEMagicFile -# directive tells the module where the hint definitions are located. -# mod_mime_magic is not part of the default server (you have to add -# it yourself with a LoadModule [see the DSO paragraph in the 'Global -# Environment' section], or recompile the server and include mod_mime_magic -# as part of the configuration), so it's enclosed in an <IfModule> container. -# This means that the MIMEMagicFile directive will only be processed if the -# module is part of the server. -# -<IfModule mod_mime_magic.c> - MIMEMagicFile /etc/apache/magic -</IfModule> - -# -# HostnameLookups: Log the names of clients or just their IP addresses -# e.g., www.apache.org (on) or 204.62.129.132 (off). -# The default is off because it'd be overall better for the net if people -# had to knowingly turn this feature on, since enabling it means that -# each client request will result in AT LEAST one lookup request to the -# nameserver. -# -HostnameLookups Off - -# -# ErrorLog: The location of the error log file. -# If you do not specify an ErrorLog directive within a <VirtualHost> -# container, error messages relating to that virtual host will be -# logged here. If you *do* define an error logfile for a <VirtualHost> -# container, that host's errors will be logged there and not here. -# -ErrorLog "| /usr/bin/error-log.sh /var/log/apache/error_log" - -# -# LogLevel: Control the number of messages logged to the error_log. -# Possible values include: debug, info, notice, warn, error, crit, -# alert, emerg. -# -LogLevel warn - -# -# The following directives define some format nicknames for use with -# a CustomLog directive (see below). -# -LogFormat "%l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined -LogFormat "%l %u %t \"%r\" %>s %b" common -LogFormat "%{Referer}i -> %U" referer -LogFormat "%{User-agent}i" agent - -# -# The location and format of the access logfile (Common Logfile Format). -# If you do not define any access logfiles within a <VirtualHost> -# container, they will be logged here. Contrariwise, if you *do* -# define per-<VirtualHost> access logfiles, transactions will be -# logged therein and *not* in this file. -# -CustomLog /var/log/apache/access_log common - -# -# If you would like to have agent and referer logfiles, uncomment the -# following directives. -# -#CustomLog /var/log/apache/referer_log referer -#CustomLog /var/log/apache/agent_log agent - -# -# If you prefer a single logfile with access, agent, and referer information -# (Combined Logfile Format) you can use the following directive. -# -#CustomLog /var/log/apache/access_log combined - -# -# Optionally add a line containing the server version and virtual host -# name to server-generated pages (error documents, FTP directory listings, -# mod_status and mod_info output etc., but not CGI generated documents). -# Set to "EMail" to also include a mailto: link to the ServerAdmin. -# Set to one of: On | Off | EMail -# -ServerSignature Off - -# EBCDIC configuration: -# (only for mainframes using the EBCDIC codeset, currently one of: -# Fujitsu-Siemens' BS2000/OSD, IBM's OS/390 and IBM's TPF)!! -# The following default configuration assumes that "text files" -# are stored in EBCDIC (so that you can operate on them using the -# normal POSIX tools like grep and sort) while "binary files" are -# stored with identical octets as on an ASCII machine. -# -# The directives are evaluated in configuration file order, with -# the EBCDICConvert directives applied before EBCDICConvertByType. -# -# If you want to have ASCII HTML documents and EBCDIC HTML documents -# at the same time, you can use the file extension to force -# conversion off for the ASCII documents: -# > AddType text/html .ahtml -# > EBCDICConvert Off=InOut .ahtml -# -# EBCDICConvertByType On=InOut text/* message/* multipart/* -# EBCDICConvertByType On=In application/x-www-form-urlencoded -# EBCDICConvertByType On=InOut application/postscript model/vrml -# EBCDICConvertByType Off=InOut */* - - -# -# Aliases: Add here as many aliases as you need (with no limit). The format is -# Alias fakename realname -# -<IfModule mod_alias.c> - - # - # Note that if you include a trailing / on fakename then the server will - # require it to be present in the URL. So "/icons" isn't aliased in this - # example, only "/icons/". If the fakename is slash-terminated, then the - # realname must also be slash terminated, and if the fakename omits the - # trailing slash, the realname must also omit it. - # - Alias /icons/ "/var/www/icons/" - - <Directory "/var/www/icons"> - Options Indexes MultiViews - AllowOverride None - Order allow,deny - Allow from all - </Directory> - - # This Alias will project the on-line documentation tree under /manual/ - # even if you change the DocumentRoot. Comment it if you don't want to - # provide access to the on-line documentation. - # - Alias /manual/ "/var/www/htdocs/manual/" - - <Directory "/var/www/htdocs/manual"> - Options Indexes FollowSymlinks MultiViews - AllowOverride None - Order allow,deny - Allow from all - </Directory> - - # - # ScriptAlias: This controls which directories contain server scripts. - # ScriptAliases are essentially the same as Aliases, except that - # documents in the realname directory are treated as applications and - # run by the server when requested rather than as documents sent to the client. - # The same rules about trailing "/" apply to ScriptAlias directives as to - # Alias. - # - ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" - - # - # "/var/www/cgi-bin" should be changed to whatever your ScriptAliased - # CGI directory exists, if you have that configured. - # - <Directory "/var/www/cgi-bin"> - AllowOverride None - Options None - Order allow,deny - Allow from all - </Directory> - -</IfModule> -# End of aliases. - -# -# Redirect allows you to tell clients about documents which used to exist in -# your server's namespace, but do not anymore. This allows you to tell the -# clients where to look for the relocated document. -# Format: Redirect old-URI new-URL -# - -# -# Directives controlling the display of server-generated directory listings. -# -<IfModule mod_autoindex.c> - - # - # FancyIndexing is whether you want fancy directory indexing or standard - # - IndexOptions FancyIndexing - - # - # AddIcon* directives tell the server which icon to show for different - # files or filename extensions. These are only displayed for - # FancyIndexed directories. - # - AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip - - AddIconByType (TXT,/icons/text.gif) text/* - AddIconByType (IMG,/icons/image2.gif) image/* - AddIconByType (SND,/icons/sound2.gif) audio/* - AddIconByType (VID,/icons/movie.gif) video/* - - AddIcon /icons/binary.gif .bin .exe - AddIcon /icons/binhex.gif .hqx - AddIcon /icons/tar.gif .tar - AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv - AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip - AddIcon /icons/a.gif .ps .ai .eps - AddIcon /icons/layout.gif .html .shtml .htm .pdf - AddIcon /icons/text.gif .txt - AddIcon /icons/c.gif .c - AddIcon /icons/p.gif .pl .py - AddIcon /icons/f.gif .for - AddIcon /icons/dvi.gif .dvi - AddIcon /icons/uuencoded.gif .uu - AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl - AddIcon /icons/tex.gif .tex - AddIcon /icons/bomb.gif core - - AddIcon /icons/back.gif .. - AddIcon /icons/hand.right.gif README - AddIcon /icons/folder.gif ^^DIRECTORY^^ - AddIcon /icons/blank.gif ^^BLANKICON^^ - - # - # DefaultIcon is which icon to show for files which do not have an icon - # explicitly set. - # - DefaultIcon /icons/unknown.gif - - # - # AddDescription allows you to place a short description after a file in - # server-generated indexes. These are only displayed for FancyIndexed - # directories. - # Format: AddDescription "description" filename - # - #AddDescription "GZIP compressed document" .gz - #AddDescription "tar archive" .tar - #AddDescription "GZIP compressed tar archive" .tgz - - # - # ReadmeName is the name of the README file the server will look for by - # default, and append to directory listings. - # - # HeaderName is the name of a file which should be prepended to - # directory indexes. - # - ReadmeName README.html - HeaderName HEADER.html - - # - # IndexIgnore is a set of filenames which directory indexing should ignore - # and not include in the listing. Shell-style wildcarding is permitted. - # - IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t - -</IfModule> -# End of indexing directives. - -# -# Document types. -# -<IfModule mod_mime.c> - - # - # AddLanguage allows you to specify the language of a document. You can - # then use content negotiation to give a browser a file in a language - # it can understand. - # - # Note 1: The suffix does not have to be the same as the language - # keyword --- those with documents in Polish (whose net-standard - # language code is pl) may wish to use "AddLanguage pl .po" to - # avoid the ambiguity with the common suffix for perl scripts. - # - # Note 2: The example entries below illustrate that in quite - # some cases the two character 'Language' abbreviation is not - # identical to the two character 'Country' code for its country, - # E.g. 'Danmark/dk' versus 'Danish/da'. - # - # Note 3: In the case of 'ltz' we violate the RFC by using a three char - # specifier. But there is 'work in progress' to fix this and get - # the reference data for rfc1766 cleaned up. - # - # Danish (da) - Dutch (nl) - English (en) - Estonian (ee) - # French (fr) - German (de) - Greek-Modern (el) - # Italian (it) - Korean (kr) - Norwegian (no) - Norwegian Nynorsk (nn) - # Portugese (pt) - Luxembourgeois* (ltz) - # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cs) - # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja) - # Russian (ru) - # - AddLanguage da .dk - AddLanguage nl .nl - AddLanguage en .en - AddLanguage et .ee - AddLanguage fr .fr - AddLanguage de .de - AddLanguage el .el - AddLanguage he .he - AddCharset ISO-8859-8 .iso8859-8 - AddLanguage it .it - AddLanguage ja .ja - AddCharset ISO-2022-JP .jis - AddLanguage kr .kr - AddCharset ISO-2022-KR .iso-kr - AddLanguage nn .nn - AddLanguage no .no - AddLanguage pl .po - AddCharset ISO-8859-2 .iso-pl - AddLanguage pt .pt - AddLanguage pt-br .pt-br - AddLanguage ltz .lu - AddLanguage ca .ca - AddLanguage es .es - AddLanguage sv .sv - AddLanguage cs .cz .cs - AddLanguage ru .ru - AddLanguage zh-TW .zh-tw - AddCharset Big5 .Big5 .big5 - AddCharset WINDOWS-1251 .cp-1251 - AddCharset CP866 .cp866 - AddCharset ISO-8859-5 .iso-ru - AddCharset KOI8-R .koi8-r - AddCharset UCS-2 .ucs2 - AddCharset UCS-4 .ucs4 - AddCharset UTF-8 .utf8 - - # LanguagePriority allows you to give precedence to some languages - # in case of a tie during content negotiation. - # - # Just list the languages in decreasing order of preference. We have - # more or less alphabetized them here. You probably want to change this. - # - <IfModule mod_negotiation.c> - LanguagePriority en da nl et fr de el it ja kr no pl pt pt-br ru ltz ca es sv tw - </IfModule> - - # - # AddType allows you to tweak mime.types without actually editing it, or to - # make certain files to be certain types. - # - AddType application/x-tar .tgz - - # - # AddEncoding allows you to have certain browsers uncompress - # information on the fly. Note: Not all browsers support this. - # Despite the name similarity, the following Add* directives have nothing - # to do with the FancyIndexing customization directives above. - # - AddEncoding x-compress .Z - AddEncoding x-gzip .gz .tgz - # - # If the AddEncoding directives above are commented-out, then you - # probably should define those extensions to indicate media types: - # - #AddType application/x-compress .Z - #AddType application/x-gzip .gz .tgz - - # - # AddHandler allows you to map certain file extensions to "handlers", - # actions unrelated to filetype. These can be either built into the server - # or added with the Action command (see below) - # - # If you want to use server side includes, or CGI outside - # ScriptAliased directories, uncomment the following lines. - # - # To use CGI scripts: - # - #AddHandler cgi-script .cgi - - # - # To use server-parsed HTML files - # - #AddType text/html .shtml - #AddHandler server-parsed .shtml - - # - # Uncomment the following line to enable Apache's send-asis HTTP file - # feature - # - #AddHandler send-as-is asis - - # - # If you wish to use server-parsed imagemap files, use - # - #AddHandler imap-file map - - # - # To enable type maps, you might want to use - # - #AddHandler type-map var - -</IfModule> -# End of document types. - -# -# Action lets you define media types that will execute a script whenever -# a matching file is called. This eliminates the need for repeated URL -# pathnames for oft-used CGI file processors. -# Format: Action media/type /cgi-script/location -# Format: Action handler-name /cgi-script/location -# - -# -# MetaDir: specifies the name of the directory in which Apache can find -# meta information files. These files contain additional HTTP headers -# to include when sending the document -# -#MetaDir .web - -# -# MetaSuffix: specifies the file name suffix for the file containing the -# meta information. -# -#MetaSuffix .meta - -# -# Customizable error response (Apache style) -# these come in three flavors -# -# 1) plain text -ErrorDocument 500 /missing.html -# n.b. the single leading (") marks it as text, it does not get output -# -# 2) local redirects -ErrorDocument 404 /missing.html -# to redirect to local URL /missing.html -#ErrorDocument 404 /cgi-bin/missing_handler.pl -# N.B.: You can redirect to a script or a document using server-side-includes. -# -# 3) external redirects -ErrorDocument 402 /missing.html -# N.B.: Many of the environment variables associated with the original -# request will *not* be available to such a script. - -# -# Customize behaviour based on the browser -# -<IfModule mod_setenvif.c> - - # - # The following directives modify normal HTTP response behavior. - # The first directive disables keepalive for Netscape 2.x and browsers that - # spoof it. There are known problems with these browser implementations. - # The second directive is for Microsoft Internet Explorer 4.0b2 - # which has a broken HTTP/1.1 implementation and does not properly - # support keepalive when it is used on 301 or 302 (redirect) responses. - # - BrowserMatch "Mozilla/2" nokeepalive - BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 - - # - # The following directive disables HTTP/1.1 responses to browsers which - # are in violation of the HTTP/1.0 spec by not being able to grok a - # basic 1.1 response. - # - BrowserMatch "RealPlayer 4\.0" force-response-1.0 - BrowserMatch "Java/1\.0" force-response-1.0 - BrowserMatch "JDK/1\.0" force-response-1.0 - -</IfModule> -# End of browser customization directives - -# -# Allow server status reports, with the URL of http://servername/server-status -# Change the ".example.com" to match your domain to enable. -# -#<Location /server-status> -# SetHandler server-status -# Order deny,allow -# Deny from all -# Allow from .example.com -#</Location> - -# -# Allow remote server configuration reports, with the URL of -# http://servername/server-info (requires that mod_info.c be loaded). -# Change the ".example.com" to match your domain to enable. -# -#<Location /server-info> -# SetHandler server-info -# Order deny,allow -# Deny from all -# Allow from .example.com -#</Location> - -# -# There have been reports of people trying to abuse an old bug from pre-1.1 -# days. This bug involved a CGI script distributed as a part of Apache. -# By uncommenting these lines you can redirect these attacks to a logging -# script on phf.apache.org. Or, you can record them yourself, using the script -# support/phf_abuse_log.cgi. -# -#<Location /cgi-bin/phf*> -# Deny from all -# ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi -#</Location> - -### Section 3: Virtual Hosts -# -# VirtualHost: If you want to maintain multiple domains/hostnames on your -# machine you can setup VirtualHost containers for them. Most configurations -# use only name-based virtual hosts so the server doesn't need to worry about -# IP addresses. This is indicated by the asterisks in the directives below. -# -# Please see the documentation at <URL:http://www.apache.org/docs/vhosts/> -# for further details before you try to setup virtual hosts. -# -# You may use the command line option '-S' to verify your virtual host -# configuration. - -# -# Use name-based virtual hosting. -# -#NameVirtualHost *:80 - -# -# VirtualHost example: -# Almost any Apache directive may go into a VirtualHost container. -# The first VirtualHost section is used for requests without a known -# server name. -# -#<VirtualHost *:80> -# ServerAdmin webmaster@dummy-host.example.com -# DocumentRoot /www/docs/dummy-host.example.com -# ServerName dummy-host.example.com -# ErrorLog logs/dummy-host.example.com-error_log -# CustomLog logs/dummy-host.example.com-access_log common -#</VirtualHost> - -# By default, all external Apache modules are disabled. To enable a particular -# module for Apache, make sure the necessary packages are installed. Then -# uncomment the appropriate Include line below, save the file, and restart -# Apache. Note that some modules may need additional configuration steps. For -# example, mod_ssl requires a site certificate which you may need to generate. -# -# Lastly, if you remove a module package, be sure to edit this file and comment -# out the appropriate Include line. - -# ==> mod_php configuration settings <== -# -# PACKAGES REQUIRED: openssl-solibs (A series) and/or openssl (N series), -# mysql (AP series), gmp (L series), mhash (L series), -# and apache (N series) -# -#Include /etc/apache/mod_php.conf - -# ==> mod_ssl configuration settings <== -# -# PACKAGES REQUIRED: apache (N series) and openssl (N series) -# -#Include /etc/apache/mod_ssl.conf - -#NameVirtualHost VSERVER_IP - -Include /etc/apache/vhosts diff --git a/tags/0.5/templates/vserver/vserver.d/etc/apache/php.ini b/tags/0.5/templates/vserver/vserver.d/etc/apache/php.ini deleted file mode 100644 index e6cddef..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/apache/php.ini +++ /dev/null @@ -1,1122 +0,0 @@ -[PHP] - -;;;;;;;;;;;;;;;;;;; -; About this file ; -;;;;;;;;;;;;;;;;;;; -; -; This is the recommended, PHP 4-style version of the php.ini-dist file. It -; sets some non standard settings, that make PHP more efficient, more secure, -; and encourage cleaner coding. -; The price is that with these settings, PHP may be incompatible with some -; applications, and sometimes, more difficult to develop with. Using this -; file is warmly recommended for production sites. As all of the changes from -; the standard settings are thoroughly documented, you can go over each one, -; and decide whether you want to use it or not. -; -; For general information about the php.ini file, please consult the php.ini-dist -; file, included in your PHP distribution. -; -; This file is different from the php.ini-dist file in the fact that it features -; different values for several directives, in order to improve performance, while -; possibly breaking compatibility with the standard out-of-the-box behavior of -; PHP 3. Please make sure you read what's different, and modify your scripts -; accordingly, if you decide to use this file instead. -; -; - register_globals = Off [Security, Performance] -; Global variables are no longer registered for input data (POST, GET, cookies, -; environment and other server variables). Instead of using $foo, you must use -; you can use $_REQUEST["foo"] (includes any variable that arrives through the -; request, namely, POST, GET and cookie variables), or use one of the specific -; $_GET["foo"], $_POST["foo"], $_COOKIE["foo"] or $_FILES["foo"], depending -; on where the input originates. Also, you can look at the -; import_request_variables() function. -; Note that register_globals is going to be depracated (i.e., turned off by -; default) in the next version of PHP, because it often leads to security bugs. -; Read http://php.net/manual/en/security.registerglobals.php for further -; information. -; - display_errors = Off [Security] -; With this directive set to off, errors that occur during the execution of -; scripts will no longer be displayed as a part of the script output, and thus, -; will no longer be exposed to remote users. With some errors, the error message -; content may expose information about your script, web server, or database -; server that may be exploitable for hacking. Production sites should have this -; directive set to off. -; - log_errors = On [Security] -; This directive complements the above one. Any errors that occur during the -; execution of your script will be logged (typically, to your server's error log, -; but can be configured in several ways). Along with setting display_errors to off, -; this setup gives you the ability to fully understand what may have gone wrong, -; without exposing any sensitive information to remote users. -; - output_buffering = 4096 [Performance] -; Set a 4KB output buffer. Enabling output buffering typically results in less -; writes, and sometimes less packets sent on the wire, which can often lead to -; better performance. The gain this directive actually yields greatly depends -; on which Web server you're working with, and what kind of scripts you're using. -; - register_argc_argv = Off [Performance] -; Disables registration of the somewhat redundant $argv and $argc global -; variables. -; - magic_quotes_gpc = Off [Performance] -; Input data is no longer escaped with slashes so that it can be sent into -; SQL databases without further manipulation. Instead, you should use the -; function addslashes() on each input element you wish to send to a database. -; - variables_order = "GPCS" [Performance] -; The environment variables are not hashed into the $HTTP_ENV_VARS[]. To access -; environment variables, you can use getenv() instead. -; - error_reporting = E_ALL [Code Cleanliness, Security(?)] -; By default, PHP surpresses errors of type E_NOTICE. These error messages -; are emitted for non-critical errors, but that could be a symptom of a bigger -; problem. Most notably, this will cause error messages about the use -; of uninitialized variables to be displayed. -; - allow_call_time_pass_reference = Off [Code cleanliness] -; It's not possible to decide to force a variable to be passed by reference -; when calling a function. The PHP 4 style to do this is by making the -; function require the relevant argument by reference. - - -;;;;;;;;;;;;;;;;;;;; -; Language Options ; -;;;;;;;;;;;;;;;;;;;; - -; Enable the PHP scripting language engine under Apache. -engine = On - -; Allow the <? tag. Otherwise, only <?php and <script> tags are recognized. -; NOTE: Using short tags should be avoided when developing applications or -; libraries that are meant for redistribution, or deployment on PHP -; servers which are not under your control, because short tags may not -; be supported on the target server. For portable, redistributable code, -; be sure not to use short tags. -short_open_tag = On - -; Allow ASP-style <% %> tags. -asp_tags = Off - -; The number of significant digits displayed in floating point numbers. -precision = 14 - -; Enforce year 2000 compliance (will cause problems with non-compliant browsers) -y2k_compliance = On - -; Output buffering allows you to send header lines (including cookies) even -; after you send body content, at the price of slowing PHP's output layer a -; bit. You can enable output buffering during runtime by calling the output -; buffering functions. You can also enable output buffering for all files by -; setting this directive to On. If you wish to limit the size of the buffer -; to a certain size - you can use a maximum number of bytes instead of 'On', as -; a value for this directive (e.g., output_buffering=4096). -output_buffering = 4096 - -; You can redirect all of the output of your scripts to a function. For -; example, if you set output_handler to "mb_output_handler", character -; encoding will be transparently converted to the specified encoding. -; Setting any output handler automatically turns on output buffering. -; Note: People who wrote portable scripts should not depend on this ini -; directive. Instead, explicitly set the output handler using ob_start(). -; Using this ini directive may cause problems unless you know what script -; is doing. -; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler" -; and you cannot use both "ob_gzhandler" and "zlib.output_compression". -;output_handler = - -; Transparent output compression using the zlib library -; Valid values for this option are 'off', 'on', or a specific buffer size -; to be used for compression (default is 4KB) -; Note: Resulting chunk size may vary due to nature of compression. PHP -; outputs chunks that are few handreds bytes each as a result of compression. -; If you want larger chunk size for better performence, enable output_buffering -; also. -; Note: output_handler must be empty if this is set 'On' !!!! -; Instead you must use zlib.output_handler. -zlib.output_compression = Off - -; You cannot specify additional output handlers if zlib.output_compression -; is activated here. This setting does the same as output_handler but in -; a different order. -;zlib.output_handler = - -; Implicit flush tells PHP to tell the output layer to flush itself -; automatically after every output block. This is equivalent to calling the -; PHP function flush() after each and every call to print() or echo() and each -; and every HTML block. Turning this option on has serious performance -; implications and is generally recommended for debugging purposes only. -implicit_flush = Off - -; The unserialize callback function will be called (with the undefined class' -; name as parameter), if the unserializer finds an undefined class -; which should be instanciated. -; A warning appears if the specified function is not defined, or if the -; function doesn't include/implement the missing class. -; So only set this entry, if you really want to implement such a -; callback-function. -unserialize_callback_func= - -; When floats & doubles are serialized store serialize_precision significant -; digits after the floating point. The default value ensures that when floats -; are decoded with unserialize, the data will remain the same. -serialize_precision = 100 - -; Whether to enable the ability to force arguments to be passed by reference -; at function call time. This method is deprecated and is likely to be -; unsupported in future versions of PHP/Zend. The encouraged method of -; specifying which arguments should be passed by reference is in the function -; declaration. You're encouraged to try and turn this option Off and make -; sure your scripts work properly with it in order to ensure they will work -; with future versions of the language (you will receive a warning each time -; you use this feature, and the argument will be passed by value instead of by -; reference). -allow_call_time_pass_reference = Off - -; -; Safe Mode -; -safe_mode = Off - -; By default, Safe Mode does a UID compare check when -; opening files. If you want to relax this to a GID compare, -; then turn on safe_mode_gid. -safe_mode_gid = Off - -; When safe_mode is on, UID/GID checks are bypassed when -; including files from this directory and its subdirectories. -; (directory must also be in include_path or full path must -; be used when including) -safe_mode_include_dir = - -; When safe_mode is on, only executables located in the safe_mode_exec_dir -; will be allowed to be executed via the exec family of functions. -safe_mode_exec_dir = - -; Setting certain environment variables may be a potential security breach. -; This directive contains a comma-delimited list of prefixes. In Safe Mode, -; the user may only alter environment variables whose names begin with the -; prefixes supplied here. By default, users will only be able to set -; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR). -; -; Note: If this directive is empty, PHP will let the user modify ANY -; environment variable! -safe_mode_allowed_env_vars = PHP_ - -; This directive contains a comma-delimited list of environment variables that -; the end user won't be able to change using putenv(). These variables will be -; protected even if safe_mode_allowed_env_vars is set to allow to change them. -safe_mode_protected_env_vars = LD_LIBRARY_PATH - -; open_basedir, if set, limits all file operations to the defined directory -; and below. This directive makes most sense if used in a per-directory -; or per-virtualhost web server configuration file. This directive is -; *NOT* affected by whether Safe Mode is turned On or Off. -;open_basedir = - -; This directive allows you to disable certain functions for security reasons. -; It receives a comma-delimited list of function names. This directive is -; *NOT* affected by whether Safe Mode is turned On or Off. -disable_functions = - -; This directive allows you to disable certain classes for security reasons. -; It receives a comma-delimited list of class names. This directive is -; *NOT* affected by whether Safe Mode is turned On or Off. -disable_classes = - -; Colors for Syntax Highlighting mode. Anything that's acceptable in -; <font color="??????"> would work. -;highlight.string = #DD0000 -;highlight.comment = #FF9900 -;highlight.keyword = #007700 -;highlight.bg = #FFFFFF -;highlight.default = #0000BB -;highlight.html = #000000 - - -; -; Misc -; -; Decides whether PHP may expose the fact that it is installed on the server -; (e.g. by adding its signature to the Web server header). It is no security -; threat in any way, but it makes it possible to determine whether you use PHP -; on your server or not. -expose_php = On - - -;;;;;;;;;;;;;;;;;;; -; Resource Limits ; -;;;;;;;;;;;;;;;;;;; - -max_execution_time = 30 ; Maximum execution time of each script, in seconds -max_input_time = 60 ; Maximum amount of time each script may spend parsing request data -memory_limit = 8M ; Maximum amount of memory a script may consume (8MB) - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Error handling and logging ; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -; error_reporting is a bit-field. Or each number up to get desired error -; reporting level -; E_ALL - All errors and warnings -; E_ERROR - fatal run-time errors -; E_WARNING - run-time warnings (non-fatal errors) -; E_PARSE - compile-time parse errors -; E_NOTICE - run-time notices (these are warnings which often result -; from a bug in your code, but it's possible that it was -; intentional (e.g., using an uninitialized variable and -; relying on the fact it's automatically initialized to an -; empty string) -; E_CORE_ERROR - fatal errors that occur during PHP's initial startup -; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's -; initial startup -; E_COMPILE_ERROR - fatal compile-time errors -; E_COMPILE_WARNING - compile-time warnings (non-fatal errors) -; E_USER_ERROR - user-generated error message -; E_USER_WARNING - user-generated warning message -; E_USER_NOTICE - user-generated notice message -; -; Examples: -; -; - Show all errors, except for notices -; -;error_reporting = E_ALL & ~E_NOTICE -; -; - Show only errors -; -;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR -; -; - Show all errors -; -error_reporting = E_ALL - -; Print out errors (as a part of the output). For production web sites, -; you're strongly encouraged to turn this feature off, and use error logging -; instead (see below). Keeping display_errors enabled on a production web site -; may reveal security information to end users, such as file paths on your Web -; server, your database schema or other information. -display_errors = Off - -; Even when display_errors is on, errors that occur during PHP's startup -; sequence are not displayed. It's strongly recommended to keep -; display_startup_errors off, except for when debugging. -display_startup_errors = Off - -; Log errors into a log file (server-specific log, stderr, or error_log (below)) -; As stated above, you're strongly advised to use error logging in place of -; error displaying on production web sites. -log_errors = On - -; Set maximum length of log_errors. In error_log information about the source is -; added. The default is 1024 and 0 allows to not apply any maximum length at all. -log_errors_max_len = 1024 - -; Do not log repeated messages. Repeated errors must occur in same file on same -; line until ignore_repeated_source is set true. -ignore_repeated_errors = Off - -; Ignore source of message when ignoring repeated messages. When this setting -; is On you will not log errors with repeated messages from different files or -; sourcelines. -ignore_repeated_source = Off - -; If this parameter is set to Off, then memory leaks will not be shown (on -; stdout or in the log). This has only effect in a debug compile, and if -; error reporting includes E_WARNING in the allowed list -report_memleaks = On - -; Store the last error/warning message in $php_errormsg (boolean). -track_errors = Off - -; Disable the inclusion of HTML tags in error messages. -;html_errors = Off - -; If html_errors is set On PHP produces clickable error messages that direct -; to a page describing the error or function causing the error in detail. -; You can download a copy of the PHP manual from http://www.php.net/docs.php -; and change docref_root to the base URL of your local copy including the -; leading '/'. You must also specify the file extension being used including -; the dot. -;docref_root = "/phpmanual/" -;docref_ext = .html - -; String to output before an error message. -;error_prepend_string = "<font color=ff0000>" - -; String to output after an error message. -;error_append_string = "</font>" - -; Log errors to specified file. -;error_log = filename - -; Log errors to syslog (Event Log on NT, not valid in Windows 95). -;error_log = syslog - - -;;;;;;;;;;;;;;;;; -; Data Handling ; -;;;;;;;;;;;;;;;;; -; -; Note - track_vars is ALWAYS enabled as of PHP 4.0.3 - -; The separator used in PHP generated URLs to separate arguments. -; Default is "&". -;arg_separator.output = "&" - -; List of separator(s) used by PHP to parse input URLs into variables. -; Default is "&". -; NOTE: Every character in this directive is considered as separator! -;arg_separator.input = ";&" - -; This directive describes the order in which PHP registers GET, POST, Cookie, -; Environment and Built-in variables (G, P, C, E & S respectively, often -; referred to as EGPCS or GPC). Registration is done from left to right, newer -; values override older values. -variables_order = "GPCS" - -; Whether or not to register the EGPCS variables as global variables. You may -; want to turn this off if you don't want to clutter your scripts' global scope -; with user data. This makes most sense when coupled with track_vars - in which -; case you can access all of the GPC variables through the $HTTP_*_VARS[], -; variables. -; -; You should do your best to write your scripts so that they do not require -; register_globals to be on; Using form variables as globals can easily lead -; to possible security problems, if the code is not very well thought of. -register_globals = Off - -; This directive tells PHP whether to declare the argv&argc variables (that -; would contain the GET information). If you don't use these variables, you -; should turn it off for increased performance. -register_argc_argv = Off - -; Maximum size of POST data that PHP will accept. -post_max_size = 8M - -; This directive is deprecated. Use variables_order instead. -gpc_order = "GPC" - -; Magic quotes -; - -; Magic quotes for incoming GET/POST/Cookie data. -magic_quotes_gpc = Off - -; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc. -magic_quotes_runtime = Off - -; Use Sybase-style magic quotes (escape ' with '' instead of \'). -magic_quotes_sybase = Off - -; Automatically add files before or after any PHP document. -auto_prepend_file = -auto_append_file = - -; As of 4.0b4, PHP always outputs a character encoding by default in -; the Content-type: header. To disable sending of the charset, simply -; set it to be empty. -; -; PHP's built-in default is text/html -default_mimetype = "text/html" -;default_charset = "iso-8859-1" - -; Always populate the $HTTP_RAW_POST_DATA variable. -;always_populate_raw_post_data = On - - -;;;;;;;;;;;;;;;;;;;;;;;;; -; Paths and Directories ; -;;;;;;;;;;;;;;;;;;;;;;;;; - -; UNIX: "/path1:/path2" -;include_path = ".:/php/includes" -; -; Windows: "\path1;\path2" -;include_path = ".;c:\php\includes" - -; The root of the PHP pages, used only if nonempty. -; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root -; if you are running php as a CGI under any web server (other than IIS) -; see documentation for security issues. The alternate is to use the -; cgi.force_redirect configuration below -doc_root = - -; The directory under which PHP opens the script using /~usernamem used only -; if nonempty. -user_dir = - -; Directory in which the loadable extensions (modules) reside. -; extension_dir = "./" -extension_dir = "/usr/lib/php/extensions/" - -; Whether or not to enable the dl() function. The dl() function does NOT work -; properly in multithreaded servers, such as IIS or Zeus, and is automatically -; disabled on them. -enable_dl = On - -; cgi.force_redirect is necessary to provide security running PHP as a CGI under -; most web servers. Left undefined, PHP turns this on by default. You can -; turn it off here AT YOUR OWN RISK -; **You CAN safely turn this off for IIS, in fact, you MUST.** -; cgi.force_redirect = 1 - -; if cgi.nph is enabled it will force cgi to always sent Status: 200 with -; every request. -; cgi.nph = 1 - -; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape -; (iPlanet) web servers, you MAY need to set an environment variable name that PHP -; will look for to know it is OK to continue execution. Setting this variable MAY -; cause security issues, KNOW WHAT YOU ARE DOING FIRST. -; cgi.redirect_status_env = ; - -; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's -; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok -; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting -; this to 1 will cause PHP CGI to fix it's paths to conform to the spec. A setting -; of zero causes PHP to behave as before. Default is zero. You should fix your scripts -; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. -; cgi.fix_pathinfo=1 - -; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate -; security tokens of the calling client. This allows IIS to define the -; security context that the request runs under. mod_fastcgi under Apache -; does not currently support this feature (03/17/2002) -; Set to 1 if running under IIS. Default is zero. -; fastcgi.impersonate = 1; - -; Disable logging through FastCGI connection -; fastcgi.log = 0 - -; cgi.rfc2616_headers configuration option tells PHP what type of headers to -; use when sending HTTP response code. If it's set 0 PHP sends Status: header that -; is supported by Apache. When this option is set to 1 PHP will send -; RFC2616 compliant header. -; Default is zero. -;cgi.rfc2616_headers = 0 - - -;;;;;;;;;;;;;;;; -; File Uploads ; -;;;;;;;;;;;;;;;; - -; Whether to allow HTTP file uploads. -file_uploads = On - -; Temporary directory for HTTP uploaded files (will use system default if not -; specified). -;upload_tmp_dir = - -; Maximum allowed size for uploaded files. -upload_max_filesize = 10M - - -;;;;;;;;;;;;;;;;;; -; Fopen wrappers ; -;;;;;;;;;;;;;;;;;; - -; Whether to allow the treatment of URLs (like http:// or ftp://) as files. -allow_url_fopen = On - -; Define the anonymous ftp password (your email address) -;from="john@doe.com" - -; Define the user agent for php to send -;user_agent="PHP" - -; Default timeout for socket based streams (seconds) -default_socket_timeout = 60 - -; If your scripts have to deal with files from Macintosh systems, -; or you are running on a Mac and need to deal with files from -; unix or win32 systems, setting this flag will cause PHP to -; automatically detect the EOL character in those files so that -; fgets() and file() will work regardless of the source of the file. -; auto_detect_line_endings = Off - - -;;;;;;;;;;;;;;;;;;;;;; -; Dynamic Extensions ; -;;;;;;;;;;;;;;;;;;;;;; -; -; If you wish to have an extension loaded automatically, use the following -; syntax: -; -; extension=modulename.extension -; -; For example, on Windows: -; -; extension=msql.dll -; -; ... or under UNIX: -; -; extension=msql.so -; -; Note that it should be the name of the module only; no directory information -; needs to go here. Specify the location of the extension with the -; extension_dir directive above. -; -; Load the MySQL module by default. Comment this out if you don't use MySQL. -extension=mysql.so - -; Load the gettext extension by default. Comment this out if you don't have the -; gettext shared library installed. -extension=gettext.so - -;Windows Extensions -;Note that MySQL and ODBC support is now built in, so no dll is needed for it. -; -;extension=php_mbstring.dll -;extension=php_bz2.dll -;extension=php_cpdf.dll -;extension=php_crack.dll -;extension=php_curl.dll -;extension=php_db.dll -;extension=php_dba.dll -;extension=php_dbase.dll -;extension=php_dbx.dll -;extension=php_domxml.dll -;extension=php_exif.dll -;extension=php_fdf.dll -;extension=php_filepro.dll -;extension=php_gd2.dll -;extension=php_gettext.dll -;extension=php_hyperwave.dll -;extension=php_iconv.dll -;extension=php_ifx.dll -;extension=php_iisfunc.dll -;extension=php_imap.dll -;extension=php_interbase.dll -;extension=php_java.dll -;extension=php_ldap.dll -;extension=php_mcrypt.dll -;extension=php_mhash.dll -;extension=php_mime_magic.dll -;extension=php_ming.dll -;extension=php_mssql.dll -;extension=php_msql.dll -;extension=php_oci8.dll -;extension=php_openssl.dll -;extension=php_oracle.dll -;extension=php_pdf.dll -;extension=php_pgsql.dll -;extension=php_printer.dll -;extension=php_shmop.dll -;extension=php_snmp.dll -;extension=php_sockets.dll -;extension=php_sybase_ct.dll -;extension=php_w32api.dll -;extension=php_xmlrpc.dll -;extension=php_xslt.dll -;extension=php_yaz.dll -;extension=php_zip.dll - - -;;;;;;;;;;;;;;;;;;; -; Module Settings ; -;;;;;;;;;;;;;;;;;;; - -[Syslog] -; Whether or not to define the various syslog variables (e.g. $LOG_PID, -; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In -; runtime, you can define these variables by calling define_syslog_variables(). -define_syslog_variables = Off - -[mail function] -; For Win32 only. -SMTP = localhost -smtp_port = 25 - -; For Win32 only. -;sendmail_from = me@example.com - -; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). -;sendmail_path = - -[Java] -;java.class.path = .\php_java.jar -;java.home = c:\jdk -;java.library = c:\jdk\jre\bin\hotspot\jvm.dll -;java.library.path = .\ - -[SQL] -sql.safe_mode = Off - -[ODBC] -;odbc.default_db = Not yet implemented -;odbc.default_user = Not yet implemented -;odbc.default_pw = Not yet implemented - -; Allow or prevent persistent links. -odbc.allow_persistent = On - -; Check that a connection is still valid before reuse. -odbc.check_persistent = On - -; Maximum number of persistent links. -1 means no limit. -odbc.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -odbc.max_links = -1 - -; Handling of LONG fields. Returns number of bytes to variables. 0 means -; passthru. -odbc.defaultlrl = 4096 - -; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char. -; See the documentation on odbc_binmode and odbc_longreadlen for an explanation -; of uodbc.defaultlrl and uodbc.defaultbinmode -odbc.defaultbinmode = 1 - -[MySQL] -; Allow or prevent persistent links. -mysql.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -mysql.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -mysql.max_links = -1 - -; Default port number for mysql_connect(). If unset, mysql_connect() will use -; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the -; compile-time value defined MYSQL_PORT (in that order). Win32 will only look -; at MYSQL_PORT. -mysql.default_port = - -; Default socket name for local MySQL connects. If empty, uses the built-in -; MySQL defaults. -mysql.default_socket = - -; Default host for mysql_connect() (doesn't apply in safe mode). -mysql.default_host = - -; Default user for mysql_connect() (doesn't apply in safe mode). -mysql.default_user = - -; Default password for mysql_connect() (doesn't apply in safe mode). -; Note that this is generally a *bad* idea to store passwords in this file. -; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password") -; and reveal this password! And of course, any users with read access to this -; file will be able to reveal the password as well. -mysql.default_password = - -; Maximum time (in seconds) for connect timeout. -1 means no limit -mysql.connect_timeout = 60 - -; Trace mode. When trace_mode is active (=On), warnings for table/index scans and -; SQL-Errors will be displayed. -mysql.trace_mode = Off - -[mSQL] -; Allow or prevent persistent links. -msql.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -msql.max_persistent = -1 - -; Maximum number of links (persistent+non persistent). -1 means no limit. -msql.max_links = -1 - -[PostgresSQL] -; Allow or prevent persistent links. -pgsql.allow_persistent = On - -; Detect broken persistent links always with pg_pconnect(). -; Auto reset feature requires a little overheads. -pgsql.auto_reset_persistent = Off - -; Maximum number of persistent links. -1 means no limit. -pgsql.max_persistent = -1 - -; Maximum number of links (persistent+non persistent). -1 means no limit. -pgsql.max_links = -1 - -; Ignore PostgreSQL backends Notice message or not. -; Notice message logging require a little overheads. -pgsql.ignore_notice = 0 - -; Log PostgreSQL backends Noitce message or not. -; Unless pgsql.ignore_notice=0, module cannot log notice message. -pgsql.log_notice = 0 - -[Sybase] -; Allow or prevent persistent links. -sybase.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -sybase.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -sybase.max_links = -1 - -;sybase.interface_file = "/usr/sybase/interfaces" - -; Minimum error severity to display. -sybase.min_error_severity = 10 - -; Minimum message severity to display. -sybase.min_message_severity = 10 - -; Compatability mode with old versions of PHP 3.0. -; If on, this will cause PHP to automatically assign types to results according -; to their Sybase type, instead of treating them all as strings. This -; compatibility mode will probably not stay around forever, so try applying -; whatever necessary changes to your code, and turn it off. -sybase.compatability_mode = Off - -[Sybase-CT] -; Allow or prevent persistent links. -sybct.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -sybct.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -sybct.max_links = -1 - -; Minimum server message severity to display. -sybct.min_server_severity = 10 - -; Minimum client message severity to display. -sybct.min_client_severity = 10 - -[dbx] -; returned column names can be converted for compatibility reasons -; possible values for dbx.colnames_case are -; "unchanged" (default, if not set) -; "lowercase" -; "uppercase" -; the recommended default is either upper- or lowercase, but -; unchanged is currently set for backwards compatibility -dbx.colnames_case = "lowercase" - -[bcmath] -; Number of decimal digits for all bcmath functions. -bcmath.scale = 0 - -[browscap] -;browscap = extra/browscap.ini - -[Informix] -; Default host for ifx_connect() (doesn't apply in safe mode). -ifx.default_host = - -; Default user for ifx_connect() (doesn't apply in safe mode). -ifx.default_user = - -; Default password for ifx_connect() (doesn't apply in safe mode). -ifx.default_password = - -; Allow or prevent persistent links. -ifx.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -ifx.max_persistent = -1 - -; Maximum number of links (persistent + non-persistent). -1 means no limit. -ifx.max_links = -1 - -; If on, select statements return the contents of a text blob instead of its id. -ifx.textasvarchar = 0 - -; If on, select statements return the contents of a byte blob instead of its id. -ifx.byteasvarchar = 0 - -; Trailing blanks are stripped from fixed-length char columns. May help the -; life of Informix SE users. -ifx.charasvarchar = 0 - -; If on, the contents of text and byte blobs are dumped to a file instead of -; keeping them in memory. -ifx.blobinfile = 0 - -; NULL's are returned as empty strings, unless this is set to 1. In that case, -; NULL's are returned as string 'NULL'. -ifx.nullformat = 0 - -[Session] -; Handler used to store/retrieve data. -session.save_handler = files - -; Argument passed to save_handler. In the case of files, this is the path -; where data files are stored. Note: Windows users have to change this -; variable in order to use PHP's session functions. -;session.save_path = /tmp - -; Whether to use cookies. -session.use_cookies = 1 - -; This option enables administrators to make their users invulnerable to -; attacks which involve passing session ids in URLs; defaults to 0. -; session.use_only_cookies = 1 - -; Name of the session (used as cookie name). -session.name = PHPSESSID - -; Initialize session on request startup. -session.auto_start = 0 - -; Lifetime in seconds of cookie or, if 0, until browser is restarted. -session.cookie_lifetime = 0 - -; The path for which the cookie is valid. -session.cookie_path = / - -; The domain for which the cookie is valid. -session.cookie_domain = - -; Handler used to serialize data. php is the standard serializer of PHP. -session.serialize_handler = php - -; Define the probability that the 'garbage collection' process is started -; on every session initialization. -; The probability is calculated by using gc_probability/gc_divisor, -; e.g. 1/100 means there is a 1% chance that the GC process starts -; on each request. - -session.gc_probability = 1 -session.gc_divisor = 1000 - -; After this number of seconds, stored data will be seen as 'garbage' and -; cleaned up by the garbage collection process. -session.gc_maxlifetime = 1440 - -; PHP 4.2 and less have an undocumented feature/bug that allows you to -; to initialize a session variable in the global scope, albeit register_globals -; is disabled. PHP 4.3 and later will warn you, if this feature is used. -; You can disable the feature and the warning separately. At this time, -; the warning is only displayed, if bug_compat_42 is enabled. - -session.bug_compat_42 = 0 -session.bug_compat_warn = 1 - -; Check HTTP Referer to invalidate externally stored URLs containing ids. -; HTTP_REFERER has to contain this substring for the session to be -; considered as valid. -session.referer_check = - -; How many bytes to read from the file. -session.entropy_length = 0 - -; Specified here to create the session id. -session.entropy_file = - -;session.entropy_length = 16 - -;session.entropy_file = /dev/urandom - -; Set to {nocache,private,public,} to determine HTTP caching aspects. -; or leave this empty to avoid sending anti-caching headers. -session.cache_limiter = nocache - -; Document expires after n minutes. -session.cache_expire = 180 - -; trans sid support is disabled by default. -; Use of trans sid may risk your users security. -; Use this option with caution. -; - User may send URL contains active session ID -; to other person via. email/irc/etc. -; - URL that contains active session ID may be stored -; in publically accessible computer. -; - User may access your site with the same session ID -; always using URL stored in browser's history or bookmarks. -session.use_trans_sid = 0 - -; The URL rewriter will look for URLs in a defined set of HTML tags. -; form/fieldset are special; if you include them here, the rewriter will -; add a hidden <input> field with the info which is otherwise appended -; to URLs. If you want XHTML conformity, remove the form entry. -; Note that all valid entries require a "=", even if no value follows. -url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" - -[MSSQL] -; Allow or prevent persistent links. -mssql.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -mssql.max_persistent = -1 - -; Maximum number of links (persistent+non persistent). -1 means no limit. -mssql.max_links = -1 - -; Minimum error severity to display. -mssql.min_error_severity = 10 - -; Minimum message severity to display. -mssql.min_message_severity = 10 - -; Compatability mode with old versions of PHP 3.0. -mssql.compatability_mode = Off - -; Connect timeout -;mssql.connect_timeout = 5 - -; Query timeout -;mssql.timeout = 60 - -; Valid range 0 - 2147483647. Default = 4096. -;mssql.textlimit = 4096 - -; Valid range 0 - 2147483647. Default = 4096. -;mssql.textsize = 4096 - -; Limits the number of records in each batch. 0 = all records in one batch. -;mssql.batchsize = 0 - -; Specify how datetime and datetim4 columns are returned -; On => Returns data converted to SQL server settings -; Off => Returns values as YYYY-MM-DD hh:mm:ss -;mssql.datetimeconvert = On - -; Use NT authentication when connecting to the server -mssql.secure_connection = Off - -; Specify max number of processes. Default = 25 -;mssql.max_procs = 25 - -[Assertion] -; Assert(expr); active by default. -;assert.active = On - -; Issue a PHP warning for each failed assertion. -;assert.warning = On - -; Don't bail out by default. -;assert.bail = Off - -; User-function to be called if an assertion fails. -;assert.callback = 0 - -; Eval the expression with current error_reporting(). Set to true if you want -; error_reporting(0) around the eval(). -;assert.quiet_eval = 0 - -[Ingres II] -; Allow or prevent persistent links. -ingres.allow_persistent = On - -; Maximum number of persistent links. -1 means no limit. -ingres.max_persistent = -1 - -; Maximum number of links, including persistents. -1 means no limit. -ingres.max_links = -1 - -; Default database (format: [node_id::]dbname[/srv_class]). -ingres.default_database = - -; Default user. -ingres.default_user = - -; Default password. -ingres.default_password = - -[Verisign Payflow Pro] -; Default Payflow Pro server. -pfpro.defaulthost = "test-payflow.verisign.com" - -; Default port to connect to. -pfpro.defaultport = 443 - -; Default timeout in seconds. -pfpro.defaulttimeout = 30 - -; Default proxy IP address (if required). -;pfpro.proxyaddress = - -; Default proxy port. -;pfpro.proxyport = - -; Default proxy logon. -;pfpro.proxylogon = - -; Default proxy password. -;pfpro.proxypassword = - -[com] -; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs -;com.typelib_file = -; allow Distributed-COM calls -;com.allow_dcom = true -; autoregister constants of a components typlib on com_load() -;com.autoregister_typelib = true -; register constants casesensitive -;com.autoregister_casesensitive = false -; show warnings on duplicate constat registrations -;com.autoregister_verbose = true - -[Printer] -;printer.default_printer = "" - -[mbstring] -; language for internal character representation. -;mbstring.language = Japanese - -; internal/script encoding. -; Some encoding cannot work as internal encoding. -; (e.g. SJIS, BIG5, ISO-2022-*) -;mbstring.internal_encoding = EUC-JP - -; http input encoding. -;mbstring.http_input = auto - -; http output encoding. mb_output_handler must be -; registered as output buffer to function -;mbstring.http_output = SJIS - -; enable automatic encoding translation accoding to -; mbstring.internal_encoding setting. Input chars are -; converted to internal encoding by setting this to On. -; Note: Do _not_ use automatic encoding translation for -; portable libs/applications. -;mbstring.encoding_translation = Off - -; automatic encoding detection order. -; auto means -;mbstring.detect_order = auto - -; substitute_character used when character cannot be converted -; one from another -;mbstring.substitute_character = none; - -; overload(replace) single byte functions by mbstring functions. -; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(), -; etc. Possible values are 0,1,2,4 or combination of them. -; For example, 7 for overload everything. -; 0: No overload -; 1: Overload mail() function -; 2: Overload str*() functions -; 4: Overload ereg*() functions -;mbstring.func_overload = 0 - -[FrontBase] -;fbsql.allow_persistent = On -;fbsql.autocommit = On -;fbsql.default_database = -;fbsql.default_database_password = -;fbsql.default_host = -;fbsql.default_password = -;fbsql.default_user = "_SYSTEM" -;fbsql.generate_warnings = Off -;fbsql.max_connections = 128 -;fbsql.max_links = 128 -;fbsql.max_persistent = -1 -;fbsql.max_results = 128 -;fbsql.batchSize = 1000 - -[Crack] -; Modify the setting below to match the directory location of the cracklib -; dictionary files. Include the base filename, but not the file extension. -; crack.default_dictionary = "c:\php\lib\cracklib_dict" - -[exif] -; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. -; With mbstring support this will automatically be converted into the encoding -; given by corresponding encode setting. When empty mbstring.internal_encoding -; is used. For the decode settings you can distinguish between motorola and -; intel byte order. A decode setting cannot be empty. -;exif.encode_unicode = ISO-8859-15 -;exif.decode_unicode_motorola = UCS-2BE -;exif.decode_unicode_intel = UCS-2LE -;exif.encode_jis = -;exif.decode_jis_motorola = JIS -;exif.decode_jis_intel = JIS - -; Local Variables: -; tab-width: 4 -; End: diff --git a/tags/0.5/templates/vserver/vserver.d/etc/apache/vhosts b/tags/0.5/templates/vserver/vserver.d/etc/apache/vhosts deleted file mode 100644 index e69de29..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/apache/vhosts +++ /dev/null diff --git a/tags/0.5/templates/vserver/vserver.d/etc/hosts b/tags/0.5/templates/vserver/vserver.d/etc/hosts deleted file mode 100644 index 6e33147..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/hosts +++ /dev/null @@ -1,21 +0,0 @@ -# -# hosts This file describes a number of hostname-to-address -# mappings for the TCP/IP subsystem. It is mostly -# used at boot time, when no name servers are running. -# On small systems, this file can be used instead of a -# "named" name server. Just add the names, addresses -# and any aliases to this file... -# -# By the way, Arnt Gulbrandsen <agulbra@nvg.unit.no> says that 127.0.0.1 -# should NEVER be named with the name of the machine. It causes problems -# for some (stupid) programs, irc and reputedly talk. :^) -# - -# For loopbacking. -127.0.0.1 localhost -# This next entry is technically wrong, but good enough to get TCP/IP apps -# to quit complaining that they can't verify the hostname on a loopback-only -# Linux box. -127.0.0.1 darkstar.example.net darkstar - -# End of hosts. diff --git a/tags/0.5/templates/vserver/vserver.d/etc/logrotate.d/apache b/tags/0.5/templates/vserver/vserver.d/etc/logrotate.d/apache deleted file mode 100644 index f31fbe2..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/logrotate.d/apache +++ /dev/null @@ -1,11 +0,0 @@ -/var/log/apache/access_log /var/log/apache/error_log { - monthly - nomail - compress - create 0664 root root - rotate 12 - postrotate - /etc/rc.d/rc.httpd restart > /dev/null - endscript -} - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/profile b/tags/0.5/templates/vserver/vserver.d/etc/profile deleted file mode 100644 index 563594a..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/profile +++ /dev/null @@ -1,87 +0,0 @@ -# /etc/profile: This file contains system-wide defaults used by -# all Bourne (and related) shells. - -# Set the values for some environment variables: -export MINICOM="-c on" -export MANPATH=/usr/local/man:/usr/man:/usr/X11R6/man -export HOSTNAME="`cat /etc/HOSTNAME`" -export LESSOPEN="|lesspipe.sh %s" -export LESS="-M" - -# If the user doesn't have a .inputrc, use the one in /etc. -if [ ! -r "$HOME/.inputrc" ]; then - export INPUTRC=/etc/inputrc -fi - -# Set the default system $PATH: -PATH="/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games" - -# For root users, ensure that /usr/local/sbin, /usr/sbin, and /sbin are in -# the $PATH. Some means of connection don't add these by default (sshd comes -# to mind). -if [ "`id -u`" = "0" ]; then - echo $PATH | grep /usr/local/sbin 1> /dev/null 2> /dev/null - if [ ! $? = 0 ]; then - PATH=/usr/local/sbin:/usr/sbin:/sbin:$PATH - fi -fi - -# I had problems using 'eval tset' instead of 'TERM=', but you might want to -# try it anyway. I think with the right /etc/termcap it would work great. -# eval `tset -sQ "$TERM"` -if [ "$TERM" = "" -o "$TERM" = "unknown" ]; then - TERM=linux -fi - -# Set ksh93 visual editing mode: -if [ "$SHELL" = "/bin/ksh" ]; then - VISUAL=emacs -# VISUAL=gmacs -# VISUAL=vi -fi - -# Set a default shell prompt: -#PS1='`hostname`:`pwd`# ' -if [ "$SHELL" = "/bin/pdksh" ]; then - PS1='! $ ' -elif [ "$SHELL" = "/bin/ksh" ]; then - PS1='! ${PWD/#$HOME/~}$ ' -elif [ "$SHELL" = "/bin/zsh" ]; then - PS1='%n@%m:%~%# ' -elif [ "$SHELL" = "/bin/ash" ]; then - PS1='$ ' -else - PS1='\u@\h:\w\$ ' -fi -PS2='> ' -export PATH DISPLAY LESS TERM PS1 PS2 - -# Default umask. A umask of 022 prevents new files from being created group -# and world writable. -umask 022 - -# Set up the LS_COLORS and LS_OPTIONS environment variables for color ls: -if [ "$SHELL" = "/bin/zsh" ]; then - eval `dircolors -z` -elif [ "$SHELL" = "/bin/ash" ]; then - eval `dircolors -s` -else - eval `dircolors -b` -fi - -# Append any additional sh scripts found in /etc/profile.d/: -for profile_script in /etc/profile.d/*.sh ; do - if [ -x $profile_script ]; then - . $profile_script - fi -done -unset profile_script - -# For non-root users, add the current directory to the search path: -if [ ! "`id -u`" = "0" ]; then - PATH="$PATH:." -fi - -# firewall: -export FTP_PASSIVE=1 - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc deleted file mode 100755 index eefbcc5..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -if [ "$1" == "3" ]; then - /etc/rc.d/rc.M -elif [ "$1" == "6" ]; then - /etc/rc.d/rc.6 -else - echo "Invalid level." - exit 1 -fi - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.0 b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.0 deleted file mode 100755 index bfec90a..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.0 +++ /dev/null @@ -1,110 +0,0 @@ -#! /bin/sh -# -# rc.6 This file is executed by init when it goes into runlevel -# 0 (halt) or runlevel 6 (reboot). It kills all processes, -# unmounts file systems and then either halts or reboots. -# -# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001 -# -# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org> -# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com> -# - -# Set the path. -PATH=/sbin:/etc:/bin:/usr/bin - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Set linefeed mode to avoid staircase effect. -stty onlcr - -echo "Running shutdown script $0:" - -# Find out how we were called. -case "$0" in - *0) - command="halt" - ;; - *6) - command=reboot - ;; - *) - echo "$0: call me as \"rc.0\" or \"rc.6\" please!" - exit 1 - ;; -esac - -# Stop the Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - /etc/rc.d/rc.httpd stop -fi - -# Stop the MySQL database: -if [ -r /var/run/mysql/mysql.pid ]; then - . /etc/rc.d/rc.mysqld stop -fi - -# Stop the Samba server: -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba stop -fi - -# Try to kill dhcpcd so the DHCP leases can be returned: -killall -15 dhcpcd 1> /dev/null 2> /dev/null - -# Try to shut down pppd: -PS="$(ps ax)" -if echo "$PS" | grep -q -w pppd ; then - if [ -x /usr/sbin/ppp-off ]; then - /usr/sbin/ppp-off - fi -fi - -# Turn off process accounting: -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - echo "Turning off process accounting." - /sbin/accton -fi - -# Kill all processes. -# INIT is supposed to handle this entirely now, but this didn't always -# work correctly without this second pass at killing off the processes. -# Since INIT already notified the user that processes were being killed, -# we'll avoid echoing this info this time around. -if [ "$1" != "fast" ]; then # shutdown did not already kill all processes - killall5 -15 - sleep 5 - killall5 -9 -fi - -# Carry a random seed between reboots. -echo "Saving random seed from /dev/urandom in /etc/random-seed." -# Use the pool size from /proc, or 512 bytes: -if [ -r /proc/sys/kernel/random/poolsize ]; then - dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null -else - dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null -fi -chmod 600 /etc/random-seed - -# Before unmounting file systems write a reboot or halt record to wtmp. -$command -w - -# Clear /var/lock/subsys. -if [ -d /var/lock/subsys ]; then - rm -f /var/lock/subsys/* -fi - -# This never hurts: -sync - -# sleep 1 fixes problems with some hard drives that don't -# otherwise finish syncing before reboot or poweroff -sleep 1 - -# This is to ensure all processes have completed on SMP machines: -wait - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.4 b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.4 deleted file mode 100644 index b972052..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.4 +++ /dev/null @@ -1,256 +0,0 @@ -#!/bin/sh -# -# rc.M This file is executed by init(8) when the system is being -# initialized for one of the "multi user" run levels (i.e. -# levels 1 through 6). It usually does mounting of file -# systems et al. -# -# Version: @(#)/etc/rc.d/rc.M 2.23 Wed Feb 26 19:20:58 PST 2003 -# -# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> -# Heavily modified by Patrick Volkerding <volkerdi@slackware.com> -# - -# Tell the viewers what's going to happen. -echo "Going multiuser..." - -# Screen blanks after 15 minutes idle time, and powers down in one hour -# if the kernel supports APM or ACPI power management: -#/bin/setterm -blank 15 -powersave powerdown -powerdown 60 - -# Set the hostname. -#if [ -r /etc/HOSTNAME ]; then -# /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .) -#else - # fall back on this old default: -# echo "darkstar.example.net" > /etc/HOSTNAME -# /bin/hostname darkstar -#fi - -# Save the contents of 'dmesg': -#/bin/dmesg -s 65536 > /var/log/dmesg - -# Start the system logger. -if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then - . /etc/rc.d/rc.syslog start -fi - -# Initialize PCMCIA devices: -# -# NOTE: This used to be started near the top of rc.S so that PCMCIA devices -# could be fsck'ed along with the other drives. This had some unfortunate -# side effects, however, since root isn't yet read-write, and /var might not -# even be mounted the .pid files can't be correctly written in /var/run and -# the pcmcia system can't be correctly shut down. If you want some PCMCIA -# partition to be mounted at boot (or when the card is inserted) then add -# the appropriate lines to /etc/pcmcia/scsi.opts. -# -if [ -x /etc/rc.d/rc.pcmcia ] ; then - . /etc/rc.d/rc.pcmcia start - # The cards might need a little extra time here to initialize. - if [ -r /var/run/cardmgr.pid ]; then - sleep 5 - fi -fi - -# Initialize the networking hardware. If your network driver is a module -# and you haven't loaded it manually, this will be deferred until after -# the hotplug system loads the module below. -#if [ -x /etc/rc.d/rc.inet1 ]; then -# . /etc/rc.d/rc.inet1 -#fi - -# Initialize the hotplugging subsystem for Cardbus, IEEE1394, PCI, and USB devices: -if [ -x /etc/rc.d/rc.hotplug -a -r /proc/modules ]; then - # Don't run hotplug if 'nohotplug' was given at boot. - if ! grep nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - echo "Activating hardware detection: /etc/rc.d/rc.hotplug start" - . /etc/rc.d/rc.hotplug start - fi -fi - -# Start networking daemons: -if [ -x /etc/rc.d/rc.inet2 ]; then - . /etc/rc.d/rc.inet2 -fi - -# Remove stale locks and junk files (must be done after mount -a!) -/bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/core /core 2> /dev/null - -# Remove stale hunt sockets so the game can start. -if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then - echo "Removing your stale hunt sockets from /tmp." - /bin/rm -f /tmp/hunt* -fi - -# Ensure basic filesystem permissions sanity. -chmod 755 / 2> /dev/null -chmod 1777 /tmp /var/tmp - -# Update all the shared library links: -if [ -x /sbin/ldconfig ]; then - echo "Updating shared library links: /sbin/ldconfig" - /sbin/ldconfig -fi - -# Update the X font indexes: -if [ -x /usr/X11R6/bin/fc-cache ]; then - echo "Updating X font indexes: /usr/X11R6/bin/fc-cache" - /usr/X11R6/bin/fc-cache -fi - -# Start the print spooling system. This will usually be LPRng (lpd) or CUPS. -if [ -x /etc/rc.d/rc.cups ]; then - # Start CUPS: - /etc/rc.d/rc.cups start -elif [ -x /etc/rc.d/rc.lprng ]; then - # Start LPRng (lpd): - . /etc/rc.d/rc.lprng start -fi - -# Start netatalk. (a file/print server for Macs using Appletalk) -if [ -x /etc/rc.d/rc.atalk ]; then - /etc/rc.d/rc.atalk -fi - -# Start smartd, which monitors the status of S.M.A.R.T. compatible -# hard drives and reports any problems. Note some devices (which aren't -# smart, I guess ;) will hang if probed by smartd, so it's commented out -# by default. -#if [ -x /usr/sbin/smartd ]; then -# /usr/sbin/smartd -#fi - -# Monitor the UPS with genpowerd. -# To use this, uncomment this section and edit your settings in -# /etc/genpowerd.conf (serial device, UPS type, etc). For more information, -# see "man genpowerd" or the extensive documentation in the -# /usr/doc/genpower-1.0.3 directory. -# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want -# support for stopping the UPS's inverter after the machine halts. -#if [ -x /sbin/genpowerd ]; then -# echo "Starting genpowerd daemon..." -# /sbin/genpowerd -#fi - -# Turn on process accounting. To enable process accounting, make sure the -# option for BSD process accounting is enabled in your kernel, and then -# create the file /var/log/pacct (touch /var/log/pacct). By default, process -# accounting is not enabled (since /var/log/pacct does not exist). This is -# because the log file can get VERY large. -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - /sbin/accton /var/log/pacct - chmod 640 /var/log/pacct - echo "Process accounting turned on." -fi - -# Start crond (Dillon's crond): -# If you want cron to actually log activity to /var/log/cron, then change -# -l10 to -l8 to increase the logging level. -if [ -x /usr/sbin/crond ]; then - /usr/sbin/crond -l10 >>/var/log/cron 2>&1 -fi - -# Start atd (manages jobs scheduled with 'at'): -if [ -x /usr/sbin/atd ]; then - /usr/sbin/atd -b 15 -l 1 -fi - -# Slackware-Mini-Quota-HOWTO: -# To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to -# the appropriate partitions as listed in /etc/fstab. Here's an example: -# -# /dev/hda2 /home ext3 defaults,usrquota 1 1 -# -# You'll then need to setup initial quota files at the top of the partitions -# to support quota, like this: -# touch /home/aquota.user /home/aquota.group -# chmod 600 /home/aquota.user /home/aquota.group -# -# Then, reboot to activate the system. -# To edit user quotas, use 'edquota'. See 'man edquota'. Also, the -# official Quota Mini-HOWTO has lots of useful information. That can be found -# here: /usr/doc/Linux-HOWTOs/Quota - -# Check quotas and then turn quota system on: -if grep -q quota /etc/fstab ; then - if [ -x /sbin/quotacheck ]; then - echo "Checking filesystem quotas: /sbin/quotacheck -avugm" - /sbin/quotacheck -avugm - fi - if [ -x /sbin/quotaon ]; then - echo "Activating filesystem quotas: /sbin/quotaon -avug" - /sbin/quotaon -avug - fi -fi - -# Start the sendmail daemon: -if [ -x /etc/rc.d/rc.sendmail ]; then - . /etc/rc.d/rc.sendmail start -fi - -# Start the APM daemon if APM is enabled in the kernel: -if [ -x /usr/sbin/apmd ]; then - if cat /proc/apm 1> /dev/null 2> /dev/null ; then - echo "Starting APM daemon: /usr/sbin/apmd" - /usr/sbin/apmd - fi -fi - -# Start the ACPI (Advanced Configuration and Power Interface) daemon: -if [ -x /etc/rc.d/rc.acpid ]; then - . /etc/rc.d/rc.acpid start -fi - -# Load ALSA (sound) defaults: -if [ -x /etc/rc.d/rc.alsa ]; then - . /etc/rc.d/rc.alsa -fi - -# Load a custom screen font if the user has an rc.font script. -if [ -x /etc/rc.d/rc.font ]; then - . /etc/rc.d/rc.font -fi - -# Load a custom keymap if the user has an rc.keymap script. -if [ -x /etc/rc.d/rc.keymap ]; then - . /etc/rc.d/rc.keymap -fi - -# Initialize HP Officejet support: -if [ -x /etc/rc.d/rc.hpoj ]; then - . /etc/rc.d/rc.hpoj start -fi - -# Start the MySQL database: -if [ -x /etc/rc.d/rc.mysqld ]; then - . /etc/rc.d/rc.mysqld start -fi - -# Start Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - . /etc/rc.d/rc.httpd start -fi - -# Start Samba (a file/print server for Win95/NT machines). -# Samba can be started in /etc/inetd.conf instead. -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba start -fi - -# Start the GPM mouse server: -if [ -x /etc/rc.d/rc.gpm ]; then - . /etc/rc.d/rc.gpm start -fi - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Start the local setup procedure. -if [ -x /etc/rc.d/rc.local ]; then - . /etc/rc.d/rc.local -fi - -# All done. diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.6 b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.6 deleted file mode 100755 index bfec90a..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.6 +++ /dev/null @@ -1,110 +0,0 @@ -#! /bin/sh -# -# rc.6 This file is executed by init when it goes into runlevel -# 0 (halt) or runlevel 6 (reboot). It kills all processes, -# unmounts file systems and then either halts or reboots. -# -# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001 -# -# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org> -# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com> -# - -# Set the path. -PATH=/sbin:/etc:/bin:/usr/bin - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Set linefeed mode to avoid staircase effect. -stty onlcr - -echo "Running shutdown script $0:" - -# Find out how we were called. -case "$0" in - *0) - command="halt" - ;; - *6) - command=reboot - ;; - *) - echo "$0: call me as \"rc.0\" or \"rc.6\" please!" - exit 1 - ;; -esac - -# Stop the Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - /etc/rc.d/rc.httpd stop -fi - -# Stop the MySQL database: -if [ -r /var/run/mysql/mysql.pid ]; then - . /etc/rc.d/rc.mysqld stop -fi - -# Stop the Samba server: -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba stop -fi - -# Try to kill dhcpcd so the DHCP leases can be returned: -killall -15 dhcpcd 1> /dev/null 2> /dev/null - -# Try to shut down pppd: -PS="$(ps ax)" -if echo "$PS" | grep -q -w pppd ; then - if [ -x /usr/sbin/ppp-off ]; then - /usr/sbin/ppp-off - fi -fi - -# Turn off process accounting: -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - echo "Turning off process accounting." - /sbin/accton -fi - -# Kill all processes. -# INIT is supposed to handle this entirely now, but this didn't always -# work correctly without this second pass at killing off the processes. -# Since INIT already notified the user that processes were being killed, -# we'll avoid echoing this info this time around. -if [ "$1" != "fast" ]; then # shutdown did not already kill all processes - killall5 -15 - sleep 5 - killall5 -9 -fi - -# Carry a random seed between reboots. -echo "Saving random seed from /dev/urandom in /etc/random-seed." -# Use the pool size from /proc, or 512 bytes: -if [ -r /proc/sys/kernel/random/poolsize ]; then - dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null -else - dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null -fi -chmod 600 /etc/random-seed - -# Before unmounting file systems write a reboot or halt record to wtmp. -$command -w - -# Clear /var/lock/subsys. -if [ -d /var/lock/subsys ]; then - rm -f /var/lock/subsys/* -fi - -# This never hurts: -sync - -# sleep 1 fixes problems with some hard drives that don't -# otherwise finish syncing before reboot or poweroff -sleep 1 - -# This is to ensure all processes have completed on SMP machines: -wait - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.K b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.K deleted file mode 100755 index 00a1501..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.K +++ /dev/null @@ -1,88 +0,0 @@ -#! /bin/sh -# -# rc.K This file is executed by init when it goes into runlevel -# 1, which is the administrative state. It kills all -# daemons and then puts the system into single user mode. -# Note that the file systems are kept mounted. -# -# Version: @(#)/etc/rc.d/rc.K 3.1415 Sat Jan 13 13:37:26 PST 2001 -# -# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org> -# Modified by: Patrick J. Volkerding <volkerdi@slackware.com> -# - -# Set the path. -PATH=/sbin:/bin:/usr/bin:/usr/sbin - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Try to turn off quota: -if grep -q quota /etc/fstab ; then - if [ -x /sbin/quotaoff ]; then - echo "Turning off filesystem quotas." - /sbin/quotaoff -a - fi -fi - -# Try to turn off accounting: -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - echo "Turning off accounting." - /sbin/accton -fi - -# Stop the Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - /etc/rc.d/rc.httpd stop -fi - -# Stop the Samba server: -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba stop -fi - -# Shut down the NFS server: -if [ -x /etc/rc.d/rc.nfsd ]; then - /etc/rc.d/rc.nfsd stop -fi - -# Shut down PCMCIA devices: -if [ -x /etc/rc.d/rc.pcmcia ] ; then - . /etc/rc.d/rc.pcmcia stop - # The cards might need a little extra time here to initialize. - sleep 5 -fi - -# Kill all processes. -echo -echo "Sending all processes the SIGHUP signal." -killall5 -1 -echo -n "Waiting for processes to hang up" -for loop in 0 1 2 3 4 5 ; do - sleep 1 - echo -n "." -done -echo -echo "Sending all processes the SIGTERM signal." -killall5 -15 -echo -n "Waiting for processes to terminate" -for loop in 0 1 2 3 4 5 ; do - sleep 1 - echo -n "." -done -echo -echo "Sending all processes the SIGKILL signal." -killall5 -9 -echo -n "Waiting for processes to exit" -for loop in 0 1 2 3 4 5 ; do - sleep 1 - echo -n "." -done -echo - -# Now go to the single user level -echo "Going to single user mode..." -telinit -t 1 1 - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.M b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.M deleted file mode 100755 index 0cb3343..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.M +++ /dev/null @@ -1,256 +0,0 @@ -#!/bin/sh -# -# rc.M This file is executed by init(8) when the system is being -# initialized for one of the "multi user" run levels (i.e. -# levels 1 through 6). It usually does mounting of file -# systems et al. -# -# Version: @(#)/etc/rc.d/rc.M 2.23 Wed Feb 26 19:20:58 PST 2003 -# -# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> -# Heavily modified by Patrick Volkerding <volkerdi@slackware.com> -# - -# Tell the viewers what's going to happen. -echo "Going multiuser..." - -# Screen blanks after 15 minutes idle time, and powers down in one hour -# if the kernel supports APM or ACPI power management: -#/bin/setterm -blank 15 -powersave powerdown -powerdown 60 - -# Set the hostname. -#if [ -r /etc/HOSTNAME ]; then -# /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .) -#else - # fall back on this old default: -# echo "darkstar.example.net" > /etc/HOSTNAME -# /bin/hostname darkstar -#fi - -# Save the contents of 'dmesg': -#/bin/dmesg -s 65536 > /var/log/dmesg - -# Start the system logger. -if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then - . /etc/rc.d/rc.syslog start -fi - -# Initialize PCMCIA devices: -# -# NOTE: This used to be started near the top of rc.S so that PCMCIA devices -# could be fsck'ed along with the other drives. This had some unfortunate -# side effects, however, since root isn't yet read-write, and /var might not -# even be mounted the .pid files can't be correctly written in /var/run and -# the pcmcia system can't be correctly shut down. If you want some PCMCIA -# partition to be mounted at boot (or when the card is inserted) then add -# the appropriate lines to /etc/pcmcia/scsi.opts. -# -if [ -x /etc/rc.d/rc.pcmcia ] ; then - . /etc/rc.d/rc.pcmcia start - # The cards might need a little extra time here to initialize. - if [ -r /var/run/cardmgr.pid ]; then - sleep 5 - fi -fi - -# Initialize the networking hardware. If your network driver is a module -# and you haven't loaded it manually, this will be deferred until after -# the hotplug system loads the module below. -#if [ -x /etc/rc.d/rc.inet1 ]; then -# . /etc/rc.d/rc.inet1 -#fi - -# Initialize the hotplugging subsystem for Cardbus, IEEE1394, PCI, and USB devices: -if [ -x /etc/rc.d/rc.hotplug -a -r /proc/modules ]; then - # Don't run hotplug if 'nohotplug' was given at boot. - if ! grep nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - echo "Activating hardware detection: /etc/rc.d/rc.hotplug start" - . /etc/rc.d/rc.hotplug start - fi -fi - -# Start networking daemons: -if [ -x /etc/rc.d/rc.inet2 ]; then - . /etc/rc.d/rc.inet2 -fi - -# Remove stale locks and junk files (must be done after mount -a!) -/bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/core /core 2> /dev/null - -# Remove stale hunt sockets so the game can start. -if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then - echo "Removing your stale hunt sockets from /tmp." - /bin/rm -f /tmp/hunt* -fi - -# Ensure basic filesystem permissions sanity. -chmod 755 / 2> /dev/null -chmod 1777 /tmp /var/tmp - -# Update all the shared library links: -if [ -x /sbin/ldconfig ]; then - echo "Updating shared library links: /sbin/ldconfig" - /sbin/ldconfig -fi - -# Update the X font indexes: -if [ -x /usr/X11R6/bin/fc-cache ]; then - echo "Updating X font indexes: /usr/X11R6/bin/fc-cache" - /usr/X11R6/bin/fc-cache -fi - -# Start the print spooling system. This will usually be LPRng (lpd) or CUPS. -if [ -x /etc/rc.d/rc.cups ]; then - # Start CUPS: - /etc/rc.d/rc.cups start -elif [ -x /etc/rc.d/rc.lprng ]; then - # Start LPRng (lpd): - . /etc/rc.d/rc.lprng start -fi - -# Start netatalk. (a file/print server for Macs using Appletalk) -if [ -x /etc/rc.d/rc.atalk ]; then - /etc/rc.d/rc.atalk -fi - -# Start smartd, which monitors the status of S.M.A.R.T. compatible -# hard drives and reports any problems. Note some devices (which aren't -# smart, I guess ;) will hang if probed by smartd, so it's commented out -# by default. -#if [ -x /usr/sbin/smartd ]; then -# /usr/sbin/smartd -#fi - -# Monitor the UPS with genpowerd. -# To use this, uncomment this section and edit your settings in -# /etc/genpowerd.conf (serial device, UPS type, etc). For more information, -# see "man genpowerd" or the extensive documentation in the -# /usr/doc/genpower-1.0.3 directory. -# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want -# support for stopping the UPS's inverter after the machine halts. -#if [ -x /sbin/genpowerd ]; then -# echo "Starting genpowerd daemon..." -# /sbin/genpowerd -#fi - -# Turn on process accounting. To enable process accounting, make sure the -# option for BSD process accounting is enabled in your kernel, and then -# create the file /var/log/pacct (touch /var/log/pacct). By default, process -# accounting is not enabled (since /var/log/pacct does not exist). This is -# because the log file can get VERY large. -if [ -x /sbin/accton -a -r /var/log/pacct ]; then - /sbin/accton /var/log/pacct - chmod 640 /var/log/pacct - echo "Process accounting turned on." -fi - -# Start crond (Dillon's crond): -# If you want cron to actually log activity to /var/log/cron, then change -# -l10 to -l8 to increase the logging level. -if [ -x /usr/sbin/crond ]; then - /usr/sbin/crond -l10 >>/var/log/cron 2>&1 -fi - -# Start atd (manages jobs scheduled with 'at'): -if [ -x /usr/sbin/atd ]; then - /usr/sbin/atd -b 15 -l 1 -fi - -# Slackware-Mini-Quota-HOWTO: -# To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to -# the appropriate partitions as listed in /etc/fstab. Here's an example: -# -# /dev/hda2 /home ext3 defaults,usrquota 1 1 -# -# You'll then need to setup initial quota files at the top of the partitions -# to support quota, like this: -# touch /home/aquota.user /home/aquota.group -# chmod 600 /home/aquota.user /home/aquota.group -# -# Then, reboot to activate the system. -# To edit user quotas, use 'edquota'. See 'man edquota'. Also, the -# official Quota Mini-HOWTO has lots of useful information. That can be found -# here: /usr/doc/Linux-HOWTOs/Quota - -# Check quotas and then turn quota system on: -if grep -q quota /etc/fstab ; then - if [ -x /sbin/quotacheck ]; then - echo "Checking filesystem quotas: /sbin/quotacheck -avugm" - /sbin/quotacheck -avugm - fi - if [ -x /sbin/quotaon ]; then - echo "Activating filesystem quotas: /sbin/quotaon -avug" - /sbin/quotaon -avug - fi -fi - -# Start the sendmail daemon: -if [ -x /etc/rc.d/rc.sendmail ]; then - . /etc/rc.d/rc.sendmail start -fi - -# Start the APM daemon if APM is enabled in the kernel: -if [ -x /usr/sbin/apmd ]; then - if cat /proc/apm 1> /dev/null 2> /dev/null ; then - echo "Starting APM daemon: /usr/sbin/apmd" - /usr/sbin/apmd - fi -fi - -# Start the ACPI (Advanced Configuration and Power Interface) daemon: -if [ -x /etc/rc.d/rc.acpid ]; then - . /etc/rc.d/rc.acpid start -fi - -# Load ALSA (sound) defaults: -if [ -x /etc/rc.d/rc.alsa ]; then - . /etc/rc.d/rc.alsa -fi - -# Load a custom screen font if the user has an rc.font script. -if [ -x /etc/rc.d/rc.font ]; then - . /etc/rc.d/rc.font -fi - -# Load a custom keymap if the user has an rc.keymap script. -if [ -x /etc/rc.d/rc.keymap ]; then - . /etc/rc.d/rc.keymap -fi - -# Initialize HP Officejet support: -if [ -x /etc/rc.d/rc.hpoj ]; then - . /etc/rc.d/rc.hpoj start -fi - -# Start the MySQL database: -if [ -x /etc/rc.d/rc.mysqld ]; then - . /etc/rc.d/rc.mysqld start -fi - -# Start Apache web server: -if [ -x /etc/rc.d/rc.httpd ]; then - . /etc/rc.d/rc.httpd start -fi - -# Start Samba (a file/print server for Win95/NT machines). -# Samba can be started in /etc/inetd.conf instead. -if [ -x /etc/rc.d/rc.samba ]; then - . /etc/rc.d/rc.samba start -fi - -# Start the GPM mouse server: -if [ -x /etc/rc.d/rc.gpm ]; then - . /etc/rc.d/rc.gpm start -fi - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Start the local setup procedure. -if [ -x /etc/rc.d/rc.local ]; then - . /etc/rc.d/rc.local -fi - -# All done. diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.S b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.S deleted file mode 100755 index 05c75b4..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.S +++ /dev/null @@ -1,294 +0,0 @@ -#!/bin/sh -# -# /etc/rc.d/rc.S: System initialization script. -# -# Mostly written by: Patrick J. Volkerding, <volkerdi@slackware.com> -# - -PATH=/sbin:/usr/sbin:/bin:/usr/bin - -# Mount /proc right away: -/sbin/mount -v proc /proc -n -t proc - -# If 'nohotplug' was given at boot, or rc.hotplug has been turned off -# (is not executable), then shut off hotplugging in the kernel now. -# Turning off hotplug is *not* recommended, and will break some things. -if [ -w /proc/sys/kernel/hotplug ]; then - if grep -w nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - echo "/dev/null" > /proc/sys/kernel/hotplug - elif [ ! -x /etc/rc.d/rc.hotplug ]; then - echo "/dev/null" > /proc/sys/kernel/hotplug - fi -fi - -# Start devfsd if necessary. On newer kernels, udev should be used instead. -if [ -x /etc/rc.d/rc.devfsd ]; then - /etc/rc.d/rc.devfsd start -fi - -# Mount sysfs next, if the kernel supports it: -if [ -d /sys ]; then - if cat /proc/filesystems | grep -w sysfs 1> /dev/null 2> /dev/null ; then - if ! cat /proc/mounts | grep -w sysfs 1> /dev/null 2> /dev/null ; then - /sbin/mount -v sysfs /sys -n -t sysfs - fi - fi -fi - -# Initialize udev to manage /dev entries for 2.6.x kernels: -if [ -x /etc/rc.d/rc.udev ]; then - if ! grep -w nohotplug /proc/cmdline 1> /dev/null 2> /dev/null ; then - /etc/rc.d/rc.udev - fi -fi - -# Enable swapping: -/sbin/swapon -a - -# Test to see if the root partition is read-only, like it ought to be. -READWRITE=no -if touch /fsrwtestfile 2>/dev/null; then - rm -f /fsrwtestfile - READWRITE=yes -else - echo "Testing root filesystem status: read-only filesystem" -fi - -# See if a forced filesystem check was requested at shutdown: -if [ -r /etc/forcefsck ]; then - FORCEFSCK="-f" -fi - -# Check the root filesystem: -if [ ! $READWRITE = yes ]; then - RETVAL=0 - if [ ! -r /etc/fastboot ]; then - echo "Checking root filesystem:" - /sbin/fsck $FORCEFSCK -C -a / - RETVAL=$? - fi - # An error code of 2 or higher will require a reboot. - if [ $RETVAL -ge 2 ]; then - # An error code equal to or greater than 4 means that some errors - # could not be corrected. This requires manual attention, so we - # offer a chance to try to fix the problem in single-user mode: - if [ $RETVAL -ge 4 ]; then - echo - echo "***********************************************************" - echo "*** An error occurred during the root filesystem check. ***" - echo "*** You will now be given a chance to log into the ***" - echo "*** system in single-user mode to fix the problem. ***" - echo "*** ***" - echo "*** If you are using the ext2 filesystem, running ***" - echo "*** 'e2fsck -v -y <partition>' might help. ***" - echo "***********************************************************" - echo - echo "Once you exit the single-user shell, the system will reboot." - echo - PS1="(Repair filesystem) \#"; export PS1 - sulogin - else # With an error code of 2 or 3, reboot the machine automatically: - echo - echo "***********************************" - echo "*** The filesystem was changed. ***" - echo "*** The system will now reboot. ***" - echo "***********************************" - echo - fi - echo "Unmounting file systems." - /sbin/umount -a -r - /sbin/mount -n -o remount,ro / - echo "Rebooting system." - sleep 2 - reboot -f - fi - # Remount the root filesystem in read-write mode - echo "Remounting root device with read-write enabled." - /sbin/mount -w -v -n -o remount / - if [ $? -gt 0 ] ; then - echo - echo "Attempt to remount root device as read-write failed! This is going to" - echo "cause serious problems." - echo - echo "If you're using the UMSDOS filesystem, you **MUST** mount the root partition" - echo "read-write! You can make sure the root filesystem is getting mounted " - echo "read-write with the 'rw' flag to Loadlin:" - echo - echo "loadlin vmlinuz root=/dev/hda1 rw (replace /dev/hda1 with your root device)" - echo - echo "Normal bootdisks can be made to mount a system read-write with the rdev command:" - echo - echo "rdev -R /dev/fd0 0" - echo - echo "You can also get into your system by using a boot disk with a command like this" - echo "on the LILO prompt line: (change the root partition name as needed)" - echo - echo "LILO: mount root=/dev/hda1 rw" - echo - echo "Please press ENTER to continue, then reboot and use one of the above methods to" - echo -n "get into your machine and start looking for the problem. " - read junk; - fi -else - echo "Testing root filesystem status: read-write filesystem" - if cat /etc/fstab | grep ' / ' | grep umsdos 1> /dev/null 2> /dev/null ; then - ROOTTYPE="umsdos" - fi - if [ ! "$ROOTTYPE" = "umsdos" ]; then # no warn for UMSDOS - echo - echo "*** ERROR: Root partition has already been mounted read-write. Cannot check!" - echo - echo "For filesystem checking to work properly, your system must initially mount" - echo "the root partition as read only. Please modify your kernel with 'rdev' so that" - echo "it does this. If you're booting with LILO, add a line:" - echo - echo " read-only" - echo - echo "to the Linux section in your /etc/lilo.conf and type 'lilo' to reinstall it." - echo - echo "If you boot from a kernel on a floppy disk, put it in the drive and type:" - echo " rdev -R /dev/fd0 1" - echo - echo "If you boot from a bootdisk, or with Loadlin, you can add the 'ro' flag." - echo - echo "This will fix the problem *AND* eliminate this annoying message. :^)" - echo - echo -n "Press ENTER to continue. " - read junk; - fi -fi # Done checking root filesystem - -# Any /etc/mtab that exists here is old, so we delete it to start over: -/bin/rm -f /etc/mtab* -# Remounting the / partition will initialize the new /etc/mtab: -/sbin/mount -w -o remount / - -# Fix /etc/mtab to list sys and proc if they were not yet entered in -# /etc/mtab because / was still mounted read-only: -if [ -d /proc/sys ]; then - /sbin/mount -f proc /proc -t proc -fi -if [ -d /sys/bus ]; then - /sbin/mount -f sysfs /sys -t sysfs -fi - -# Set the system time from the hardware clock using hwclock --hctosys. -if [ -x /sbin/hwclock ]; then - if grep "^UTC" /etc/hardwareclock 1> /dev/null 2> /dev/null ; then - echo "Setting system time from the hardware clock (UTC)." - /sbin/hwclock --utc --hctosys - else - echo "Setting system time from the hardware clock (localtime)." - /sbin/hwclock --localtime --hctosys - fi -fi - -# Configure ISA Plug-and-Play devices: -if [ -r /etc/isapnp.conf ]; then - if [ -x /sbin/isapnp ]; then - /sbin/isapnp /etc/isapnp.conf - fi -fi - -# This loads any kernel modules that are needed. These might be required to -# use your ethernet card, sound card, or other optional hardware. -if [ -x /etc/rc.d/rc.modules -a -r /proc/modules ]; then - . /etc/rc.d/rc.modules -fi - -# Configure runtime kernel parameters: -if [ -x /sbin/sysctl -a -r /etc/sysctl.conf ]; then - /sbin/sysctl -e -p /etc/sysctl.conf -fi - -# Initialize the Logical Volume Manager. -# This won't start unless we find /etc/lvmtab (LVM1) or -# /etc/lvm/backup/ (LVM2). This is created by /sbin/vgscan, so to -# use LVM you must run /sbin/vgscan yourself the first time (and -# create some VGs and LVs). -if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then - echo "Initializing LVM (Logical Volume Manager):" - # Check for device-mapper support. - if ! cat /proc/devices | grep -w device-mapper 1> /dev/null 2> /dev/null ; then - # If device-mapper exists as a module, try to load it. - if [ -r /lib/modules/$(cat /proc/sys/kernel/osrelease)/kernel/drivers/md/dm-mod.ko ]; then - insmod /lib/modules/$(cat /proc/sys/kernel/osrelease)/kernel/drivers/md/dm-mod.ko - fi - fi - # Scan for new volume groups: - /sbin/vgscan 2> /dev/null - if [ $? = 0 ]; then - # This needs a moment to register. - sleep 10 - # Make volume groups available to the kernel. - # This should also make logical volumes available. - /sbin/vgchange -ay - # Enable swapping again in case any LVs are used for swap. Ignore previous error. :-) - /sbin/swapon -a - fi -fi - -# Check all the non-root filesystems: -if [ ! -r /etc/fastboot ]; then - echo "Checking non-root filesystems:" - /sbin/fsck $FORCEFSCK -C -R -A -a -fi - -# mount non-root file systems in fstab (but not NFS or SMB -# because TCP/IP is not yet configured, and not proc because -# that has already been mounted): -/sbin/mount -a -v -t nonfs,nosmbfs,noproc - -# Clean up some temporary files: -( cd /var/log/setup/tmp && rm -rf * ) -/bin/rm -f /var/run/utmp /var/run/*pid /etc/nologin /var/run/lpd* \ - /var/run/ppp* /etc/dhcpc/*.pid /etc/forcefsck /etc/fastboot - -# Attempt to umount and remove any leftover /initrd: -if [ -d /initrd ]; then - /sbin/umount /initrd 2> /dev/null - rmdir /initrd 2> /dev/null - blockdev --flushbufs /dev/ram0 2> /dev/null -fi - -# Create a fresh utmp file: -touch /var/run/utmp -chown root.utmp /var/run/utmp -chmod 664 /var/run/utmp - -if [ "$ROOTTYPE" = "umsdos" ]; then # we need to update any files added in DOS: - echo "Synchronizing UMSDOS directory structure:" - echo " /sbin/umssync -r99 -v- /" - /sbin/umssync -r99 -v- / -fi - -# Setup the /etc/motd to reflect the current kernel level: -# THIS WIPES ANY CHANGES YOU MAKE TO /ETC/MOTD WITH EACH BOOT. -# COMMENT THIS OUT IF YOU WANT TO MAKE A CUSTOM VERSION. -echo "$(/bin/uname -sr)." > /etc/motd - -# If there are SystemV init scripts for this runlevel, run them. -if [ -x /etc/rc.d/rc.sysvinit ]; then - . /etc/rc.d/rc.sysvinit -fi - -# Run serial port setup script: -# (CAREFUL! This can make some systems hang if the rc.serial script isn't -# set up correctly. If this happens, you may have to edit the file from a -# boot disk) -# -# . /etc/rc.d/rc.serial - -# Carry an entropy pool between reboots to improve randomness. -if [ -f /etc/random-seed ]; then - echo "Using /etc/random-seed to initialize /dev/urandom." - cat /etc/random-seed > /dev/urandom -fi -# Use the pool size from /proc, or 512 bytes: -if [ -r /proc/sys/kernel/random/poolsize ]; then - dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null -else - dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null -fi -chmod 600 /etc/random-seed - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.httpd b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.httpd deleted file mode 100644 index 00b8837..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.httpd +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh -# -# /etc/rc.d/rc.httpd -# -# Start/stop/restart the Apache web server. -# -# To make Apache start automatically at boot, make this -# file executable: chmod 755 /etc/rc.d/rc.httpd -# - -case "$1" in - 'start') - /usr/sbin/apachectl start ;; - 'stop') - /usr/sbin/apachectl stop ;; - 'restart') - /usr/sbin/apachectl restart ;; - *) - echo "usage $0 start|stop|restart" ;; -esac - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.inet2 b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.inet2 deleted file mode 100755 index db56589..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.inet2 +++ /dev/null @@ -1,129 +0,0 @@ -#!/bin/sh -# -# rc.inet2 This shell script boots up the entire network system. -# Note, that when this script is used to also fire -# up any important remote NFS disks (like the /usr -# directory), care must be taken to actually -# have all the needed binaries online _now_ ... -# -# Uncomment or comment out sections depending on which -# services your site requires. -# -# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> -# Modified for Slackware by Patrick Volkerding <volkerdi@slackware.com> - - -# At this point, we are ready to talk to The World... - - -# Mount remote (NFS) filesystems: -if cat /etc/fstab | grep -v '^#' | grep -w nfs 1> /dev/null 2> /dev/null ; then - # Start the RPC portmapper if we find NFS volumes defined in /etc/fstab, - # since it will need to be running in order to mount them. If portmap - # is not running, attempting to mount an NFS partition will cause mount - # to hang. Keep this in mind if you plan to mount unlisted partitions... - if [ -x /etc/rc.d/rc.portmap ]; then - . /etc/rc.d/rc.portmap start - else - # Warn about a possible NFS problem. It's also possible to mount NFS partitions - # without rpc.portmap by using '-o nolock' (not a good idea in most cases). - echo "WARNING: NFS partitions found in /etc/fstab, but /etc/rc.d/rc.portmap is" - echo " not executable. If you do not run portmap, NFS partitions will" - echo " not mount properly. To start rpc.portmap at boot, change the" - echo " permissions on /etc/rc.d/rc.portmap: chmod 755 /etc/rc.d/rc.portmap" - sleep 10 - fi - echo "Mounting remote (NFS) file systems: /sbin/mount -a -t nfs" - /sbin/mount -a -t nfs # This may be our /usr runtime! - # Show the mounted volumes: - /sbin/mount -v -t nfs -fi - -# Load the RPC portmapper if /etc/rc.d/rc.portmap is executable. -# This might be needed to mount NFS partitions that are not listed in /etc/fstab. -if [ -x /etc/rc.d/rc.portmap ]; then - . /etc/rc.d/rc.portmap start -fi - -# Mount remote (SMB) filesystems: -if cat /etc/fstab | grep -v '^#' | grep -w smbfs 1> /dev/null 2> /dev/null ; then - echo "Mounting remote (SMB) file systems: /sbin/mount -a -t smbfs" - /sbin/mount -a -t smbfs - # Show the mounted volumes: - /sbin/mount -v -t smbfs -fi - -# Start the system logger if it is not already running (maybe because /usr -# is on a network partition). -if [ -x /etc/rc.d/rc.syslog -a -d /var/log -a ! -r /var/run/syslogd.pid ]; then - . /etc/rc.d/rc.syslog start -fi - -# If there is a firewall script, run it before enabling packet forwarding. -# See the HOWTOs on http://www.netfilter.org/ for documentation on -# setting up a firewall or NAT on Linux. In some cases this might need to -# be moved past the section below dealing with IP packet forwarding. -if [ -x /etc/rc.d/rc.firewall ]; then - /etc/rc.d/rc.firewall start -fi - -# Turn on IPv4 packet forwarding support. -if [ -x /etc/rc.d/rc.ip_forward ]; then - . /etc/rc.d/rc.ip_forward start -fi - -# Start the inetd server: -if [ -x /etc/rc.d/rc.inetd ]; then - /etc/rc.d/rc.inetd start -fi - -# Start the OpenSSH SSH daemon: -if [ -x /etc/rc.d/rc.sshd ]; then - echo "Starting OpenSSH SSH daemon: /usr/sbin/sshd" - /etc/rc.d/rc.sshd start -fi - -# Start the BIND name server daemon: -if [ -x /etc/rc.d/rc.bind ]; then - /etc/rc.d/rc.bind start -fi - -# Start NIS (the Network Information Service): -if [ -x /etc/rc.d/rc.yp ]; then - . /etc/rc.d/rc.yp start -fi - -# Start the NFS server. Note that for this to work correctly, you'll -# need to load the knfsd module for kernel NFS server support. -# You'll also need to set up some shares in /etc/exports, and be sure -# that /etc/rc.d/rc.portmap is executable. -# Starting the NFS server: -if [ -x /etc/rc.d/rc.nfsd ]; then - /etc/rc.d/rc.nfsd start -fi - -# Stuff you won't need follows. ;-) - -# # Start the network routing daemon: -# if [ -x /usr/sbin/routed ]; then -# echo "Starting network routing daemon: /usr/sbin/routed" -# /usr/sbin/routed -g -s -# fi - -# # Start the system status server: -# if [ -x /usr/sbin/rwhod ]; then -# echo "Starting system status server: /usr/sbin/rwhod" -# /usr/sbin/rwhod -# fi - -# # Fire up the PC-NFS daemon(s). This is a primarily obsolete system, and may -# # not be very secure. It's not at all needed for normal NFS server support. -# # You probably should not run this. -# if [ -x /usr/sbin/rpc.pcnfsd ]; then -# echo "Starting PC-NFS daemons: /usr/sbin/rpc.pcnfsd /usr/sbin/rpc.bwnfsd" -# /usr/sbin/rpc.pcnfsd /var/spool/lpd -# fi -# if [ -x /usr/sbin/rpc.bwnfsd ]; then -# /usr/sbin/rpc.bwnfsd /var/spool/lpd -# fi - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.inetd b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.inetd deleted file mode 100644 index 9fe1419..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.inetd +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh -# Start/stop/restart inetd, the BSD Internet super-daemon. - -# Start inetd: -inetd_start() { - if [ -x /usr/sbin/inetd ]; then - echo "Starting Internet super-server daemon: /usr/sbin/inetd" - /usr/sbin/inetd - fi -} - -# Stop inetd: -inetd_stop() { - killall inetd -} - -# Restart inetd: -inetd_restart() { - inetd_stop - sleep 1 - inetd_start -} - -case "$1" in -'start') - inetd_start - ;; -'stop') - inetd_stop - ;; -'restart') - inetd_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.ip_forward b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.ip_forward deleted file mode 100644 index 52bd2fe..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.ip_forward +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/sh -# /etc/rc.d/rc.ip_forward: start/stop IP packet forwarding -# -# If you intend to run your Linux box as a router, i.e. as a -# computer that forwards and redistributes network packets, you -# will need to enable IP packet forwarding in your kernel. -# -# To activate IP packet forwarding at boot time, make this -# script executable: chmod 755 /etc/rc.d/rc.ip_forward -# -# To disable IP packet forwarding at boot time, make this -# script non-executable: chmod 644 /etc/rc.d/rc.ip_forward - -# Start IP packet forwarding: -ip_forward_start() { - if [ -f /proc/sys/net/ipv4/ip_forward ]; then - echo "Activating IPv4 packet forwarding." - echo 1 > /proc/sys/net/ipv4/ip_forward - fi - # When using IPv4 packet forwarding, you will also get the - # rp_filter, which automatically rejects incoming packets if the - # routing table entry for their source address doesn't match the - # network interface they're arriving on. This has security - # advantages because it prevents the so-called IP spoofing, - # however it can pose problems if you use asymmetric routing - # (packets from you to a host take a different path than packets - # from that host to you) or if you operate a non-routing host - # which has several IP addresses on different interfaces. To - # turn rp_filter off, uncomment the lines below: - #if [ -r /proc/sys/net/ipv4/conf/all/rp_filter ]; then - # echo "Disabling rp_filter." - # echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter - #fi -} - -# Stop IP packet forwarding: -ip_forward_stop() { - if [ -f /proc/sys/net/ipv4/ip_forward ]; then - echo "Disabling IPv4 packet forwarding." - echo 0 > /proc/sys/net/ipv4/ip_forward - fi -} - -# Restart IP packet forwarding: -ip_forward_restart() { - ip_forward_stop - sleep 1 - ip_forward_start -} - -case "$1" in -'start') - ip_forward_start - ;; -'stop') - ip_forward_stop - ;; -'restart') - ip_forward_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.local b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.local deleted file mode 100755 index 3cf2076..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.local +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -# -# /etc/rc.d/rc.local: Local system initialization script. -# -# Put any local setup commands in here: diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.mysqld b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.mysqld deleted file mode 100644 index 239e2e6..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.mysqld +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/sh -# Start/stop/restart mysqld. -# -# Copyright 2003 Patrick J. Volkerding, Concord, CA -# Copyright 2003 Slackware Linux, Inc., Concord, CA -# -# This program comes with NO WARRANTY, to the extent permitted by law. -# You may redistribute copies of this program under the terms of the -# GNU General Public License. - -# To start MySQL automatically at boot, be sure this script is executable: -# chmod 755 /etc/rc.d/rc.mysqld - -# Before you can run MySQL, you must have a database. To install an initial -# database, do this as root: -# -# su - mysql -# mysql_install_db -# -# Note that step one is becoming the mysql user. It's important to do this -# before making any changes to the database, or mysqld won't be able to write -# to it later (this can be fixed with 'chown -R mysql.mysql /var/lib/mysql'). - -# To disallow outside connections to the database (if you don't need them, this -# is recommended to increase security), uncomment the next line: -#SKIP="--skip-networking" - -# Start mysqld: -mysqld_start() { - if [ -x /usr/bin/mysqld_safe ]; then - # If there is an old PID file (no mysqld running), clean it up: - if [ -r /var/run/mysql/mysql.pid ]; then - if ! ps ax | grep mysqld 1> /dev/null 2> /dev/null ; then - echo "Cleaning up old /var/run/mysql/mysql.pid." - rm -f /var/run/mysql/mysql.pid - fi - fi - /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/run/mysql/mysql.pid $SKIP & - fi -} - -# Stop mysqld: -mysqld_stop() { - # If there is no PID file, ignore this request... - if [ -r /var/run/mysql/mysql.pid ]; then - killall mysqld - # Wait at least one minute for it to exit, as we don't know how big the DB is... - for second in 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 \ - 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 60 ; do - if [ ! -r /var/run/mysql/mysql.pid ]; then - break; - fi - sleep 1 - done - if [ "$second" = "60" ]; then - echo "WARNING: Gave up waiting for mysqld to exit!" - sleep 15 - fi - fi -} - -# Restart mysqld: -mysqld_restart() { - mysqld_stop - mysqld_start -} - -case "$1" in -'start') - mysqld_start - ;; -'stop') - mysqld_stop - ;; -'restart') - mysqld_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.postfix b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.postfix deleted file mode 100644 index bc32367..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.postfix +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh -# -## Slackware init script for postfix -## 20030828 Manolis Tzanidakis -# - -postfix_start() { - if [ -x /usr/sbin/postfix ]; then - echo -n "Starting postfix MTA: " - echo "/usr/sbin/postfix start" - /usr/sbin/postfix start 2>/dev/null - fi -} - -postfix_stop() { - /usr/sbin/postfix stop 2>/dev/null -} - -postfix_restart() { - sh $0 stop - sleep 1 - sh $0 start -} - -postfix_reload() { - /usr/sbin/postfix reload 2>/dev/null -} - -case "$1" in - 'start') - postfix_start - ;; - 'stop') - postfix_stop - ;; - 'restart') - postfix_restart - ;; - 'reload') - postfix_reload - ;; - *) - echo "usage $0 start|stop|restart|reload" -esac - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sendmail b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sendmail deleted file mode 100644 index 1a31c52..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sendmail +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh -# Start/stop/restart sendmail. - -# Start sendmail: -sendmail_start() { - if [ -x /usr/sbin/sendmail ]; then - echo "Starting sendmail MTA daemon: /usr/sbin/sendmail -L sm-mta -bd -q25m" - /usr/sbin/sendmail -L sm-mta -bd -q25m - echo "Starting sendmail MSP queue runner: /usr/sbin/sendmail -L sm-msp-queue -Ac -q25m" - /usr/sbin/sendmail -L sm-msp-queue -Ac -q25m - fi -} - -# Stop sendmail: -sendmail_stop() { - killall sendmail -} - -# Restart sendmail: -sendmail_restart() { - sendmail_stop - sleep 1 - sendmail_start -} - -case "$1" in -'start') - sendmail_start - ;; -'stop') - sendmail_stop - ;; -'restart') - sendmail_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.serial b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.serial deleted file mode 100755 index 5f31c01..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.serial +++ /dev/null @@ -1,132 +0,0 @@ -# -# /etc/rc.serial -# Initializes the serial ports on your system -# -# chkconfig: 2345 50 75 -# description: This initializes the settings of the serial port -# -# FILE_VERSION: 19981128 -# -# Distributed with setserial and the serial driver. We need to use the -# FILE_VERSION field to assure that we don't overwrite a newer rc.serial -# file with a newer one. -# -# XXXX For now, the autosave feature doesn't work if you are -# using the multiport feature; it doesn't save the multiport configuration -# (for now). Autosave also doesn't work for the hayes devices. -# - -RCLOCKFILE=/var/lock/subsys/serial -DIRS="/lib/modules/`uname -r`/misc /lib/modules /usr/lib/modules ." -PATH=/bin:/sbin:/usr/bin -DRIVER=serial -DRIVER_NAME=serial -MODULE_REGEXP="serial\b" - -ALLDEVS="/dev/ttyS?" -if /bin/ls /dev/ttyS?? >& /dev/null ; then - ALLDEVS="$ALLDEVS /dev/ttyS??" -fi - -SETSERIAL="" -if test -x /bin/setserial ; then - SETSERIAL=/bin/setserial -elif test -x /sbin/setserial ; then - SETSERIAL=/sbin/setserial -fi - -# -# See if the serial driver is loaded -# -LOADED="" -if test -f /proc/devices; then - if grep -q " ttyS$" /proc/devices ; then - LOADED="yes" - else - LOADED="no" - fi -fi - -# -# Find the serial driver -# -for i in $DIRS -do - if test -z "$MODULE" -a -f $i/$DRIVER.o ; then - MODULE=$i/$DRIVER.o - fi -done - -if ! test -f /proc/modules ; then - MODULE="" -fi - -# -# Handle System V init conventions... -# -case $1 in -start) - action="start"; - ;; -stop) - action="stop"; - ;; -*) - action="start"; -esac - -if test $action = stop ; then - if test -n ${SETSERIAL} -a "$LOADED" != "no" -a \ - `head -1 /etc/serial.conf`X = "###AUTOSAVE###X" ; then - echo -n "Saving state of serial devices... " - grep "^#" /etc/serial.conf > /etc/.serial.conf.new - ${SETSERIAL} -G -g ${ALLDEVS} >> /etc/.serial.conf.new - mv /etc/serial.conf /etc/.serial.conf.old - mv /etc/.serial.conf.new /etc/serial.conf - echo "done." - fi - if test -n "$MODULE" ; then - module=`grep $MODULE_REGEXP /proc/modules | awk '{print $1}'` - if test -z "$module" ; then - echo "The $DRIVER_NAME driver is not loaded." - rm -f ${RCLOCKFILE} - exit 0 - fi - if rmmod $module ; then :; else - echo "The $DRIVER_NAME driver could NOT be unloaded." - exit 1; - fi - echo "The $DRIVER_NAME driver has been unloaded." - fi - rm -f ${RCLOCKFILE} - exit 0 -fi - -# -# If not stop, it must be a start.... -# - -if test -n "$MODULE" -a "$LOADED" != "yes" ; then - if insmod -f $MODULE $DRIVER_ARG ; then - true - else - echo "Couldn't load $DRIVER_NAME driver." - exit 1 - fi -fi - -if test -f /etc/serial.conf ; then - if test -n ${SETSERIAL} ; then - grep -v ^# < /etc/serial.conf | while read device args - do - if [ ! "$device" = "" -a ! "$args" = "" ]; then - ${SETSERIAL} -z $device $args - fi - done - fi -else - echo "###AUTOSAVE###" > /etc/serial.conf -fi - -touch ${RCLOCKFILE} -${SETSERIAL} -bg ${ALLDEVS} diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sshd b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sshd deleted file mode 100755 index a3707e3..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sshd +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh -# Start/stop/restart the secure shell server: - -sshd_start() { - # Create host keys if needed. - if [ ! -r /etc/ssh/ssh_host_key ]; then - /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key -N '' - fi - if [ ! -f /etc/ssh/ssh_host_dsa_key ]; then - /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N '' - fi - if [ ! -f /etc/ssh/ssh_host_rsa_key ]; then - /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' - fi - /usr/sbin/sshd -} - -sshd_stop() { - killall sshd -} - -sshd_restart() { - if [ -r /var/run/sshd.pid ]; then - echo "WARNING: killing listener process only. To kill every sshd process, you must" - echo " use 'rc.sshd stop'. 'rc.sshd restart' kills only the parent sshd to" - echo " allow an admin logged in through sshd to use 'rc.sshd restart' without" - echo " being cut off. If sshd has been upgraded, new connections will now" - echo " use the new version, which should be a safe enough approach." - kill `cat /var/run/sshd.pid` - else - killall sshd - fi - sleep 1 - sshd_start -} - -case "$1" in -'start') - sshd_start - ;; -'stop') - sshd_stop - ;; -'restart') - sshd_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.syslog b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.syslog deleted file mode 100755 index a005fb7..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.syslog +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh -# Start/stop/restart the system logging daemons. -# -# Written for Slackware Linux by Patrick J. Volkerding <volkerdi@slackware.com>. - -syslogd_start() { - if [ -x /usr/sbin/syslogd -a -x /usr/sbin/klogd ]; then - echo -n "Starting sysklogd daemons: " - echo -n "/usr/sbin/syslogd " - /usr/sbin/syslogd - sleep 1 # prevent syslogd/klogd race condition on SMP kernels - echo "/usr/sbin/klogd -c 3 -x" - # '-c 3' = display level 'error' or higher messages on console - # '-x' = turn off broken EIP translation - /usr/sbin/klogd -c 3 -x - fi -} - -syslogd_stop() { - killall syslogd 2> /dev/null - killall klogd 2> /dev/null -} - -syslogd_restart() { - syslogd_stop - sleep 1 - syslogd_start -} - -case "$1" in -'start') - syslogd_start - ;; -'stop') - syslogd_stop - ;; -'restart') - syslogd_restart - ;; -*) - echo "usage $0 start|stop|restart" -esac diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sysvinit b/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sysvinit deleted file mode 100755 index 916e59e..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rc.d/rc.sysvinit +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/sh -# -# rc.sysvinit This file provides basic compatibility with SystemV style -# startup scripts. The SystemV style init system places -# start/stop scripts for each runlevel into directories such as -# /etc/rc.d/rc3.d/ (for runlevel 3) instead of starting them -# from /etc/rc.d/rc.M. This makes for a lot more init scripts, -# and a more complicated execution path to follow through if -# something goes wrong. For this reason, Slackware has always -# used the traditional BSD style init script layout. -# -# However, many binary packages exist that install SystemV -# init scripts. With rc.sysvinit in place, most well-written -# startup scripts will work. This is primarily intended to -# support commercial software, though, and probably shouldn't -# be considered bug free. -# -# Written by Patrick Volkerding <volkerdi@slackware.com>, 1999 -# from an example by Miquel van Smoorenburg <miquels@cistron.nl>. - -# Run an init script: -startup() { - case "$1" in - *.sh) - sh "$@" - ;; - *) - "$@" - ;; - esac -} - -# Set onlcr to avoid staircase effect. -stty onlcr 0>&1 - -if [ "$runlevel" = "" ]; then - runlevel=$RUNLEVEL - export runlevel - prevlevel=$PREVLEVEL - export prevlevel -fi - -# Run kill scripts in the previous runlevel if not "none" -if [ ! "$prevlevel" = "N" ]; then - for script in /etc/rc.d/rc$prevlevel.d/K* ; do - if [ -x $script ]; then - startup $script stop - fi - done -fi - -# Now do the startup scripts: -for script in /etc/rc.d/rc$runlevel.d/S* ; do - if [ -x $script ]; then - startup $script start - fi -done - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/rssh.conf b/tags/0.5/templates/vserver/vserver.d/etc/rssh.conf deleted file mode 100644 index a74acc6..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/rssh.conf +++ /dev/null @@ -1,48 +0,0 @@ -# This is the default rssh config file - -# set the log facility. "LOG_USER" and "user" are equivalent. -logfacility = LOG_USER - -# Leave these all commented out to make the default action for rssh to lock -# users out completely... - -allowscp -allowsftp -#allowcvs -#allowrdist -#allowrsync - -# set the default umask -umask = 022 - -# If you want to chroot users, use this to set the directory where the root of -# the chroot jail will be located. -# -# if you DO NOT want to chroot users, LEAVE THIS COMMENTED OUT. -# You can quote anywhere, but quotes not required unless path contains a -# space... as in this example. - -chrootpath = "/var/users" - -########################################## -# EXAMPLES of configuring per-user options - -#user=rudy:077:00010: # the path can simply be left out to not chroot -#user=rudy:077:00010 # the ending colon is optional - -#spaces in the path must be quoted... -#user=rudy:011:00001:"/usr/local/chroot dir" # scp with chroot -#user=rudy:011:00010:"/usr/local/chroot dir" # sftp with chroot -#user=rudy:011:00011:"/usr/local/chroot dir" # both with chroot -#user=rudy:011:00100: # cvs, with no chroot -#user=rudy:011:01000: # rdist, with no chroot -#user=rudy:011:10000: # rsync, with no chroot -#user="rudy:011:00001:/usr/local/chroot" # whole user string can be quoted -#user=rudy:01"1:00001:/usr/local/chroot" # or somewhere in the middle, freak! -#user=rudy:'011:00001:/usr/local/chroot' # single quotes too - -# Spaces before or after the '=' are fine, but spaces in chrootpath need -# quotes. -#user = "rudy:011:00001:/usr/local/chroot dir" -#user = "rudy:011:00001:/usr/local/chroot dir" # neither do comments at line end - diff --git a/tags/0.5/templates/vserver/vserver.d/etc/ssh/sshd_config b/tags/0.5/templates/vserver/vserver.d/etc/ssh/sshd_config deleted file mode 100644 index a161fec..0000000 --- a/tags/0.5/templates/vserver/vserver.d/etc/ssh/sshd_config +++ /dev/null @@ -1,103 +0,0 @@ -# $OpenBSD: sshd_config,v 1.69 2004/05/23 23:59:53 dtucker Exp $ - -# This is the sshd server system-wide configuration file. See -# sshd_config(5) for more information. - -# This sshd was compiled with PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin - -# The strategy used for options in the default sshd_config shipped with -# OpenSSH is to specify options with their default value where -# possible, but leave them commented. Uncommented options change a -# default value. - -#Port 22 -#Protocol 2,1 -#ListenAddress 0.0.0.0 -#ListenAddress :: - -# HostKey for protocol version 1 -#HostKey /etc/ssh/ssh_host_key -# HostKeys for protocol version 2 -#HostKey /etc/ssh/ssh_host_rsa_key -#HostKey /etc/ssh/ssh_host_dsa_key - -# Lifetime and size of ephemeral version 1 server key -#KeyRegenerationInterval 1h -#ServerKeyBits 768 - -# Logging -#obsoletes QuietMode and FascistLogging -#SyslogFacility AUTH -#LogLevel INFO - -# Authentication: - -#LoginGraceTime 2m -PermitRootLogin no -#StrictModes yes -#MaxAuthTries 6 - -#RSAAuthentication yes -#PubkeyAuthentication yes -#AuthorizedKeysFile .ssh/authorized_keys - -# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts -#RhostsRSAAuthentication no -# similar for protocol version 2 -#HostbasedAuthentication no -# Change to yes if you don't trust ~/.ssh/known_hosts for -# RhostsRSAAuthentication and HostbasedAuthentication -#IgnoreUserKnownHosts no -# Don't read the user's ~/.rhosts and ~/.shosts files -#IgnoreRhosts yes - -# To disable tunneled clear text passwords, change to no here! -#PasswordAuthentication yes -#PermitEmptyPasswords no - -# Change to no to disable s/key passwords -#ChallengeResponseAuthentication yes - -# Kerberos options -#KerberosAuthentication no -#KerberosOrLocalPasswd yes -#KerberosTicketCleanup yes -#KerberosGetAFSToken no - -# GSSAPI options -#GSSAPIAuthentication no -#GSSAPICleanupCredentials yes - -# Set this to 'yes' to enable PAM authentication, account processing, -# and session processing. If this is enabled, PAM authentication will -# be allowed through the ChallengeResponseAuthentication mechanism. -# Depending on your PAM configuration, this may bypass the setting of -# PasswordAuthentication, PermitEmptyPasswords, and -# "PermitRootLogin without-password". If you just want the PAM account and -# session checks to run without PAM authentication, then enable this but set -# ChallengeResponseAuthentication=no -#UsePAM no - -#AllowTcpForwarding yes -#GatewayPorts no -#X11Forwarding no -#X11DisplayOffset 10 -#X11UseLocalhost yes -#PrintMotd yes -#PrintLastLog yes -#TCPKeepAlive yes -#UseLogin no -#UsePrivilegeSeparation yes -#PermitUserEnvironment no -#Compression yes -#ClientAliveInterval 0 -#ClientAliveCountMax 3 -#UseDNS yes -#PidFile /var/run/sshd.pid -#MaxStartups 10 - -# no default banner path -#Banner /some/path - -# override default of no subsystems -Subsystem sftp /usr/libexec/sftp-server diff --git a/tags/0.5/templates/vserver/vserver.d/var/www/htdocs/missing.html b/tags/0.5/templates/vserver/vserver.d/var/www/htdocs/missing.html deleted file mode 100644 index 2762324..0000000 --- a/tags/0.5/templates/vserver/vserver.d/var/www/htdocs/missing.html +++ /dev/null @@ -1,12 +0,0 @@ -<html> -<head> -<title>404 - Not Found</title> -</head> -<body> - <center> - <pre> - File not found. - </pre> - </center> -</body> -</html> diff --git a/tags/0.5/templates/vserver/vserver.d/var/www/missing.html b/tags/0.5/templates/vserver/vserver.d/var/www/missing.html deleted file mode 100644 index b2eec17..0000000 --- a/tags/0.5/templates/vserver/vserver.d/var/www/missing.html +++ /dev/null @@ -1,12 +0,0 @@ -<html> -<head> -<title>404 - Not Found</title> -</head> -<body> - <center> - <pre> - O endereço que você requisitou não pôde ser encontrado :( - </pre> - </center> -</body> -</html> diff --git a/tags/0.5/templates/vserver/vserver.perms b/tags/0.5/templates/vserver/vserver.perms deleted file mode 100644 index 0c136ed..0000000 --- a/tags/0.5/templates/vserver/vserver.perms +++ /dev/null @@ -1,37 +0,0 @@ -./etc;0;0;755 -./etc/apache;0;0;755 -./etc/apache/httpd.conf;0;0;644 -./etc/apache/php.ini;0;0;644 -./etc/apache/vhosts;0;0;644 -./etc/logrotate.d;0;0;755 -./etc/logrotate.d/apache;0;0;644 -./etc/rc.d;0;0;755 -./etc/rc.d/rc.httpd;0;0;644 -./etc/rc.d/rc;0;0;755 -./etc/rc.d/rc.0;0;0;755 -./etc/rc.d/rc.4;0;0;644 -./etc/rc.d/rc.6;0;0;755 -./etc/rc.d/rc.K;0;0;755 -./etc/rc.d/rc.M;0;0;755 -./etc/rc.d/rc.S;0;0;755 -./etc/rc.d/rc.ip_forward;0;0;644 -./etc/rc.d/rc.inet2;0;0;755 -./etc/rc.d/rc.inetd;0;0;644 -./etc/rc.d/rc.mysqld;0;0;644 -./etc/rc.d/rc.local;0;0;755 -./etc/rc.d/rc.postfix;0;0;644 -./etc/rc.d/rc.sendmail;0;0;644 -./etc/rc.d/rc.serial;0;0;755 -./etc/rc.d/rc.sshd;0;0;755 -./etc/rc.d/rc.syslog;0;0;755 -./etc/rc.d/rc.sysvinit;0;0;755 -./etc/ssh;0;0;755 -./etc/ssh/sshd_config;0;0;644 -./etc/rssh.conf;0;0;644 -./etc/hosts;0;0;644 -./etc/profile;0;0;644 -./var;0;0;755 -./var/www;0;0;755 -./var/www/htdocs;0;0;755 -./var/www/htdocs/missing.html;0;0;644 -./var/www/missing.html;0;0;644 diff --git a/tags/0.5/templates/vserver/vserver.s/GPG-KEY b/tags/0.5/templates/vserver/vserver.s/GPG-KEY deleted file mode 100644 index fd23e95..0000000 --- a/tags/0.5/templates/vserver/vserver.s/GPG-KEY +++ /dev/null @@ -1,88 +0,0 @@ -security@slackware.com public key - -Type bits/keyID Date User ID -pub 1024D/40102233 2003-02-26 Slackware Linux Project <security@slackware.com> -sub 1024g/4E523569 2003-02-26 [expires: 2012-12-21] - ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.1 (GNU/Linux) - -mQGiBD5dIFQRBADB31WinbXdaGk/8RNkpnZclu1w3Xmd5ItACDLB2FhOhArw35EA -MOYzxI0gRtDNWN4pn9n74q4HbFzyRWElThWRtBTYLEpImzrk7HYVCjMxjw5A0fTr -88aiHOth5aS0vPAoq+3TYn6JDSipf2bR03G2JVwgj3Iu066pX4naivNm8wCgldHG -F3y9vT3UPYh3QFgEUlCalt0D/3n6NopRYy0hMN6BPu+NarXwv6NQ9g0GV5FNjEEr -igkrD/htqCyWAUl8zyCKKUFZZx4UGBRZ5guCdNzwgYH3yn3aVMhJYQ6tcSlLsj3f -JIz4LAZ3+rI77rbn7gHHdp7CSAuV+QHv3aNanUD/KGz5SPSvF4w+5qRM4PfPNT1h -LMV8BACzxiyX7vzeE4ZxNYvcuCtv0mvEHl9yD66NFA35RvXaO0QiRVYeoUa5JOQZ -gwq+fIB0zgsEYDhXFkC1hM/QL4NccMRk8C09nFn4eiz4dAEnwKt4rLCJKhkLl1DW -TSoXHe/dOXaLnFyLzB1J8hEYmUvw3SwPt//wMqDiVBLeZfFcdLQwU2xhY2t3YXJl -IExpbnV4IFByb2plY3QgPHNlY3VyaXR5QHNsYWNrd2FyZS5jb20+iF8EExECAB8F -Aj5dIFQFCRJ3owAECwcDAgMVAgMDFgIBAh4BAheAAAoJEGpEY8BAECIzee0An3My -boalJ5nLePD0HCzMuf8Ix8gPAJ9lnU1wqNVGza0t89ACTurDoppQ2rkBDQQ+XSBV -EAQA3VYlpPyRKdOKoM6t1SwNG0YgVFSvxy/eiratBf7misDBsJeH86Pf8H9OfVHO -cqscLiC+iqvDgqeTUX9vASjlnvcoS/3H5TDPlxiifIDggqd2euNtJ8+lyXRBV6yP -sBIA6zki9cR4zphe48hKpSsDfj7uL5sfyc2UmKKboSu3x7cAAwUD/1jmoLQs9bIt -bTosoy+5+Uzrl0ShRlv+iZV8RPzAMFuRJNxUJkUmmThowtXRaPKFI9AVd+pP44aA -J+zxCPtS2isiW20AxubJoBPpXcVatJWi4sG+TM5Z5VRoLg7tIDNVWsyHGXPAhIG2 -Y8Z1kyWwb4P8A/W2b1ZCqS7Fx4yEhTikiEwEGBECAAwFAj5dIFUFCRJ3owAACgkQ -akRjwEAQIjM1uwCdE7V4mPCqdby/nV699NxKX0iW/OsAniaVhEip8Ptff74Sv4JV -tb+Sth2l -=H5uu ------END PGP PUBLIC KEY BLOCK----- - -slamd64 public key - ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.6 (GNU/Linux) - -mQGiBELKSBYRBACiElxGMXqxUwdsQBKPngV6/k0Q5AYT34+WLL0B7XRR9kOotCfc -PTLCP5qLM9etpzKhbMbgWGpaBrA/3KEPOJ7JVhk6JcLgjoi0QsMusaI4BGnmrxkw -3mh9xPwc+jPgiYOljbZhNG6FMQtrdlKYV+BmwS8mt/YBymShghtlgdHJjwCg/PAG -YJDsfoG1ebuwcjYlsGoD2x0EAJX7UnTdxxESvmIuk172MunZqw+o8+o/W684z13/ -wOkcVqvuAcd0ejuY0z09GFfyhtig8E55UcKNyVC50+3aJUXlt9//HnENHZo+OEN1 -ezbOXUcJIw8xkU551qaxubqWXtKYEJP9z/khVPe4N0JW2vWOcAFYhuOEx1ylaNrX -gUY4BACDpn+pntq0ooZqkSPT4v1ibOQg/3xh2F1PgsnOahMRrXbVEdL9ItsVnHM/ -ygHBjLhkEMd612nVVSw1BYMBAwQbsYB8Lgn1QxXl0ISBYR1RYW1LvyaJM6A6TDL+ -EdWp+iTtlKOe/VD+oCfHmMONoucZJM2AtK1vXTX3x4Wb4MgVdLQoRnJlZGVyaWNr -IEVtbW90dCA8bWFpbEBmcmVkZW1tb3R0LmNvLnVrPohkBBMRAgAkBQJCykgWAhsD -BQkDwmcABgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEAd5Da1T/acLGfIAoOqIHrg4 -r2pq/tKi9VifOJS1xg4LAKDpi0I0pzsdDJ2owxCQ88MkoSDKgohMBBARAgAMBQJD -Ed/tBYMDes8pAAoJEFgpV1AFAIOLprQAnRDVVmDPnzVNOWrZ8D55gG2bOwkxAKCl -dGThnu0aQ0IEL7MgUETGtk4hS4iiBBABAgAMBQJDEdpDBYMDetTTAAoJEJugaRW/ -hasxqCwEAKczPTgOrRXXTs4piB14DayJQVgoqVgiNfKzd5qVuvQgYebQrMu7hi5U -0q/n6TbQpjmMDZKxhXhEY1gs32mtzKKDrerTpF+pJAgQVvBLZS2mF4HbVnU74GvL -2UKJtEtgb9u+i1Efd4Q8GIJUzLLJifURQWTk1e3B9qGApKXpWJlviEwEEBECAAwF -AkMR75MFgwN6v4MACgkQTqjEwhXvPN1j7gCbBXZs9MM6YXGI/yTlEhiXyTECxm8A -nj6O1XszSa5kaD7CvnRFzNkm5O5MiEwEEBECAAwFAkMR79UFgwN6v0EACgkQoLYC -8AehV8eLBQCgv8WEdBtFjTh3Wl06WK5dKCw0nHsAn0IIHRbJC5jO4NWrIpupBMnz -3fBsiEwEExECAAwFAkMR9ggFgwN6uQ4ACgkQR+ny47i1wzAfZQCfRACyfYBxs+tu -6OzpLP2DGjEaa1UAnj4MVMH32f/34oN6o9dPKPT8HXWziEwEExECAAwFAkMR9vcF -gwN6uB8ACgkQB0u7y43syeIaogCfVy7lqRjRDbttJs1u1g3FekdbJ1kAnRo726tA -u8Xf+JWD3OrmMo0Uup3giEwEEBECAAwFAkMR+qgFgwN6tG4ACgkQfWXW5We1ioQk -tgCePGa3NpcfEWb8drmO95Mp1C+FaBIAoNEqA89xUvTIpqooucTzFxgAupVgiEwE -EBECAAwFAkMSF+UFgwN6lzEACgkQ/lREvmcCFhscDQCgnMxf4Nmu3B41GWupTWxb -9b+te5sAoIiTZHzOSKtqN4cJ2i22iP/vZPt4iEwEEBECAAwFAkMULeAFgwN4gTYA -CgkQsxZ93p+gHn6bcACgwY/5ZpvvEK+eycM5XNQhVI6w4j8An0JoXlFaGStIzUmW -42obaW6CG4WViEYEExECAAYFAkMUZuAACgkQGnR+RTDgudhG1QCeJelEhnX/3JeW -S5BaM7640suSeLQAnA2RDMH4zIJLI4MWEXBAvaA0lSr7iEwEEBECAAwFAkMUP8gF -gwN4b04ACgkQM/XwBW70U1iAOwCgmah/GnZikIhyeFr6KsKpsmZCQTQAn3Vs7JZm -w4qBLiI+RXxw7vIJlI4AiEwEEBECAAwFAkMUZ9EFgwN4R0UACgkQ72KcVAmwbhAC -FACgiNqao9mzAWZBjIY7iiqz34gbK/QAn34F1bLAb0sHKiSUcFkVi/uZ8R0viEwE -EBECAAwFAkMWFj8FgwN2mNcACgkQn3j4POjENGF+UgCeM+mEKW5+MjNN17QCAvZi -cBVJEHMAn14YyvdSIwBBFUNPWYOw7GwYyAhHiEwEEBECAAwFAkMXW0cFgwN1U88A -CgkQTxqZjtpq5iG4PwCfe2ymOYh5t+bEZGGCtJg3sWJ5hHYAmQGS+jGWcTMlXSe+ -65o/aPfLUkMQuQINBELKSCgQCADjG+pX7C0sRIkX1QQ6lFW3IrajWypXtd4jO1TA -dlLFES7OxF202V15+TRtL9NO34x7u6RPTnF7wi/i2U1dqM9ZjrFcTJA17Y7+OLH+ -yw64/5OJapUi48qI7hnLRTPykz0c+b92pUt1X/BIWmf301jbZ0AbFZV4yvm1OUH4 -wrGLLFeATjiBWTcJarRiR89DzQ/Cm+c791WXdIhEvv5Vp4/d8HzGZhEUVKTCoA3e -Z8ZIdJoy/d7FYfyeg836UDXEqr598n2p9DxMwkRj5oHINB64CrQuKr7zDdP8Zv2g -vKkjeS4mN+07saWK3UTY5ADByNVHSu+P0LZYPhxjze7KOVjHAAUTCACa5ohR/7/N -x2M2OB9VPAwQPjAFNst6fPotcFLDy5Q/jlbBcDNf1OdzgkE/06z7iPGRmIJL6flz -QZH+hYwDqjulVVtPQXiZMVGvlfC9YIAdJX/1Ca2L9mL4c4IBQbFNkSlgkLaPTwUJ -BD2PnA+q+ERy39UANhIR/LVGltK1krDds8CwbxMSYNFvFgf4dmh6GzI5ioByDoTM -8ShfS2GjAekviNVLsGC5UWKuQl/XVaC/j7CTAT7WbikfXWI2uonFBx47vjf2UaPa -E0HnAVwDY0cAZeaObpDKvyogsf8H4CzK9JCKtW9aTUpKurEpyHfcKqB07GMLC/+Q -QiA3bFmrSaTRiE8EGBECAA8FAkLKSCgCGwwFCQPCZwAACgkQB3kNrVP9pwsejwCg -gaQm6lU/H7ja0EUaJJFZnRoqRvAAnRK8CC4PIr/ZYDjd+aeS3R31FjGr -=D1wm ------END PGP PUBLIC KEY BLOCK----- diff --git a/tags/0.5/templates/vserver/vserver.s/devices.tar.gz b/tags/0.5/templates/vserver/vserver.s/devices.tar.gz Binary files differdeleted file mode 100644 index dc4aea6..0000000 --- a/tags/0.5/templates/vserver/vserver.s/devices.tar.gz +++ /dev/null diff --git a/tags/0.5/templates/vserver/vserver.s/vserver.sh b/tags/0.5/templates/vserver/vserver.s/vserver.sh deleted file mode 100644 index e9d68a9..0000000 --- a/tags/0.5/templates/vserver/vserver.s/vserver.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -# -# vserver template script -# - -BASE="/etc/simplepkg/templates/vserver/vserver.s" -DEVICES="$BASE/devices.tar.gz" -GPGKEY="$BASE/GPG-KEY" - -if [ -z "$2" ]; then - echo "usage: `basename $0` <jail-root> <jail-name>" - exit 1 -elif [ ! -d "$1/$2" ]; then - echo "folder $1/$2 does not exist" - exit 1 -fi - -echo "creating /etc/vservers/$2..." -mv $1/$2 $1/$2.old -vserver $2 build -m skeleton --force &> /dev/null -result="$?" -rm -rf $1/$2 && mv $1/$2.old $1/$2 - -if [ "$result" != "0" ]; then - mkdir -p /etc/vservers/$2/apps/init -fi - -echo sysv > /etc/vservers/$2/apps/init/style -echo 3 > /etc/vservers/$2/apps/init/runlevel.start -echo 6 > /etc/vservers/$2/apps/init/runlevel.stop - -cp /etc/resolv.conf $1/$2/etc/ -cp /etc/localtime $1/$2/etc/ -echo /dev/hdv1 / ext2 defaults 1 1 > $1/$2/etc/fstab -echo /dev/hdv1 / ext2 rw 0 0 > $1/$2/etc/mtab - -echo "creating devices and dependencies..." -if [ -f "$DEVICES" ]; then - cd $1/$2/ - tar zxvf $DEVICES - chroot $1/$2/ sbin/ldconfig -else - echo error: device template $DEVICES not found -fi - -if [ -f "$GPGKEY" ]; then - echo "importing slack gpg pubkey" - mkdir $1/$2/root/.gnupg - gpg --homedir $1/$2/root/.gnupg --import $GPGKEY -fi - -# todo: add rebootmgr -echo "done; now config your vserver at /etc/vservers/$2" -echo "then, set all desired iptables rules and other stuff and then start $server vserver" -echo "dont forget to change root's password with the command "vserver $2 exec passwd"" diff --git a/tags/0.5/templates/vserver/vserver.template b/tags/0.5/templates/vserver/vserver.template deleted file mode 100644 index 0cd1f69..0000000 --- a/tags/0.5/templates/vserver/vserver.template +++ /dev/null @@ -1,250 +0,0 @@ -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: A1 (Base Linux series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -aaa_base: ADD -aaa_elflibs: ADD -bash: ADD -bin: ADD -bzip2: ADD -coreutils: ADD -cxxlibs: ADD -dcron: ADD -elvis: ADD -etc: ADD -findutils: ADD -gawk: ADD -gettext: REC -grep: ADD -gzip: ADD -infozip: ADD -less: ADD -logrotate: ADD -openssl-solibs: ADD -pkgtools: ADD -procps: ADD -sed: ADD -shadow: ADD -slocate: ADD -sysklogd: ADD -sysvinit: ADD -tar: ADD -util-linux: ADD -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: AP1 (Applications series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -bc: OPT -diffutils: REC -jed: OPT -joe: OPT -jove: OPT -lsof: OPT -mysql: OPT -sudo: OPT -glibc: REC -# Tagfile for emacs series -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: F1 (Frequently Asked Questions) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -libidn: REC -libxml2: REC -mhash: REC -# This is a Slackware Installation Tagfile. -# -# This one comes from the N (Network/UUCP/Mail/News) series. -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# -apache: OPT -curl: OPT -gnupg: OPT -inetd: REC -lftp: OPT -lynx: OPT -mod_ssl: OPT -mailx: REC -openssh: REC -openssl: REC -php: OPT -rsync: OPT -stunnel: OPT -tcpip: REC -wget: OPT -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: TCL1 (Tcl/Tk series) -# and a backup copy called "tagfile.org" can be found on the same disk. You -# should never edit the "tagfile.org" copy, only the one called "tagfile". Use -# the "tagfile.org" only if you want to restore original installation defaults -# by copying it over the top of "tagfile". -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# -# If you mess this file up beyond recognition, just restore from "tagfile.org" -# -# -# This is a Slackware Installation Tagfile. -# -# This one comes from disk: Y1 (Yaaaaaahhoooo? Games and Amusements). -# -# It is used to automate software installation. -# There are two labels that you can use: ADD and SKP. -# -# If the PROMPT option is used during installation, this file will be checked -# to determine the installation default. First, all the lines beginning with -# <package_name>: -# will be extracted. Then, the last line in the extracted segment will be -# checked for the flags ADD, REC, OPT and SKP. -# -# If ADD is found, then a priority of [required] will be displayed, and the -# package will be automatically installed. -# -# If SKP is found, then a priority of [skip] will be displayed, and -# the package will be automatically skipped. -# -# All other packages will be prompted for. There are two optional flags you -# can use to change the package priority level shown when the user is -# prompted: REC and OPT. If REC is found, the priority shown will be -# [recommended], while if OPT is found, the user sees priority [optional]. -# -# If no flags are found for a given package, the user is shown priority -# [unknown], and is prompted for whether the package should be installed. -# extra -# libsafe -# contrib -simplepkg -ssmtp diff --git a/tags/0.5/utils/add-gpl b/tags/0.5/utils/add-gpl deleted file mode 100755 index 0a261e2..0000000 --- a/tags/0.5/utils/add-gpl +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -# -# add-gpl is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# add-gpl is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# This script should be used to add a license in scripts. -# - -script="SlackBuild" -#script="build" - -for file in `find -name "*.$script"`; do - - echo Changing $file... - package="`basename $file .$script`" - slackbuild="`basename $file`" - - string="\#\!\/bin\/bash\n\#\n# $slackbuild is free software; you can redistribute it and\/or modify it under the\n# terms of the GNU General Public License as published by the Free Software\n# Foundation; either version 2 of the License, or any later version.\n#\n# $slackbuild is distributed in the hope that it will be useful, but WITHOUT ANY\n# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\n# A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License along with\n# this program; if not, write to the Free Software Foundation, Inc., 59 Temple\n# Place - Suite 330, Boston, MA 02111-1307, USA" - - sed -e "s/\#\!\/bin\/bash/$string/" $file > $file.new - cat $file.new > $file - rm $file.new - -done diff --git a/tags/0.5/utils/add-slack-required b/tags/0.5/utils/add-slack-required deleted file mode 100755 index 67804d0..0000000 --- a/tags/0.5/utils/add-slack-required +++ /dev/null @@ -1,63 +0,0 @@ -#!/bin/bash -# -# add-slack-required is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2 of the License, or any later version. -# -# add-slack-required is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# add slack-required files in an existing repository -# by rhatto at riseup.net -# - -COMMON="/usr/libexec/simplepkg/common.sh" -BASENAME="`basename $0`" - -if [ -z "$2" ]; then - echo "usage: $BASENAME /path/to/slackbuilds /path/to/packages" - exit 1 -elif [ ! -d "$1" ]; then - echo "$BASENAME: folder not found: $1" - exit 1 -elif [ ! -d "$2" ]; then - echo "$BASENAME: folder not found: $2" - exit 1 -fi - -slackbuild="$1" -repository="$2" - -# we need the function package_name -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your $BASENAME installation" - exit 1 -fi - -function search_and_copy_slackbuild { - - if [ -f "$1" ]; then - echo Copying `basename $1` to `dirname $package`/$pack.slack-required - cp $1 `dirname $package`/$pack.slack-required - svn add `dirname $package`/$pack.slack-required 2> /dev/null - fi - -} - -for package in `find $repository/ -name *tgz`; do - pack="`package_name $package`" - for build_script in `find $slackbuild/ -name $pack.SlackBuild`; do - - search_and_copy_slackbuild `dirname $build_script`/slack-required - search_and_copy_slackbuild `dirname $build_script`/$pack.slack-required - - done -done - diff --git a/tags/0.5/utils/convert-template-scheme b/tags/0.5/utils/convert-template-scheme deleted file mode 100755 index de7e507..0000000 --- a/tags/0.5/utils/convert-template-scheme +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash -# -# This software is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# This software is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# script for converting simplepkg templates -# to the 0.5 own-folder format -# - -cwd="/etc/simplepkg" -cd $cwd - -for file in `ls *.template`; do - cd $cwd - template="`echo $file | cut -d . -f 1`" - mkdir templates/$template - mv $template.d templates/$template/ - mv $template.s templates/$templates/ - mv $template.template templates/$template/ - cd templates/$template/$template.s - # optional step - # if [ "$template" != "vserver" ]; then - # ln -sf ../../../defaults/templatesvserver/vserver.s/vserver.sh - # fi -done - diff --git a/tags/0.5/utils/merge-template b/tags/0.5/utils/merge-template deleted file mode 100755 index 3df5f7a..0000000 --- a/tags/0.5/utils/merge-template +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash -# -# This software is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# This software is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# tip: to assemble a template from all slack tagfiles: -# -# for diskset in a ap d e f k l n t tcl x xap y; do -# lynx -dump http://slack.sarava.org/slackware/slackware-10.2/slackware/$diskset/tagfile >> slack.template -# done -# - -if [ -z "$2" ]; then - echo "usage: `basename $0` <template> <base-template>" - exit 1 -elif [ ! -f "$1" ] || [ ! -f "$2" ]; then - echo error: $1 ou $2 not found - exit 1 -fi - -cp $2 $1.new - -cat $1 | while read line; do - pack="`echo $line | cut -d : -f 1`" - if ! grep -qe "^$pack:" $2; then - echo $line >> $1.new - fi -done diff --git a/tags/0.5/utils/metapkg b/tags/0.5/utils/metapkg deleted file mode 100755 index e3db602..0000000 --- a/tags/0.5/utils/metapkg +++ /dev/null @@ -1,72 +0,0 @@ -#!/bin/bash -# -# metapkg v0.1: install or remove a pkgtool metapackage -# -# feedback: rhatto at riseup.net | GPL -# -# Metapkg is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# Metapkg is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# A metapackage is a file containing a list of packages. -# This script just installs all the packages in a metapackage. -# Remeber that mkjail template == metapkg metapackage. -# - -# -# TODO -# -# In the mean term, metapkg will not be developed, but the code will rest -# until someone need it. Some ideas to think for the future of metapkg would -# be a better integration with simplepkg structure, like: -# -# - By default metapkg searches by a slack-required in the package/slackbuilds repos -# - With -f, metapkg uses a local file (template, slack-required or tagfile) -# - -COMMON="/usr/libexec/simplepkg/common.sh" -BASENAME="`basename $0`" -ROOT="/" - -function usage { - echo "usage: [ROOT=/otherroot] $BASENAME --option [metapackage]" - echo "options: --install, --remove" - exit 1 -} - -if [ -f "$COMMON" ]; then - source $COMMON -else - echo "error: file $COMMON found, check your `basename $0` installation" - exit 1 -fi - -if [ -z "$2" ]; then - usage -else - eval_config $BASENAME -u -fi - -if [ ! -f "$BASE_CONF/$2.template" ]; then - echo error: template $2 not found - exit 1 -else - TEMPLATE="$BASE_CONF/$2.template" - unset server -fi - -if [ "$1" == "--install" ] || [ "$1" == "install" ]; then - install_packages -elif [ "$1" == "--remove" ] || [ "$1" == "remove" ]; then - remove_packages -else - usage -fi diff --git a/tags/0.5/utils/searchpkg b/tags/0.5/utils/searchpkg deleted file mode 100755 index cc5a827..0000000 --- a/tags/0.5/utils/searchpkg +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -# -# This software is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or any later version. -# -# This software is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# searchpkg: search packages inside a local slackware-like repository -# this is part of simplepkg -# feedback: rhatto at riseup.net | gpl -# - -# find . -type f -exec ls -l {} \; > FILELIST.TXT - -if [[ $# != 1 && $# != 2 ]]; then - echo "usage: $0 [-1] <repository> [package-name]" - echo "package-name can be either the full package file name, just its prefix or so" - echo "option -1 show just the first matching package" - exit 1 -fi - -FILELIST="$1/FILELIST.TXT" -PACKAGE_FIELD="8" - -if [ -z "$2" ]; then - grep .tgz $FILELIST -else - grep -e "$2" $FILELIST | grep tgz | awk "{ print \$$PACKAGE_FIELD }" -fi |