Differenze tra le versioni di "Pkgsrc su Slackware"

Da GolemWiki.
Jump to navigation Jump to search
Riga 47: Riga 47:
 
Oppure tramite cvs
 
Oppure tramite cvs
  
  #
+
  # env CVS_RSH=ssh cvs -q -z2 -d anoncvs@anoncvs3.de.NetBSD.org:/cvsroot checkout -P pkgsrc
  
 
== Bootstrap ==
 
== Bootstrap ==
 +
Una volta scaricato pkgsrc è necessario effettuare il bootstrap
  
uan volta che avete estratto il vostro pkgsrc entrate dentro bootstrap
+
  # cd /usr/pkgsrc/bootstrap
 
+
  # ./bootstrap
  '''#cd /usr/pkgsrc/bootstrap'''
 
e diamo
 
  '''#./bootstrap''' -h
 
per vedere tutte le opzioni
 
 
 
ora che siamo pronti diamo
 
'''./bootstrap'''
 
 
 
ora ci mettera' un po' per compilare i suoi tools essenziali
 
 
 
una volta terminato avrete completato il 90% del lavoro ;).
 
  
 
== Configurazione mk.conf ==
 
== Configurazione mk.conf ==
 +
Ora è necessario configurare il file di configurazione del pkgsrc
  
Ora possiamo configurare il nostro file di config (dal quale dipendera' pkgsrc)
+
# cp /usr/pkgsrc/bootstrap/work/mk.conf work/mk.conf
  
dalla cartella '''/usr/pkgsrc/bootstrap/''' date
+
Editiamo il file '''/usr/pkg/etc/mk.conf''' aggiungendo queste righe:
'''#cp work/mk.conf /usr/pkg/etc/mk.conf'''
 
 
 
ora editiamo '''/usr/pkg/etc/mk.conf'''
 
 
 
come potete vedere vi troverete di fronte a un file di questo genere (questo e' il mio)
 
  
 
<pre>
 
<pre>
.ifdef BSD_PKG_MK      # begin pkgsrc settings
+
ACCEPTABLE_LICENSES+=vim-license
 
+
ALLOW_VULNERABLE_PACKAGES=vim
 
+
USE_DESTDIR=NO
PKG_DBDIR=              /var/db/pkg <----------qui e' dove alloca il database di pkg
+
PKG_RESUME_TRANSFERS=YES
LOCALBASE=              /usr/pkg <----------la base locale
 
VARBASE=                /var
 
PKG_TOOLS_BIN=          /usr/pkg/sbin <----------qui si piazzano gli sbin
 
PKGMANDIR=              /usr/pkg/man <----------qui le mand dir
 
 
 
TOOLS_PLATFORM.pax?=            /usr/pkg/bin/pax
 
TOOLS_PLATFORM.tar?=            /usr/pkg/bin/tar
 
PKG_ADMIN_CMD?=                /usr/pkgsrc/bootstrap/work/sbin/pkg_admin <----------qui il comando per gestire i pacchetti
 
PKG_CREATE_CMD?=                        /usr/pkgsrc/bootstrap/work/sbin/pkg_create <---------- qui per creare i pacchetti
 
PKG_INFO_CMD?=                  /usr/pkgsrc/bootstrap/work/sbin/pkg_info <----------qui per le info dei pkg
 
WRKOBJDIR=              /usr/pkgsrc/bootstrap/work/wrk <----------la directory di lavoro
 
#PKGSRC_COMPILER=icc <----------si puo' specificare il compilatore
 
 
 
#Script rc.d
 
PKG_RCD_SCRIPTS=yes <----------qui dico si algi script per l'avvio
 
RCD_SCRIPTS_DIR=/etc/rc.d <----------nel mio caso li piazzo dove li mette slackware di solito
 
ACCEPTABLE_LICENSES+=vim-license <----------questa variabile e' per accettare le licenze dei pacchetti che non sono pienamente liberi
 
ALLOW_VULNERABLE_PACKAGES=vim <---------- questa variabile permette ai pacchetti con delle vullerabilita' di venire installati comunque
 
 
 
.endif                  # end pkgsrc settings
 
 
</pre>
 
</pre>
  
 +
== Pacchetti essenziali ==
  
per la spiegazione e la lista di tutte le varibili potete consultare
+
* '''Audit:''' lista di pacchetti con licenze non free, pkgsrc darà errori se il pacchetto che si desidera installare non ha una licenza non libera. Per aggiungerlo ugualmente la sua licenza deve essere aggiunta nel file mk.conf
'''/usr/pkgsrc/mk/defaults/mk.conf'''
 
o la documentazione online -> http://www.netbsd.org/docs/
 
 
 
== Installare digest e audit ==
 
 
 
'''Audit:''' e' una lista di pacchetti per i quali vi sono licenze non free, infatti pkgsrc si femera' dando un errore del tipo 'il pacchetto ha una licenza non libera'
 
per aggiungerlo lostesso basta inserirlo in
 
 
 
'''ACCEPTABLE_LICENSES+=vim-license'''
 
 
 
e pkgsrc continuera' ad andare
 
 
 
'''Digest:''' e' un pacchetto che contiene una lista di vullerabilita' che affliggono i vari pacchetti, anche qui se volete che continui ignorando l'errore che non vi permette di installarlo dovete aggiungere nella variabile
 
 
 
'''ALLOW_VULNERABLE_PACKAGES=vim'''
 
 
 
e il gioco e' fatto
 
 
 
 
 
Per installare audit:
 
'''/usr/pkg/sbin/download-vulnerability-list'''
 
 
 
Per installare digest:
 
'''#cd /usr/pkgsrc/pkgtools/digest'''
 
'''#bmake'''
 
 
 
et voila' fatto!
 
 
 
== Modifiche al sistema linux ==
 
 
 
Non spaventatevi si tratta di 4 cavolatine ;)
 
 
 
editate '''/etc/profile''' e aggiungete le path in grassetto alle varie varibili che elenchero'
 
 
 
export MANPATH=/usr/local/man:/usr/man:'''/usr/pkg/man'''
 
 
 
if [ "`id -u`" = "0" ]; then
 
  echo $PATH | grep /usr/local/sbin 1> /dev/null 2> /dev/null
 
  if [ ! $? = 0 ]; then
 
    PATH=/usr/local/sbin:/usr/sbin:/sbin:'''/usr/pkg/bin''':$PATH
 
  fi
 
fi
 
 
 
salvate e '''uscite'''
 
 
 
dopo di che aggiungete le lib alle lib di slackware (il riusltato del cat dovrebbe contenere la directory in grassetto)
 
 
 
'''# echo /usr/pkg/lib >> /etc/ld.so.conf'''
 
'''# cat /etc/ld.so.conf '''
 
/usr/local/lib
 
/usr/X11R6/lib
 
/usr/i486-slackware-linux/lib
 
'''/usr/pkg/lib'''
 
 
 
Netbsd considera migliore il suo gestore ftp, e quindi consiglia di disabilitare il pacchetto ftp di slackware in questo modo
 
'''#chmod 0 /sbin/ftp'''
 
 
 
Fine!
 
 
 
== Usare pkgsrc ==
 
  
provate a usare pkgsrc rimuovendo openssh
+
  # /usr/pkg/sbin/download-vulnerability-list
  '''#removepkg openssh'''
 
  
''' #cd /usr/pkgsrc/security/openssh'''
+
* '''Digest:''' contiene la lista delle vulnerabilità dei vari pacchetti. Per far sì che pkgsrc ignori questi errori è necessario installarlo ed aggiungere il pacchetto su mk.conf ''(es.: ALLOW_VULNERABLE_PACKAGES=vim)''
''' #bmake install'''
 
''' #bmake clean clean-depends'''
 
et voila' facile no?
 
  
== Mantenere e aggiornare Pkgsrc ==
+
# cd /usr/pkg/pkgsrc/pkgtools/digest
 +
# bmake install
  
semplice basta riandare sul sito e scaricare il nuovo pkgsrc (esce ogni 4 mesi) o se volete la cvs con il metodo con cui avete ottenuto pkgsrc
+
* pax: utility per decomprimere archivi. L'installazione di alcuni pacchetti non potrà essere effettuata se manca questo programma.
  
se non volete fare update a mano per ogni pacchetto vi e' un tools che fa al caso vostro
+
# cd /usr/pkg/pkgsrc/archive/pax
 +
# bmake install
  
portatevi in
+
== Modifiche su Slackware ==
'''#cd /usr/pkgsrc/pkgtools/lintpkgsrc'''
 
  
date
+
Editare il file '''/etc/profile''' e aggiungete i seguenti path nelle rispettive righe
'''#bmake install'''
+
/usr/pkg/man
 +
/usr/pkg/bin
 +
/usr/pkg/sbin
  
i vari comandi sono i seguenti
+
Aggiungere le librerie di pkgsrc a quelle Slackware
# lintpkgsrc -i # check per update
 
# lintpkgsrc -o # check per la versione vecchia delle distribuzioni dei file
 
# lintpkgsrc -or # rimuove le vecchie distribuzioni dei file
 
 
 
 
 
/usr/pkg/etc/mk.conf
 
 
 
ACCEPTABLE_LICENSES+=vim-license
 
ALLOW_VULNERABLE_PACKAGES=vim
 
USE_DESTDIR=NO
 
PKG_RESUME_TRANSFERS=YES
 
  
 +
# echo /usr/pkg/lib >> /etc/ld.so.conf
  
Install pax from /pkgsrc/archive/pax
+
== Mantenere e aggiornare il sistema ==
  
 +
* Aggiornare pkgsrc
 +
# env CVS_RSH=ssh cvs -q -z2 -d anoncvs@anoncvs3.de.NetBSD.org:/cvsroot checkout -P pkgsrc
  
  
env CVS_RSH=ssh cvs -q -z2 -d anoncvs@anoncvs3.de.NetBSD.org:/cvsroot
+
* Aggiornare i pacchetti
checkout -P pkgsrc
+
Installare lintpkgsrc per effettuare l'aggiornamento dei pacchetti in maniera automatica
  
 +
# cd /usr/pkgsrc/pkgtools/lintpkgsrc
 +
# bmake install
  
 +
Per vedere i vari comandi
 +
# lintpkgsrc -h
  
http://www.slacky.eu/slacky/Pkgsrc_su_slackware
+
== Tips ==
 +
Se il software contenuto in pkgsrc non è sufficiente è possibile aggiungere [http://pkgsrc-wip.sourceforge.net/ pkgsrc-wip] ''(work in progress)''
  
http://pkgsrc-wip.sourceforge.net/
+
# env CVS_RSH=ssh cvs -z3 -d:pserver:anonymous@pkgsrc-wip.cvs.sourceforge.net:/cvsroot/pkgsrc-wip checkout -P wip

Versione delle 16:51, 1 mar 2014

Introduzione

Slackware è la distribuzione più longeva tra quelle ancora in auge. Sviluppata con una particolare attenzione riguardo a stabilità e semplicità non possiede però né strumenti di configurazione con interfaccia grafica, né un sistema di gestione dei pacchetti con controllo automatico delle dipendenze.

Gestione dei pacchetti

Comandi

installpkg nomepacchetto (Installa un pacchetto)
removepkg nomepacchetto (Rimuove un pacchetto)
updatepkg nomepacchetto (Aggiorna un pacchetto) 

Gestori di pacchetti

  • Gestore ufficiale: Slackpkg (permette l'installazione di pacchetti da repository online, ma non gestisce le dipendenze)

Software extra

Uno dei principali problemi di Slackware è dato dalla difficoltà di reperimento dei programmi, la quantità di pacchetti ufficiali è molto inferiore a quella di altre distribuzioni. Anche il reperimento di programmi popolari come Libreoffice, GNOME o VLC può creare qualche difficoltà su Slackware.

Soluzioni alternative

  • Checkinstall: utility per la creazione di pacchetti Slackware a partire dal sorgente di un programma.
  • rpm2tgz: programma per convertire pacchetti rpm nel formato tgz (utile per installare grossi pacchetti statici come Libreoffice).
  • SlackBuild: script per lo scaricamento, la compilazione e l'installazione di software per Slackware.
  • Slackyd: Slacky Downloader, permette di scaricare (non installa) automaticamente pacchetti Slackware da mirror ufficiali e non (es. Slacky.eu.
  • pkgsrc: (package source), framework per compilare ed installare software di terze parti su NetBSD ed altri sistemi di tipo UNIX.

pkgsrc

Introduzione

Se si decide di percorrere questa strada è consigliabile effettuare un'installazione minima del sistema Slackware (Base Linux System, Program Development, System libraries, Networking) ed utilizzare pkgsrc per il resto dei pacchetti (es.: X11, KDE, Libreoffice).

Installazione pkgsrc

Si consiglia di installare pkgsrc nella directory /usr/pkg, che non esiste ed andrà perciò creata.

# mkdir /usr/pkg

Scaricare l'ultimo tarball disponibile

# cd /usr/pkg
# wget ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc.tar.xz

Oppure tramite cvs

# env CVS_RSH=ssh cvs -q -z2 -d anoncvs@anoncvs3.de.NetBSD.org:/cvsroot checkout -P pkgsrc

Bootstrap

Una volta scaricato pkgsrc è necessario effettuare il bootstrap

# cd /usr/pkgsrc/bootstrap
# ./bootstrap

Configurazione mk.conf

Ora è necessario configurare il file di configurazione del pkgsrc

# cp /usr/pkgsrc/bootstrap/work/mk.conf work/mk.conf

Editiamo il file /usr/pkg/etc/mk.conf aggiungendo queste righe:

ACCEPTABLE_LICENSES+=vim-license
ALLOW_VULNERABLE_PACKAGES=vim
USE_DESTDIR=NO
PKG_RESUME_TRANSFERS=YES

Pacchetti essenziali

  • Audit: lista di pacchetti con licenze non free, pkgsrc darà errori se il pacchetto che si desidera installare non ha una licenza non libera. Per aggiungerlo ugualmente la sua licenza deve essere aggiunta nel file mk.conf
# /usr/pkg/sbin/download-vulnerability-list
  • Digest: contiene la lista delle vulnerabilità dei vari pacchetti. Per far sì che pkgsrc ignori questi errori è necessario installarlo ed aggiungere il pacchetto su mk.conf (es.: ALLOW_VULNERABLE_PACKAGES=vim)
# cd /usr/pkg/pkgsrc/pkgtools/digest
# bmake install
  • pax: utility per decomprimere archivi. L'installazione di alcuni pacchetti non potrà essere effettuata se manca questo programma.
# cd /usr/pkg/pkgsrc/archive/pax
# bmake install

Modifiche su Slackware

Editare il file /etc/profile e aggiungete i seguenti path nelle rispettive righe

/usr/pkg/man
/usr/pkg/bin
/usr/pkg/sbin

Aggiungere le librerie di pkgsrc a quelle Slackware

# echo /usr/pkg/lib >> /etc/ld.so.conf

Mantenere e aggiornare il sistema

* Aggiornare pkgsrc
# env CVS_RSH=ssh cvs -q -z2 -d anoncvs@anoncvs3.de.NetBSD.org:/cvsroot checkout -P pkgsrc


* Aggiornare i pacchetti

Installare lintpkgsrc per effettuare l'aggiornamento dei pacchetti in maniera automatica

# cd /usr/pkgsrc/pkgtools/lintpkgsrc
# bmake install

Per vedere i vari comandi

# lintpkgsrc -h

Tips

Se il software contenuto in pkgsrc non è sufficiente è possibile aggiungere pkgsrc-wip (work in progress)

# env CVS_RSH=ssh cvs -z3 -d:pserver:anonymous@pkgsrc-wip.cvs.sourceforge.net:/cvsroot/pkgsrc-wip checkout -P wip