[Vademecum] Aggiornare Slackware - Slackpkg - gestione del software - slackpkg+

Aperto da Braccobaldo, Domenica 06 Novembre 2016, 13:00:02

Discussione precedente - Discussione successiva

Braccobaldo

Questa piccola guida o questo piccolo Vademecum (come mi piace pensarlo) è rivolto principalmente ai nuovi utenti di Slackware e a tutti quegli utenti che non hanno ancora chiaro come fare quelle operazioni basilari, indispensabili a garantire un buon funzionamento del sistema installato.
Leggendo la guida credo che apparirà chiaro che essa è stata realizzata un pezzo alla volta e può essere applicata allo stesso modo, un pezzo alla volta. Ad ogni passo successivo (in ogni post) sarà introdotto qualche nuovo comando e sarà chiarito il suo ruolo in relazione ai comandi illustrati precedentemete.
La maniera migliore per entrare in confidenza con questo sistema di aggiornamento e di gestione del software è quella di eseguire i comandi proposti. Soprattutto nei sistemi appena installati e soprattutto quando questi comandi non comportano delle modifiche sostanziali al sistema installato.
Seguendo i suggerimenti proposti scoprirete che, soprattutto quelli destinati ad apportare modifiche al sistema, prima di essere realmente eseguiti i comandi vi offriranno una possibilità di revisione e/o di selezione ulteriore delle scelte, fino al loro totale annullamento se nel frattempo ci avete ripensato. Nessun comando impartito è definitivo in prima battuta.

Per quanto riguarda chi scrive: non sono un super esperto di Slackware e non sono un esperto di informatica, sono un utente come voi che sta cercando di imparare ad utilizzare correttamente questo sistema operativo e che, nel farlo, cerca di rendersi utile anche ad altri oltre che a se stesso.

Ho cercato di mantenere uno stile discorsivo e di spiegare ogni passaggio nel tentativo di rendere comprensibile a tutti quanto riportato. Spero di esserci riuscito almeno un pochino e che qualcuno, prima o poi, trovi questo lavoro utile.

Superciuk




La domanda di partenza è: come si aggiorna Slackware?

Lo strumento ufficiale di Slackware per gestire il software e gli aggiornamenti è slackpkg.
Slackpkg si esegue nel terminale, non ha nessuna interfaccia grafica ed è già installato nel sistema.
Non è il caso di lasciarsi intimorire dall'assenza dell'interfaccia perché afferrati i principi di base, già dalla fine di questa lettura, e una volta impartiti i primi comandi, scoprirete che in realtà sono molto semplici e sperimenterete il gusto di compiere dalle azioni con il terminale. Strumento quest'ultimo al quale farete ricorso spesso usando questo sistema, probabilmente anche quando potreste farne a meno...

...Si, si, lo so che forse esagero un po'.

Slackpkg, nella sua configurazione originaria, gestisce solo il software nel repository ufficiale di Slackware.

Esiste una estensione però, per la quale funzionano gli stessi comandi, che, appunto, estende l'uso di slackpkg ai repository di terzi (quelli di alien, quelli di slackonly, di salix, ecc.). Il suo nome è slackpkgplus.
Slackpkg+ verrà trattato nella seconda parte di questa mini guida.

Ma torniamo a noi: dobbiamo aggiornare il sistema con "slackpkg".

Iniziamo:

da terminale, come root, inseriamo questo comando:

nano /etc/slackpkg/mirrors

Quella che dobbiamo fare è una operazione semplice: dobbiammo attivare un mirror tra quelli presenti nella lista. I mirrors sono divisi per nazione e in linea teorica quello più vicino è anche quello più veloce (io ho attivato quello "ftp" di garr.it).
Per attivare un mirror è sufficiente decommentare il rigo corrispondente
(rimuovere il simbolo "#" di inizio rigo).
Fate attenzione perché nel file di testo che stiamo per editare sono presenti due liste di mirrors: la prima è quella della Slackware stable (oggi è la 14.2), la seconda lista è quella del ramo current. A seconda che si usi l'una o l'altra bisognerà scegliere un mirror, e soltanto uno (molto importante), nell'una o nell'altra lista.
Nota Bene: questa operazione va fatta solo la prima volta che si usa slackpkg.

Fatta la modifica salviamo il file (Ctrl+O) e chiudiamo nano (Ctrl+X).

Adesso nel terminale inseriamo questo comando (per aggiornare le chiavi):

slackpkg update gpg

poi inseriamo questo comando (per aggiornare la lista dei pacchetti):

slackpkg update

e, infine, questo comando per fare un aggiornamento completo del sistema:

slackpkg upgrade-all


Tutte le operazioni avranno un output nel terminale, quindi potrete seguire ogni passo di tutto il procedimento.

Nel caso in cui tra gli aggiornamenti ci fosse anche il Kernel alla fine del procedimento slackpkg vi chiederà, con una scelta del tipo Y/n, se ci deve pensare lui ad aggiornare lilo o lo volete fare voi.

Se sbagliate la scelta (e rispondete no) non vi preoccupate, sarà sufficiente inserire questo comando nel terminale e dare invio:

lilo

Adesso riavviate il computer.

Se non volete aggiornare il kernel...

Attenzione: tutti i comandi vanno eseguiti con i privilegi elevati.

Importante: se decidete di seguire questa guida lo fate, assolutamente ed esclusivamente, a vostro rischio... Paura, eh?!

:ciao:

Braccobaldo

#1
Nel post precedente abbiamo configurato slackpkg e abbiamo visto alcuni comandi per eseguire l'aggiornamento.
Nella sequenza riportata sopra manca un comando che ho omesso volontariamente. L'ho omesso per due motivi: il primo è perchè nel momento in cui scrivo con la 14.2 non avrebbe nessuno effetto, il secondo motivo è perchè questo comando merita una distinzione.
Il comando è:

slackpkg install-new

questo comando ha il compito di integrare il software installato con pacchetti che sono entrati a far parte della distribuzione dopo il suo rilascio (potrebbero essere delle librerie , nuove dipendenze di programmi saliti di versione, ecc.). Il suo posto nella corretta sequenza di comandi per l'aggiornamento è il seguente:

slackpkg update gpg

slackpkg update

slackpkg install-new

slackpkg upgrade-all

Se al momento dell'installazione del sistema avete omesso di installare una o più serie di pacchetti, che potrebbero essere quelli di Kde, di Xfce o anche altro, con "slackpkg install-new" vi verrà proposta l'installazione dei pacchetti mancanti e, tra questi, tutti quelli che avete omesso di installare con l'installazione del sistema. Non c'è da preoccuparsi, abbiamo almeno tre opzioni.
La prima di queste è anche quella che mi sento di consigliare a tutti quelli che non hanno una più che collaudata confidenza con questo sistema ed è SI: installate tutto quello che vi propone di installare e non preoccupatevi. Questo vi garantirà una esperienza d'uso di Slackware confortevole, sicura e duratura.
La seconda scelta consiste nel deselezionare a mano, dalla lista proposta, tutti i pacchetti che non volete installare. Una operazione che potrebbe mettervi un pò in difficoltà se non avete una idea proprio chiara di ciò che state facendo.
La terza opzione è una prerogativa degli utenti di Slackware che hanno già maturato un po' di esperienza con slackpkg e consiste nell'inserire in una lista nera tutto ciò che non si vuole che sia considerato da slackpkg. Per ora non approfondiamo l'argomento.

E per finire il comando magico di slackpkg:

immaginiamo che da pivelli inesperti quali siamo abbiamo pasticciato un po' con le librerie, abbiamo installato del software a casaccio e le cose ci sembra che non funzionino più come dovrebbero e non sappiamo cosa fare, ecco il comando magico:

slackpkg clean-system

Questo comando, se accetterete di rimuovere tutto ciò che vi propone di rimuovere, riporterà il vostro sistema a una condizione di assoluto candore. Proprio come se fosse appena installato, eliminando tutto ciò che non è nel repository ufficiale di Slackware.
E' un comando che va impartito coscientemente.


Questi sono gli strumenti essenziali e indispensabili per fare di Slackware la propria distribuzione Linux.

Su slackpkg ci sono ancora un po' di cose da dire...

:ciao:



https://docs.slackware.com/slackware:slackpkg






Braccobaldo

#2
Se avete seguito i miei consigli dei post precedenti adesso avete un sistema perfettamente sincronizzato con il repository ufficiale di Slackware, quello in cui Patrick Volkerding inserisce i pacchetti nuovi mano a mano che la distribuzione compie il suo ciclo. Volkerding è anche conosciuto nel mondo Slackware come "The Man", proprio perché è lui l'uomo che sta dietro a tutto questo e che in prima persona si prende cura della sua creatura GNU/Linux.

Al rilascio di ogni nuova versione di Slackware il nuovo DVD di installazione contiene l'esatta copia del repository, esattamente gli stessi pacchetti. L'Uomo provvede ad aggiornare il software nel repository e noi, che adesso siamo sincronizzati, facciamo altrettanto sul nostro sistema. Semplice, no?

...Si vabbè, ma noi adesso siamo diventati pratici di slackpkg... Vogliamo decidere noi a cosa sincronizzarci.

...Sento già la folla che mormora:"si è vero, vogliamo decidere noi..."

...L'avete voluto voi!

Potete decidere di escludere qualcosa dalla sincronizzazione con il repo semplicemente inserendo quel qualcosa nella blacklist di slackpkg.
Nel repository il software è diviso in sezioni (directory), ogni sezione contiene una serie di pacchetti.
Se avete installato Slackware li avete già incontrati, sono: k, x, kde, kdei, xap, xfce, ...

Se volete conservarvi in uno stato di salute psichica ottimale evitate di prendere in cosiderazione qualsiasi cosa che non sia: kde, kdei, xap, xfce.

kde - contiene tutto l'ambiente e le applicazioni di KDE.

kdei - contiene i pacchetti della lingua di KDE.

xap - contiene tutte le applicazioni tipicamente Linux (dell'ambiente grafico), a partire da Gimp fino a i  window manager come fluxbox, ecc.

xfce - contiene l'intero ambiente di Xfce.


Potete decidere di inserire nella lista nera una intera serie oppure il singolo pacchetto. Se ad esempio volessi includere tutto Xfce mi basterebbe impartire questo comando:
slackpkg blacklist xfce

Se invece volessi includere un solo pacchetto il comando sarà:
  slackpkg blacklist "nome pacchetto completo"


Per rimuovere qualcosa dalla blacklist dobbiamo editare il file: /etc/slackpkg/blacklist

Quindi inserite questo comando:
  nano /etc/slackpkg/blacklist

e procedete.



...Non pensate di ottenere maggiori prestazioni da Slackware privandola di qualcosa... Non succederà.




Braccobaldo

#3
Prima di concludere la prima parte di questa passeggiata nel mondo di Slackware vorrei accennare brevemente agli altri comandi di slackpkg.

il primo dei comandi serve anche a dare un senso a quanto detto nel post precedente, ed è:

slackpkg remove

Questo comando serve a disinstallare il singolo pacchetto o anche l'intera serie.
Mettiamo il caso che siete rimasti fedeli ai miei consigli precedenti e avete installato sia KDE che Xfce, ma avete deciso di sbarazzarvi di di Xfce e lo volete inserire nella lista nera. Prima di compiere questo passo avremo bisogno di disinstallare tutto l'ambiente di Xfce, perchè una volta inserito nella blacklist slackpkg non sarà più in grado di gestirlo.
Allora per prima cosa rimuoviamo tutti i pacchetti con il comando:

slackpkg remove xfce

dopodichè potremo inserirlo nella lista nera con:

slackpkg blacklist xfce

Da questo momento in poi il povero Xfce non esisterà più per slackpkg.

Gli altri comandi sono:

slackpkg install (installa il pacchetto singolo o l'intera serie)

slackpkg search (cerca l'intera serie o il pacchetto singolo)

Vedremo il resto dei comandi di slackpkg nella seconda parte di questo piccolo vademecum, quando parleremo di slackpkgplus.

Braccobaldo

#4
 Arrivati a questo punto della storia ci saremo resi conto che tutto quello che abbiamo fatto e imparato è utile a gestire il software installato dal repo ufficiale e solo quello.
Se abbiamo fatto l'installazione completa ci saremo accorti anche che sono già presenti tutti i programmi necessari al funzionamento di una distribuzione Linux, e anche molto di più considerando tutte le applicazioni di KDE e tutto il software della serie XAP. Questo non toglie che potremmo avere necessità o semplicemente voglia di installare altri programmi , ma sappiamo anche che non li troveremo nel repo di Slackware...  E allora che si fa?

I puristi, quelli che vogliono il massimo della qualità e delle prestazioni, si affidano alle SlackBuild. Vedi:

https://slackbuilds.org/


Questa discussione tratta più approfonditamente l'argomento:
A proposito delle SlackBuilds...


Questo è il metodo che vi consiglio.


Braccobaldo

#5
Naturalmente esiste una ragione precisa se nel post precedente vi ho suggerito di usare le SlackBuild e soprattutto se vi ho consigliato di utilizzare l'applicazione sbopkg per gestirle.
E la ragione è semplice.

Sbopkg ha un tool che vi consente di controllare se ci sono pacchetti da aggiornare ed è in grado di provvedere autonomamente ad aggiornarli.
Sbopkg, però, provvede all'upgrade esclusivamente del software installato da lui: riconoscibile dall'acronimo "SBo", sempre presente nel nome dei suoi files, e dalla estensione .tgz.
Questa sua caratteristica lo rende particolarmente compatibile con il metodo di gestione del software e degli aggiornamenti di slackpkg perché sono completamente autonomi e indipendelti l'uno dall'altro:

slackpkg gestisce il software del repo ufficiale

sbopkg gestisce tutto l'altro software


Se avete dato una occhiata al file /etc/slackpkg/blacklist vi sarete accorti che c'è un rigo, questo rigo:

#[0-9]+_SBo

che basterà decommentare per inserire tutti pacchetti prodotti da sbopkg nella blacklist di slackpkg e suggellare l'autonomia dei due sistemi di gestione del software.


Questo secondo me rappresenta contemporaneamente un punto di arrivo, perchè vi consente di avere tutto ciò che vi occorre per essere autosufficienti in un sistema coerente e semplice, e rappresenta il miglior punto di partenza per chi vuole complicarsi un po la vita con gli altri sistemi di gestione del software disponibili per Slackware.

Se poi volete anche che Slackware vi invii una email sul telefonino per comunicarvi la disponibiltà dei nuovi pacchetti aggiornabili, dovete solo ingegnarvi un pochino...   :)

:ciao:


Braccobaldo

Abbiamo visto fino ad ora qual'è il ruolo di slackpkg e quello del repository ufficiale di Slackware e sappiamo che con essi abbiamo accesso esclusivamente al software di Mamma Slackware. Sappiamo anche che per quanto ampia sia la selezione di software al quale abbiamo accesso essa non è che una minima parte del software effettivamente disponibile per le distribuzioni Linux. Abbiamo anche fatto un (breve) accenno alle slackbuilds, al sito/repository slackbuilds.org e al tool di gestione sbopkg e a come questo sistema si integra bene, e perché è così, con slackpkg.
Se abbiamo provato ad usare le slackbuilds e sbopkg, abbiamo scoperto che in questo modo il software ce lo compiliamo noi e siamo noi a produrre i pacchetti che installiamo. E' un metodo efficace, efficiente ma un po' laborioso.

Esistono dei repository di software per Slackware già compilati (già pronti per essere installati).
Spesso sono repository di distribuzioni derivate di Slackware che mantengono una compatibilità totale con la distribuzione Madre. Altre volte sono invece repository di persone appassionate di questa meravigliosa distribuzione. E' il caso di Eric Hameleers (alienbob), olandese. Oppure degli italianissimi Ponce e Conraid. E di tanti altri in giro per il mondo altrettanto bravi e altruisti.

Quella che stiamo per introdurre è una estensione di slackpkg che ci consente di gestire anche i loro repository. Il suo nome è slackpkgplus ed è un regalo degli italianissimi ragazzi di slacky.eu alla comunità mondiale di Slackware.

Slackpkgplus non è presente nella distro ufficiale e deve essere scaricata e installata.

Se vi interessa potete scaricare l'ultima versione da qui: https://sourceforge.net/projects/slackpkgplus/files/

e installarla con il comando:

installpkg "nome completo del file"


Nei prossimi post vedremo come si usa.

Braccobaldo

In una distribuzione Linux come Slackware capita molto spesso di dover editare un file di testo per configurare un programma. Lo abbiamo già fatto in queste pagine per scegliere il mirror per slackpkg e ne abbiamo incontrato un altro per le blacklist dello stesso programma. Lo faremo ancora per Slackpkgplus.

Editare un file di testo seguendo come una pecora le indicazioni di una guida, senza leggere ciò che è scritto nel file di configurazione, anche quando lo si fa perfettamente, e soprattutto per chi non è già esperto, significa perdere una ottima occasione per imparare qualcosa di più sul funzionamento del programma che stiamo configurando. Infatti, nella stragrande maggioranza dei casi, questi testi sono ricchi di informazioni essenziali e di suggerimenti sulla configurazione da operare. Tanto che il tutto si riduce spesso nell'aggiungere o togliere il simbolo "#" in un rigo piuttosto che in un altro.

La configurazione di slackpkgplus richiede un minimo di sforzo in più (comunque niente di complicatissimo). Slackpkgplus richiede come requisito fondamentale la conoscenza dei comandi fondamentali, e non, di slackpkg. Insieme a una idea concreta di come funzioni. Proprio ciò che abbiamo fatto (o tentato di fare) nella prima parte di questo cammino.
In questa parte dedicata a slackpkgplus faremo anche la conoscenza di quei comandi di slackpkg che non abbiamo ancora trattato.

Per avere una idea concreta della configurazione che dovremo editare incollerò di seguito per primo il contenuto del file /etc/slackpkg/slacpkgplus.conf di un sistema nuovo e di seguito il mio file  slacpkgplus.conf.


Questo è il testo originale:

bash-4.4# cat /etc/slackpkg/slackpkgplus.conf
# Configuration for slackpkg+. See /usr/doc/slackpkg+-*/README for more details
# Please read manpage: "man slackpkgplus.conf" and documentation /usr/doc/slackpkg+-*/README

# Enable (on) / Disable (off) slackpkg+
SLACKPKGPLUS=on

# set to '0' to never show the download progress bar
# set to '1' to show the bar only in download packages (default)
# set to '2' to always show the download bar
# set to '3' for a debug mode
VERBOSE=1

# By default slackpkg+ deny to install 32bit packages.
#
# Set this flag to 'on' allow slackpkg+ to install 32bit packages on a 64bit slackware
# installation (possibly unsafe). Please, do not install both 32 and 64bit of the same
# package to avoid problems, and NEVER upgrade existant 64bit packages with relative 32bit package.
# Do not forget to install the multilibs.
ALLOW32BIT=off

# Enable (1) / Disable (0) the official slackpkg blacklist. May be useful to temporarily skip
# the slackware blacklist. You can also override it from command line:
# 'USEBL=0 slackpkg upgrade-all'
USEBL=1

# Add custom option to 'wget'.
# You can solve the repository indisponibility issue by set a timeout here
WGETOPTS="--timeout=20 --tries=2"

# If you want replace wget with another downloader search DOWNLOADCMD in documentation
# at /usr/doc/slackpkg+-*/README
#DOWNLOADCMD="wget -O"

# Defines if the changelog of any 3rd party repository must be searched in parent URL when not found in base URL.
# Can be set to "on" or "off" (default)
SEARCH_CLOG_INPARENT=on

# Use the cache for metadata files (CHECKSUMS.md5,...). Enable it (on) to speedup the slackpkg update
# process by downloading just new files (see README). Disabled by default (off)
CACHEUPDATE=off

# You can download-only by setting DOWNLOADONLY to 'on'. You may (you should) also use it in commandline
# for example: "DOWNLOADONLY=on slackpkg upgrade-all". Useful for large upgrades.
#DOWNLOADONLY=off

# Enable (on) / Disable (off) notification events (see notifymsg.conf)
#ENABLENOTIFY=off

# Enable (on) / Disable (off) the greylist feature. See /etc/slackpkg/greylist
GREYLIST=on

# Defines if commands 'search' and 'file-search' are case-sensitive (on) or not (off). Default to "on"
SENSITIVE_SEARCH=on

# Defines if command 'file-search' does search Wole Word (on) of accept partial words (off). Note that
# you may obtains many many results searching a short partial word
WW_FILE_SEARCH=on

# Select the show order in dialogbox. Available "package" "repository" "tag" "path" "arch"
SHOWORDER=package

# Allow to show more details of the package in slackpkg info <package>. Accept "none", "basic", "filelist"
DETAILED_INFO=none

# Enable (on) / Disable (off) a Strict GPG Check. A repository should contains packages signed
# with the only original GPG-KEY. In some custom repository may be wanted to mix heterogeneous
# packages; to use that repository set Strict GPG Check to off. P.S: a repository can
# contain just ONE gpg-key; you may manually import the other.
STRICTGPG=on

# If two or more repositories contains some same packages, you can specify
# from which repository you prefer to search it.
# The syntax is "<repository_name>:<package_name>"
# Accepts regular expressions. To give priority to an entire repository use "<repository_name>"

# Examples:
#PKGS_PRIORITY=( restricted:vlc )
# OR
#PKGS_PRIORITY=( myrepo )
#
# if you have two reporitories to give priority you must set both in the same line
#PKGS_PRIORITY=( myrepo restricted:vlc )
#
# if you want to install 'ktown' repository you must set it here
#PKGS_PRIORITY=( ktown )
# and DO NOT MISS to read special instruction on /usr/doc/slackpkg+-*/repositories.txt
#
# If you want a multilib system, uncomment the multilib repository and set:
#PKGS_PRIORITY=( multilib )
#
# (Use /usr/doc/slackpkg+-*/setupmultilib.sh to setup a multilib configuration)
#
# For both multilib and ktown set
#PKGS_PRIORITY=( multilib ktown )

# Otherwise you can try to upgrade a package from a repository that contains a package with the
# same tag of the already installed package. Tipically that means to upgrade a package from the
# same author of the already installed package.
# Note that this method may not works properly where two repositories contains a package with the
# same tag.
# Set TAG_PRIORITY to 'on' to enable this function
TAG_PRIORITY=off

# List repositories you want to use (defined below)
# remember to launch 'slackpkg update' if you modify that row.
#REPOPLUS=( slackpkgplus restricted alienbob slacky )
REPOPLUS=( slackpkgplus )


# Define mirrors (uncomment one or more mirror; remember to add it to REPOPLUS)
# GPG Note: after adding/renaming a repository, you must to run 'slackpkg update gpg'
#           some repositories as salixos, have a partial GPG support;
#           for that repositories you may need to run slackpkg with 'slackpkg -checkgpg=off ...'

# Slackware 14.2 - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/
#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/
#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/
#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/

# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/

# use the development branch to use the mainline version and help develop by reporting bugs.
#MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+dev/


# Slackware current - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/current/

# Local repository:
#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.2/x86/
#
# Local packages (you do not need metadata nor 'slackpkg update' command):
#MIRRORPLUS['myrepo']=dir://repositories/mypackages/


#
# Supported Repositories (see /usr/doc/slackpkg+-* for details and notes):
#

#slackpkgplus:  http://slakfinder.org/slackpkg+{,dev,1.6,1.7}/
#multilib:      http://bear.alienbase.nl/mirrors/people/alien/multilib/{14.0,14.1,14.2,current}/
#alienbob:      http://bear.alienbase.nl/mirrors/people/alien/sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#ktown:         http://bear.alienbase.nl/mirrors/alien-kde/{14.1,14.2,current}/{latest,testing}/{x86,x86_64}/
#restricted:    http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#slacky:        http://repository.slacky.eu/slackware{,64}-{14.0,14.1,14.2}/
#mleddesktop:   http://www.microlinux.fr/microlinux/desktop-{14.1,14.2}-{32,64}bit/
#mledextras:    http://www.microlinux.fr/microlinux/extras-{14.1,14.2}-{32,64}bit/
#mles:          http://www.microlinux.fr/microlinux/server-{14.0,14.1,14.2}-{32,64}bit/
#msb:           http://slackware.uk/msb/{14.0,14.1,14.2,current}/{1.6,1.8,1.10,1.12,1.14,1.15,1.15-gtk3,latest}/{x86,x86_64}/
#csb:           http://slackware.uk/csb/{14.1,14.2}/{x86,x86_64}/
#slackers:      http://slack.conraid.net/repository/slackware64-current/
#slacke18:      http://ngc891.blogdns.net/pub/slacke18/slackware{,64}-{14.1,14.2}/
#studioware:    http://studioware.org/files/packages/slackware{,64}-{14.0,14.1,14.2}/
#slackonly:     http://panos.slackonly.com/pub/packages/{14.1,14.2,current}-{x86,x86_64}/
#rlworkman:     http://rlworkman.net/pkgs/{14.0,14.1,14.2,current}/
#slackel:       http://www.slackel.gr/repo/{i486,x86_64}/current/
#connochaetos:  http://connochaetos.org/slack-n-free/slack-n-free{,64}-{14.1,14.2}/
#slint:         http://slint.fr/packages/{14.0,14.1,14.2}-{i486,x86_64}/
#salixos:       http://download.salixos.org/{i486,x86_64}/{14.0,14.1,14.2}/
bash-4.4#



Questo invece è il file che io uso attualmente:

bash-4.3$ cat /etc/slackpkg/slackpkgplus.conf               
# Configuration for slackpkg+. See /usr/doc/slackpkg+-*/README for more details
# Please read manpage: "man slackpkgplus.conf" and documentation /usr/doc/slackpkg+-*/README

# Enable (on) / Disable (off) slackpkg+
SLACKPKGPLUS=on

# set to '0' to never show the download progress bar
# set to '1' to show the bar only in download packages (default)
# set to '2' to always show the download bar
# set to '3' for a debug mode
VERBOSE=1

# By default slackpkg+ deny to install 32bit packages.
#
# Set this flag to 'on' allow slackpkg+ to install 32bit packages on a 64bit slackware
# installation (possibly unsafe). Please, do not install both 32 and 64bit of the same
# package to avoid problems, and NEVER upgrade existant 64bit packages with relative 32bit package.
# Do not forget to install the multilibs.
ALLOW32BIT=off

# Enable (1) / Disable (0) the official slackpkg blacklist. May be useful to temporarily skip
# the slackware blacklist. You can also override it from command line:
# 'USEBL=0 slackpkg upgrade-all'
USEBL=1

# Add custom option to 'wget'.
# You can solve the repository indisponibility issue by set a timeout here
WGETOPTS="--timeout=20 --tries=2"

# If you want replace wget with another downloader search DOWNLOADCMD in documentation
# at /usr/doc/slackpkg+-*/README
#DOWNLOADCMD="wget -O"

# Defines if the changelog of any 3rd party repository must be searched in parent URL when not found in base URL.
# Can be set to "on" or "off" (default)
SEARCH_CLOG_INPARENT=on

# Use the cache for metadata files (CHECKSUMS.md5,...). Enable it (on) to speedup the slackpkg update
# process by downloading just new files (see README). Disabled by default (off)
CACHEUPDATE=off

# You can download-only by setting DOWNLOADONLY to 'on'. You may (you should) also use it in commandline
# for example: "DOWNLOADONLY=on slackpkg upgrade-all". Useful for large upgrades.
#DOWNLOADONLY=off

# Enable (on) / Disable (off) notification events (see notifymsg.conf)
#ENABLENOTIFY=off

# Enable (on) / Disable (off) the greylist feature. See /etc/slackpkg/greylist
GREYLIST=on

# Defines if commands 'search' and 'file-search' are case-sensitive (on) or not (off). Default to "on"
SENSITIVE_SEARCH=on

# Defines if command 'file-search' does search Wole Word (on) of accept partial words (off). Note that
# you may obtains many many results searching a short partial word
WW_FILE_SEARCH=on

# Select the show order in dialogbox. Available "package" "repository" "tag" "path" "arch"
SHOWORDER=package

# Allow to show more details of the package in slackpkg info <package>. Accept "none", "basic", "filelist"
DETAILED_INFO=none

# Enable (on) / Disable (off) a Strict GPG Check. A repository should contains packages signed
# with the only original GPG-KEY. In some custom repository may be wanted to mix heterogeneous
# packages; to use that repository set Strict GPG Check to off. P.S: a repository can
# contain just ONE gpg-key; you may manually import the other.
STRICTGPG=on

# If two or more repositories contains some same packages, you can specify
# from which repository you prefer to search it.
# The syntax is "<repository_name>:<package_name>"
# Accepts regular expressions. To give priority to an entire repository use "<repository_name>"

# Examples:
PKGS_PRIORITY=(ktown restricted )
# OR
#PKGS_PRIORITY=( myrepo )
#
# if you have two reporitories to give priority you must set both in the same line
#PKGS_PRIORITY=( alienbob )
#
# if you want to install 'ktown' repository you must set it here
#PKGS_PRIORITY=( ktown )
# and DO NOT MISS to read special instruction on /usr/doc/slackpkg+-*/repositories.txt
#
# If you want a multilib system, uncomment the multilib repository and set:
#PKGS_PRIORITY=( multilib )
#
# (Use /usr/doc/slackpkg+-*/setupmultilib.sh to setup a multilib configuration)
#
# For both multilib and ktown set
#PKGS_PRIORITY=( multilib ktown )

# Otherwise you can try to upgrade a package from a repository that contains a package with the
# same tag of the already installed package. Tipically that means to upgrade a package from the
# same author of the already installed package.
# Note that this method may not works properly where two repositories contains a package with the
# same tag.
# Set TAG_PRIORITY to 'on' to enable this function
TAG_PRIORITY=off

# List repositories you want to use (defined below)
# remember to launch 'slackpkg update' if you modify that row.
#REPOPLUS=( slackpkgplus restricted alienbob slacky )
REPOPLUS=( slackpkgplus restricted alienbob slacky ktown )


# Define mirrors (uncomment one or more mirror; remember to add it to REPOPLUS)
# GPG Note: after adding/renaming a repository, you must to run 'slackpkg update gpg'
#           some repositories as salixos, have a partial GPG support;
#           for that repositories you may need to run slackpkg with 'slackpkg -checkgpg=off ...'

# Slackware 14.2 - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/
MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/
MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/
MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/
MIRRORPLUS['ktown']=http://bear.alienbase.nl/mirrors/alien-kde/14.2/latest/x86_64/
#MIRRORPLUS['slackonly']=https://slackonly.com/pub/packages/14.2-x86_64/

# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/

# use the development branch to use the mainline version and help develop by reporting bugs.
#MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+dev/


# Slackware current - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/current/

# Local repository:
#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.2/x86/
#
# Local packages (you do not need metadata nor 'slackpkg update' command):
#MIRRORPLUS['myrepo']=dir://repositories/mypackages/


#
# Supported Repositories (see /usr/doc/slackpkg+-* for details and notes):
#

#slackpkgplus:  http://slakfinder.org/slackpkg+{,dev,1.6,1.7}/
#multilib:      http://bear.alienbase.nl/mirrors/people/alien/multilib/{14.0,14.1,14.2,current}/
#alienbob:      http://bear.alienbase.nl/mirrors/people/alien/sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#ktown:         http://bear.alienbase.nl/mirrors/alien-kde/{14.1,14.2,current}/{latest,testing}/{x86,x86_64}/
#restricted:    http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#slacky:        http://repository.slacky.eu/slackware{,64}-{14.0,14.1,14.2}/
#mleddesktop:   http://www.microlinux.fr/microlinux/desktop-{14.1,14.2}-{32,64}bit/
#mledextras:    http://www.microlinux.fr/microlinux/extras-{14.1,14.2}-{32,64}bit/
#mles:          http://www.microlinux.fr/microlinux/server-{14.0,14.1,14.2}-{32,64}bit/
#msb:           http://slackware.uk/msb/{14.0,14.1,14.2,current}/{1.6,1.8,1.10,1.12,1.14,1.15,1.15-gtk3,latest}/{x86,x86_64}/
#csb:           http://slackware.uk/csb/{14.1,14.2}/{x86,x86_64}/
#slackers:      http://slack.conraid.net/repository/slackware64-current/
#slacke18:      http://ngc891.blogdns.net/pub/slacke18/slackware{,64}-{14.1,14.2}/
#studioware:    http://studioware.org/files/packages/slackware{,64}-{14.0,14.1,14.2}/
#slackonly:     http://panos.slackonly.com/pub/packages/{14.1,14.2,current}-{x86,x86_64}/
#rlworkman:     http://rlworkman.net/pkgs/{14.0,14.1,14.2,current}/
#slackel:       http://www.slackel.gr/repo/{i486,x86_64}/current/
#connochaetos:  http://connochaetos.org/slack-n-free/slack-n-free{,64}-{14.1,14.2}/
#slint:         http://slint.fr/packages/{14.0,14.1,14.2}-{i486,x86_64}/
#salixos:       http://download.salixos.org/{i486,x86_64}/{14.0,14.1,14.2}/
bash-4.3$




Nei prossimi passi cercheremo di capire come funziona.

Braccobaldo

Se avete dato uno sguardo ai due testi riportati precedentemente vi sarete accorti che sono quasi uguali, fatta eccezione per la parte che riguarda i REPOPLUS e i MIRRORPLUS che poi è la parte in cui noi stabiliamo quali debbano essere i repository da attivare. Qui noi possiamo decidere se attivare uno o più repo tra quelli proposti nell'esempio, oppure possiamo aggiungerne altri.
Nella parte finale del testo troviamo un elenco di tutti i repo disponibili e qui possiamo recuperare gli indirizzi di quelli che ci interessano. Più avanti vedremo anche come aggiungerne uno nuovo (rispetto a quelli presenti negli esempi). Prima di procedere con l'esercizio però sento il dovere di mettervi in guardia:
è assolutamente importante, direi fondamentale, che la scelta dei repo che useremo effettivamente sia oculata. L'errore che istintivamente commettono gli utenti poco esperti è quello di attivare più repository possibili, come se questo potesse garantirci i migliori risultati. Non è così. Anzi, direi piuttosto il contrario.
Se attivassimo troppi repo ci troveremmo ad ogni upgrade con un repo che vuole sostituire il software di un altro, che all'upgrade successivo sarà sostituito nuovamente dal primo o, ancora peggio, da un altro ancora. In un ciclo di vicendevoli sostituzioni assolutamente privo di senso. Questa situazione caotica è solo la parte più evidente del problema e la prima ad emergere. La parte peggiore, quella che sarà evidente solo dopo, è che creeremmo presto un gran casino con le dipendenze. Questo perché, anche trattandosi dello stesso software, nei diversi repository potrebbero essere richieste delle dipendenze diverse (anche solo leggermente) per alcuni pacchetti.
Se la situazione diventasse incoerente il software smetterebbe presto di funzionare lasciandoci con un sistema praticamente inutilizzabile se non nella sua configurazione originaria. Che tradotto significa che Slackware continua a funzionare ma il software che abbiamo installato invece no; ma con un po' di impegno si potrebbe mettere in difficoltà anche il sistema di base: usando, per esempio, senza cognizione, i repo di salixos e/o di connochaetos.

Se guardiamo con questi occhi il testo del primo file postato precedentemente possiamo notare che le preimpostazioni e che i suggerimenti mirano, come sempre, a semplificarci la vita. Guardiamoli nel dettaglio:

# List repositories you want to use (defined below)
# remember to launch 'slackpkg update' if you modify that row.
#REPOPLUS=( slackpkgplus restricted alienbob slacky )
REPOPLUS=( slackpkgplus )
# Define mirrors (uncomment one or more mirror; remember to add it to REPOPLUS)
# GPG Note: after adding/renaming a repository, you must to run 'slackpkg update gpg'
#           some repositories as salixos, have a partial GPG support;
#           for that repositories you may need to run slackpkg with 'slackpkg -checkgpg=off ...'
# Slackware 14.2 - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/
#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/
#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/
#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/
# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/


Alla voce REPOPLUS abbiamo due righe, la prima commentata e la seconda no.
Possiamo semplicemente invertire le cose: decommentiamo il primo rigo e commentiamo il secondo. Otterremo questo risultato:

REPOPLUS=( slackpkgplus restricted alienbob slacky )
#REPOPLUS=( slackpkgplus )


Abbiamo compiuto il primo passo per attivare i seguenti repository:


slackpkgplus: ci serve per tenere aggiornata l'estensione che stiamo utilizzando.


restricted: questo è un repo di alienbob che contiene il software senza restrizioni (leggi degli USA).

alienbob: questo è il repo più completo di alienbob. Quello in cui troverete  libreoffice, chromium, eccetera, ma nel quale alcuni software sono soggetti alle restrizioni della legislazione americana. Cosa che rende necessario il repo precedente.

slacky:  questo è il reposirory di slacky.eu (gli autori di questa estensione), ci troverete, tra l'altro, skype.



Questa è una situazione decisamente coerente, in cui l'unica voce un po' stonata sembra essere rappresentata da slacky, che possiamo anche rimuovere ma che contiene così poco software che diffficilmente tenterà di sovrapporsi a quelli di alienbob.

Vediamo i MIRRORPLUS:

# Slackware 14.2 - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/
#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/
#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/
#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/
# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/


Tutto quello che dobbiamo fare in questa sezione è attivare i mirrors relativi ai repositoy di REPOPLUS.  Ignoriamo il mirror "multilib" e decommentiamo gli altri (il mirror di slackpkgplus è attivato di default). Otteniamo questo risultato:

# Slackware 14.2 - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/
MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/
MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/
MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/
# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/


Fatte e salvate nel file /etc/slackpkg/slackpkg.conf queste modifiche, per renderle operative daremo i comandi di update:

slackpkg update gpg
slackpkg update

Braccobaldo

Vediamo adesso come aggiungere un nuovo repository e come impostare il suo mirror.

Vediamo la lista:

#
# Supported Repositories (see /usr/doc/slackpkg+-* for details and notes):
#

#slackpkgplus:  http://slakfinder.org/slackpkg+{,dev,1.6,1.7}/
#multilib:      http://bear.alienbase.nl/mirrors/people/alien/multilib/{14.0,14.1,14.2,current}/
#alienbob:      http://bear.alienbase.nl/mirrors/people/alien/sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#ktown:         http://bear.alienbase.nl/mirrors/alien-kde/{14.1,14.2,current}/{latest,testing}/{x86,x86_64}/
#restricted:    http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#slacky:        http://repository.slacky.eu/slackware{,64}-{14.0,14.1,14.2}/
#mleddesktop:   http://www.microlinux.fr/microlinux/desktop-{14.1,14.2}-{32,64}bit/
#mledextras:    http://www.microlinux.fr/microlinux/extras-{14.1,14.2}-{32,64}bit/
#mles:          http://www.microlinux.fr/microlinux/server-{14.0,14.1,14.2}-{32,64}bit/
#msb:           http://slackware.uk/msb/{14.0,14.1,14.2,current}/{1.6,1.8,1.10,1.12,1.14,1.15,1.15-gtk3,latest}/{x86,x86_64}/
#csb:           http://slackware.uk/csb/{14.1,14.2}/{x86,x86_64}/
#slackers:      http://slack.conraid.net/repository/slackware64-current/
#slacke18:      http://ngc891.blogdns.net/pub/slacke18/slackware{,64}-{14.1,14.2}/
#studioware:    http://studioware.org/files/packages/slackware{,64}-{14.0,14.1,14.2}/
#slackonly:     http://panos.slackonly.com/pub/packages/{14.1,14.2,current}-{x86,x86_64}/
#rlworkman:     http://rlworkman.net/pkgs/{14.0,14.1,14.2,current}/
#slackel:       http://www.slackel.gr/repo/{i486,x86_64}/current/
#connochaetos:  http://connochaetos.org/slack-n-free/slack-n-free{,64}-{14.1,14.2}/
#slint:         http://slint.fr/packages/{14.0,14.1,14.2}-{i486,x86_64}/
#salixos:       http://download.salixos.org/{i486,x86_64}/{14.0,14.1,14.2}/
bash-4.4#


e scegliamo il nostro:

#slackonly:     http://panos.slackonly.com/pub/packages/{14.1,14.2,current}-{x86,x86_64}/

non possiamo usarlo così com'è, dobbiamo definire prima la versione della distribuzione che ci interessa e poi l'architettura.
Posto che stiamo utilizzando la 14.2 a 64 bit, faremo così: nell'ultima parte dell'indirizzo eliminiamo tutto ciò che non sia "x86_64" e  "14.2". Otteniamo questo risultato:
#slackonly:     http://panos.slackonly.com/pub/packages/14.2-x86_64/

Adesso dobbiamo aggiungere "slackonly" ai REPOPLUS. A lavoro finito sarà così:

# List repositories you want to use (defined below)
# remember to launch 'slackpkg update' if you modify that row.
REPOPLUS=( slackpkgplus restricted alienbob slacky slackonly )
#REPOPLUS=( slackpkgplus )


Creiamo la voce per il nostro nuovo mirror usando l'indirizzo che abbiamo ottenuto precedentemente. Il nostro MIRRORPLUS sarà così:

MIRRORPLUS['slackonly']=http://panos.slackonly.com/pub/packages/14.2-x86_64/

Non ci resta che aggiungerlo ai MIRROPLUS già presenti per ottenere questo risultato:
# Slackware 14.2 - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/
MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/
MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/
MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/
MIRRORPLUS['slackonly']=http://panos.slackonly.com/pub/packages/14.2-x86_64/
# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/


Per renderlo attivo eseguire i comandi di update.

ATTENZIONE: questo è da considerarsi solo come un esercizio per vedere come si fa ma l'indirizzo che abbiamo usato in realtà non funziona perchè dal rilascio di slackpkgplus è cambiato.

Slackonly tuttavia è un repo molto valido e tra i più completi, può sostituire da solo tutti quelli che abbiamo effettivamente impostato e ne avanza molto, solo che cambia spesso indirizzo...








Braccobaldo

#10
Una volta compreso il funzionamento di slackpkgplus, e per questo vi consiglio di leggere con attenzione il vostro file /etc/slackpkg/slackpkg.conf. Sarete perfettamente in grado di ampliare la scelta del vostro ambiente desktop a KDE/Plasma5 a Mate e a Cinnamon oltre a Xfce e KDE4 che avete già.

bash-4.4# cat /etc/slackpkg/slackpkgplus.conf
# Configuration for slackpkg+. See /usr/doc/slackpkg+-*/README for more details
# Please read manpage: "man slackpkgplus.conf" and documentation /usr/doc/slackpkg+-*/README

# Enable (on) / Disable (off) slackpkg+
SLACKPKGPLUS=on

# set to '0' to never show the download progress bar
# set to '1' to show the bar only in download packages (default)
# set to '2' to always show the download bar
# set to '3' for a debug mode
VERBOSE=1

# By default slackpkg+ deny to install 32bit packages.
#
# Set this flag to 'on' allow slackpkg+ to install 32bit packages on a 64bit slackware
# installation (possibly unsafe). Please, do not install both 32 and 64bit of the same
# package to avoid problems, and NEVER upgrade existant 64bit packages with relative 32bit package.
# Do not forget to install the multilibs.
ALLOW32BIT=off

# Enable (1) / Disable (0) the official slackpkg blacklist. May be useful to temporarily skip
# the slackware blacklist. You can also override it from command line:
# 'USEBL=0 slackpkg upgrade-all'
USEBL=1

# Add custom option to 'wget'.
# You can solve the repository indisponibility issue by set a timeout here
WGETOPTS="--timeout=20 --tries=2"

# If you want replace wget with another downloader search DOWNLOADCMD in documentation
# at /usr/doc/slackpkg+-*/README
#DOWNLOADCMD="wget -O"

# Defines if the changelog of any 3rd party repository must be searched in parent URL when not found in base URL.
# Can be set to "on" or "off" (default)
SEARCH_CLOG_INPARENT=on

# Use the cache for metadata files (CHECKSUMS.md5,...). Enable it (on) to speedup the slackpkg update
# process by downloading just new files (see README). Disabled by default (off)
CACHEUPDATE=off

# You can download-only by setting DOWNLOADONLY to 'on'. You may (you should) also use it in commandline
# for example: "DOWNLOADONLY=on slackpkg upgrade-all". Useful for large upgrades.
#DOWNLOADONLY=off

# Enable (on) / Disable (off) notification events (see notifymsg.conf)
#ENABLENOTIFY=off

# Enable (on) / Disable (off) the greylist feature. See /etc/slackpkg/greylist
GREYLIST=on

# Defines if commands 'search' and 'file-search' are case-sensitive (on) or not (off). Default to "on"
SENSITIVE_SEARCH=on

# Defines if command 'file-search' does search Wole Word (on) of accept partial words (off). Note that
# you may obtains many many results searching a short partial word
WW_FILE_SEARCH=on

# Select the show order in dialogbox. Available "package" "repository" "tag" "path" "arch"
SHOWORDER=package

# Allow to show more details of the package in slackpkg info <package>. Accept "none", "basic", "filelist"
DETAILED_INFO=none

# Enable (on) / Disable (off) a Strict GPG Check. A repository should contains packages signed
# with the only original GPG-KEY. In some custom repository may be wanted to mix heterogeneous
# packages; to use that repository set Strict GPG Check to off. P.S: a repository can
# contain just ONE gpg-key; you may manually import the other.
STRICTGPG=on

# If two or more repositories contains some same packages, you can specify
# from which repository you prefer to search it.
# The syntax is "<repository_name>:<package_name>"
# Accepts regular expressions. To give priority to an entire repository use "<repository_name>"

# Examples:
#PKGS_PRIORITY=( restricted:vlc )
# OR
#PKGS_PRIORITY=( myrepo )
#
# if you have two reporitories to give priority you must set both in the same line
#PKGS_PRIORITY=( myrepo restricted:vlc )
#
# if you want to install 'ktown' repository you must set it here
#PKGS_PRIORITY=( ktown )
# and DO NOT MISS to read special instruction on /usr/doc/slackpkg+-*/repositories.txt
#
# If you want a multilib system, uncomment the multilib repository and set:
#PKGS_PRIORITY=( multilib )
#
# (Use /usr/doc/slackpkg+-*/setupmultilib.sh to setup a multilib configuration)
#
# For both multilib and ktown set
#PKGS_PRIORITY=( multilib ktown )

# Otherwise you can try to upgrade a package from a repository that contains a package with the
# same tag of the already installed package. Tipically that means to upgrade a package from the
# same author of the already installed package.
# Note that this method may not works properly where two repositories contains a package with the
# same tag.
# Set TAG_PRIORITY to 'on' to enable this function
TAG_PRIORITY=off

# List repositories you want to use (defined below)
# remember to launch 'slackpkg update' if you modify that row.
#REPOPLUS=( slackpkgplus restricted alienbob slacky )
REPOPLUS=( slackpkgplus )


# Define mirrors (uncomment one or more mirror; remember to add it to REPOPLUS)
# GPG Note: after adding/renaming a repository, you must to run 'slackpkg update gpg'
#           some repositories as salixos, have a partial GPG support;
#           for that repositories you may need to run slackpkg with 'slackpkg -checkgpg=off ...'

# Slackware 14.2 - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/14.2/
#MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/14.2/x86_64/
#MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.2/x86_64/
#MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware64-14.2/

# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/

# use the development branch to use the mainline version and help develop by reporting bugs.
#MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+dev/


# Slackware current - x86_64
#MIRRORPLUS['multilib']=http://bear.alienbase.nl/mirrors/people/alien/multilib/current/

# Local repository:
#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.2/x86/
#
# Local packages (you do not need metadata nor 'slackpkg update' command):
#MIRRORPLUS['myrepo']=dir://repositories/mypackages/


#
# Supported Repositories (see /usr/doc/slackpkg+-* for details and notes):
#

#slackpkgplus:  http://slakfinder.org/slackpkg+{,dev,1.6,1.7}/
#multilib:      http://bear.alienbase.nl/mirrors/people/alien/multilib/{14.0,14.1,14.2,current}/
#alienbob:      http://bear.alienbase.nl/mirrors/people/alien/sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#ktown:         http://bear.alienbase.nl/mirrors/alien-kde/{14.1,14.2,current}/{latest,testing}/{x86,x86_64}/
#restricted:    http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/{14.0,14.1,14.2,current}/{x86,x86_64}/
#slacky:        http://repository.slacky.eu/slackware{,64}-{14.0,14.1,14.2}/
#mleddesktop:   http://www.microlinux.fr/microlinux/desktop-{14.1,14.2}-{32,64}bit/
#mledextras:    http://www.microlinux.fr/microlinux/extras-{14.1,14.2}-{32,64}bit/
#mles:          http://www.microlinux.fr/microlinux/server-{14.0,14.1,14.2}-{32,64}bit/
#msb:           http://slackware.uk/msb/{14.0,14.1,14.2,current}/{1.6,1.8,1.10,1.12,1.14,1.15,1.15-gtk3,latest}/{x86,x86_64}/
#csb:           http://slackware.uk/csb/{14.1,14.2}/{x86,x86_64}/
#slackers:      http://slack.conraid.net/repository/slackware64-current/
#slacke18:      http://ngc891.blogdns.net/pub/slacke18/slackware{,64}-{14.1,14.2}/
#studioware:    http://studioware.org/files/packages/slackware{,64}-{14.0,14.1,14.2}/
#slackonly:     http://panos.slackonly.com/pub/packages/{14.1,14.2,current}-{x86,x86_64}/
#rlworkman:     http://rlworkman.net/pkgs/{14.0,14.1,14.2,current}/
#slackel:       http://www.slackel.gr/repo/{i486,x86_64}/current/
#connochaetos:  http://connochaetos.org/slack-n-free/slack-n-free{,64}-{14.1,14.2}/
#slint:         http://slint.fr/packages/{14.0,14.1,14.2}-{i486,x86_64}/
#salixos:       http://download.salixos.org/{i486,x86_64}/{14.0,14.1,14.2}/
bash-4.4#


Questi sono i repository:

KDE5 = ktown
#ktown:         http://bear.alienbase.nl/mirrors/alien-kde/{14.1,14.2,current}/{latest,testing}/{x86,x86_64}/

MATE=msb
#msb:           http://slackware.uk/msb/{14.0,14.1,14.2,current}/{1.6,1.8,1.10,1.12,1.14,1.15,1.15-gtk3,latest}/{x86,x86_64}/

CINNAMON=csb
#csb:           http://slackware.uk/csb/{14.1,14.2}/{x86,x86_64}/

Nel caso di KDE5 è consigliabile leggere prima attentamente le istruzioni nel file di configurazione. Ma il procedimento potrebbe essere riassunto così: rimuovere del tutto kde, installare tutto ktown, assegnere la priorità a ktown nel nostro slackpkgplus.conf
#
# if you want to install 'ktown' repository you must set it here
#PKGS_PRIORITY=( ktown )
# and DO NOT MISS to read special instruction on /usr/doc/slackpkg+-*/repositories.txt
#


Sarà sufficiente decommentre il rigo.

Quando avrete preso confidenza con quanto detto sin qui impiegherete tra i 10 e i 20 minuti per cambiare a vostro piacimento i connotati della vostra Slackware. Tuttavia il mio consiglio è di agire con cautela e di non fare miscugli bizzarri con i DE di cui disponete, evitando di tenere insieme xfce mate e cinnamon.

.

Braccobaldo

#11
Vi invito a leggere questa pagina della documentazione di Slackware per avere una panoramica completa dei comandi di slacpkg.

Tra quelli che ho mancato di illustrare fin ora ce ne sono due che vi saranno particolarmente utili per risolvere le dipendenze dei pacchetti che installate. Perchè vi ricordo che slackpkg non si incarica di farlo automaticamente.

il primo di questi comandi è:
slackpkg info

Questo comando si incarica di fornirvi una serie di informazioni, tra cui le eventuali dipendenze e i possibili conflitti con altri pacchetti. Facciamo una prova con vlc:

root@slackware:~# slackpkg info vlc

PACKAGE NAME:  vlc-2.2.4-x86_64-1alien.txz
PACKAGE LOCATION:  ./vlc
PACKAGE SIZE (compressed):  38840 K
PACKAGE SIZE (uncompressed):  148720 K
PACKAGE REQUIRED: 
PACKAGE CONFLICTS: 
PACKAGE SUGGESTS: 
PACKAGE DESCRIPTION:
vlc: vlc (multimedia player for various audio and video formats)
vlc:
vlc: VLC media player is a highly portable multimedia player for various
vlc: audio and video formats (MPEG-1, MPEG-2, MPEG-4, DivX, mp3, ogg, ...)
vlc: as well as DVDs, VCDs, and various streaming protocols.
vlc: It can also be used as a server to stream in unicast or multicast in
vlc: IPv4 or IPv6 on a high-bandwidth network.
vlc:
vlc:
vlc: vlc home: http://www.videolan.org/vlc/
vlc:


root@slackware:~#


L'altro comando se possibile è ancora più utile del precedente, ed è:

slackpkg file-search

Potrebbe capitare che pur avendo provveduto a risolvere tutte le eventuali dipendenze il programma non ne voglia sapere di funzionare. In questi casi generalmente si prova ad avviare il programma dal terminale per poter leggere nell'output il motivo del mancato funzionamento. Molto spesso ciò dipende dall'assenza di una libreria condivisa o comunque di un file più in generale.
Aggiungendo il nome del file mancante al nostro comando esso frugherà nel contenuto di ogni pacchetto nei repo attivati alla ricerca del nostro file e vi mostrerà i risultati.

Il nostro cammino alla scoperta di slackpkg e la gestione del software con Slackware per il momento si ferma qui.

Se avete bisogno di chiarimenti aprite una nuova discussione e descrivete il vostro problema, aggiungendo un link al passo di questa discussione coinvolto.

:ciao:



Braccobaldo

Nel caso in cui un aggiornamento del sistema vi proponesse un upgrade del kernel siete liberi di rifiutarlo.

Potete rifiutarlo momentaneamente semplicemente deselezionando le voci del Kernel dalla lista dei pacchetti da upgradare.

Oppure potete escluderlo dagli aggiornamenti, sistematicamente, editando il file: /etc/slackpkg/blacklist

decommentando tutte le voci del kernel

#
# Automated upgrade of kernel packages aren't a good idea (and you need to
# run "lilo" after upgrade). If you think the same, uncomment the lines
# below
#
#kernel-firmware
#kernel-generic
#kernel-generic-smp
#kernel-headers
#kernel-huge
#kernel-huge-smp
#kernel-modules
#kernel-modules-smp
#kernel-source



Per riabilitare l'upgrade del kernel sarà sufficiente fare il procedimento inverso e commentare nuovamente le righe.

P.S.

Notate sempre il suggerimento "saggio" che accompagna ogni configurazione:
# Automated upgrade of kernel packages aren't a good idea (and you need to
# run "lilo" after upgrade). If you think the same, uncomment the lines
# below


Tradotto, letteralmente:
L'upgrade automatico del kernel non è una buona idea (e avrai bisogno di eseguire lilo dopo l'upgrade).
Se tu la pensi allo stesso modo, decommenta le linee sotto.

#kernel-firmware
#kernel-generic
#kernel-generic-smp
#kernel-headers
#kernel-huge
#kernel-huge-smp
#kernel-modules
#kernel-modules-smp
#kernel-source


... e non lo dico io, lo dice Slackware!
  ;)

Superciuk

#13
Nel caso in cui ci fosse qualcuno, oltre me, che usa kde5 su Slackware. Quelli che seguono sono i MIRRORPLUS aggiornati per il repo ktown:

Per Slackware 14.2 (64bit)

MIRRORPLUS['ktown']=http://alien.slackbook.org/ktown/14.2/latest/x86_64/

Per Slackware Current (64bit)

MIRRORPLUS['ktown']=http://alien.slackbook.org/ktown/current/latest/x86_64/


Vi ricordo anche che ktown deve essere inserito tra i repo con priorità; e anche di eseguire i comandi di update dopo aver modificato il file /etc/slackpkg/slackpkgplus.conf.