SWARET, Gestor de paquetes para Slackware.
Manual escrito por MJGL.
* ¿Que es Slackware?
* ¿Donde consigo Swaret?
* ¿Como lo instalo?
* ¿Que precauciones previas tengo que tener en cuenta?
* ¿Que tengo que modificar?
* ¿Como le digo la versión que quiero tener en mi sistema?
* ¿Como hago para ponerlo en español?
* ¿De donde obtengo los paquetes?
* ¿Como usar las diferentes fuentes aleatoriamente?
* ¿Que son los repositorios?
* ¿Como controla las dependencias?
* ¿Como excluyo paquetes?
* ¿Como obtengo mas información de lo acontece?
* ¿Como activar la búsqueda de dependencias automáticamente?
* ¿Que opciones tengo para la búsqueda de librerías?
* ¿Que seguridad hay en los paquetes que me bajo?
* ¿Que hace con los paquetes que instalamos? ¿Los guarda?
USAR LOS CDS DE INSTALACION CON SWARET
* No quiero meter y sacar cds. ¿Que hago?
* ¿Puedo hacerlo con un solo dispositivo de cd o dvd?
* ¿También se podrá hacer con dos dispositivos de cd o dvd?
* ¿Que hago para actualizar el sistema?
* ¿Es posible automatizar el proceso y desentenderme?
* Bien. ¿Como desinstalo algún paquete?
* ¿Como reinstalo algún paquete?
* ¿Como busco o listo paquetes?
* ¿Puedo bajar paquetes sin instalarlos?
* ¿Como busco una nueva versión de Swaret?
* ¿Se pueden compilar paquetes desde las fuentes con swaret?
* El programa está muy bien. Pero, ¿hay otras alternativas?
* Me ha agrado el programa. ¿Puedes recomendarme alguno más?
* Odio la consola. ¿No es posible usar este software en entorno gráfico?
¿Que es Slackware?
Antes de explicar lo que es swaret, creo obligatorio referenciar lo que es Slackware, ya que swaret está pensada para esta distribución tan peculiar.
Slackware fue creada por Patrick Volkerding siendo la primera distribución de Linux conocida en uso extendido. Este mismo señor se encarga de su mantenimiento y crecimiento. Si has leído bien solo una persona, y así lleva desde finales de 1992. No es de extrañar su prestigio a nivel mundial.
Se caracteriza por ser simple y robusta como una roca. Algunos la clasifican de distribución complicada por la falta de asistentes gráficos para su configuración y sobre todo por lo tedioso del control de dependencias de forma manual. Ahí es donde entra en juego swaret. pues hace que cualquiera persona con pocos conocimientos se aventure al uso de esta distribución sin temor de llegar al fracaso. Aunque también puede darse el caso, de usuarios más expertos que lo usen por su comodidad.
¿Donde consigo Swaret?
La podemos encontrar aquí en su nueva web.
Como es de esperar me voy a basar en la última versión estable en este momento, pues si bien no ha habido cambios considerables frente a últimas versiones, quizás el archivo de configuración /etc/swaret.conf que había que poner el Español en su lugar para españolizarlo y que ahora no hace falta, pues una breve modificación nos hace el resto.
¿Como lo instalo?
Instalarlo es fácil, nos situaremos en el mismo directorio donde esté le paquete que previamente nos hemos bajado y teclearemos como root,
installpkg swaret-1.6.2-noarch-1.tgz
* Por motivos desconocidos el archivo que nos descargamos termina en .tgz.tar, el paquete es correcto, pero como ya avisan en la propia web, hay que renombralo a .tgz e instalarlo normalmente.
Como es lógico si la ultima versión ya no es esta, hay que sustituir el nombre por el oportuno, pues cambiará la numeración de la versión. Una vez concluida la instalación, veremos un mensaje como este
YOU MUST EDIT /etc/swaret.conf.new! (man swaret.conf)
Rename it to /etc/swaret.conf and start using swaret.
que nos avisa de que tenemos que editar el archivo de configuración para empezar a usar el programa, que es a lo que vamos a continuación.
¿Que precauciones previas tengo que tener un cuenta?
Por seguridad y prudencia cuando lo instalamos, no nos borra y crea un nuevo archivo de configuración. Lo que hace es crearlo añadiendo un .new al final. Y que seamos nosotros los que borremos el antiguo archivo o mas recomendable renombrarlo añadiendo un .ant por ejemplo para recordar la antigua configuración.
Así acatamos lo visto en consola, de renombrar swaret.conf.new a swaret.conf para lo que nos hará falta ser root,
cp /etc/swaret.conf /etc/swaret.conf.ant
mv /etc/swaret.conf.new /etc/swaret.conf
mcedit /etc/swaret.conf
La primera linea si es la primera vez que lo estamos instalando, nos dará este error en consola,
cp: cannot stat `/etc/swaret.conf': No such file or directory
Lo ignoraremos entonces, si hemos actualizado swaret. Es bueno que sepamos que lo que hemos hecho ha sido es tener nuestra configuración a buen recaudo en el archivo swaret.conf.ant
¿Que tengo que modificar?
Como ya hemos visto, el archivo a modificar que es el corazón de swaret es el fichero /etc/swaret.conf. Las lineas que empiezan con un # no las leerá el sistema, lo cual nos valdrá para activarlas o desactivarlas quitando este.
********CONFIGURACION A FONDO********
¿Como le digo que la versión que quiero tener en mi sistema?
Lo primero que tenemos que indicarle es la versión concreta que estamos usando, o a la que queremos pasar. Ya sea 8.1, 9.0, 9.1, 10.0 o current. Bajo mi punto de vista el que tenga una conexión lenta de módem 56k no debería usar la current, pues está está en constante evolución y no pararía de bajarse paquetes a diestro y siniestro, sin embargo al usar una versión fija ya sea cualquiera de las antes citadas nos aportara un extra de estabilidad al sistema ya que de por sí la current es bastante robusta.
# Define a valid Slackware Linux Version.
# (Used for Dependency Support and other Features)
#
# NOTE: If you want to use Slackware Linux Current,
# set VERSION to 'current' (VERSION=current).
#
VERSION=9.1
#VERSON=current
¿Como hago para ponerlo en Español?
El idioma es algo que sin duda ya nos remata la sencillez de este soft, cambiaremos según nuestro caso poniendo ESPANOL. No no crean que tengo el teclado estropeado como pueden comprobar "Ññ" es una N,
#Define the language for status and error messages
LANGUAGE=ESPANOL
¿De donde obtengo los paquetes?
Tenemos varias alternativas, tenerlos en CD, DVD o en un dispositivo USB, Ftp o Http, mediante rsync o tenerlos alojados en cualquier lugar de nuestro disco duro,etc... como vemos el abanico de posibilidades es bien grande para que se adapte a nuestras necesidades,
#ROOT=file:/mnt/cdrom
#ROOT=file:/mnt/dvdrom
#ROOT=file:/mnt/usbmemstick
ROOT=ftp://ftp.slackware.com/pub/slackware/slackware-$VERSION
ROOT=ftp://ftp.slackware.no/pub/linux/slackware/slackware-$VERSION
ROOT=ftp://ftp.nluug.nl/pub/os/Linux/distr/slackware/slackware-$VERSION
ROOT=http://sunsite.cnlab-switch.ch/ftp/mirror/slackware/slackware-$VERSION
ROOT=http://www.slackware.no/slackware/slackware-$VERSION
ROOT=ftp://ftp.slackware.at/slackware-$VERSION
ROOT=http://www.slackware.at/data/slackware-$VERSION
ROOT=ftp://ftp.planetmirror.com/pub/slackware/slackware-$VERSION
ROOT=http://ftp.planetmirror.com/pub/slackware/slackware-$VERSION
#ROOT=rsync://rsync.slackware.no/slackware/slackware-$VERSION
#ROOT=rsync://rsync.slackware.at/slackware/slackware-$VERSION
#ROOT=file:/pub/slackware
#ROOT=file:/mnt/nfsshare/slackware
#ROOT=file:/mnt/sambashare/slackware
Como se puede ver yo he optado por vía ftp y http. Y muy importante a tener en cuenta es que no todos los sitios de descargas ponen a disposición nuestra las diferentes actualizaciones nada más que salen. Algunos pueden variar incluso con diferencia de una semana. Y podríamos creernos que tenemos el sistema actualizado y no es así. Por lo que tomen nota y pongan el primero el oficial de Slackware, los demás nos dará igual hasta podríamos prescindir de ellos en caso de no usar la opción aleatoria como comentaré más adelante. Este es el oficial,
ROOT=ftp://ftp.slackware.com/pub/slackware/slackware-$VERSION
¿Como usar las diferentes fuentes aleatoriamente?
RANDOMR=0 Si está a cero usaremos el primer mirror por defecto para actualizarnos.
RANDOMR=1 Utiliza un orden aleatorio en la lista de mirrors. Cuidadín con esto, piensen que nos conectamos a un mirror que no está al día, podríamos bajarnos paquetes desactualizados lo que significaría algo peor que no actualizar el sistema, y es quitarnos paquetes que ya actualizamos y volver a los antiguos con los riesgos que a la seguridad atañen.
¿Que son los repositorios?
Los repositorios son sitios diferentes de donde podemos bajarnos paquetes. Si tuviéramos paquetes igual en diferentes repositorios, no tendremos problemas, el sistema nos preguntará si queremos instalar cada uno de ellos, para que elijamos el que consideremos oportuno.
¿Como se añaden repositorios?
Aquí vemos las diferentes posibilidades,
# Define Repository URL's with Slackware Linux Packages.
# (Used for Repository Slackware Linux Packages)
# (Repository URL's available at http://www.swaret.org/?menu=sp)
#
# NOTE 1: To use a Local Repository or Remote Repository,
# be sure it contains the following Files:
# - CHECKSUMS.md5 (For MD5 Sum, REQUIRED)
# - FILELIST.TXT (For Package Name + Size, REQUIRED)
# - PACKAGES.TXT (For Package Description, NOT REQUIRED)
# - MANIFEST.bz2 (For Dependency Support, NOT REQUIRED)
# NOTE 2: To create your own Repository, use 'swaret-tools'.
# You can get 'swaret-tools' at http://www.swaret.org!
#
# Syntax: REPOS_ROOT=REPOSITORYNAME%PROTOCOL:URL
#
# NOTE 1: The REPOSITORY NAME can only be ONE Keyword!
# NOTE 2: swaret will use the order of the specified REPOS_ROOT URL's.
#
#REPOS_ROOT=LinuxPackagesDOTNET%ftp://ftp.linuxpackages.net/pub/Slackware-9.1
#
#REPOS_ROOT=My_Slackware_Packages_On_CD-ROM%file:/mnt/cdrom
#REPOS_ROOT=My_Slackware_Packages_On_DVD-ROM%file:/mnt/dvdrom
#REPOS_ROOT=My_Slackware_Packages_On_USB_Memory_Stick%file:/mnt/usbmemstick
#REPOS_ROOT=SomeRemoteRepository%ftp://ftp.someremoterepository.net/slackware/slackware-9.1
#REPOS_ROOT=SomeRemoteRepository%http://www.someremoterepository.net/slackware/slackware-9.1
#REPOS_ROOT=SomeRemoteRepository%rsync://rsync.someremoterepository.net/slackware/slackware-9.1
#REPOS_ROOT=MyLocalRepository%file:/pub/myrepos"
#REPOS_ROOT=MyRemoteRepository_Using_NFS-Share%file:/mnt/nfsshare/slackware
#REPOS_ROOT=MyRemoteRepository_Using_Samba-Share%file:/mnt/sambashare/slackware
Por si fuera poco hasta puedes crearte tu propio repositorio usando la herramienta swaret-tools que tendríamos que bajarlo a parte, pero he destacar que la dirección http://www.swaret.org/?menu=sp, no es correcta iremos aquí mejor.
Aunque también podemos usar un repositorio ajeno. Esto ya es cuestión de cada uno el meter en el sistema paquetes no oficiales automáticamente. Visiten estos sitios,
http://www.linuxpackages.net/mirrors.php
http://www.slacky.it/modules/Repository/repository.html
¿Como controla las dependencias?
Para controlar las dependencias, como la web ha cambiado de sitio, es necesario ir aquí y comprobar que la dirección es la correcta.
Define Libraries (8.1 or Higher or Current) List Mirrors.
# (Used for Dependency Support)
#
# NOTE 1: You need to specify a Libraries List Mirror which
# contains a 'libraries-VERSION' File.
#
# NOTE 2: To create the Libraries List, use 'swaret-tools'.
# You can get 'swaret-tools' at http://www.swaret.org!
# You can also clear all DEP_ROOT Variable(s) which will
# allow swaret to create the Libraries List for you
# during Dependency Check using the defined ROOT Variable(s) above.
#
# Syntax: DEP_ROOT=PROTOCOL:URL
#
# NOTE: swaret will use the order of the specified DEP_ROOT URL's.
#
#DEP_ROOT=file:/mnt/cdrom
#DEP_ROOT=file:/mnt/dvdrom
#DEP_ROOT=file:/mnt/usbmemstick
#DEP_ROOT=http://www.swaret.org/swaret
DEP_ROOT=http://swaret.sourceforge.net
#DEP_ROOT=ftp://ftp.swaret.org/swaret
#DEP_ROOT=rsync://rsync.swaret.org/swaret
#DEP_ROOT=file:/pub/swaret
#DEP_ROOT=file:/mnt/nfsshare/swaret
#DEP_ROOT=file:/mnt/sambashare/swaret
Lo dejaríamos con la dirección que he marcado en color azul, ya que la que he marcado en color rojo es la antigua. (Por si las moscas dejo comentado el sitio antiguo),
¿Como excluyo paquetes?
Tenemos también la opción de excluir la instalación de diversos paquetes si así lo deseamos durante la actualización, yo lo he dejado como sigue a continuación, pero si no te interesa que te cambie el kernel, lilo o swaret, comenta la linea y listo,
# If you don't want swaret to Upgrade, Install, Re-Install, Download,...
# some Packages, add the KEYWORDS to the EXCLUDE Variable.
# To disable Exclude Method: swaret --exclude -off
# To enable Exclude Method: swaret --exclude -on
#
# NOTE: You can add ANY EXTENDED REGEXP (Regular Expression) to the EXCLUDE Variable(s)
#
# Basic Exclude
#
#EXCLUDE=kernel
#EXCLUDE=lilo swaret
EXCLUDE=MANIFEST.bz2$
EXCLUDE=.*dl$ .*PACKAGER$ .*MYBUILD$
#
Si lo que queremos es que se excluya variantes de un mismo paquete selectivamente, lo haremos encerrando la variante entre corchetes [], si es mas de una las separaremos con una coma.
# Advanced Exclude
# Syntax: KEYWORD[DONT_EXCLUDE_ME_KEYWORD1,DONT_EXCLUDE_ME_KEYWORD2,...]
#Example: kde-i18n[nl,en_GB] koffice-i18n[nl,en_GB]
#
EXCLUDE=kde-i18n[es,es_ES] koffice-i18n[es,es_ES]
Esto hará que solo se listen los paquetes de internacionalización de KDE correspondientes al idioma Español.
¿Como obtengo más información de lo que acontece?
Si queremos toda la información disponible marcaremos estas opciones,
WARNINGS=1
INFORMATION=1
USEPKGDESC=1
Si no queremos que nos muestre información de todas o alguna, cambiar el valor a 0. Las tres opciones están separadas no las encontraran juntas, yo las he juntado para ser más breve en el manual.
Puede que sea demasiada información la que recibamos y nos sature en exceso, pues bien con desactivar las que veamos oportuno bastará.
¿Como activar la búsqueda de dependencias automáticamente?
De esto se encarga,
DEPENDENCY=1
El valor a 0 no buscará, salvo que utilicemos un swaret --dep.
¿Que opciones tengo para la búsqueda de librerías?
Tenemos dos,
DSEARCHLIB=1
DSEARCHM=0
Dsearchlib
con valor 1, hará una busqueda de librerias por todo el
sistema.
Que esté activada la opción Dsearhm a 1
implica que regularmente ejecutemos updatedb, lo normal es que lo
tengamos corriendo en el cron para que lo automáticamente a
ciertas horas por ejemplo. Si no es así lo mejor es ponerlo a
0. Aunque la busqueda será más lenta.
¿Que
seguridad hay en los paquetes que me bajo?
Ahora tenemos dos opciones para comprobar la seguridad y la integridad de los paquetes.
MD5CHECK=1
GPGCHECK=1
La primera con activarla ya la tendremos operativa. La segunda opción implica bajarnos la llave gpg de Slackware con la que están firmados los paquetes, claro me refiero a los oficiales. Algunos mirrors pueden que no tengan la firma gpg.
Para eso iremos a este sitio, http://www.slackware.com/gpg-key, y nos bajaremos la llave y ejecutaremos este comando como root situados en el directorio donde nos hemos bajado la llave claro, swaret --gpg -i gpg-key
¿Que hace con los paquetes que instalamos?, ¿Los guarda?
Por suerte, swaret guarda los paquetes que nos bajamos en el directo por defecto /var/swaret,
CACHE_DIR=/var/swaret
Si lo consideramos oportuno podremos cambiar el sitio para tal fin.
Por sistema todos los paquetes que instale o actualice estarán en este directorio raíz. Salvo los repositorios que estarán
en el directorio /var/swaret/repos/NOMBRE DEL REPOSITORIO y las sources en el /var/sware/sources
¿Quedará todo logueado, no?
Si, los log es algo fundamental en cualquier software. Figúrate que lo hemos dejado actualizando el sistema sin estar presente. Y el sistema se queda bloqueado. O luego no arranca, podríamos indagar que fue lo que ha ocurrido,
LOG_FILE=/var/log/swaret
¿Como configuro el tipo de conexión que voy a utilizar?
Particularmente al usar modem 56k tento puesto ppp0, hay otras opciones como lo para una conexion local, eth0, etc...
NIC=ppp0
********USAR LOS CDS DE INSTALACION CON SWARET********
Importante advertencia.
Solo
hay que tener en cuenta una cosa para usar los cds de instalación
con swaret y es un problema si tenemos,
GPGCHECK=1
Por
lo que tendremos que cambiarlo a,
GPGCHECK=0
No quiero meter y sacar CD's ¿Que hago?
Este sistema requiere que tengamos espacio de sobra en el disco duro, pues la solución que tiene es copiar todos los paquetes *.tgz de los cds en el directorio /var/swaret que es donde buscará el sistema los paquetes y ya está, ya swaret los cogerá de allí el solito.
¿Puedo hacerlos con un solo dispositivo de CD o DVD?
Si, supongo que lo quieres hacer es no
tener que bajarte los paquetes que tienes en los cds de instalación.
El caso más proble
This article is licensed under a Creative Commons License
Posted by mjgl at Noviembre 19, 2004 09:00 PM