Ir para o conteúdo
ou

Thin-logo

Tela cheia Sugerir um artigo
Rss-feed

Grupo de Usuários Debian da Bahia - GUD/BA

6 de Dezembro de 2009 , por Desconhecido -

Seja bem vind@, se você é um debiano (um baiano que usa debian) faça parte de nossa comunidade!


Upgrades to Jessie, Ruby 2.2 transition, and chef update

2 de Julho de 2015, por PSL-BA Feeds - 0sem comentários ainda

Last month I started to track all the small Debian-related things that I do. My initial motivation was to be concious about how often I spend short periods of time working on Debian. Sometimes it’s during lunch breaks, weekends, first thing in the morning before regular work, after I am done for the day with regular work, or even during regular work, since I do have the chance of doing Debian work as part of my regular work occasionally.

Now that I have this information, I need to do something with it. So this is probably the first of monthly updates I will post about my Debian work. Hopefully it won’t be the last.

Upgrades to Jessie

I (finally) upgraded my two servers to Jessie. The first one, my home server, is a Utilite which is a quite nice ARM box. It is silent and consumes very little power. The only problem I had with it is that the vendor-provided kernel is too old, so I couldn’t upgrade udev, and therefore couldn’t switch to systemd. I had to force systemv for now, until I can manage to upgrade the kernel and configure uboot to properly boot the official Debian kernel.

On my VPS things are way better. I was able to upgrade nicely, and it is now running a stock Jessie system.

fixed https on ci.debian.net

pabs had let me know on IRC of an issue with the TLS certificate for ci.debian.net, which took me a few iterations to get right. It was missing the intermediate certificates, and is now fixed. You can now enjoy Debian CI under https .

Ruby 2.2 transition

I was able to start the Ruby 2.2 transition, which has the goal of switch to Ruby 2.2 on unstable. The first step was updating ruby-defaults adding support to build Ruby packgaes for both Ruby 2.1 and Ruby 2.2. This was followed by updates to gem2deb (0.18, 0.18.1, 0.18.2, and 0.18.3) and rubygems-integration . At this point, after a few rebuild requests only 50 out of 137 packages need to be looked at; some of them just use the default Ruby, so a rebuild once we switch the default will be enough to make it use Ruby 2.2, while others, specially Ruby libraries, will still need porting work or other fixes.

Updated the Chef stack

Bringing chef to the very latest upstream release into unstable was quite some work.

I had to update:

  • ruby-columnize (0.9.0-1)
  • ruby-mime-types (2.6.1-1)
  • ruby-mixlib-log 1.6.0-1
  • ruby-mixlib-shellout (2.1.0-1)
  • ruby-mixlib-cli (1.5.0-1)
  • ruby-mixlib-config (2.2.1-1)
  • ruby-mixlib-authentication (1.3.0-2)
  • ohai (8.4.0-1)
  • chef-zero (4.2.2-1)
  • ruby-specinfra (2.35.1-1)
  • ruby-serverspec (2.18.0-1)
  • chef (12.3.0-1)
  • ruby-highline (1.7.2-1)
  • ruby-safe-yaml (1.0.4-1)

In the middle I also had to package a new dependency, ruby-ffi-yajl, which was very quickly ACCEPTED thanks to the awesome work of the ftp-master team.

Random bits

  • Sponsored a upload of redir by Lucas Kanashiro
  • chake, a tool that I wrote for managing servers with chef but without a central chef server, got ACCEPTED into the official Debian archive.
  • vagrant-lxc , a vagrant plugin for using lxc as backend and lxc containters as development environments, was also ACCEPTED into unstable.
  • I got the deprecated ruby-rack1.4 package removed from Debian


Aprenda a criar repositórios de pacotes Debian

29 de Junho de 2015, por PSL-BA Feeds - 0sem comentários ainda

Clone trooper e wall-e empilhando pacotes

Neste post irei mostrar como configurar um repositório de pacotes Debian GNU/Linux usando dput + mini-dinstall + nginx. O Debian é um sistema operacional livre criado e mantido por um grupo independente de desenvolvedores espalhados pelo mundo, o projeto foi iniciado em 1993 e tem sido desenvolvido abertamente desde então sempre seguindo o espírito do projeto GNU.

Uma das características mais interessantes do Debian é o seu sistema de gerenciamento de pacotes.

“Um sistema de gerenciamento de pacotes é uma coleção de ferramentas que oferece um método automático para instalar, atualizar, configurar e remover pacotes de um sistema operacional. É tipicamente usado em sistemas operacionais tipo Unix, que consistem de centenas de pacotes distintos, para facilitar a identificação, instalação e atualização” (fonte: Wikipédia)

O sistema de gerenciamento de pacotes Debian chamado APT foi criado originalmente pelos desenvolvedores do projeto e lançado pela primeira vez em 9 Março de 1999 no Debian 2.1 (Slink) e conta hoje com um total de 44893 pacotes (44 mil !!!) em seus repositórios oficiais. Esta enorme quantidade de softwares disponíveis nos repositórios oficiais do projeto torna extremamente simple pesquisar, instalar, atualizar ou remover qualquer coisa do computador.

Os pacotes disponibilizados nos repositórios oficiais do Debian passam por um rígido controle de qualidade liderado pelos desenvolvedores oficiais do projeto e aberto à contribuição de qualquer pessoa. Então se você está empacotando algo veja o Guia do Novo Mantenedor Debian para saber como incluir isso nos repositórios oficiais.

Mas se isso não for possível ou se você não puder esperar o pacote entrar no Debian seja por qual motivo for, então a solução será criar um repositório pessoal ou Private Package Archive (PPA). É isto que será descrito aqui a partir de uma solução proposta inicialmente por Stefano Zacchiroli em seu blog no post howto: uploading to people.d.o using dput.

Atenção! Todas as instruções a seguir são baseadas em meu próprio ambiente, isto inclui nomes de usuários, domínios, diretórios, etc. Você deve adaptar estas informações com base em sua realidade.

Configurando o servidor para receber pacotes

  • Sistema Operacional: Debian Wheezy
  • Domínio: debian.joenio.me

Acesse o servidor via SSH e instale o mini-dinstall:

mini-dinstall is a tool for installing Debian packages into a personal APT repository


# apt-get install mini-dinstall

Crie o diretório onde os pacotes serão copiados:


$ mkdir -p ~/debian.joenio.me/mini-dinstall/incoming

Crie o arquivo ~/.mini-dinstall.conf:

[DEFAULT]
mail_on_success = false
incoming_permissions = 0750
architectures = all, i386, amd64
archive_style = flat
dynamic_reindex = 1
archivedir = /home/joenio/debian.joenio.me/
generate_release = 1
release_label = Joenio
release_description = Unofficial Debian packages maintained by Joenio Costa
verify_sigs = 0

Preparando a estação de trabalho para enviar pacotes

  • Sistema Operacional: Debian Testing

Instale o dput em seu computador:

dput allows you to put one or more Debian packages into the archive


# apt-get install dput

Exporte sua chave pública GnuPG para para o arquivo signing.asc.


$ gpg --armor --output signing.asc --export D5609CBE

D5609CBE é a minha chave, substitua este valor pelo identificador da sua própria chave.

Copie o arquivo signing.asc para o servidor:


$ scp signing.asc debian.joenio.me:~/debian.joenio.me/

Crie arquivo ~/.dput.cf em seu $HOME:

[debian.joenio.me]
fqdn = debian.joenio.me
method = scp
login = *
incoming = ~/debian.joenio.me/mini-dinstall/incoming
allow_unsigned_uploads = 0
post_upload_command = ssh debian.joenio.me mini-dinstall -b && sign-remote --no-batch debian.joenio.me:debian.joenio.me/unstable/Release

Os pacotes serão assinados com a chave GnuPG ao serem enviados pelo dput ao servidor. Isso será feito pelo script sign-remote disponível aqui. Copie este arquivo em seu computador e adicione a localização dele ao $PATH, se não sabe do que estou falando leia isso.

O dput irá reclamar se a distribuição do pacote não for unstable, isto é definido no arquivo changelog do pacote, veja o capítulo 4 Required files under the debian directory no Guia do Novo Mantenedor Debian para entender como fazer isso.

Bem, aqui já temos tudo pronto para fazer upload dos nossos pacotes ao servidor, basta executar o seguinte comando:


$ dput debian.joenio.me <pacote>.changes

Isto irá copiar o pacote .deb e o arquivo .changes dele, irá atualizar os arquivos Sources e Packages com as informações do pacote e irá assinar o arquivo Release com a chave pública GnuPG.

Disponibilizando acesso ao repositório publicamente

Até aqui já temos um repositório com pacotes hospedados, mas sem acesso público aos pacotes ninguém poderá utilizá-lo. Para resolver isto vamos configurar acesso via HTTP usando o servidor web Nginx.

Instale o Nginx no servidor:


# apt-get install nginx

Crie o arquivo de configuração /etc/nginx/sites-available/debian.joenio.me:

server {
  server_name debian.joenio.me;
  access_log /var/log/nginx/debian.joenio.me.access.log;
  location / {
    root /home/joenio/debian.joenio.me;
    autoindex on;
  }
}

Habilite o arquivo de configuração e reinicie o serviço:


# cd /etc/nginx/sites-enabled/
# ln -s /etc/nginx/sites-available/debian.joenio.me
# service nginx restart

Com o Nginx configurado e rodando já temos o repositório e seus pacotes disponíveis no seguinte endereço:

Testando o repositório e instalando pacotes

Para usar este repositorio adicione as seguintes entradas no /etc/apt/sources.list do computador local:

deb http://debian.joenio.me unstable/
deb-src http://debian.joenio.me unstable/

Adicione a chave de assinatura ao banco de dados de segurança do APT:


# wget -O - http://debian.joenio.me/signing.asc | apt-key add -

Atualize a lista de pacotes e teste a instalação de algum pacote disponível no repositório:


# apt-get update
# apt-get install <pacote>

Pronto, temos o nosso próprio repositório de pacotes Debian disponível publicamente. Você pode agora publicar qualquer pacote que esteja criando e divulgar o endereço do repositório para que outros usuários Debian possam instalar os seus pacotes mais facilmente.

Na wiki do Debian em How to setup a Debian repository tem uma lista de ferramentas para configuração de repositórios Debian, não usei a maioria das ferramentas listadas lá, mas dentre elas o aptly parece uma boa opção para criar repositório pessoal de pacotes Debian e pode ser uma boa alternativa para o setup descrito aqui neste post.

Sobre a foto no título deste post: Os cubos (pacotes) de papel utilizados na imagem foram feitos seguindo o tutorial "Como Fazer um Cubo de Origami" .


Computação Brasil #27: Software Livre

24 de Junho de 2015, por PSL-BA Feeds - 0sem comentários ainda

A Computação Brasil é revista publicada pela Sociedade Brasileira de Computação (SBC), e publica edições temáticas cobrindo assuntos importantes na Computação. A ultima edição, de número 27, é dedicada ao Software Livre.

Citando o editorial, escrito pelo professor Paulo Roberto Freire Cunha, presidente da SBC:

Software Livre é hoje um assunto importantíssimo para toda a sociedade, ultrapassando a questão ideológica e tornando-se um ecossistema complexo e de interesse global, que inclui pesquisa científica, educação, tecnologia, segurança, licença de uso e políticas públicas.

Um ponto fundamental é o impacto que ele gera no mercado, atuando hoje como um facilitador para milhares de startups em todo o mundo. Por isso, tem um papel essencial num país como o Brasil, onde o sucesso do empreendedorismo e da inovação tecnológica está diretamente ligado à redução de custos, à criatividade e à flexibilidade.

Para destacar o assunto, a revista traz diversos especialistas que mostrarão as mais recentes análises e pesquisas sobre Software Livre, com o propósito de estimular o leitor a fazer uma reflexão sobre o futuro do desenvolvimento de plataformas com código aberto e suas aplicações em diferentes frentes.

Eu e o Paulo escrevemos juntos 2 textos para esta edição. O primeiro, com co-autoria da professora Christina Chavez, que foi minha orientadora de doutorado, é sobre Controle de Qualidade em projetos de software livre. O segundo, em autoria com o Rodrigo Maia, é sobre a reformulação do Software Público Brasileiro, projeto no qual trabalhamos juntos desde a metade e 2014.

A versão online da revista é meio tosca, se como eu você não tiver Flash instalado (não tenho idéia de como seja a versão com Flash). Mas a versão em PDF é bem razoável.



Será que esse modelo de containers é um Hype?

11 de Junho de 2015, por PSL-BA Feeds - 0sem comentários ainda

Na informática tudo as vezes parece muito fluído. Coisas nascem rapidamente e morrem as vezes na mesma velocidade. Algumas tecnologias que prometem muito e as vezes se percebe que grande parte é uma grande obra de marketing ou algo parecido.

no-hypeQuando a ideia de trabalhar com containers me foi apresentada, através do uso do Docker, e como as pessoas já estavam eufóricas fora do Brasil sobre esse assunto, me deixou um pouco com a antena ligada, que talvez fosse esse mais hype da nossa área. Sendo assim fui pesquisar com certo receio.

Ao testar pela primeira vez seu uso, percebi que tinha grande potencial, que tecnicamente a ideia é muito boa e toda cadeia de serviço que vem embutido no modelo faz muito sentido para a nova cultura DevOps que vem se desenhando há certo tempo.

Talvez você não confie nas minhas previsões, pois sou somente um soteropolitano comedor de acarajé  Talvez as notícias abaixo deixem você mais convencido:

Containers and Microservices Force VMware To Ship A Linux Distribution

Veja que estamos falando da grande VMWare, que é dona de uma enorme fatia de mercado.

Intel takes on CoreOS with its own container-based Linux

A Intel não me parece ser uma empresa que aposta em hypes :) E criar sua própria distribuição GNU/Linux para atender essa demanda de mercado quer dizer muita coisa pra mim.

Google gets a jump on Microsoft and Amazon with Container Engine

Nem preciso falar do tamanho da Google, não é? Sei que ela acaba testando muita coisa, e uma parte acaba por ser Hype mesmo (Google Glass?), mas ela usar como serviço indica bastante coisa pra mim.

Microsoft Unveils New Container Technologies for the Next Generation Cloud

Assim como a Google, a Microsoft está apostando nesse modelo para seu serviço e vale lembrar que de todas essas empresas, a MS é a empresa mais conservadora, ou seja, se até mesmo a MS está apostando nisso, quem pode duvidar desse sucesso?

 



Zyne is now in Debian

9 de Junho de 2015, por PSL-BA Feeds - 0sem comentários ainda

Zyne is a modular synthetizer written in Python. Anyone can create and extend its modules using the Pyo library. Zyne's GUI is coded using WXPython and will look nicely in GNU/Linux, Mac and Windows systems. It's written by the same author of Pyo, and together with Cecilia and Soundgrain is part of an amazing set of libre tools for sound synthesis and electronic music composition.

/images/zyne-screenshot.png

Zyne loading 6 of its 14 default modules

Zyne package is result of a successful one-day event called MicroDebconf Brasilia 2015, being created during a track about packaging and QA leaded by Eriberto Mota and Antonio Terceiro.