Pagina 1 di 2

spkg-pkgtools

Inviato: dom 24 gen 2010, 22:13
da tom
bazzicando tra i forum di zenwalk, salix, LQ ed altre info sul web sono venuto a conoscenza di questo:
http://spkg.megous.com/
praticamente a quanto ne ho capito è un fork di pkgtools, che ha un'interfaccia come pkgtool, usa gli stessi comandi IDENTICI (installpkg, upgradepkg, ecc..), salix ad esempio lo usa di default (piuttosto che il pkgtools classico). La mia domanda è: a che serve? quali migliorie apporta? qualcuno di voi ne ha esperienza?

Re: spkg-pkgtools

Inviato: dom 24 gen 2010, 22:49
da albatrosla
Immagino che l'unica differenza stia nel fatto che è scritto in #C mentre pkg-tools è un set di script in bash. A occhio e croce la soluzione dovrebbe essere più rapida, anche se sinceramente non penso che ci siano differenze abissali: dopotutto lo scripting per queste cose va molto bene e si appoggia comunque a programmi non interpretati per le funzioni principali (in primis la scompattazione).

Re: spkg-pkgtools

Inviato: dom 24 gen 2010, 23:03
da gohanz

Re: spkg-pkgtools

Inviato: lun 25 gen 2010, 14:49
da submax82
però mica male! adoro gli script però sembra che i miglioramenti siano notevoli:
comparing pkgtools to spkg here: installation is at least 4x faster, upgrade is 7x faster and remove is 30x faster on averange.
anche questa salix mi attira provarla, adotta soluzioni interessanti... manca solo un installazione da live-cd stile ubuntu

Re: spkg-pkgtools

Inviato: lun 25 gen 2010, 17:15
da tom
submax82 ha scritto:anche questa salix mi attira provarla, adotta soluzioni interessanti... manca solo un installazione da live-cd stile ubuntu
Si, io l'ho provata e devo dire che ne sono rimasto estremamente affascinato e consiglio vivamente di provarla. Rimango sempre con slackware tuttavia (perchè apprezzo ad esempio tool come slapt-get, ma non mi piace dipendere da essi), ma dò sempre un'occhiata al loro repository e lo uso quando ne ho bisogno.
Tornando in tema, oltre alla velocità qualcuno sa se c'è magari qualche funzionalità in più che aggiunge questo spkg-pkgtools che invece il classico pkgtools non ha?

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 11:15
da ZeroUno
Ho installato spkg. La velocità è impressionante, ma non mi funziona correttamente: in /var/log/packages ci mette il nome del file con tanto di estensione.

Uso slackware64; ho ricompilato spkg a partire dallo slackbuild su slacky.

Ciao
01

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 11:32
da submax82
ottima la questione velocità! per il problema estensione, ci sarebbe da chiedere a chi ha provato salix, mi sembra strano un bug così grosso...

sarebbe interessante vedere qualche test utilizzando time e un pacchetto a caso, installandolo e rimuovendolo con pkgtools standard e spkg-pkgtools per una comparazione dei tempi :-k

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 11:43
da ZeroUno
Per i banchmark l'autore ha messo un file dentro i sorgenti:

Codice: Seleziona tutto

# cat BENCHMARKS                                                              
BENCHMARK no.1                                                                                                                   
==============                                                                                                                   

This benchmark compares spkg with pkgtools and plain tar.

Hardware setup used:

CPU: Athlon Thunderbird 1GHz
MEM: 512MB SDRAM 133MHz     
HDD1: Seagate Baracuda 7200.9 80GB
HDD2: Samsung SP2002H 20GB 7200 rpm
OS: 'vanilla' linux 2.6.17.2, slackware-current

Benchmarking methods:

Before each 'install' benchmark clean ext2 filesystem will be created on
HDD2 using following command:                                           
  mke2fs /dev/hdb                                                       

Before each benchmarks caches will be flushed using:
  echo 2 > /proc/sys/vm/drop_caches                 

All services that could affect result of benchmarks will be stopped.

Install speed
~~~~~~~~~~~~~
Install/extract all official slackware-current (2006-07-11) packages
from the installation packages on HDD1 to the root directory on HDD2.

1)
  spkg -r /data -i */*.tgz

2)
  installpkg -root /data */*.tgz

3) 
  for f in */*.tgz ; do
    tar xf $f -C /data 
  done                 

Remove speed
~~~~~~~~~~~~
Remove all 'kde*' packages from the system. ;-)

1)
  spkg -r /data -d `spkg -r /data -l 'kde*'`

2)
  ROOT=/data removepkg `spkg -r /data -l 'kde*'`

Results
~~~~~~~

Install speed:
  1) real 12m 36s, user 2m 3s, sys 51s
  2) real 23m 41s, user 15m 31s, 5m 28s
  3) real 13m 17s, user 1m 46s, sys 56s

Remove speed:
  1) real 1m 29s, user 3.4s, sys 3.9s
  2) real 27m 49s, user 19m 46s, sys 6m 30s

BENCHMARK no.2
==============

Install Slackware 10.1.0

cmd: ipkg -r /root {a,ap,d,l,n}/*.tgz
time: 3m41s, 54s, 38s

cmd: installpkg -root /root {a,ap,d,l,n}/*.tgz
time: 16m4s, 7m42s, 3m11s

Upgrade to Slackware 10.2.0

cmd: upkg -r /root {a,ap,d,l,n}/*.tgz
time: 4m39s, 0m50s, 0m40s

cmd: ROOT=/root upgradepkg {a,ap,d,l,n}/*.tgz
time: 33m50s, 18m30s, 6m45s

Remove d series packages

cmd: ROOT=/root removepkg `cat d-list`
time: 6m6s, 3m43s, 1m3s

cmd: rpkg -r /root `cat pkglist`
time: 11.8s, 0.67s, 1.18s
Per quanto riguarda il bug, ho provato a vedere i sorgenti ma non sono riuscito a capirlo (per ora). Qualcun'altro l'ha provato?

Comunque la velocità si fa sentire soprattutto in eliminazione (e upgradepkg == removepkg+installpkg) che nei tool di slackware è troppo lenta.

Ciao
01

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 11:51
da ZeroUno
mmm

i tgz li installa correttamente.
il programa sta su i txz

Vediamo se riesco a fare una patch.

Ciao
01

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 12:08
da submax82
tempi incredibili! varrebbe la pena che Pat visioni il progetto :shock:

mi sembra strano che quelli di salix, non abbiano già notato e corretto il bug O_o

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 12:34
da ZeroUno
ecco la patch

Codice: Seleziona tutto

--- src/misc.c
+++ src/misc.c
@@ -34,6 +34,7 @@ gchar* parse_pkgname(const gchar* path, guint elem)
       tmp = tmp == NULL ? (gchar*)path : tmp+1;
       guint suffix_len =
         g_str_has_suffix(path, ".tgz") ||
+        g_str_has_suffix(path, ".txz") ||
         g_str_has_suffix(path, ".tlz") ||
         g_str_has_suffix(path, ".tar") ? 4 : 0;
       name = g_strndup(tmp, strlen(tmp) - suffix_len);
in pratica erano supportate solo le estensioni .tgz .tlz e .tar, nonostante decomprimesse correttamente le .txz

@gohanz
aggiungila al pacchetto

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 12:58
da submax82
ottimo ZeroUno, invia la patch al progetto!

intanto che ci sei potresti aggiungere anche il supporto a tutte le estensioni supportate dai pkgtools di slack 13.0, comprese quelle estese tipo tar.gz

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 13:02
da ZeroUno
TIP:

Codice: Seleziona tutto

# cd /sbin
# mv installpkg installpkg-slk
# mv removepkg removepkg-slk
# mv upgradepkg upgradepkg-slk
# cat <<EOF >installpkg
#!/bin/bash
spkg -i $*
exit $?
EOF
# cat <<EOF >removepkg
#!/bin/bash
spkg -d $*
exit $?
EOF
# cat <<EOF >upgradepkg
#!/bin/bash
spkg -u $*
exit $?
EOF
# chmod +x installpkg removepkg upgradepkg
Come logica ora dovrebbe poter funzionare con slackpkg.

Ciao
01

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 20:15
da gohanz
ZeroUno ha scritto:ecco la patch

Codice: Seleziona tutto

--- src/misc.c
+++ src/misc.c
@@ -34,6 +34,7 @@ gchar* parse_pkgname(const gchar* path, guint elem)
       tmp = tmp == NULL ? (gchar*)path : tmp+1;
       guint suffix_len =
         g_str_has_suffix(path, ".tgz") ||
+        g_str_has_suffix(path, ".txz") ||
         g_str_has_suffix(path, ".tlz") ||
         g_str_has_suffix(path, ".tar") ? 4 : 0;
       name = g_strndup(tmp, strlen(tmp) - suffix_len);
in pratica erano supportate solo le estensioni .tgz .tlz e .tar, nonostante decomprimesse correttamente le .txz

@gohanz
aggiungila al pacchetto
Fatto ho caricato il pacchetto aggiornato con la patch. :thumbright:

Re: spkg-pkgtools

Inviato: mer 27 gen 2010, 20:34
da Blallo
a me la patch non funziona :(