Archive for the ‘slackware’ Category

Slackpkg Notifier

Sunday, May 22nd, 2011

A algum tempo atrás fiz um programinha que mantém um icone na systray para notificar se havia alguma atualização para o Slackware. Feito em python e pyGTK usando o código do wicd como base ele funciona em usermode e fica bonitinho no XFCE. Coloquei o código no github para algum interessado. :)

Repositório: https://github.com/guax/slackpkg-notifier

Bug na compilação do Asterisk no Slackware 13.1+

Sunday, November 14th, 2010

A alguns dias atrás me debati com um problema na compilação do asterisk nas versões 13.1+ do Slackware Linux. Esse problema era causado por um negligência dos desenvolvedores ao linkar os módulos que fazem uso da libcap que causava o seguinte erro ao carrega-los:

[Nov 14 14:05:16] WARNING[3840]: loader.c:433 load_dynamic_module: Error loading module 'res_agi.so': /usr/lib/asterisk/modules/res_agi.so: undefined symbol: cap_set_proc

Apesar da compilação ser feita com sucesso por conta do link ser feito no binário “asterisk” os módulos não são carregados com sucesso. Com o slackware manteve a biblioteca estática no sistema em /usr/lib/libcap.a e este diretório é procurado antes que o /lib pelo GCC na hora de linkar o problema acaba por ocorrer. O certo seria que na compilação dos módulos que fazem uso da libcap estes fossem linkado com o parâmetro -lcap.

A correção mais rápida, fácil e inelegante desse problema é mover a libcap.a para um diretório temporário fora do caminho do linker, compilar o asterisk e devolver ao seu diretório. Para conferir se o seu binário do asterisk foi linkado corretamente com a biblioteca dinâmica da libcap basta usar o comando ldd /usr/sbin/asterisk, o retorno deverá ser semelhante a:

        linux-gate.so.1 =>  (0xffffe000)
        libdl.so.2 => /lib/libdl.so.2 (0xb76f2000)
        libcap.so.2 => /lib/libcap.so.2 (0xb76ed000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb76d4000)
        libtermcap.so.2 => /lib/libtermcap.so.2 (0xb76d0000)
        libm.so.6 => /lib/libm.so.6 (0xb76a9000)
        libresolv.so.2 => /lib/libresolv.so.2 (0xb7692000)
        libc.so.6 => /lib/libc.so.6 (0xb752f000)
        /lib/ld-linux.so.2 (0xb7724000)
        libattr.so.1 => /lib/libattr.so.1 (0xb752a000)

Caso não tenha dado certo o resultado será semelhante a:

        linux-gate.so.1 =>  (0xffffe000)
        libdl.so.2 => /lib/libdl.so.2 (0xb7797000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb777e000)
        libtermcap.so.2 => /lib/libtermcap.so.2 (0xb777a000)
        libm.so.6 => /lib/libm.so.6 (0xb7754000)
        libresolv.so.2 => /lib/libresolv.so.2 (0xb773c000)
        libc.so.6 => /lib/libc.so.6 (0xb75d9000)
        /lib/ld-linux.so.2 (0xb77b0000)

Chromium e Slackware

Wednesday, September 30th, 2009

Chromium

Finalmente após anos de tortura tendo que aguentar as travadas do Firefox chegou o momento de ter um browser leve, rápido e com renderização de fontes decente no linux. Chegou a vez do Chromium, projeto open source do Google que é a fonte do browser Chrome. Um amigo meu estava usando ele no ubuntu eu resolvi rodar ele no Slackware. Descreverei o processo de instalação e a minha análise sobre esse beta.

Primeiro instale o mozilla-nss a provável unica dependência que você vai precisar.

Eu não criei um pacote para o chromium, talvez eu o faça no futuro. Até lá baixe o ultimo tarball e rode só pro seu usuário, caso você tenha problemas com os nomes estranhos criados pelo pessoal que empacota para o debian (alguém faz ideia de por que o .d??) faça o seguinte que tirei daqui.

ln -s /usr/lib/libplds4.so /usr/lib/libplds4.so.1d
ln -s /usr/lib/libnss3.so /usr/lib/libnss3.so.1d
ln -s /usr/lib/libsmime3.so /usr/lib/libsmime3.so.1d
ln -s /usr/lib/libssl3.so /usr/lib/libssl3.so.1d
ln -s /usr/lib/libnssutil3.so /usr/lib/libnssutil3.so.1d
ln -s /usr/lib/libnspr4.so /usr/lib/libnspr4.so.0d
ln -s /usr/lib/libplc4.so /usr/lib/libplc4.so.0d
ln -s /usr/lib/libplds4.so /usr/lib/libplds4.so.0d

Tente rodar o chrome primeiro, pode ser que tenha mudado no ultimo build. And there you go. :)

Usando um tema escuro pra ficar mais discreto.

Usando um tema escuro pra ficar mais discreto.

A análise: é rápido, muito rápido. Tem corretor ortográfico . E tudo que tem na versão windows. Ainda não tem sua ferramenta que substitui o Firebug madura o suficiente para ser usada ao invés do inseto flamejante mas da pro gasto em toda a parte de navegação. Outro contra é a falta de gears mas dizem que o próprio html 5 terá suporte para armazenagem, aguardaremo então até o Chromium e o GMail darem suporte para isso. :/

Atualizando Slackware 12.2 para 13.0

Monday, August 31st, 2009

Dia 26 de agosto foi lançada a versão numero 13.0 do Slackware Linux. Com kde 4, novo sistema de pacotes e toneladas de mudanças a atualização pode confundir algumas pessoas. Aqui fica meu passo a passo de como atualizar:

  1. Edite seu /etc/slackpkg/mirrors e coloque o repositório do 13.0
  2. slackpkg update

Aqui vem o macete. Primeiro atualize esses dois indivíduos e instale esse outro:

  1. slackpkg install xz
  2. slackpkg upgrade pkgtools
  3. slackpkg upgrade slackpkg

Por fim, é só executar o de sempre:

  1. slackpkg install-new
  2. slackpkg upgrade-all

Have fun com seu Slackware 13.0 :)