summaryrefslogtreecommitdiffstats
path: root/source/ap/slackpkg/files/slackpkg
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--source/ap/slackpkg/files/slackpkg574
-rw-r--r--source/ap/slackpkg/files/slackpkg.8337
-rw-r--r--source/ap/slackpkg/files/slackpkg.conf.5338
-rw-r--r--source/ap/slackpkg/files/slackpkg.conf.new153
4 files changed, 1402 insertions, 0 deletions
diff --git a/source/ap/slackpkg/files/slackpkg b/source/ap/slackpkg/files/slackpkg
new file mode 100644
index 000000000..9c45c8659
--- /dev/null
+++ b/source/ap/slackpkg/files/slackpkg
@@ -0,0 +1,574 @@
+#!/bin/sh
+#
+# SlackPkg - An Automated packaging tool for Slackware Linux
+# Copyright (C) 2003-2011 Roberto F. Batista, Evaldo Gardenali
+#
+# 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
+#
+# Project Page: http://slackpkg.org/
+# Roberto F. Batista (aka PiterPunk) piterpunk@slackware.com
+# Evaldo Gardenali (aka UdontKnow) evaldogardenali@fasternet.com.br
+#
+
+
+#========================================================================
+#
+# LOAD CONFIGURATIONS
+#
+
+#
+# CONF = configuration directory
+# SOURCE = A mirror of Slackware. Source can be sett by editing $CONF/mirrors
+#
+VERSION=@VERSION@
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+SLACKWARE_VERSION=$(cat /etc/slackware-version | cut -f2 -d\ )
+CONF=${CONF:-/etc/slackpkg}
+SOURCE=$(sed -e 's/^[[:blank:]]*//' $CONF/mirrors | grep -m1 -e "^\([a-z]\)")
+. $CONF/slackpkg.conf
+ERROR=""
+
+# Set temporary directory
+#
+TMPDIR=$(mktemp -p /tmp -d slackpkg.XXXXXX 2>/dev/null)
+if [ $? -ne 0 ]; then
+ TMPDIR="/tmp/slackpkg.${RANDOM}"
+ mkdir -m 700 $TMPDIR || TMPDIR="FAILED"
+fi
+
+#
+# Load the slackpkg functions
+#
+. /usr/libexec/slackpkg/core-functions.sh
+
+#========================================================================
+#
+# COMMAND LINE PARSING
+#
+if [ $# -eq 0 ]; then
+ usage
+fi
+
+while [ -n "$1" ] ; do
+ case $1 in
+ -delall=on)
+ DELALL=on
+ shift
+ ;;
+ -delall=off)
+ DELALL=off
+ shift
+ ;;
+ -checkmd5=on)
+ CHECKMD5=on
+ shift
+ ;;
+ -checkmd5=off)
+ CHECKMD5=off
+ shift
+ ;;
+ -checkgpg=on)
+ CHECKGPG=on
+ shift
+ ;;
+ -checkgpg=off)
+ CHECKGPG=off
+ shift
+ ;;
+ -checksize=on)
+ CHECKSIZE=on
+ shift
+ ;;
+ -checksize=off)
+ CHECKSIZE=off
+ shift
+ ;;
+ -postinst=on)
+ POSTINST=on
+ shift
+ ;;
+ -postinst=off)
+ POSTINST=off
+ shift
+ ;;
+ -onoff=on)
+ ONOFF=on
+ shift
+ ;;
+ -onoff=off)
+ ONOFF=off
+ shift
+ ;;
+ -download_all=on)
+ DOWNLOAD_ALL=on
+ shift
+ ;;
+ -download_all=off)
+ DOWNLOAD_ALL=off
+ shift
+ ;;
+ -dialog=on)
+ DIALOG=on
+ shift
+ ;;
+ -dialog=off)
+ DIALOG=off
+ shift
+ ;;
+ -dialog_maxargs=*)
+ DIALOG_MAXARGS=$(echo $1 | cut -f2 -d=)
+ shift
+ ;;
+ -batch=on)
+ BATCH=on
+ shift
+ ;;
+ -batch=off)
+ BATCH=off
+ shift
+ ;;
+ -only_new_dotnew=on)
+ ONLY_NEW_DOTNEW=on
+ shift
+ ;;
+ -only_new_dotnew=off)
+ ONLY_NEW_DOTNEW=off
+ shift
+ ;;
+ -use_includes=on)
+ USE_INCLUDES=on
+ shift
+ ;;
+ -use_includes=off)
+ USE_INCLUDES=off
+ shift
+ ;;
+ -spinning=on)
+ SPINNING=on
+ shift
+ ;;
+ -spinning=off)
+ SPINNING=off
+ shift
+ ;;
+ -default_answer=y|-default_answer=yes)
+ DEFAULT_ANSWER=y
+ shift
+ ;;
+ -default_answer=n|-default_answer=no)
+ DEFAULT_ANSWER=n
+ shift
+ ;;
+ -mirror=*)
+ SOURCE=$(echo $1 | cut -f2 -d=)
+ shift
+ ;;
+ install|reinstall|upgrade|remove|blacklist|download)
+ CMD=$1
+ shift
+ if [ -n "$1" ]; then
+ if echo $1 | egrep -q "^\.{0,2}/" ; then
+ if [ -e $1 ]; then
+ INPUTLIST=$(cat $1 | tr "\n" " ")
+ else
+ echo -e "The file $1 doesn't exist.\n"
+ cleanup
+ fi
+ else
+ #
+ # Sanitize the argument. We have some problems with dots
+ # and plus (.+)
+ #
+ #INPUTLIST="$(echo $@ | sed -e 's/\+/\\\+/g' -e 's/\./\\\./g')"
+ INPUTLIST="$@"
+ fi
+ elif [ "$CMD" != "blacklist" ]; then
+ usage
+ fi
+ shift $#
+ ;;
+ update)
+ CMD=$1
+ shift
+ if [ "$1" = "gpg" ]; then
+ UPARG="$1"
+ shift
+ fi
+ ;;
+ install-new|upgrade-all|clean-system|new-config|check-updates|help)
+ CMD=$1
+ shift
+ if [ -n "$1" ]; then
+ echo -e "\n$CMD: Ignoring extra arguments: $@" >&2 >&1
+ shift $#
+ fi
+ ;;
+ generate-template|install-template|remove-template|search|file-search|info)
+ CMD=$1
+ shift
+ if [ -n "$1" ]; then
+ ARG=$1
+ shift
+ else
+ usage
+ fi
+
+ if [ -n "$1" ]; then
+ echo -e "\n$CMD: Ignoring extra arguments: $@" >&2 >&1
+ shift $#
+ fi
+ ;;
+ *)
+ echo -e "\n$1: Unknown option.\n"
+ usage
+ ;;
+ esac
+done
+
+#========================================================================
+#
+# SYSTEM SETUP
+#
+system_setup
+
+#========================================================================
+#
+# SYNTAX CHECKING
+#
+system_checkup
+
+#========================================================================
+#
+# READ EXTRA FUNCTIONS
+#
+
+# If you want a new function or need a rewrite of an existing
+# feature, you can put your new function in a shell script under
+# /usr/libexec/slackpkg/functions.d/
+#
+# Remember - the new function scripts need to be executable
+#
+for i in /usr/libexec/slackpkg/functions.d/*.sh; do
+ if [ -x $i ]; then
+ . $i
+ fi
+done
+
+#========================================================================
+#
+# MAIN PROGRAM
+#
+
+#
+# A *BIG* case with all slackpkg commands -:)
+#
+case "$CMD" in
+ help)
+ full_usage
+ ;;
+ check-updates)
+ if checkchangelog 1>/dev/null 2>/dev/null ; then
+ echo "No news is good news"
+ else
+ echo "News on ChangeLog.txt"
+ fi
+ ;;
+ update)
+ # If you are using "slackpkg update gpg" OR the system
+ # doesn't have Slackware GPG key, download and install
+ # the key
+ #
+ if [ "$UPARG" = "gpg" ] || [ "$GPGFIRSTTIME" = "0" ]; then
+ #
+ # Creates .gnupg directory if doesn't exist
+ # without this dir, gpg got an error.
+ #
+ if ! [ -e ~/.gnupg ]; then
+ mkdir ~/.gnupg
+ fi
+ getfile ${SOURCE}GPG-KEY $TMPDIR/gpgkey
+ gpg --yes --batch --delete-key "$SLACKKEY" &>/dev/null
+ gpg --import $TMPDIR/gpgkey &>/dev/null && \
+ echo -e "\t\t\tSlackware Linux Project's GPG key added"
+ if [ "$UPARG" = "gpg" ]; then
+ cleanup
+ fi
+ fi
+ echo "Updating the package lists..."
+ updatefilelists
+ ;;
+ install)
+ makelist $INPUTLIST
+ if [ -n "$LIST" ]; then
+ showlist "$LIST" $CMD
+ install_pkg
+ else
+ echo -e "No packages match the pattern for install. Try:"
+ echo -e "\n\t$0 reinstall|upgrade $2\n"
+ POSTINST=off
+ fi
+ ;;
+ reinstall)
+ makelist $INPUTLIST
+ if [ -n "$LIST" ]; then
+ showlist "$LIST" $CMD
+ install_pkg
+ else
+ echo -e "No packages match the pattern for reinstall. Try:"
+ echo -e "\n\t$0 install|upgrade $2\n"
+ POSTINST=off
+ fi
+ ;;
+ upgrade)
+ sanity_check
+ makelist $INPUTLIST
+ if [ -n "$LIST" ]; then
+ showlist "$LIST" $CMD
+ upgrade_pkg
+ else
+ echo -e "No packages match the pattern for upgrade. Try:"
+ echo -e "\n\t$0 install|reinstall $2\n"
+ POSTINST=off
+ fi
+ ;;
+ download)
+ makelist $INPUTLIST
+ DELALL="off"
+ if ! [ "$LIST" = "" ]; then
+ showlist "$LIST" $CMD
+ for i in $SHOWLIST; do
+ getpkg $i true
+ done
+ else
+ echo -e "No packages match the pattern for download."
+ POSTINST=off
+ fi
+ ;;
+ remove)
+ makelist $INPUTLIST
+ if [ "$LIST" = "" ]; then
+ echo -e "The file(s) $INPUTLIST can't be removed - package not installed.\n"
+ cleanup
+ fi
+ showlist "$LIST" $CMD
+ remove_pkg
+ ;;
+ clean-system)
+ makelist $INPUTLIST
+ if [ -n "$LIST" ]; then
+ showlist "$LIST" remove
+ remove_pkg
+ else
+ echo -e "No packages match the pattern for clean-system\n"
+ POSTINST=off
+ fi
+ ;;
+ upgrade-all)
+ sanity_check
+ makelist $INPUTLIST
+ if ! [ -n "${LIST}" ]; then
+ echo -e "No packages match the pattern for upgrade. Try:"
+ echo -e "\n\t$0 install|reinstall $2\n"
+ POSTINST=off
+ else
+ showlist "$LIST" upgrade
+ if [ "$DOWNLOAD_ALL" = "on" ]; then
+ OLDDEL="$DELALL"
+ DELALL="off"
+ for i in $SHOWLIST; do
+ getpkg $i true
+ done
+ DELALL="$OLDDEL"
+ fi
+ FOUND=""
+ FOUND=$(echo $SHOWLIST | tr -s ' ' "\n" | grep "slackpkg-[0-9]")
+ if [ "$FOUND" != "" ]; then
+ getpkg $FOUND upgradepkg Upgrading
+ echo -e "slackpkg was upgraded - you will need start the upgrade process again...\n"
+ cleanup
+ exit 0
+ fi
+ for i in pkgtools glibc-solibs aaa_elflibs readline sed; do
+ FOUND=""
+ FOUND=$(echo $SHOWLIST | tr -s ' ' "\n" | grep "${i}-[0-9]")
+ if [ "$FOUND" != "" ]; then
+ getpkg $FOUND upgradepkg Upgrading
+ fi
+ done
+ upgrade_pkg
+ fi
+ ;;
+ install-new)
+ makelist ${INPUTLIST}
+ if ! [ -n "${LIST}" ]; then
+ echo -e "No packages match the pattern for install. Try:"
+ echo -e "\n\t$0 upgrade|reinstall $2\n"
+ POSTINST=off
+ else
+ showlist "$LIST" install
+ install_pkg
+ fi
+ ;;
+ blacklist)
+ #
+ # If blacklist is called without package name, list
+ # all blacklisted packages
+ if [ "$INPUTLIST" = "" ]; then
+ echo -e "Packages in blacklist:\n"
+ grep -e "^\([a-z]\)" $CONF/blacklist | $MORECMD
+ cleanup
+ fi
+
+ makelist ${INPUTLIST}
+ for i in $LIST; do
+ BASENAME=$(cutpkg $i)
+ BLACKLIST="$BLACKLIST $BASENAME"
+ done
+ BLACKLIST=$(echo $BLACKLIST | tr ' ' "\n")
+ if [ "$BLACKLIST" = "" ]; then
+ echo -e "No packages match the pattern."
+ cleanup
+ else
+ showlist "$BLACKLIST" $CMD
+ fi
+
+ blacklist_pkg
+ ;;
+ file-search)
+ PATTERN=$(echo $ARG | sed -e 's/\+/\\\+/g' -e 's/\./\\\./g' -e 's/ /\|/g')
+ makelist $PATTERN
+
+ if [ "$LIST" = "" ]; then
+ echo -e "No packages contains \"$PATTERN\" file."
+ else
+ echo -e "The list below shows the packages that contains \"$PATTERN\" file.\n"
+ searchlist "$LIST"
+ echo -e "\nYou can search specific packages using \"slackpkg search package\".\n"
+ fi
+ ;;
+ search)
+ PATTERN=$(echo $ARG | sed -e 's/\+/\\\+/g' -e 's/\./\\\./g' -e 's/ /\|/g')
+ makelist $PATTERN
+
+ if [ "$LIST" = "" ]; then
+ echo -e "No package name matches the pattern."
+ else
+ echo -e "The list below shows all packages with name matching \"$PATTERN\".\n"
+ searchlist "$LIST"
+ echo -e "\nYou can search specific files using \"slackpkg file-search file\".\n"
+ fi
+ ;;
+ info)
+ PATTERN=$(echo $ARG | sed -e 's/\+/\\\+/g' -e 's/\./\\\./g')
+ NAME=$(cutpkg $PATTERN)
+ awk -F: "/PACKAGE NAME:.* ${NAME}-[^-]+-(${ARCH}|fw|noarch)-[^-]+/,/^$/ {
+ found=1
+ if (\$1 ~ /"$NAME"/) {
+ print \$PATTERN
+ } else {
+ print \$0
+ }
+ }
+ END {
+ if ( found != 1 ) {
+ print \"No packages found! Try:\n\n\tslackpkg search $PATTERN\n\nand choose one (and ONLY one package).\n\"
+ }
+ }" ${WORKDIR}/PACKAGES.TXT 2>/dev/null
+ ;;
+ new-config)
+ POSTINST=on
+ ;;
+ generate-template)
+ TEMPLATE=$ARG.template
+ if [ -e $TEMPLATEDIR/$TEMPLATE ]; then
+ echo -e "\
+\"$TEMPLATE\" already exists!\n\
+\nDo you want to overwrite $TEMPLATE (y/N)? \c"
+ answer
+ if [ "$ANSWER" = "Y" -o "$ANSWER" = "y" ]; then
+ rm $TEMPLATEDIR/$TEMPLATE
+ echo
+ else
+ cleanup
+ fi
+ fi
+ generate_template $ARG
+ ;;
+ install-template)
+ TEMPLATE=$ARG.template
+ if [ -e $TEMPLATEDIR/$TEMPLATE ]; then
+ ( cd $TEMPLATEDIR
+ parse_template $TEMPLATE
+ )
+ INPUTLIST=$(cat ${TMPDIR}/${TEMPLATE}.tmp | tr "\n" " ")
+ else
+ echo -e "$ARG template not found!"
+ cleanup
+ fi
+
+ makelist $INPUTLIST
+ if [ -n "$LIST" ]; then
+ showlist "$LIST" $CMD
+ install_pkg
+ else
+ echo -e "All packages from $ARG template are already installed"
+ POSTINST=off
+ fi
+ ;;
+ remove-template)
+ TEMPLATE=$ARG.template
+ if [ -e $TEMPLATEDIR/$TEMPLATE ]; then
+ ( cd $TEMPLATEDIR
+ parse_template $TEMPLATE
+ )
+ INPUTLIST=$(cat ${TMPDIR}/${TEMPLATE}.tmp | tr "\n" " ")
+ else
+ echo -e "$ARG template not found!"
+ cleanup
+ fi
+
+ makelist $INPUTLIST
+ if [ "$LIST" = "" ]; then
+ echo -e "The template $ARG can't be removed - it isn't installed.\n"
+ cleanup
+ fi
+ showlist "$LIST" $CMD
+ remove_pkg
+ ;;
+ *)
+ usage
+ ;;
+esac
+
+#
+# Executes the post-install. This is the default
+# Before runs post-install, check if the slackpkg option is
+# remove, search, update, blacklist, info or clean-system.
+# That options don't change configurations files and, if
+# someone remove the kernel, i hope he knows what is doing.
+#
+for i in check-updates remove search file-search update blacklist info \
+ clean-system download generate-template remove-template; do
+ if [ "$CMD" = "$i" ]; then
+ POSTINST=off
+ fi
+done
+
+if [ "$POSTINST" != "off" ]; then
+ lookkernel
+ looknew
+fi
+
+cleanup
diff --git a/source/ap/slackpkg/files/slackpkg.8 b/source/ap/slackpkg/files/slackpkg.8
new file mode 100644
index 000000000..1cf8326c0
--- /dev/null
+++ b/source/ap/slackpkg/files/slackpkg.8
@@ -0,0 +1,337 @@
+.TH SLACKPKG 8 "May 2010" slackpkg-2.81.1 ""
+.SH NAME
+.B slackpkg
+\- Automated tool for managing Slackware Linux packages
+
+.SH SYNOPSIS
+.B slackpkg
+.B [OPTIONS]
+.B {install|remove|search|upgrade|reinstall|blacklist}
+.BI { PATTERN | FILE }
+
+.B slackpkg [OPTIONS] {clean-system|upgrade-all|install-new}
+
+.B slackpkg
+.B [OPTIONS]
+.B {search|file-search}
+.BI { PATTERN | FILE }
+
+.B slackpkg
+.B [OPTIONS]
+.B {generate-template|install-template|remove-template}
+.I TEMPLATENAME
+
+.B slackpkg [OPTIONS] info
+.I PACKAGE
+
+.B slackpkg [OPTIONS] update [gpg]
+
+.B slackpkg [OPTIONS] {new-config|check-updates}
+
+.B slackpkg [OPTIONS] help
+
+.SH DESCRIPTION
+Slackpkg is a tool for those who want to easily install or upgrade
+packages via the network. With slackpkg, you can have a minimal
+installation of Slackware Linux and install/upgrade only those packages
+you need most.
+
+You don't need to setup NFS or make dozens of CDs for all your
+computers; all you need to do is to type one command and all of
+the latest official Slackware packages will be at your fingertips.
+
+.SH INSTRUCTIONS
+Slackpkg has many features. It can search for specific files, remove
+all third-party packages in your system, install packages added to
+Slackware since your last update, show package descriptions, etc.
+
+Before you do anything, you will need to uncomment one mirror in
+/etc/slackpkg/mirrors file and run:
+
+.in +5
+# slackpkg update
+.in
+
+The "update" action will download and format the list of files and
+packages in Slackware. Every time this list is changed, the update
+needs to be run.
+
+The main features of Slackpkg are the ones directly related to
+package management: install, upgrade, and remove packages.
+To do any of these tasks, the Slackpkg syntax is:
+
+.in +5
+# slackpkg [OPTIONS] <action> {PATTERN|FILE}
+.in
+
+.I OPTIONS
+can be one or more of the many configuration options listed in
+/etc/slackpkg/slackpkg.conf. There are equivalent command line options
+for most of the configuration directives found in slackpkg.conf - see the
+.B slackpkg.conf(5)
+man-page to see what options are available.
+
+.I PATTERN
+can be a package name or just part of package name. It can also
+be a software series (like kde, a, ap, ...).
+.br
+
+.I FILE
+is a file with a list of
+.I PATTERNs
+inside: either one per line,
+or several per line with spaces as separators.
+
+Slackpkg can be used to upgrade the whole distribution.
+.br
+The usual way is to do:
+
+.in +5
+# slackpkg update
+.br
+# slackpkg install-new
+.br
+# slackpkg upgrade-all
+.br
+# slackpkg clean-system
+.in
+
+Another feature of Slackpkg is the ability to work with templates, which can
+make it much easier to create different machines with the same contents of
+packages. The basic steps are as follows:
+
+.RS +5
+.IP \(bu 2
+Install one machine
+.IP \(bu 2
+Run "slackpkg generate-template TEMPLATENAME"
+.IP \(bu 2
+Copy /etc/slackpkg/templates/TEMPLATENAME.template to the same directory on
+the other machine
+.IP \(bu 2
+Run "slackpkg install-template TEMPLATENAME" on the other machine
+.RE
+
+.I TEMPLATENAME
+is the name of your template.
+
+Following this manual page, you can find what each of these (and other)
+actions does.
+
+.SH ACTIONS
+.TP 5
+.B help
+.br
+Show slackpkg's actions and a short description of them. Useful if you need
+to know a little about slackpkg. The information here, on man-page is much
+more complete.
+
+.TP 5
+.B update
+.br
+update will download the latest package lists from a Slackware mirror
+(or your CD). It's a good idea to run
+
+.in +5
+# slackpkg update
+.in
+
+before attempting to upgrade, install, or search for packages.
+.br
+If you need to update Slackware's GPG key, run
+
+.in +5
+# slackpkg update gpg
+.in
+
+The GPG key doesn't change. This should be a "one time" command - run it
+once and forget it...
+
+.TP 5
+.B check-updates
+.br
+Verify if there is any update to ChangeLog.txt. This is good to be used from
+cron to alert the sysadmin about updates.
+
+.TP 5
+.B file-search
+.br
+You can search the official Slackware packages for any file in the Slackware
+distribution. Do you need a strange library? Use file-search to find it.
+
+.in +5
+# slackpkg file-search filename
+.in
+
+All packages with matching "filename" will be shown, thus you can see whether
+the packages are installed or not; if not, you can download and install them
+with other slackpkg actions.
+
+.TP 5
+.B search
+.br
+You can search for any package distributed in Slackware.
+
+.in +5
+# slackpkg search pattern
+.in
+
+All packages names that matches with "pattern" will be shown.
+Like file-search, you can see whether the packages are installed or not; if
+not, you can download and install them with other slackpkg actions.
+
+.TP 5
+.B install
+.br
+Installation of a package is very simple. Just use a command like this:
+
+.in +5
+# slackpkg install package
+.in
+
+and the package will be downloaded and installed.
+.br
+You can't use the "install" option to install an already installed package,
+but you may reinstall or upgrade it.
+
+.TP 5
+.B upgrade
+.br
+upgrade installs the most recent official version of the specified package(s).
+
+upgrade will not attempt to install new packages (use the install
+function for that purpose; the latest official version of the package
+will be installed).
+.TP 5
+.B reinstall
+.br
+In case you mistakenly corrupt something, the reinstall option will allow
+you to reinstall the same version of a package that is currently installed.
+
+.TP 5
+.B remove
+.br
+With remove, you can remove certain installed packages. As an example:
+
+.in +5
+# slackpkg remove kde
+.in
+
+will remove all packages with "kde" in their name.
+
+.TP 5
+.B blacklist
+.br
+With this action, you can "blacklist" certain packages.
+.br
+Blacklisted packages will not be installed, upgraded, or removed by slackpkg.
+If you want to remove some package from the black list, please edit
+/etc/slackpkg/blacklist.
+
+.TP 5
+.B download
+.br
+This action tells slackpkg to download the packages, but not to install them.
+They will be placed in /var/cache/packages, and you can
+install/upgrade/reinstall them later (or burn them to CD).
+
+.TP 5
+.B info
+.br
+This action prints information about the package(s): compressed and
+uncompressed size, description, etcetera...
+
+.TP 5
+.B clean-system
+.br
+This action removes all of the packages that don't belong to a standard
+Slackware installation. With this option, you can clean up your system,
+removing third-party packages as well as any packages that were removed
+from the official Slackware package set.
+.br
+If you have some third party (or custom built) packages that you would like
+to keep, you can temporarily add them to the list of blacklisted packages
+before you run the 'clean-system' action.
+
+.TP 5
+.B upgrade-all
+.br
+This action upgrades every package installed on the system to the version in
+the official Slackware tree; this is the "good" way to upgrade the entire
+system.
+.br
+Remember to use the "install-new" action before you use "upgrade-all."
+
+.TP 5
+.B install-new
+This action installs any new packages that are added to the official
+Slackware package set. Run this if you are upgrading your system to
+another Slackware version or if you are using -current.
+.br
+If you want to install all uninstalled Slackware packages onto your system,
+use the following command instead of the install-new action:
+
+.in +5
+# slackpkg install slackware.
+.in
+.TP 5
+.B new-config
+This action searches for .new configuration files and ask the user what to
+do with those files.
+.br
+new-config is very useful when you perform an upgrade and leave the
+configuration files to be reviewed later. Instead of a manual search,
+diff, and replace; you can use the new-config action.
+.TP 5
+.B generate-template
+This action creates a new template with all official packages that are
+installed in your system. The template is stored at /etc/slackpkg/templates
+.TP 5
+.B install-template
+This action install the required template in the system. The template must
+be in /etc/slackpkg/templates. If the template "includes" other templates,
+all of them need to be in /etc/slackpkg/templates. You can disable the
+"includes" in slackpkg.conf or in command-line.
+.TP 5
+.B remove-template
+This action remove all packages that are part of selected template. Be
+careful, this can put your machine in an unusable state. The "include"
+handling can be activated/deactivated in slackpkg.conf or with the
+appropriate option in command-line.
+
+.SH FILES
+.TP 5
+.B /etc/slackpkg/mirrors
+File to specify the location from which to download packages
+.TP 5
+.B /etc/slackpkg/slackpkg.conf
+General configuration of slackpkg
+.TP 5
+.B /etc/slackpkg/blacklist
+List of packages to skip
+.TP 5
+.B /etc/slackpkg/templates
+Contains all template files
+.TP 5
+.B /usr/libexec/slackpkg
+Contains slackpkg core and additional functions
+.TP 5
+.B /var/lib/slackpkg
+Slackpkg internal use - Formatted package lists, copy of
+ChangeLog.txt, list of files, etcetera...
+
+.SH "SEE ALSO"
+.BR slackpkg.conf (5),
+.BR installpkg (8),
+.BR upgradepkg (8),
+.BR explodepkg (8),
+.BR makepkg (8),
+.BR pkgtool (8).
+
+.SH AUTHORS
+.TP 5
+Piter PUNK aka Roberto F Batista
+<piterpk AT terra DOT com DOT br>
+.TP 5
+Evaldo Gardenali aka UdontKnow
+<evaldo AT fasternet DOT com DOT br>
diff --git a/source/ap/slackpkg/files/slackpkg.conf.5 b/source/ap/slackpkg/files/slackpkg.conf.5
new file mode 100644
index 000000000..d135a4e89
--- /dev/null
+++ b/source/ap/slackpkg/files/slackpkg.conf.5
@@ -0,0 +1,338 @@
+.TH SLACKPKG.CONF 5 "May 2010" slackpkg-2.81.1 ""
+.SH NAME
+.B slackpkg.conf
+\- Configuration data for slackpkg
+
+.SH DESCRIPTION
+
+The slackpkg.conf file contains information for
+.B slackpkg
+(8), an automated tool for managing Slackware Linux packages.
+
+The slackpkg.conf file is a sequence of shell script variables, and each
+variable controls one aspect of slackpkg. Comments begin with the #
+character and end at end of the line, and comments may appear anywhere
+inside the slackpkg.conf file. If some variable appears more than once
+in the file, slackpkg will use the value that was defined last.
+
+Many variables can be overridden by options passed to slackpkg on the command
+line. If you need to override the value of
+.B VARIABLE
+, pass
+.B -variable=value
+on the command line just before the slackpkg action. Multiple variables may
+be overridden.
+
+EXAMPLE: slackpkg -batch=on -default_answer=y upgrade-all
+
+For configuration options that have only two states, possible values are
+either "on" or "off" unless otherwise indicated.
+
+The different configuration options are:
+
+.TP 5
+.B ARCH
+.br
+Chooses the system architecture. Usually Slackpkg can found the correct
+value using "uname -m". The valid values are:
+
+.ds title MACHINE\t\tVALID ARCH VALUES
+.ds arm ARM\t\t\tarm
+.ds x86 x86 (32bits)\ti386, i486, i586 and i686
+.ds x86_64 x86 (64bits)\tx86_64
+.ds ppc PowerPC\t\tpowerpc
+.ds s390 S/390\t\t390
+.in +5
+.B \*[title]
+.br
+\*[arm]
+.br
+\*[x86]
+.br
+\*[x86_64]
+.br
+\*[ppc]
+.br
+\*[s390]
+.in
+
+The default value of
+.B ARCH
+depends on your architecture.
+
+.TP 5
+.B SLACKKEY
+.br
+Slackpkg checks the package signature file (.asc) against the GPG signature
+of the project. Different ports of Slackware can have different signatures,
+and Slackpkg tries to find the correct one based on the architecture of your
+system. If the automatically-detected
+.B SLACKKEY
+isn't correct, you can change it using this option.
+
+The default value of
+.B SLACKKEY
+depends on your Slackware port.
+
+.TP 5
+.B TEMP
+.br
+Defines the location to which slackpkg will download the packages before
+installing/upgrading them.
+
+The default value of
+.B TEMP
+is /var/cache/packages.
+
+.TP 5
+.B WORKDIR
+.br
+Defines the directory for package lists, file lists, and other information
+used by slackpkg as it works. Do not change the value of this variable
+unless you know what you are doing.
+
+The default value of
+.B WORKDIR
+is /var/lib/slackpkg.
+
+.TP 5
+.B WGETFLAGS
+.br
+Selects special options for wget. If you need to use multiple options,
+remember to put them between double quotes.
+
+The default value of
+.B WGETFLAGS
+is "\--passive-ftp"
+
+.TP 5
+.B DELALL
+.br
+If set to "on", all downloaded files will be removed after slackpkg performs
+install or upgrade (this does NOT have any impact when slackpkg is run with
+"download"). If set to "off", the files will be kept in the directory
+defined in
+.B TEMP
+(as described above).
+
+The default value of
+.B DELALL
+is "on".
+.br
+From command line, you can use -delall=value.
+
+.TP 5
+.B CHECKMD5
+.br
+Enables (on) or disables (off) the checking of MD5 checksums of all downloaded
+packages before installing or upgrading them.
+
+The default value of
+.B CHECKMD5
+is "on".
+.br
+From command line, you can use -checkmd5=value.
+
+.TP 5
+.B CHECKGPG
+.br
+Enables (on) or disables (off) the check of GPG signature for each package
+before install or upgrade.
+
+The default value of
+.B CHECKGPG
+is "on".
+.br
+From command line, you can use -checkgpg=value.
+
+.TP 5
+.B CHECKSIZE
+.br
+Enables (on) or disables (off) the check of available disk space for each
+package before install or upgrade.
+
+The default value of
+.B CHECKSIZE
+is "off".
+.br
+From command line, you can use -checksize=value.
+
+.TP 5
+.B PKGMAIN
+.br
+Defines the main distribution directory. Usually, you don't need to worry
+about this variable, as Slackpkg tries to find it based on your architecture.
+However, if you need to change it, then include this variable in your
+slackpkg.conf. This should always be the directory which contains the
+Slackware package set series (A, AP, D, E, F, ...).
+
+Default: depends on Slackware port
+
+.TP 5
+.B PRIORITY
+.br
+This array selects the priority at which directories on the mirror will have
+when slackpkg looks for packages. If a package is found in more than one
+place, the package in first directory gets priority, then second, then third,
+then fourth and finally, the package found in last listed directory. You can
+use %PKGMAIN to use the contents of PKGMAIN variable.
+
+Default values (in order): patches %PKGMAIN extra pasture testing
+
+.TP 5
+.B POSTINST
+.br
+Enables (on) or disables (off) slackpkg's post-installation features, such
+as checking for new (*.new) configuration files and new kernel images, and
+prompts you for what it should do.
+
+The default value of
+.B POSTINST
+is "on".
+.br
+From command line, you can use -postinst=value.
+
+.TP 5
+.B ONLY_NEW_DOTNEW
+.br
+When
+.B POSTINST
+is set to "on", slackpkg will search for all .new files inside /etc and
+prompt the user for what to do with them. However, some users prefer to
+see only the .new files installed in slackpkg's last execution, so if
+this applies to you, set
+.B ONLY_NEW_DOTNEW
+to "on".
+
+The default value of
+.B ONLY_NEW_DOTNEW
+is "off". Only change this if you know what are you doing...
+.br
+From command line, you can use -only_new_dotnew=value.
+
+.TP 5
+.B ONOFF
+.br
+The
+.B ONOFF
+variable sets the initial behavior of the dialog interface.
+If you set this to "on" then all packages will be selected by default.
+If you prefer the opposite option (all unchecked), then set this to "off".
+
+The default value of
+.B ONOFF
+is "on".
+.br
+From command line, you can use -onoff=value.
+
+.TP 5
+.B DOWNLOAD_ALL
+.br
+If this variable is set to "on", all files will be downloaded before the
+requested operation (install or upgrade) is performed. If set to "off",
+then the files will be downloaded and the operation (install/upgrade) performed
+one by one.
+
+The default value of
+.B DOWNLOAD_ALL
+is "off".
+.br
+From command line, you can use -download_all=value.
+
+.TP 5
+.B DIALOG
+.br
+Enables (on) or disables (off) the dialog interface.
+
+The default value of
+.B DIALOG
+is "on".
+.br
+From command line, you can use -dialog=value.
+
+.TP 5
+.B DIALOG_MAXARGS
+.br
+Set the max number of characters that will be send to "dialog". If this number
+is reached in upgrade, slackpkg removes the information about current installed
+version of each package. If even without this information the number is reached
+again, slackpkg returns an error to the user.
+
+If
+.B DIALOG_MAXARGS
+is unset, 19500 is the default value.
+.br
+From command line, you can use -dialog_maxargs=value.
+
+.TP 5
+.B BATCH
+.br
+Enables (on) or disables (off) the non-interactive mode. When run in batch
+mode, slackpkg will not prompt the user for anything; instead, all questions
+will get
+.B DEFAULT_ANSWER
+(see below).
+.br
+If you perform an upgrade using this mode, you will need to run
+"slackpkg new-config" later to find and merge .new files.
+
+The default value of
+.B BATCH
+is "off".
+.br
+From command line, you can use -batch=value.
+
+.TP 5
+.B DEFAULT_ANSWER
+.br
+This is the default answer to questions when slackpkg prompts the user for
+some information. This is used only in non-interactive mode (when
+.B BATCH
+is "yes" or the user turns batch mode on via the command line); otherwise,
+this variable has no effect.
+.br
+Valid values are "y" or "n".
+
+The default value of
+.B DEFAULT_ANSWER
+is "n".
+.br
+From command line, you can use -default_answer=value.
+
+.TP 5
+.B USE_INCLUDES
+.br
+Slackpkg templates can include other templates. This reduces the package
+duplication in many templates, but it can be a problem if you want to remove
+only a specific template. You can disable the #include parsing by setting
+this option to "off".
+
+The default value of
+.B USE_INCLUDES
+is "on".
+.br
+From command line, you can use -use_includes=value.
+
+.TP 5
+.B SPINNING
+.br
+When Slackpkg is doing an activity that takes some time, it gives visual
+feedback with a spinning bar. If you don't like the spinning bar, it can be
+disabled by setting this option to "off".
+
+The default value of
+.B SPINNING
+is "on".
+.br
+From command line, you can use -spinning=value.
+
+.SH FILES
+.TP 5
+.B /etc/slackpkg/slacpkg.conf
+
+.SH "SEE ALSO"
+.BR slackpkg (8)
+.BR pkgtool (8)
+.BR installpkg (8)
+.BR upgradepkg (8)
+.BR removepkg (8)
diff --git a/source/ap/slackpkg/files/slackpkg.conf.new b/source/ap/slackpkg/files/slackpkg.conf.new
new file mode 100644
index 000000000..9eae0ab2a
--- /dev/null
+++ b/source/ap/slackpkg/files/slackpkg.conf.new
@@ -0,0 +1,153 @@
+#
+# slackpkg.conf - Configuration for SlackPkg
+# v2.8
+#
+
+#
+# SlackPkg - An Automated packaging tool for Slackware Linux
+# Copyright (C) 2003-2011 Roberto F. Batista, Evaldo Gardenali
+#
+# 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
+#
+# Project Page: http://slackpkg.org/
+# Roberto F. Batista (aka PiterPunk) piterpunk@slackware.com
+# Evaldo Gardenali (aka UdontKnow) evaldogardenali@fasternet.com.br
+#
+
+# For configuration options that have only two states, possible values are
+# either "on" or "off"
+
+# Remember, the only official Slackware ports are x86, s390 and arm, and
+# slackpkg developers don't have s390 boxes for testing. If you are
+# testing/using other architectures and have suggestions or patches,
+# please let me know (piterpunk@slackware.com)
+#
+# Select the architecture of your system. Valid values are:
+# i#86 (where # is 3, 4, 5 or 6)
+# x86_64
+# s390
+# arm* (* can be v4, v5tejl, and other ARM versions)
+# powerpc
+#
+# The line is commented because slackpkg will try to find your
+# architecture automagically. If you want to override what slackpkg
+# finds, put the value after the = and uncomment this line
+#ARCH=
+
+# The default PKGMAIN is "slackware", but some derived distros use other
+# names as the main directory. PKGMAIN is the place with the slackware
+# package series (a, ap, n, ... ).
+#
+# Usually slackpkg can automagically discover this variable. If you want
+# to override the discovered variable, then uncomment this line and change
+# it to reflect the correct value of PKGMAIN
+#PKGMAIN=slackware
+
+# Slackware packages are signed by project key. Slackpkg uses this key
+# to check if the packages downloaded are valid, so remember to set
+# CHECKGPG to "on".
+#
+# Usually slackpkg can automagically discover this variable. If you want
+# to override the discovered variable, then uncomment this line and edit
+# as needed
+#SLACKKEY="Slackware Linux Project <security@slackware.com>"
+
+# Downloaded files will be in directory below:
+TEMP=/var/cache/packages
+
+# Package lists, file lists, and others will be at WORKDIR:
+WORKDIR=/var/lib/slackpkg
+
+# Special options for wget (default is WGETFLAGS="--passive-ftp")
+WGETFLAGS="--passive-ftp"
+
+# If DELALL is "on", all downloaded files will be removed after install.
+DELALL=on
+
+# If CHECKMD5 is "on", the system will check the md5sums of all packages before
+# install/upgrade/reinstall is performed.
+CHECKMD5=on
+
+# If CHECKGPG is "on", the system will verify the GPG signature of each package
+# before install/upgrade/reinstall is performed.
+CHECKGPG=on
+
+# If CHECKSIZE is "on", the system will check if we have sufficient disk
+# space to install selected package. This make upgrade/install safer, but slow
+# upgrade/install process.
+CHECKSIZE=off
+
+# PRIORITY sets the download priority. slackpkg will try to found the
+# package first in the first value, then the second one, through all
+# values in list.
+#
+# Default value: patches %PKGMAIN extra pasture testing
+PRIORITY=( patches %PKGMAIN extra pasture testing )
+
+# Enables (on) or disables (off) slackpkg's post-installation features, such
+# as checking for new (*.new) configuration files and new kernel images, and
+# prompts you for what it should do. Default=on
+POSTINST=on
+
+# Post-installation features, by default, search all of /etc for .new files.
+# This is the safe option: with it, you won't have any unmerged .new files
+# to cause problems. Even so, some people prefer that only the .new files
+# installed by the current slackpkg session be checked.
+# If this is your case, change ONLY_NEW_DOTNEW to "on".
+# Default=off
+ONLY_NEW_DOTNEW=off
+
+# The ONOFF variable sets the initial behavior of the dialog interface.
+# If you set this to "on" then all packages will be selected by default.
+# If you prefer the opposite option (all unchecked), then set this to "off".
+ONOFF=on
+
+# If this variable is set to "on", all files will be downloaded before the
+# requested operation (install or upgrade) is performed. If set to "off",
+# then the files will be downloaded and the operation (install/upgrade)
+# performed one by one. Default=on
+DOWNLOAD_ALL=on
+
+# Enables (on) or disables (off) the dialog interface in slackpkg. Default=on
+DIALOG=on
+
+# Enables (on) or disables (off) the non-interactive mode. If set to "on",
+# slackpkg will run without asking the user anything, and answer all questions
+# with DEFAULT_ANSWER. If you do any upgrades using this mode, you'll need to
+# run "slackpkg new-config" later to find and merge any .new files.
+BATCH=off
+
+# Default answer to slackpkg questions. Can be "y" or "n".
+DEFAULT_ANSWER=n
+
+# Slackpkg allows a template to "include" the packages specified in another
+# template. This option enables (on) or disables (off) the parsing of
+# any "#include" directives in template files. Default=on
+USE_INCLUDES=on
+
+# Enables a spinning bar as visual feedback when slackpkg is making its
+# internal lists and some other operations. Default=on
+SPINNING=on
+
+# Max number of characters that "dialog" command can handle.
+# If unset, this variable will be 19500 (the number that works on
+# Slackware 10.2)
+DIALOG_MAXARGS=139000
+
+#
+# The MIRROR is set from /etc/slackpkg/mirrors
+# You only need to uncomment the selected mirror.
+# Uncomment one mirror only.
+#