[TOOL] slackpkg+ released

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

[TOOL] slackpkg+ released

Messaggio da ZeroUno »

Slackpkg+ è un progetto che aggiunge a slackpkg la possibilità di aggiungere repository di terze parti.


Rilasciata la 1.0rc1
pacchetto
sorgenti
sotto github
su sourceforge

Testata con i seguenti repository:

Supports GPG
slackpkgplus: http://slakfinder.org/slackpkg+/
multilib: http://taper.alienbase.nl/mirrors/peopl ... .0,current}/
alienbob: http://taper.alienbase.nl/mirrors/peopl ... x86,x86_64}/
ktown: http://taper.alienbase.nl/mirrors/alien ... x86,x86_64}/
restricted: http://taper.alienbase.nl/mirrors/peopl ... x86,x86_64}/
slacky: http://repository.slacky.eu/slackware{,64}-{13.37,14.0}/
zerouno: http://www.z01.eu/repo-slack/slackware64-current/
mled: http://www.microlinux.fr/slackware/MLED ... 32,64}bit/
mles: http://www.microlinux.fr/slackware/MLES ... 32,64}bit/
mles: http://www.microlinux.fr/slackware/MLWS ... 32,64}bit/
msb: http://slackware.org.uk/msb/14.0/1.6/{x86,x86_64}/
slackers: http://www.slackers.it/repository/

Does NOT supports GPG
salixos(*): http://download.salixos.org/{i486,x86_64}/{13.37,14.0}/
salixext: http://people.salixos.org/ralvex/reposi ... 6_64/14.0/
rlworkman: http://rlworkman.net/pkgs/{13.37,14.0}/
slackel: http://www.slackel.gr/repo/{i486,x86_64}/current/

v. anche linuxquestions e alienbob blog


======= Post Originale =======

Ho fatto un plugin per slackpkg che aggiunge il supporto per i repository slacky.eu

Si, va a svantaggio di slackyd, lo so, ma volevo uno strumento unico per installazione e aggiornamento (e l'aggiornamento di slackware non lo faccio con slackyd), anche se mi perdo la gestione delle dipendenze.

La decisione del nome (perchè probabilmente lo pacchettizzerò) è stata difficile (magari aiutatemi):

slackpkg+
slackypkg
slackpkg-slacky

fondamentalmente si tratta di un plugin per pacchetti slacky (-Nsl-), quindi:
slackpkg+sl

Non è invasivo in quanto non va fatta alcuna modifica ai file di slackpkg.
Ecco il plugin:
/etc/slackpkg/slackypkg.conf:

Codice: Seleziona tutto

# Set to 'off' to disable slacky plugin
SLACKY=on

# This overwrite PRIORITY of slackpkg.conf
SLACKYPRIORITY=( patches %PKGMAIN extra pasture testing slacky )
# Use this if you want to overwrite slackware packages with slacky packages
#SLACKYPRIORITY=( slacky patches %PKGMAIN extra pasture testing )


# Please uncomment a mirror
#SLACKYMIRROR=http://repository.slacky.eu
SLACKYMIRROR=http://darkstar.ist.utl.pt/slackware/addon/slacky

SLACKVER=auto
#SLACKVER=slackware-13.37
#SLACKVER=slackware64-13.37
#SLACKVER=slackware-13.1
#SLACKVER=slackware64-13.1
/usr/libexec/slackpkg/functions.d/slacky-functions.sh:

Codice: Seleziona tutto

if [ -e /etc/slackpkg/slackypkg.conf ];then
  . /etc/slackpkg/slackypkg.conf
fi
if [ "$SLACKY" = "on" ];then
  # If CHECKGPG is "on", the system will FAIL the GPG signature of slacky repository
  # Use MD5 check instead
  CHECKGPG=off

  for i in 0 1 2 3 4 5 ; do
    if [ "${SLACKYPRIORITY[$i]}" = "%PKGMAIN" ]; then
      PRIORITY[$i]=$PKGMAIN
    else
      PRIORITY[$i]=${SLACKYPRIORITY[$i]}
    fi
  done

  if [ "$SLACKVER" = auto ];then
    SLACKVER=slackware$(ls /var/log/packages/aaa_base-*|grep -o 64)-$(ls /var/log/packages/aaa_base-*|sed -r 's/.*aaa_base-([^-]+)-.*/\1/')
  fi
  SLACKYSOURCE=$SLACKYMIRROR/$SLACKVER/

  function getfile(){
    local URLFILE
    URLFILE=$1
    URLFILE=`echo $1|sed -r 's#/(development|games|graphic|hardware|libraries|multimedia|network|security|system|utilities)/#/slacky/\1/#' `
    URLFILE=`echo $URLFILE|sed "s#^.*/slacky/#$SLACKYSOURCE#"`
    echo -e "\t\t\tDownloading $URLFILE..."
    $DOWNLOADER $2 $URLFILE
    if [ $(basename $1) = "CHECKSUMS.md5" ];then
      $DOWNLOADER $2-slacky $SLACKYSOURCE/CHECKSUMS.md5
      egrep -e ^[a-f0-9]{32} $2-slacky >> $2
    fi
    if [ $(basename $1) = "ChangeLog.txt" ];then
      $DOWNLOADER $2-slacky $SLACKYSOURCE/ChangeLog.txt
      head -1 $2-slacky >> $2
    fi
  }


  if [ -e /var/lib/slackpkg/pkglist ];then
    tail -1 /var/lib/slackpkg/pkglist|grep -q ^slacky
    if [ $? -ne 0 ];then
      sed -r -i.bck \
        's/^(development|games|graphic|hardware|libraries|multimedia|network|security|system|utilities)/slacky/' \
        /var/lib/slackpkg/pkglist
    fi
  fi

fi

Codice: Seleziona tutto

# chmod +x /usr/libexec/slackpkg/functions.d/slacky-functions.sh
# slackpkg update
# slackpkg upgrade-all
┌─────────────────────────────upgrade────────────────────────────────┐ 
│ Choose packages to upgrade:                                        │ 
│ ┌────────────────────────────────────────────────────────────────┐ │ 
│ │             [*] mozilla-firefox-5.0-x86_64-1.txz               │ │ 
│ │             [*] pinfo-0.6.9-x86_64-1sl.txz                     │ │ 
│ │             [*] slackyd-1.0-x86_64-1sl.txz                     │ │ 
│ │             [*] spkg-1.0rc13-x86_64-3sl.txz                    │ │ 
├─└────────────────────────────────────────────────────────────────┘─┤ 
│                   <  OK  >          <Cancel>                       │ 
└────────────────────────────────────────────────────────────────────┘

Ovviamente, come tutti i software, non è bug esente ;-)

Aspetto feedback (prima di pacchettizzarlo)

Ciao
01
Ultima modifica di ZeroUno il mer 13 lug 2011, 15:01, modificato 1 volta in totale.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

hashbang
Packager
Packager
Messaggi: 2020
Iscritto il: ven 4 giu 2010, 10:27
Nome Cognome: Luca De Pandis
Distribuzione: macOS/OpenBSD
Località: Lecce/Bergamo

Re: slackpkg+sl

Messaggio da hashbang »

Che ne diresti di inserire nel file di configurazione la possibilità di evitare la sostituzione dei pacchetti ufficiali di slackware?

Io ad esempio uso slackyd proprio perchè nelle configurazioni scelgo di non sovrascrivere pacchetti ufficiali della distribuzione, in questo modo usufruisco del repository, ma evito sostituzioni.

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: slackpkg+sl

Messaggio da ZeroUno »

mmm. non so se sia fattibile ma ci provo.


Edit:
ora che ci penso si potrebbe semplicemente mettere in /etc/slackpkg/blacklist i pacchetti interessati

Edit2:
forse non è necessario niente.
slackpkg.conf ha scritto:# 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 )
Edit3:
Confermo! e non esiste la possibilità di sovrascrivere se non cambiando la PRIORITY di cui sopra (forse). Faccio qualche prova.

Codice: Seleziona tutto

# grep audacious-plugins /var/lib/slackpkg/pkglist
slackware64 audacious-plugins 2.4.4 x86_64 1 audacious-plugins-2.4.4-x86_64-1 ./slackware64/xap txz
slacky audacious-plugins 2.5.1 x86_64 1sl audacious-plugins-2.5.1-x86_64-1sl ./multimedia/audacious-plugins/2.5.1 txz

# ls -l /var/log/packages/audacious-plugins*
-rw-r--r-- 1 root root 20986 Mar 13 11:13 /var/log/packages/audacious-plugins-2.4.4-x86_64-1

# slackpkg upgrade audacious-plugins

Checking local integrity... DONE
Looking for audacious-plugins in package list. Please wait... DONE

No packages match the pattern for upgrade. Try:

        /usr/sbin/slackpkg install|reinstall 
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: slackpkg+sl

Messaggio da ZeroUno »

Ho modificato il codice nel primo post aggiungendo la possibilità di sostituire i pacchetti ufficiali con quelli di slacky:

slackypkg.conf:
SLACKYPRIORITY=( slacky patches %PKGMAIN extra pasture testing )

Codice: Seleziona tutto

# slackpkg upgrade-all
┌─────────────────────────────upgrade────────────────────────────────┐  
│ Choose packages to upgrade:                                        │  
│ ┌────────────────────────────────────────────────────────────────┐ │  
│ │          [*] audacious-2.5.1-x86_64-2sl.txz                    │ │  
│ │          [*] audacious-plugins-2.5.1-x86_64-1sl.txz            │ │  
│ │          [*] libmowgli-0.9.50-x86_64-1sl.txz                   │ │  
│ │          [*] libusb-1.0.6-i486-1.txz                           │ │  
│ │          [*] mozilla-firefox-5.0-x86_64-1.txz                  │ │  
│ │          [*] pinfo-0.6.9-x86_64-1sl.txz                        │ │  
│ │          [*] slackyd-1.0-x86_64-1sl.txz                        │ │  
│ │          [*] spkg-1.0rc13-x86_64-3sl.txz                       │ │  
├─└────────────────────────────────────────────────────────────────┘─┤  
│                   <  OK  >          <Cancel>                       │  
└────────────────────────────────────────────────────────────────────┘
con
SLACKYPRIORITY=( patches %PKGMAIN extra pasture testing slacky )
lo screenshoot è quello nel primo post.
Utile può essere:
SLACKYPRIORITY=( patches %PKGMAIN slacky extra pasture testing )
che sostituisce i pacchetti in /extra ma non quelli in /slackware
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: slackpkg+sl

Messaggio da ZeroUno »

Ho ripreso il progetto in mano ed ho fatto la seconda versione.
http://files.z01.eu/pkgs/slackpkg+/

Ora è possibile inserire più di un repository.
E' una beta version.
Presenta un paio di bug noti:
1) se il repository non ha il MANIFEST.bz2 da qualche errore in slackpkg update (solamente) ma va avanti.
2) se il repository ha due pacchetti con lo stesso nome (p.e. contiene sia la versione a 32 che a 64bit o slackware 13.1&13.37&current di uno stesso pacchetto), allora slackpkg prende in considerazione solo il primo.

Ho configurato solo due repository: slacky 64bit e alienbob.
E' possibile modificarli o aggiungerli da /etc/slackpkg/slackpkgplus.conf
Una lunga lista di repository è prelevabile da http://slakfinder.org/
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: slackpkg+sl

Messaggio da darkstaring »

Ciao Zerouno :)
Ho appena scaricato il tuo super addon e sono curioso di provarlo... :D
Ho scaricato ed installato sia slackpkg+-0.2beta-noarch-1mt.txz che slackpkg+sl-0.1-noarch-1.txz
ma dopo aver eseguito slackpkg update & upgrade-all
non mi vengono mostrati ancora i pacchetti di alien..
Devo fare qualcosa io?

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: slackpkg+sl

Messaggio da ZeroUno »

upgrade-all esegue l'aggiornamento di pacchetti già installati.
Tu hai pacchetti di alien da aggiornare?
Considera poi che l'ordine di ricerca é prima slackware, poi slacky e poi alien. Se un pacchetto é presente in slacky non mostra quello di alien (l'ordine si cambia dal file di configurazione).
Il reposirory di alien inoltre presenta un problema, cioé che ha pacchetti i486 e x86_64 e 13.0 13.1... mischiati e slackpkg prende solo uno.

Se non sarò carico di lavoro dopo vedo che posso inventarmi.


La versione 0.1 invece supporta solo slacky.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
giberg
Linux 4.x
Linux 4.x
Messaggi: 1282
Iscritto il: mer 21 set 2005, 17:28
Nome Cognome: Gianni
Slackware: current64
Kernel: 3.7.1
Desktop: 4.8.5
Località: S. Biagio di Callalta (TV)

Re: slackpkg+sl

Messaggio da giberg »

Riporto su questo topic perché Alien Bob
su Linuxquestions
ha provato delle piccole modifiche al tuo progetto:
"I am now able to manage updates for Slackware packages, my own repository packages and the multilib packages."
:thumbright:

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: slackpkg+sl

Messaggio da ZeroUno »

si, mi ha anche scritto in privato.
Per l'occasione ha anche riorganizzato i suoi pacchetti creando più repository raggruppando per architettura e versione di slackware, perché con la struttura precedente slackpkg+ non poteva funzionare
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: slackpkg+

Messaggio da ZeroUno »

Che faticata... tra lavoro e traduzione ci ho messo ore per partorire la risposta ;), ma ce l'ho fatta.
Non ho mai scritto un testo così lungo in inglese... neanche a scuola.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: [BETA] slackpkg+ releasing

Messaggio da ZeroUno »

Pronta la beta1 di slackpkg+: slackpkg+-0.9beta1-noarch-1.txz
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
tornadomig
Linux 3.x
Linux 3.x
Messaggi: 579
Iscritto il: gio 30 set 2010, 15:17
Nome Cognome: Giorgio
Slackware: Current64 multilib
Kernel: -current
Desktop: Xfce

Re: [BETA] slackpkg+ releasing

Messaggio da tornadomig »

Codice: Seleziona tutto

# ls /var/log/packages|grep slackpkg+
slackpkg+-0.9beta1-noarch-1

Codice: Seleziona tutto

# slackpkg+
-su: slackpkg+: command not found
@ZeroUno, scusa ma dove sta l'inghippo? son rincoglionito del tutto io? #-o
rm -rf / && rm -rf . && rm -rf *

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: [BETA] slackpkg+ releasing

Messaggio da ZeroUno »

slackpkg+ è una aggiunta a slackpkg

comunque slackpkg devi lanciare.

Edita prima /etc/slackpkg/slackpkgplus.conf però e personalizza con i repository che vuoi (non ricordo quali ho messo di defaut).

Parti con
slackpkg update gpg

I repository mettili in ordine per preferiti e poi goditi
slackpkg upgrade-all
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
conraid
Staff
Staff
Messaggi: 13630
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: [BETA] slackpkg+ releasing

Messaggio da conraid »

ZeroUno ha scritto:si, mi ha anche scritto in privato.
Per l'occasione ha anche riorganizzato i suoi pacchetti creando più repository raggruppando per architettura e versione di slackware, perché con la struttura precedente slackpkg+ non poteva funzionare
come deve essere un repository?

Avatar utente
tornadomig
Linux 3.x
Linux 3.x
Messaggi: 579
Iscritto il: gio 30 set 2010, 15:17
Nome Cognome: Giorgio
Slackware: Current64 multilib
Kernel: -current
Desktop: Xfce

Re: [BETA] slackpkg+ releasing

Messaggio da tornadomig »

@ZeroUno

ci erudisci un po' di piu' sull'argomento? grazie! :)
rm -rf / && rm -rf . && rm -rf *

Rispondi