quinta-feira, 14 de julho de 2011

Cartão do Cidadão no Ubuntu - parte 2


Fui à procura de como se fazia um pacote .deb e encontrei vários guias rápidos.
Fica aqui a minha versão das instruções (pode ser que na AMA se decidam a investigar e fazer um, os cartões Belga e Estónio têm pacotes no repositório Oficial Ubuntu):

  1. Criar uma pasta que servirá de base ao pacote, com o nome que se pretende dar ao pacote, no meu caso ~/development/pteid
  2. Nessa pasta criar uma pasta DEBIAN (tem que ser em maiúsculas)
  3. dentro da pasta DEBIAN, ficam os ficheiros de controlo do pacote, neste caso criei dois: control(obrigatório) e postinst.
    • O control é muito simples:
    • Package: pteid
      Priority: Optional
      Section: Internet
      Version: 0.1.23
      Architecture: i386
      Installed-Size: 2160
      Maintainer: Tiago Neiva <tneiva@gmail.com>
      Depends: pcscd, libpcsclite1, libccid
      Description: Tenta Instalar o Cartão do Cidadão no 11.04
      Homepage: http://aventurasubuntu.blogspot.com/
    • postinst cria links no final de copiar os ficheiros, código que estava no install.sh original.
  4. A fase seguinte é criar uma estrutura de ficheiros igual ao que vai ficar depois de instalar o pacote. Para fazer isto fui ver em detalhe como funciova o install.sh (não comento a qualidade do script porque também não sou perfecionista). Adaptei o install.sh por forma a copiar os ficheiros para o directório do pacote em vez do destino real. No final a árvore de diretórios ficou assim:
  5. usr
    usr/local
    usr/local/bin
    usr/local/bin/eidstore
    usr/local/bin/eidstore/cert
    usr/local/bin/eidstore/certs
    usr/local/bin/imageformats
    usr/local/bin/ims
    usr/local/bin/imageformats
    usr/local/bin/images
    usr/local/bin/translations
    usr/local/include
    usr/local/include/pteid
    usr/local/lib
    usr/local/lib/pteid_jni
    usr/local/lib/pteidpp
    usr/share
    usr/share/applications
    usr/share/pixmaps
  6. Fiz uma pequena melhoria, criei um ficheiro pteid.desktop e coloquei na pasta usr/share/aplications e copiei o icon para usr/share/pixmaps para a aplicação Cartão do Cidadão aparecer na pesquisa de aplicações.
  7. Pormenor importante, mudar o dono e as permissões da pasta do pacote:
  8. cd ~/development
    sudo chown -R root:root pteid
    sudo chmod -R 0755 pteid
  9. No final empacotar tudo com 
  10. dpkg --build pteid
E temos um pacote .deb que funciona no 11.04 com o leitor que vendem com o cartão do cidadão.
Atenção esta instalação só garante o funcionamento da aplicação do cartão do cidadão, para por o firefox a funcionar é necessário configurar o mesmo de acordo com o manual que fornecido no site do cartão.

Não vou colocar para redistribuição pois não fui ver os detalhes de licenciamento.

Alguns links que usei:
Artigo de como fazer pacotes deb
O guia completo para quem desenvolve para Ubuntu.

Sem comentários:

Enviar um comentário