Como criar um servidor de repositório

criar um servidor de repositório

Pra fechar a série de instalação e mantenimento de seus próprios programas no Raspberry, vamos agora ver como criar um servidor de repositório para instalá-los utilizando apt.

Criar um servidor de repositório

Seu repositório poderá ser acessado inclusive da web, bastando fazer um port forwarding em seu roteador WiFi. Não experimentei, mas acredito que junto a um serviço como o no-ip seja possível acessar por URL.

Instalar um servidor web

Em sua rede interna, aí sim dá pra acessar facilmente por nome. Por exemplo, configurando um servidor DNS em sua rede local, que melhorará sua navegação na Internet e resolverá nome para seus dispositivos domésticos.

Sugiro o nginx. Ele é leve e robusto, além de ser um ótimo load balancer. Já o usei para gerenciar alguns milhões de dispositivos da Oi. Simplesmente instale-o através do gerenciador de pacotes do Linux, seja no Raspberry ou em um desktop rodando algum Linux baseado em Debian.

sudo apt-get install nginx

Após instalar, o serviço já deve ser iniciado automaticamente. Para testar, abra um browser e digite:

http://127.0.0.1

Deve carregar algo como:

nginx - criar um servidor de repositóriodpkg -r seu_pacote

Copie seu pacote para o servidor web

O diretório padrão do servidor web é /var/www/html. Copie seus pacotes para esse destino, acrescido do diretório debian; como criei apenas um no artigo passado:

sudo mkdir /var/www/html/debian
sudo cp arquivo-png-0.1.deb /var/www/html/debian/

Crie uma lista de pacotes disponíveis para instalação

Agora devemos gerar uma lista de pacotes. Entrando no diretório /var/www/html/debian, crie a relação utilizando a ferramenta de sistema dpkg-scanpackages.

sudo su
cd /var/www/html/debian
dpkg-scanpackages . |gzip -c9 > Packages.gz

O stdout dessa execução deve retornar algo como:

dpkg-scanpackagesAdicione seu repositório ao apt

Estando conectado ao Raspberry, torne-se root, edite o arquivo de repositórios e adicione o seu, seja por IP ou por nome, então faça o update:

sudo su
cd /etc/apt
echo "deb [trusted=yes] http://dobitaobyte.local/debian ./" | tee -a /etc/apt/sources.list > /dev/null
apt-get update

A saída deve resultar em algo como:

Comments are closed, but trackbacks and pingbacks are open.