How-To :: adicionando recursos ao Slackpkg com Slackpkg+!


Para quem ainda não conhece o slackpkg+ é uma espécie de extensão, ou plugin que permite o uso de repositórios externos junto com a ferramenta padrão de gestão de pacotes do Slackware, o slackpkg.

Entendendo o caso.

O slackpkg é uma excelente ferramenta para a gestão de pacotes do Slackware, porém, quando um usuário deseja instalar algo que não existe nos repositórios oficiais, ele tem como opções:

* compilar manualmente e caçar as libs necessárias;
* usar os slackbuilds;
* usar o sbopkg, um facilitador para o caso dos slackbuilds;
* usar ferramentas como o slapt-get que se mal usadas podem quebrar seu sistema.

Então, o slackpkg+ trouxe tanto um pouco de facilidade e conveniência quanto a segurança em usar pacotes de caras tipo o alienbob, os do slacky.eu, etc, ou seja, bem melhor que catar libs ou quebrar seu sistema com um clone do apt-get.

Instalação.

Instalar o slackpkg+ é muito fácil, no exemplo abaixo vemos a instalação da última versão disponível, em caso de atualizações de versão, visite a página oficial: http://sourceforge.net/projects/slackpkgplus/files/:

$ wget -nv http://sourceforge.net/projects/slackpkgplus/files/slackpkg%2B-1.4.0-noarch-2mt.txz         
$ su -c 'installpkg slackpkg+-1.4.0-noarch-2mt.txz

Configuração.

Antes de usá-lo convém entender uma série de coisas, tais como, se deseja habilitar o repositório multilib em sistemas x86_64, quais repositórios usar e etc.

Abaixo segue uma cópia do meu arquivo de configuração /etc/slackpkg/slackpkgplus.conf que uso no Slackware Current i686, já modificado e tendo habilitado os repositórios ktown (latest KDE) e msb (MATE Desktop):

# Configuration for slackpkg+. See /usr/doc/slackpkg+-*/README for more details

# 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

# 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"

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

# Enable (on) / Disable (off) the greylist feature. See /etc/slackpkg/greylist
GREYLIST=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 )
#PKGS_PRIORITY=( myrepo )
#

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


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

# Slackware 14.1 - i386
MIRRORPLUS['alienbob']=http://taper.alienbase.nl/mirrors/people/alien/sbrepos/14.1/x86/
MIRRORPLUS['restricted']=http://taper.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.1/x86/
MIRRORPLUS['ktown']=http://taper.alienbase.nl/mirrors/alien-kde/current/latest/x86/
MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware-14.1/
MIRRORPLUS['msb']=http://slackware.org.uk/msb/14.1/1.8/x86/

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

# Local repository:
#MIRRORPLUS['alienbob']=file://repositories/alien/sbrepos/14.1/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):
#

#Supports GPG
#slackpkgplus:  http://slakfinder.org/slackpkg+/
#multilib:      http://taper.alienbase.nl/mirrors/people/alien/multilib/{13.37,14.0,14.1,current}/
#alienbob:      http://taper.alienbase.nl/mirrors/people/alien/sbrepos/{13.37,14.0,14.1,current}/{x86,x86_64}/
#ktown:         http://taper.alienbase.nl/mirrors/alien-kde/{13.37,14.0,14.1,current}/{latest,testing}/{x86,x86_64}/
#restricted:    http://taper.alienbase.nl/mirrors/people/alien/restricted_sbrepos/{13.37,14.0,14.1,current}/{x86,x86_64}/
#slacky:        http://repository.slacky.eu/slackware{,64}-{13.37,14.0,14.1}/
#mled-desktop:  http://www.microlinux.fr/slackware/desktop--14.1-{32,64}bit/
#mled-extras:   http://www.microlinux.fr/slackware/extras-14.1-{32,64}bit/
#mles:          http://www.microlinux.fr/slackware/server-{14.0,14.1}-{32,64}bit/
#msb:           http://slackware.org.uk/msb/{14.0,14.1}/{1.6,1.8}/{x86,x86_64}/
#slackers:      http://www.slackers.it/repository/
#slacke17:      http://ngc891.blogdns.net/pub/slacke17/slackware{,64,arm}-{14.0,14.1}/
#studioware:    http://studioware.org/files/packages/slackware{,64}-{13.37,14.0,14.1}/
#slackonly:	 http://slackonly.com/pub/packages/14.1-{x86,x86_64}/
#rlworkman:     http://rlworkman.net/pkgs/{13.37,14.0,14.1}/
#
#Does NOT support GPG
#salixos(*):    http://download.salixos.org/{i486,x86_64}/{13.37,14.0,14.1}/
#slackel(*):    http://www.slackel.gr/repo/{i486,x86_64}/current/

Já que falei no multilib, que felizmente não tenho necessidade já que só uso sistemas 32 Bits com suporte a PAE ou SMP, voltando… se usa um sistema x86_64 e deseja instalar pacotes 32 Bits nele, você pode habilitar a linha abaixo (presente apenas na conf de um sistema 64 Bits):

ALLOW32BIT=off

Deixando-a assim:

ALLOW32BIT=on

Mas observe as recomendações do arquivo, ou seja, a de não instalar versões e arquiteturas diferentes para um mesmo pacote! e não esqueça de adicionar o multilib na linha REPOPLUS, vista mais abaixo.

Observe também que no conf acima, para cada repositório listado na linha começada por MIRRORPLUS:

MIRRORPLUS['alienbob']=http://taper.alienbase.nl/mirrors/people/alien/sbrepos/14.1/x86/
MIRRORPLUS['restricted']=http://taper.alienbase.nl/mirrors/people/alien/restricted_sbrepos/14.1/x86/
MIRRORPLUS['ktown']=http://taper.alienbase.nl/mirrors/alien-kde/current/latest/x86/
MIRRORPLUS['slacky']=http://repository.slacky.eu/slackware-14.1/
MIRRORPLUS['msb']=http://slackware.org.uk/msb/14.1/1.8/x86/

O nome do mesmo deverá constar na linha REPOPLUS:

REPOPLUS=( slackpkgplus restricted alienbob ktown slacky msb )

Após cada alteração nesse arquivo, lembre-se de executar:

# slackpkg update

Se não me engano, somente 3 repositórios mais o slackpkgplus (que oferece atualizações para o slackpkg+) vem habilitados por padrão: alienbob, restricted e slacky., eu acrescentei o msb (MATE Desktop) presente no conf, mas desabilitado e o ktown (KDE mais recente).

Em caso de acidente, seja por perda, remoção, alteração indevida, modelos dos arquivos de configuração estarão disponíveis em /usr/doc/slackpkg+-1.4.0/

Felizmente o arquivo é bem documentado, para cada opção há um breve resumo, como por exemplo para o caso de haver mais de uma versão do pacote em repositórios diferentes:

PKGS_PRIORITY=( restricted:vlc )
PKGS_PRIORITY=( myrepo )

Ou por repositórios, como:

PKGS_PRIORITY=(multilib:.* restricted:.* alienbob:.* slacky:.*)

Utilizando

Nada mudou! você continuará usando o slackpkg, apenas para esse caso específico (e no início do uso dos novos repos), fazemos assim:

# slackpkg update gpg
# slackpkg update
# slackpkg upgrade-all
# slackpkg clean-system

Mas antes de atualizar os pacotes é bom conferir se na verdade você não estará fazendo é um downgrade nos mesmos (o que geralmente ocorre com quem usa os SlackBuilds), porque poderá ocorrer de versões de pacotes dos repositórios serem mais desatualizadas em relação as que estão instaladas, como nas imagens abaixo:

Este slideshow necessita de JavaScript.

Uma possível solução é habilitar os pacotes do SlackBuilds na blacklist, ou apenas desmarcar os mesmos durante as atualizações.

Quanto ao resto você trabalhará da mesma forma para pesquisar, instalar ou remover pacotes.

IntÉ!

Anúncios
How-To :: adicionando recursos ao Slackpkg com Slackpkg+!

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s