Criando repositórios e pacotes assinados

Uma das razões para reformular o LabFis era a falta de suporte a um sistema de metapacotes que permitisse a modularização na sua instalação. Sendo assim, na primeira versão do TropOS optou-se por criar um repositório onde seriam hospedados metapacotes referentes à diversas aplicações e a partir de uma instalação básica do Debian 8.0 transformar o sistema operacional em TropOS com os pacotes desejados, dessa forma reduzindo o tamanho da imagem para conter somente os pacotes necessários e eliminando a necessidade de um instalador específico para o TropOS.

Nessa página está documentado o desenvolvimento do repositório e dos pacotes.

Entendendo o estilo Debian de repositórios

A primeira etapa para criar o nosso repositório foi entender os padrões usados pela comunidade e o que seria mandatória na nossa implementação.

Assinatura com chaves encriptadas

Ainda que seja possível configurar repositórios não assinados é uma prática muito difundida e recomendada assinar tanto repositórios quanto pacotes, de maneira a garantir segurança às transferências de arquivos.

Uma chave(key) é criada usando o prorama PGP (ou o alternativo GPG, totalmente compatíveis) que gera uma sequência de caracteres de até 4096 bytes a partir da entropia gerada pela máquina. Uma versão encriptada da chave é salva no computador (a chave privada) e é possível criar uma versão publicável da chave (chave pública).

Quando cria-se um repositório assinado fica associado a ele uma dessas chaves e basta o usuário salvar uma cópia pública dessa chave em sua máquina para garantir que as transferências sejam feitas de maneira segura.

Todas chaves criadas para assinar os projetos relacionados ao TropOS até o momento foram chaves RSA de 2048 bytes criadas usando a ferramenta GnuPG(gpg)

A estrutura de arquivos

Os repositórios de pacotes do Debian tem uma estrutura de arquivos particular e para facilitar a sua configuração existe um pacote chamado reprepro que é capaz tanto de criar repositórios seguindo a "Debian-way" quanto adicionar e remover arquivos .deb, .udeb, .dsc, etc.

Com o reprepro devidamente instalado basta fornecer um arquivo de configuração que ele cria toda a arquitetura necessária.

Os pacotes e repositórios relacionados ao projeto TropOS foram criados usando a versão mais recente (jessie) e suportando arquiteturas de 32 e 64 bits, além de usar somente o repositório main para uscr possíveis dependências. Todos pacotes e repositórios foram devidamente assinados.

Criando os metapacotes

TODO: -comentar desenvolvimento do script de metapacotes
-explicar como funcionam metapacotes