Update:
authorms <ms@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Sat, 26 Aug 2006 08:42:48 +0000 (08:42 +0000)
committerms <ms@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Sat, 26 Aug 2006 08:42:48 +0000 (08:42 +0000)
  * Pakfire!
Fixes:
  * ConnScheduler

git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@257 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8

13 files changed:
config/cfgroot/header.pl
doc/ChangeLog
html/cgi-bin/connscheduler.cgi
langs/de/cgi-bin/de.pl
langs/en/cgi-bin/en.pl
src/pakfire/lib/check_pak.sh
src/pakfire/lib/get_list.sh
src/pakfire/lib/get_mirror.sh
src/pakfire/lib/get_pak.sh
src/pakfire/lib/install_pak.sh [new file with mode: 0644]
src/pakfire/lib/resolv_deps.sh [new file with mode: 0644]
src/pakfire/pakfire
src/pakfire/pakfire.conf

index a8a8e4a..a29e8a9 100644 (file)
@@ -257,9 +257,9 @@ sub genmenu {
                                 'enabled' => 1,
                                 };
     $subnetwork->{'50.scheduler'} = {
-                                'caption' => $tr{'scheduler'},
+                                'caption' => $tr{'connscheduler'},
                                 'uri' => '/cgi-bin/connscheduler.cgi',
-                                'title' => "$tr{'scheduler'}",
+                                'title' => "$tr{'connscheduler'}",
                                 'enabled' => 1,
                                 };
     $subnetwork->{'60.hosts'} = {
@@ -396,7 +396,7 @@ sub genmenu {
                                'enabled' => 1
                                };
     $sublogs->{'60.urlfilter'} = {
-                               'caption' => $tr{'urlfilter log'},
+                               'caption' => $tr{'urlfilter logs'},
                                'uri' => '/cgi-bin/logs.cgi/urlfilter.dat',
                                'title' => "$tr{'urlfilter log'}",
                                'enabled' => 1,
index 4fd15a0..333c5af 100644 (file)
@@ -1,4 +1,15 @@
 ------------------------------------------------------------------------
+r256 | ms | 2006-08-23 23:55:46 +0200 (Wed, 23 Aug 2006) | 8 lines
+
+Hinzugefuegt:
+  * Copyrighthinweise der externen Addons,
+    die verloren gegangen sind.
+  HIERMIT ERFUELLT IPFIRE DIE GPLv2 ZU 100%.
+  GARANTIERT.
+(Diese Schritte waren noetig, da einige Entwickler
+es fuer noetig hielten, dass die Copyrighthinweise
+in jeder Datei zu finden sind.)
+------------------------------------------------------------------------
 r255 | ms | 2006-08-23 21:19:22 +0200 (Wed, 23 Aug 2006) | 4 lines
 
 Update:
index e99c4fb..f661b38 100644 (file)
@@ -23,7 +23,7 @@ require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
-require '/var/ipcop/connscheduler/lib.pl';
+require '/var/ipfire/connscheduler/lib.pl';
 
 my $buttontext = $Lang::tr{'add'};
 my $hiddenvalue = 'add';
index 751cc8a..c527e9b 100644 (file)
 'urlfilter export error' => 'Kann Exportdatei nicht erstellen',
 'urlfilter update notification' => 'Update-Benachrichtigung!',
 'urlfilter update information' => 'Eine aktualisierte Version steht zum Download bereit. Besuchen Sie <a href="http://www.urlfilter.net" target="_blank">http://www.urlfilter.net</a> für weitere Informationen.',
+'urlfilter logs' => 'URL-Filter-Logdateien',
 'display webinterface effects' => 'Überblendeffekte einschalten',
 'outgoing firewall' => 'Ausgehende Firewall',
 'mbmon graphs' => 'mbmon-Diagramme',
index ea7f88b..e6beefc 100644 (file)
 'urlfilter export error' => 'Unable to create export file',
 'urlfilter update notification' => 'Update notification!',
 'urlfilter update information' => 'There is an updated version available for download. Visit <a href="http://www.urlfilter.net" target="_blank">http://www.urlfilter.net</a> for more information.',
+'urlfilter logs' => 'URL filter logs',
 'display webinterface effects' => 'Activate effects',
 'outgoing firewall' => 'Outgoing Firewall',
 'mbmon graphs' => 'mbmon Graphs',
index 03f6cc8..2339d6a 100644 (file)
@@ -60,7 +60,7 @@ do
 done
 
 # Löschen der Hilfslisten
-/bin/rm -f ${ZERL_PATCH}*
+/bin/rm -f ${ZERL_PATCH}* >/dev/null 2>&1
 
 }
 
index 968474d..dc2ef89 100644 (file)
@@ -6,27 +6,29 @@
 
 get_list () {
 
-# Alle URLs durcharbeiten bis erste per ping erreichbar erreichbar
-url=$(. $HOST_TEST "$PURL")
-if [ -n $url ]
- then URL=${url}
+PURL=`cat $CACHE_DIR/$SERVERS_LIST`
+
+if [ "$PURL" ]; then
+  url=$(. $HOST_TEST "$PURL")
+  if [ -n $url ]
+   then URL=${url}
+  fi
+else
+  echo "No server-address available. Exiting..."
+  exit 1
 fi
 
-# Falls URL nicht gesetzt wurde abbruch des Scripts
 if [ -z $URL ]
- then pakfire_logger "Kann keinen Listenserver finden."
+ then pakfire_logger "Cannot find a working mirror."
   return 1
 fi
 
-# Verzeichnis in Zielverzeichnis wechseln für Download
 cd $PAKHOME/cache
 
-# Pruefen ob bereits ein File vorhanden ist - falls ja, dann wird sie nun gelöscht
 if [ -f $PACKAGE_LIST ]
  then rm $PACKAGE_LIST
 fi
 
-# Download der Liste
 if /usr/bin/wget $URL/$PACKAGE_LIST > /dev/null 2>&1
  then
   cd -
index dd7608d..731bc99 100644 (file)
@@ -5,27 +5,14 @@
 
 get_mirror() {
 
-# Testen, ob der Server erreichbar ist
-#if ! $HOST_TEST $($PAKHOME/lib/url_zerl.sh $H_MIRROR get_host) >/dev/null 2>&1
-# then return 1
-#fi
-
-# Ins Cache-Verzeichnis wechseln
 cd $PAKHOME/cache
 
-# Überprüfen ob File schon vorhanden ist
 if [ -e $PAKHOME/cache/$SERVERS_LIST ]
  then rm -f $PAKHOME/cache/$SERVERS_LIST
 fi
 
-# File herunterladen
 if /usr/bin/wget -q $H_MIRROR >/dev/null 2>&1
  then
-  COUNT=0
-  for i in `cat $SERVERS_LIST`; do
-    COUNT=$(($COUNT+1))
-  done
-  #. $PAKHOME/lib/test_host.sh `cat $SERVERS_LIST`
   cd -
   return 0
  else
index eb9f189..ff77e98 100644 (file)
@@ -6,31 +6,38 @@
 
 get_pak() {
 
-# 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 pakfire_logger "Kann keinen Patchserver finden"
+ then pakfire_logger "Cannot find a mirror."
   exit 1
 fi
 
-# Verzeichnis in Zielverzeichnis wechseln für Download
-cd $CACHE_DIR
-
 . $DB_DIR/$1
 
 FILE="$1-${VER}_${IPFVER}.tar.gz"
 
-# Paket Downloaden
-if /usr/bin/wget $URL/packages/$FILE{,.md5} >> $LOG 2>&1
- then
-  cd -
-  exit 0
- else
-  cd -
-  pakfire_logger "Cannot download $URL/packages/$FILE"
-  exit 1
+if [ ! -f $CACHE_DIR/$FILE ]; then
+  cd /var/tmp
+  pakfire_logger "Downloading $FILE from $URL..."
+  if /usr/bin/wget $URL/packages/$FILE{,.md5} >> $LOG 2>&1
+   then
+      if [ "`md5sum $FILE`" = "`cat ${FILE}.md5`" ]; then
+      mv -f /var/tmp/$FILE{,.md5} $CACHE_DIR
+      pakfire_logger "MD5 sum OK!"
+    else
+      pakfire_logger "Wrong MD5 sum in $FILE."
+      rm -f /var/tmp/$FILE{,.md5}
+      exit 1
+    fi
+    cd -
+   else
+    cd -
+    pakfire_logger "Cannot download $URL/packages/$FILE"
+    exit 1
+  fi
+else
+  pakfire_logger "No need to download $FILE."
 fi
 
 }
diff --git a/src/pakfire/lib/install_pak.sh b/src/pakfire/lib/install_pak.sh
new file mode 100644 (file)
index 0000000..d716b33
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006  by IPFire.org                                                #
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen.      #
+############################################################################################
+
+install_pak() {
+
+cd $CACHE_DIR
+
+. $DB_DIR/$1
+FILE="$1-${VER}_${IPFVER}.tar.gz"
+
+pakfire_logger "Unpaking $FILE..."
+mkdir $TMP_DIR/$1
+tar xfz $CACHE_DIR/$FILE -C $TMP_DIR/$1
+
+$PAKHOME/lib/resolv_deps.sh $TMP_DIR/$1/$DEPS
+
+cd $TMP_DIR/$1
+$TMP_DIR/$1/$INSTALL
+
+cp -f ROOTFILES $IP_DIR/$1
+
+}
+
+################################### EOF ####################################################
diff --git a/src/pakfire/lib/resolv_deps.sh b/src/pakfire/lib/resolv_deps.sh
new file mode 100644 (file)
index 0000000..be0417f
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+############################################################################################
+# Version 0.1a, Copyright (C) 2006  by IPFire.org                                                #
+# IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen.      #
+############################################################################################
+
+. /etc/pakfire.conf
+
+for i in `cat $1`; do
+       if [ ! -f $IP_DIR/$i ]; then
+               pakfire_logger "Dependency $i is not installed yet. Trying..."
+               $PAKHOME/pakfire install $i
+       else
+               pakfire_logger "Dependency $i is already installed."
+       fi
+done
index c06bad0..f0ef46e 100644 (file)
@@ -5,27 +5,31 @@
 ############################################################################################
 
 . /etc/pakfire.conf
-. $PAKHOME/lib/get_mirror.sh
-. $PAKHOME/lib/get_list.sh
-. $PAKHOME/lib/check_pak.sh
-. $PAKHOME/lib/get_upgrade.sh
-. $PAKHOME/lib/get_base.sh
-. $PAKHOME/lib/get_pak.sh
 
 case "$1" in
        update)
+                       . $PAKHOME/lib/get_mirror.sh
+                       . $PAKHOME/lib/get_list.sh
+                       . $PAKHOME/lib/check_pak.sh
                        get_mirror
                        get_list
                        check_pak
        ;;
 
        upgrade)
+                       . $PAKHOME/lib/get_upgrade.sh
+                       . $PAKHOME/lib/get_base.sh
                        get_upgrade
                        get_base
        ;;
 
        install)
+               . $PAKHOME/lib/get_pak.sh
+               . $PAKHOME/lib/install_pak.sh
                case "$2" in
+                       "")
+                               pakfire_logger "No package name given. Exiting..."
+                       ;;
                        BASE-*)
                                echo $2
                        ;;
@@ -35,6 +39,8 @@ case "$1" in
                                                pakfire_logger "$2 is already installed on this system."
                                        else
                                                get_pak $2
+                                               install_pak $2
+                                               rm -rf $TMP_DIR/*
                                        fi
                                else
                                        pakfire_logger "There is no paket with this name: $2"
@@ -43,6 +49,9 @@ case "$1" in
                esac
        ;;
 
+       clean)
+               rm -rf $CACHE_DIR/* $TMP_DIR/* $DB_DIR/*
+       ;;
        *)
                echo -e "IPFire - Pakfire $PAKVER:"
                echo -e "===\t===\t===\t===\t===\t===\t===\t==="
index 7c59ae7..2cb9c5d 100644 (file)
@@ -15,7 +15,7 @@ PACKAGE_LIST=packages_list.txt
 H_MIRROR=http://download.ipfire.eu/servers/$SERVERS_LIST
 
 # URL Mirrorfile
-PURL=`cat /opt/pakfire/cache/$SERVERS_LIST`
+PURL=`cat /opt/pakfire/cache/$SERVERS_LIST 2>/dev/null`
 
 # LOG_file
 LOG=/var/log/pakfire.log
@@ -43,19 +43,19 @@ HOST_TEST=$PAKHOME/lib/test_host.sh
 
 # Paket Filenamen festlegen
 # Das eigentliche Paket
-PAK_PROG=prog.tar.gz
+PAK_FILES=files.tgz
 # Abhängigkeits Liste
-PAK_ABH=abh.txt
+DEPS=depends.txt
 # Installer Script
-PAK_INST=install.sh
+INSTALL=install.sh
 # Uninstaller Script
-PAK_UNINST=uninstall.sh
+UNINSTALL=uninstall.sh
 
 # Cacheverzeichnis
 CACHE_DIR=/opt/pakfire/cache/
 
-pakfire_logger() {
-
-echo "`date -u '+%b %e %T'` $*" | tee -a $LOG
+### DO NOT CHANGE ANYTHING AFTER THIS LINE!!! ###
 
+pakfire_logger() {
+       echo "`date -u '+%b %e %T'` $*" | tee -a $LOG
 }
\ No newline at end of file