Autor Thema: installer patch welcher weniger Speicherplatz benötigt  (Gelesen 16956 mal)

hjt

  • Newbie
  • *
  • Beiträge: 37
    • Profil anzeigen
installer patch welcher weniger Speicherplatz benötigt
« am: Februar 02, 2011, 08:46:47 Nachmittag »
Hallo,

mein WNDR3700 bietet nur 30MB in /tmp
siehe hier: http://support.sundtek.com/index.php/topic,345.msg2368.html#msg2368

Ich hätte hier einen patch geschrieben, welcher dieses Problem (zumindest bei mir) löst.
Getestet hab ich openwrtmipsr2 und 64bit.

--- sundtek_installer_development.sh.org 2011-02-02 14:19:42.037701596 +0100
+++ sundtek_installer_development.sh 2011-02-02 14:19:20.660701582 +0100
@@ -6,11 +6,14 @@
 #
 
 export _LANG="EN DE"
-_SIZE=28569
+_SIZE=28419
+_CHKFILES="chk32bit  chk32bit23  chk64bit  chkarmoabi  chkarmsysv  chkmips  chkmipsel  chkmipsel2  chkmipselbcm  chkopenwrtmipsr2  chkppc32  chkppc64"
 
 dialogbin=`which dialog >/dev/null 2>&1`
 sttybin=`which stty >/dev/null 2>&1`
 usedialog=0
+tarFiles=""
+appdir=$(pwd)
 
 # using blacklist for opensource driver is recommended since the opensource
 # driver is not stable and failed even our basic tests with a full system
@@ -186,23 +189,15 @@
 }
 
 extract_driver() {
- echo "Extracting driver ..."
  app=$0
-        dd if=${app} of=installer.tar.gz skip=1 bs=${_SIZE} 2> /dev/null
 
-        if [ ! -f installer.tar.gz ]; then
-           sed '1,796d' ${app} > /tmp/.sundtek/installer.tar.gz
+ cd $extractDir
+ dd if=${appdir}/${app} skip=1 bs=${_SIZE} 2> /dev/null | gzip -dc | tar xf - ${tarFiles}
+
+ if [ ! -f chk64bit ]; then
+           sed '1,790d' ${appdir}/${app} | gzip -dc | tar xf - ${tarFiles}
         fi
 
- if [ "$busyboxfound" = "1" ]; then
- tar xzf installer.tar.gz 2>/dev/null 1>/dev/null
- if [ "$?" = "1" ]; then
- gzip -d installer.tar.gz
- tar xf installer.tar
- fi
- else
- tar xzmf installer.tar.gz 2>/dev/null 1>/dev/null
- fi
  echo "done."
 }
 
@@ -292,23 +287,13 @@
  
  mkdir -p /tmp/.sundtek
 
- dd if=${app} of=/tmp/.sundtek/installer.tar.gz skip=1 bs=${_SIZE} 2> /dev/null
-        if [ ! -f /tmp/.sundtek/installer.tar.gz ]; then
-           echo "extracting..."
-           sed '1,796d' ${app} > /tmp/.sundtek/installer.tar.gz
-        fi
+ # extract chk* files
+ echo -n "extract chk files ... "
+ extractDir="/tmp/.sundtek"
+ tarFiles=${_CHKFILES}
+ extract_driver
 
- cd /tmp/.sundtek
- if [ "$busyboxfound" = "1" ]; then
- tar xzf installer.tar.gz 2>/dev/null 1>/dev/null
- if [ "$?" = "1" ]; then
- gzip -d installer.tar.gz
- tar xf installer.tar
- fi
- else
- tar xzmf installer.tar.gz 2>/dev/null 1>/dev/null
- fi
-
+ # checking system
  echo -n "checking system... "
         dm500hd=`grep -c 'dm500hd$' /proc/cpuinfo`
         dm800=`grep -c 'dm800$' /proc/cpuinfo`
@@ -544,6 +529,15 @@
              fi
   fi
  fi
+
+ # extract only required system archive
+ echo -n "extract ${SYSTEM} archive ... "
+ extractDir="/tmp/.sundtek"
+ tarFiles=${SYSTEM}/installer.tar.gz
+ rm -f ${extractDir}/chk*
+ extract_driver
+
+ # install driver
  echo "installing..."
  if [ "$vusolo" = "1" ]; then
           cd /
@@ -767,7 +761,7 @@
 case $1 in
    -u) checkperm; uninstall_driver;;
    -h) print_help;;
-   -e) extract_driver;;
+   -e) extractDir="."; echo -n "Extracting driver ... "; extract_driver;;
    -nolirc) NOLIRC=1; INSTALLDRIVER=1;;
    -easyvdr) AUTO_INST=1; CHECKPERM=1; INSTALLDRIVER=1;;
    -service) NOPREL=1; INSTALLDRIVER=1;;

Download-Link: hjt_installer_development.sh
http://www.speedshare.org/download.php?id=5077E86811

Download-Link: hjt_installer_development.diff
http://www.speedshare.org/download.php?id=634168DB11

Zitat
./sundtek_installer_development.sh
Busybox installation

Welcome to the Sundtek linux driver setup

Legal notice:
This software comes without any warranty, use it at your own risk

Do you want to continue [Y/N]:
Nutzungsbedingungen:
Sundtek übernimmt keinerlei Haftung für Schäden welche eventuell durch
das System oder die angebotenen Dateien entstehen können.

Wollen Sie fortfahren [J/N]:
J
stopping old driver instance...
unpacking...
extract chk files ... done.
checking system... Netgear WNDR3700 detected
extract openwrtmipsr2 archive ... done.
installing...
Starting driver...
switching off loglevel
Enabling network support
done.


root@OpenWrt:/tmp# /tmp/opt/bin/mediasrv --build
Build date: Feb  2 2011


root@OpenWrt:/tmp# /tmp/opt/bin/mediaclient  -e
**** List of Media Hardware Devices ****
device 0: [ Sundtek MediaTV Pro]  DVB-C, DVB-T, ANALOG-TV, FM-RADIO, REMOTE-CONTROL, OSS-AUDIO, RDS
  [DVB-C]:
     FRONTEND: /dev/dvb/adapter0/frontend0
     DVR: /dev/dvb/adapter0/dvr0
     DMX: /dev/dvb/adapter0/demux0
  [DVB-T]:
     FRONTEND: /dev/dvb/adapter0/frontend0
     DVR: /dev/dvb/adapter0/dvr0
     DMX: /dev/dvb/adapter0/demux0
  [ANALOG-TV]:
     VIDEO0: /dev/video0
     VBI0: /dev/vbi0
  [FM-RADIO]:
     RADIO0: /dev/radio0
     RDS: /dev/rds0
  [REMOTECONTROL]:
     INPUT0: /dev/mediainput0
  [OSS]:
     OSS0: /dev/dsp0

Netgear WNDR3700 installer für openwrt jffs2
http://support.sundtek.com/index.php/topic,345.msg3096.html#msg3096

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8604
    • Profil anzeigen
Re:installer patch welcher weniger Speicherplatz benötigt
« Antwort #1 am: Februar 02, 2011, 09:16:54 Nachmittag »
danke für das Update, wir werden es jedoch nur hier im Forum belassen.

Der Installer ist eine sehr verzwickte Angelegenheit, da auf einigen Systemen einfach nicht alle Befehle vorhanden sind oder teilweise auch einfach nur Flags nicht vorhanden sind.

Wir arbeiten derzeit ebenfalls an einem iPad Client und werden uns die Installationsroutine noch etwas genauer ansehen bzw. was wir hier so machen können.

Das "umbiegen" des temporären Installpfades wäre wohl die einfachste Lösung.
« Letzte Änderung: Februar 02, 2011, 09:19:01 Nachmittag von Sundtek »
Failure is a good thing! I'll fix it

hjt

  • Newbie
  • *
  • Beiträge: 37
    • Profil anzeigen
Re:installer patch welcher weniger Speicherplatz benötigt
« Antwort #2 am: Februar 02, 2011, 09:56:44 Nachmittag »
danke für das Update, wir werden es jedoch nur hier im Forum belassen.
...
auf das hätte ich eigentlich geachtet, es ist kein Befehl hinzugekommen.
Eher Optionen weg.
Wichtig wäre nur, dass auf jeden system gzip installiert ist.
Kann ich natürlich nicht testen. Aber egal.

Das mit iPad klingt verdammt gut.
Ich hab nämlich eins  :)

lg
Horst
Netgear WNDR3700 installer für openwrt jffs2
http://support.sundtek.com/index.php/topic,345.msg3096.html#msg3096