+------------------------------------------------------------------------
+r126 | ms | 2006-05-19 16:29:15 +0200 (Fr, 19 Mai 2006) | 3 lines
+
+Geändert:
+ * Überflüssige Programme aus der ISO genommen... Postfix, Stund usw...
+
------------------------------------------------------------------------
r125 | ms | 2006-05-18 19:33:39 +0200 (Do, 18 Mai 2006) | 5 lines
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# Verzeichnis von Pakman
+VERZ=$(get_conf.sh HOME)
+
+# Update Verzeichnis
+UP_DIR=$(get_conf.sh UP_DIR)
+
+# Verzeichnis mit nicht Installierten Paketen
+NIP_DIR=$(get_conf.sh NIP_DIR)
+
+# Verzeichnis mit Installierten Paketen
+IP_DIR=$(get_conf.sh ^IP_DIR)
+
+# Patchliste
+PATCH_LIST=$(get_conf.sh DEST_DIR)$(get_conf.sh LIST_NAME)
+
+# Zerlegte Listen
+ZERL_PATCH=$(get_conf.sh DEST_DIR)zerl_
+
+# Listen Verzeichnis
+LIST_DIR=$(get_conf.sh DEST_DIR)
+
+# Zerlegen der Liste erst jede Zeile fuer sich bei maximal 99998 Einträgen
+for (( i=1 ; i<99999 ; i++))
+do
+
+ patch=$(head -${i} ${PATCH_LIST} | tail -1)
+ echo $patch >${ZERL_PATCH}$i
+
+ if [ "${patch}" = "###EOF###" ]
+ then
+ rm ${ZERL_PATCH}$i
+ break
+ fi
+
+ if [ $i -ge 99999 ]
+ then
+ echo "Defektes Patchfile!!!"
+ /bin/rm -f ${ZERL_PATCH}*
+ exit 1
+ fi
+
+done
+
+# Errechnen wieviele Patches eingetragen sind
+(( i-- ))
+
+# Jedes Paket nach Name zerlegen
+for list in $(find $LIST_DIR -type f -name "zerl_*")
+do
+
+ # Zeile lesen Zeile
+ zeile=$(cat $list)
+
+ # Auf Namen reduzieren
+ name=${zeile%%-*}
+
+ # Auf Version reduzieren
+ vers=${zeile#*-}
+ vers=${vers%% *}
+
+ # Testen ob aktuelle Verson schon installiert ist
+ if [ -e ${IP_DIR}${name}-${vers} ]
+ then continue
+ else
+ # Testen ob eine ältere Version installiert ist
+ if [ -e ${IP_DIR}${name}-* ]
+ then
+ # Erst alte Update Vorschläge löschen
+ /bin/rm -f ${UO_DIR}${name}-*
+ /bin/touch ${UP_DIR}${name}-${vers}
+ else
+ # Erst alte Paket Vorschläge löschen
+ /bin/rm -f ${NIP_DIR}${name}-*
+ /bin/touch ${NIP_DIR}${name}-${vers}
+ fi
+
+ fi
+
+done
+
+# Löschen der Hilfslisten
+/bin/rm -f ${ZERL_PATCH}*
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# Conf File festlegen
+CONF_File=/opt/pakfire/pakfire.conf
+
+if [ -r $CONF_File ]
+then
+ STRI=$(grep $1 $CONF_File)
+ STRI=${STRI#*=}
+fi
+
+if [ -z $2 ]
+ then echo "$STRI"
+ else cat $STRI
+fi
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# Verzeichnis von Pakman
+VERZ=$(/bin/get_conf.sh HOME)
+
+# Version des IPFire ermitteln
+VERS=$(get_conf.sh VERS print)
+
+# Patch URLs ermitteln
+PURL=$(get_conf.sh PURL print)
+
+# Logfile festlegen
+LOG_file=$(get_conf.sh LOG)
+
+# Listenname
+LIST_NAME=$(get_conf.sh LIST_NAME)
+
+# Ziel Verzeichnis
+DEST_DIR=$(get_conf.sh DEST_DIR)
+
+# Host Tester
+HOST_TEST=$(get_conf.sh HOST_TEST)
+
+# Alle URLs durcharbeiten bis erste per ping erreichbar erreichbar
+url=$($HOST_TEST "$PURL")
+if [ -n $url ]
+ then URL=${url}
+fi
+
+# Falls URL nicht gesetzt wurde abbruch des Scripts
+if [ -z $URL ]
+ then echo "Kann keinen Patchserver finden">>$LOG_file
+ exit 1
+fi
+
+# Verzeichnis in Zielverzeichnis wechseln für Download
+cd $DEST_DIR
+
+# Pruefen ob bereits ein File vorhanden ist falls ja dann wird sie nun gelöscht
+if [ -f ${DEST_DIR}${LIST_NAME} ]
+ then rm ${DEST_DIR}${LIST_NAME}
+fi
+
+# Download der Liste
+if /usr/bin/wget -q $URL/${VERS}/${LIST_NAME} >/dev/null 2>&1
+ then
+ cd -
+ echo "Updateliste herunter geladen von $URL">>$LOG_file
+ exit 0
+ else
+ cd -
+ echo "Updateliste konnnte nicht herunter geladen werden von $URL">>$LOG_file
+ exit 1
+fi
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# Haupturl
+http=$(get_conf.sh H_MIRROR)
+
+# Ziel Verzeichnis
+dest=$(get_conf.sh HOME)
+
+# URL Zerleger
+URL_ZERL=$(get_conf.sh URL_ZERL)
+
+# Host Tester
+HOST_TEST=$(get_conf.sh HOST_TEST)
+
+# Testen ob Server erreichbar
+if ! $HOST_TEST $($URL_ZERL $http get_host) >/dev/null 2>&1
+ then exit 1
+fi
+
+# Verzeichnis wechseln
+cd $dest
+
+# Überprüfen ob File schon vorhanden ist
+if [ -e ${dest}$($URL_ZERL $http get_file) ]
+ then rm ${dest}$($URL_ZERL $http get_file)
+fi
+
+# File herunter laden
+if /usr/bin/wget -q $http >/dev/null 2>&1
+ then
+ cd -
+ exit 0
+ else
+ cd -
+ exit 1
+fi
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# Download Zielverzeichnis
+DOWN_DEST=$(get_conf.sh DOWN_DEST)
+
+# Mirror Liste
+PURL=$(get_conf.sh PURL print)
+
+# Logfile festlegen
+LOG_file=$(get_conf.sh LOG)
+
+# Version des IPFire ermitteln
+VERS=$(get_conf.sh VERS print)
+
+# Host Tester
+HOST_TEST=$(get_conf.sh HOST_TEST)
+
+# Alle URLs durcharbeiten bis erste per ping erreichbar erreichbar
+URL=$($HOST_TEST "$PURL")
+
+# Falls URL nicht gesetzt wurde abbruch des Scripts
+if [ -z $URL ]
+ then echo "Kann keinen Patchserver finden">>$LOG_file
+ exit 1
+fi
+
+# Verzeichnis in Zielverzeichnis wechseln für Download
+cd $DOWN_DEST
+
+# Download Source festlegen
+DOWN_SRC=${URL}/${VERS}/${1}.tar.gz
+
+# Paket Downloaden
+if /usr/bin/wget -q ${DOWN_SRC} >/dev/null 2>&1
+ then
+ cd -
+ exit 0
+ else
+ cd -
+ echo "Probleme mit dem Download ${DOWN_SRC}"
+ exit 1
+fi
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# Update Verzeichnis
+UP_DIR=$(get_conf.sh UP_DIR)
+
+# Installierten Verzeichnis
+IP_DIR=$(get_conf.sh IP_DIR)
+
+# Nicht Installierten Verzeichnis
+NIP_DIR=$(get_conf.sh NIP_DIR)
+
+# $1 = update|install|uninstall|reinstall
+# $2 = paketname
+
+case "$1" in
+
+ update)
+ if /bin/ls ${UP_DIR}${2}* >/dev/null 2>&1
+ then name=$(/bin/ls ${UP_DIR}${2}*)
+ name=$(/bin/basename $name)
+ echo $name
+ exit 0
+ else exit 1
+ fi
+ ;;
+ install)
+ if /bin/ls ${NIP_DIR}${2}* >/dev/null 2>&1
+ then name=$(/bin/ls ${NIP_DIR}${2}*)
+ name=$(/bin/basename $name)
+ echo $name
+ exit 0
+ else exit 1
+ fi
+ ;;
+ uninstall)
+ if /bin/ls ${IP_DIR}${2}* >/dev/null 2>&1
+ then name=$(/bin/ls ${IP_DIR}${2}*)
+ name=$(/bin/basename $name)
+ echo $name
+ exit 0
+ else exit 1
+ fi
+ ;;
+ reinstall)
+ if /bin/ls ${IP_DIR}${2}* >/dev/null 2>&1
+ then name=$(/bin/ls ${IP_DIR}${2}*)
+ name=$(/bin/basename $name)
+ echo $name
+ exit 0
+ else exit 1
+ fi
+ ;;
+ *) exit 2
+esac
+
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+
+echo $?
+echo $$
+echo $0
+echo $1
+echo $#
+echo $%
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# URL Zerleger
+URL_ZERL=$(get_conf.sh URL_ZERL)
+
+# Zählen wie viele Host übergeben wurden
+i=0
+for host in $1
+do
+ ((i++))
+done
+
+# Random Zahl auslesen
+rand=$RANDOM
+
+# Random Zahl herunterbrechen
+while [ $rand -gt $i ]
+do ((rand=rand/2))
+done
+
+# Versuche Randomserver zu erreichen
+i=0
+for host in $1
+do
+ ((i++))
+ if [ $i -eq $rand ]
+ then
+ if ping $($URL_ZERL $host get_host) -c 1 -s 0 >/dev/null 2>&1
+ then echo $host
+ exit 0
+ fi
+ fi
+ if [ $i -gt $rand ]
+ then
+ break
+ fi
+done
+
+for host in $1
+do
+ if ping $($URL_ZERL $host get_host) -c 1 -s 0 >/dev/null 2>&1
+ then
+ echo $host
+ exit 0
+ fi
+done
+
+exit 1
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+# Source Verzeichnis
+DOWN_DEST=$(get_conf.sh DOWN_DEST)
+
+# Logfile festlegen
+LOG_file=$(get_conf.sh LOG)
+
+# Programmpaket
+PAK_PROG=$(get_conf.sh PAK_PROG)
+
+# Abhängigkeitsliste
+PAK_ABH=$(get_conf.sh PAK_ABH)
+
+# Installations Script
+PAK_INST=$(get_conf.sh PAK_INST)
+
+# Uninstallations Script
+PAK_UNINST=$(get_conf.sh PAK_UNINST)
+
+# Cache Verzeichnis
+CACHE_DIR=$(get_conf.sh CACHE_DIR)
+
+# Überprüfen ob Hauptpaket angegeben wurde
+if [ -z $1 ]
+ then
+ echo "$(/bin/date) | $0 | kein Paketnamen angegeben">>$LOG_file
+ exit 1
+fi
+
+# Überprüfe ob Paket vorhanden
+if [ ! -e ${DOWN_DEST}${1}.tar.gz ]
+ then
+ echo "$(/bin/date) | $0 | Paket nicht vorhanden">>$LOG_file
+ exit 1
+fi
+
+# Überprüfe ob das Paket richtig geschnürt wurde
+tester=$(/bin/tar -tzf ${DOWN_DEST}${1}.tar.gz)
+if [ ! 0 -lt $(echo $tester | grep $PAK_PROG | wc -l) ]
+ then
+ echo "$(/bin/date) | $0 | Programm im Paket nichtvorhanden">>$LOG_file
+ exit 1
+fi
+if [ ! 0 -lt $(echo $tester | grep $PAK_ABH | wc -l) ]
+ then
+ echo "$(/bin/date) | $0 | Abhängigkeit im Paket nichtvorhanden">>$LOG_file
+ exit 1
+fi
+if [ ! 0 -lt $(echo $tester | grep $PAK_INST | wc -l) ]
+ then
+ echo "$(/bin/date) | $0 | Installations-Script im Paket nichtvorhanden">>$LOG_file
+ exit 1
+fi
+if [ ! 0 -lt $(echo $tester | grep $PAK_UNINST | wc -l) ]
+ then
+ echo "$(/bin/date) | $0 | Uninstallatoins-Script im Paket nichtvorhanden">>$LOG_file
+ exit 1
+fi
+
+# Cache leeren
+rm -f ${CACHE_DIR}$PAK_PROG
+rm -f ${CACHE_DIR}$PAK_ABH
+rm -f ${CACHE_DIR}$PAK_INST
+rm -f ${CACHE_DIR}$PAK_UNINST
+
+# Entpaken des Hauptpaketes
+/bin/tar -xzf ${DOWN_DEST}${1}.tar.gz -C $CACHE_DIR
+
+# Files neu benennen
+/bin/mv ${CACHE_DIR}$PAK_PROG ${CACHE_DIR}${1}_$PAK_PROG
+/bin/mv ${CACHE_DIR}$PAK_ABH ${CACHE_DIR}${1}_$PAK_ABH
+/bin/mv ${CACHE_DIR}$PAK_INST ${CACHE_DIR}${1}_$PAK_INST
+/bin/mv ${CACHE_DIR}$PAK_UNINST ${CACHE_DIR}${1}_$PAK_UNINST
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 Peter Schaelchli Für IPFire besteht KEINERLEI GARANTIE;#
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen; #
+############################################################################################
+
+protokoll=${1%%:*}
+
+rest=${1#*'//'}
+
+if grep @ <<EOF >/dev/null
+$rest
+EOF
+then
+# User heraus suchen
+user=${rest%%:*}
+rest=${rest#*:}
+pass=${rest%%@*}
+rest=${rest#*@}
+fi
+
+host=${rest%%/*}
+rest=${rest#*/}
+
+if grep / <<EOF >/dev/null
+$rest
+EOF
+then
+dir=${rest%/*}
+rest=${rest##*/}
+fi
+
+file=$rest
+
+case "$2" in
+ get_proto)
+ echo $protokoll
+ ;;
+ get_user)
+ echo $user
+ ;;
+ get_pass)
+ echo $pass
+ ;;
+ get_host)
+ echo $host
+ ;;
+ get_dir)
+ echo $dir
+ ;;
+ get_file)
+ echo $file
+ ;;
+ *) exit 1
+esac
+
+################################### EOF ####################################################
--- /dev/null
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006 by IPFire.org #
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen. #
+############################################################################################
+
+case "$1" in
+
+ renewlist) $(get_conf.sh HOME)/lib/get_mirror.sh
+ $(get_conf.sh HOME)/lib/get_list.sh
+ $(get_conf.sh HOME)/lib/check_pak.sh
+ ;;
+
+ *) echo -e "pakfire install [Paket]\npakfire update [Paket]\npakfiren remove [Paket]\npakfire renewlist"
+
+esac
+
+################################### EOF ####################################################