Come posso avviare il mio repository


18

Sono uno sviluppatore avido, ma non sono mai riuscito a creare il mio PPA: come farebbe qualcuno? Problemi comuni riscontrati? Come posso compilare il mio codice sorgente in pacchetti sul PPA?

Risposte:


15

Registrati su Launchpad come ha detto txwikinger, quindi devi generare una chiave GPG

gpg --gen-key

e caricalo sul keyserver di Ubuntu

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

Sostituendo $KEYIDcon il numero dopo la barra sulla riga "sec" di:

gpg -K --fingerprint

Fai clic sul + verde accanto alla parte chiave GPG del tuo profilo e assegnagli l'impronta digitale chiave dal comando precedente. Riceverai un'email crittografata. Decifralo (configura la tua chiave GPG nel tuo client di posta per renderlo più semplice), quindi fai clic sul link all'interno per verificare di essere il proprietario della chiave.

Fai clic sulla tua pagina launchpad.net per creare un nuovo PPA

Segui le guide al packaging collegate a Source Lab, ma a differenza di quanto affermato da Txwikinger, non caricherai un deb. Questo perché un deb è un pacchetto binario e i PPA prendono i pacchetti sorgente. Dopo aver ottenuto i 4 file necessari (/ debian / rules / debian / changelog / debian / control e / debian / copyright) nella directory dei sorgenti e un tarball originale dei sorgenti all'esterno, esegui

debuild -S -sa

Verrà generato un pacchetto sorgente costituito da un .debian.tar.gz (se si utilizza il formato di origine 3.0) o .diff.tar.gz insieme a un file .dsc e un file .changes. I .dsc e .changes dovranno essere firmati, quindi dovrai inserire la passphrase GPG due volte. È -sanecessario solo la prima volta che carichi quel pacchetto sul PPA. Revisioni successive, puoi viverlo.

Quindi eseguirai:

dput ppa:youruser/ppa *.changes

Ovviamente compilando il tuo nome utente e se hai scelto un nome personalizzato per il PPA, inseriscilo dopo la barra. La pagina di PPA su Launchpad ti dirà l'esatta ppa: sintassi.


In 14.04 gpg --keyserver keyserver.ubuntu.com --publish-keys $KEYIDsi concluderà con un errore: gpg: Invalid option "--publish-keys". Si dovrebbe usare --send-keysinvece :,gpg --keyserver keyserver.ubuntu.com --send-keys $KEYID come da askubuntu.com/questions/220063/… .
landroni,

4

Ci sono alcuni strumenti che ti aiutano a caricare tarball di origine + file di controllo debian sul tuo PPA su launchpad. E questo ti dirà come . Ma caricare il pacchetto è una parte molto piccola di tutto ...

Configurare un ambiente di compilazione e un'infrastruttura del pacchetto debian (.deb) non è una cosa semplice! Richiede una buona comprensione della struttura del pacchetto e di come funzionano i diversi tipi di script (in particolare gli script Make e Shell).

Ho trovato queste due guide molto utili quando ho confezionato la
guida al packaging di Ubuntu .deb
nuova guida per i manutentori di Debian

Fai attenzione a leggere attentamente tutta la guida al packaging di Ubuntu e dovresti essere sulla buona strada per la vittoria!


0

Ti registri per un account su https://launchpad.net sulla tua home page e puoi avviare il tuo ppa. Il ppa è ospitato su launchpad.

Compila le tue fonti creando un .debpacchetto e caricalo sul tuo ppa con il dputcomando. Il pacchetto verrà quindi compilato automaticamente dalla farm di compilazione del launchpad ed è disponibile su diverse piattaforme.

Maggiori informazioni sul packaging sono disponibili nel wiki sul packaging .


Penso che questo sia più ciò che mi interessava. So che il ppa usa Bazaar per il controllo del codice sorgente (penso), quindi devo solo spingere il mio codice su PPA e BLAM! Pacchetti o sto semplificando questo?
Marco Ceppi

1
Bazaar e ppa sono in qualche modo due cose diverse. Puoi usare bazaar per controllare la revisione del tuo pacchetto completo (inclusi i componenti aggiuntivi .deb per la gestione dei pacchetti), ma bazaar non ne avrebbe bisogno di per sé, né fare il pacchetto per te. Bazzar è fondamentalmente un ramo centrale del tuo controllo di revisione bzr che ha una gestione aggiuntiva dei diritti degli utenti tramite launchpad.
txwikinger,

bzr è come git ma più facile. Non è realmente legato al packaging. Ci sono ricette per build giornaliere da bzr ora disponibili per i beta tester Lauchpad, ma è ancora necessario creare un ramo di confezionamento.
maco,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.