Como posso iniciar meu próprio repositório

18

Sou um desenvolvedor ávido, mas nunca cheguei a montar meu próprio PPA - como alguém faria isso? Problemas comuns encontrados? Como faço para que meu código-fonte seja compilado em pacotes no PPA?

Marco Ceppi
fonte

Respostas:

15

Registre-se no Launchpad como o txwikinger disse, então você precisa gerar uma chave GPG

gpg --gen-key

e faça o upload para o servidor de chaves do Ubuntu

gpg --keyserver keyserver.ubuntu.com --publish-keys $KEYID

Substituindo $KEYIDpelo número após a barra na linha "s" de:

gpg -K --fingerprint

Clique no verde + ao lado da parte da chave GPG do seu perfil e dê a impressão digital da chave do comando anterior. Você receberá um email criptografado. Descriptografá-lo (configure sua chave GPG no seu cliente de email para facilitar isso) e clique no link interno para verificar se você possui a chave.

Clique na página launchpad.net para criar um novo PPA

Siga os guias de embalagem vinculados ao Source Lab, mas ao contrário do que o Txwikinger disse, você não fará o upload de uma deb. Isso porque um deb é um pacote binário e os PPAs recebem pacotes de origem. Depois de obter os 4 arquivos necessários (/ debian / rules / debian / changelog / debian / control e / debian / copyright) no diretório de origem e um tarball original da fonte fora dele, execute

debuild -S -sa

Um pacote de origem será gerado consistindo em um arquivo .debian.tar.gz (se estiver usando o formato de origem 3.0) ou .diff.tar.gz, juntamente com um arquivo .dsc e .changes. As alterações .dsc e .c precisam ser assinadas, portanto, você precisará digitar sua senha do GPG duas vezes. A -sasó é necessária na primeira vez que carregar esse pacote para o PPA. Revisões posteriores, você pode vivê-lo.

Então você irá executar:

dput ppa:youruser/ppa *.changes

Obviamente, preencha seu próprio nome de usuário e, se você escolher um nome personalizado para o PPA, coloque-o após a barra. A página do PPA no Launchpad informará a sintaxe exata do ppa:

maco
fonte
Em 14,04 gpg --keyserver keyserver.ubuntu.com --publish-keys $KEYIDvai acabar com um erro: gpg: Invalid option "--publish-keys". Deve-se usar o --send-keyslugar:: gpg --keyserver keyserver.ubuntu.com --send-keys $KEYIDconforme askubuntu.com/questions/220063/… .
landroni
4

Existem algumas ferramentas para ajudá-lo a fazer upload de arquivos de origem tarballs + debian control-files para o seu PPA na barra de ativação. E isso vai lhe dizer como . Mas o upload do pacote é uma parte muito pequena de tudo ...

Configurar um ambiente de compilação e uma infraestrutura de pacotes debian (.deb) não é uma coisa simples! Requer um bom entendimento da estrutura do pacote e como funcionam os diferentes tipos de scripts (em particular os scripts Make e Shell).

Eu descobri que esses dois guias são muito úteis quando eu empacotei o
guia de empacotamento Ubuntu do .deb Guia de
novos mantenedores do Debian

Cuidado para ler todo o guia de pacotes do Ubuntu completamente e você deve estar no caminho da vitória!

LassePoulsen
fonte
0

Você se registra para uma conta em https://launchpad.net em sua página inicial e pode iniciar seu próprio ppa. O ppa está hospedado na barra de ativação.

Você compila suas fontes criando um .debpacote e carrega -o no seu ppa com o dputcomando O pacote será compilado automaticamente pelo farm de compilação da barra de ativação e estará disponível em várias plataformas.

Mais informações sobre embalagens podem ser encontradas no wiki sobre embalagens .

txwikinger
fonte
Eu acho que isso é mais o que eu estava interessado. Eu sei que o ppa usa o Bazaar para controle de origem (eu acho), então apenas envio o meu código ao PPA e BLAM! Pacotes, ou estou simplificando isso?
Marco Ceppi
11
Bazar e ppa são duas coisas diferentes. Você pode usar o bazaar para controlar a revisão de seu pacote completo (incluindo os addons .deb para gerenciamento de pacotes), mas o bazaar não precisaria dele por si só, nem a embalagem para você. O Bazzar é basicamente um ramo central do seu controle de revisão bzr que possui gerenciamento adicional de direitos do usuário por meio da barra de ativação.
precisa saber é o seguinte
O bzr é como o git, mas mais fácil. Não está realmente relacionado à embalagem. Agora existem receitas para compilações diárias do bzr disponíveis para os testadores beta do Lauchpad, mas você ainda precisa criar uma filial de embalagens.
maco 14/08/10