Chciałbym dodać najnowszy pakiet dla smakoszy z sid Debiana do PPA naszego zespołu, aby użytkownicy Ubuntu, którzy chcieliby uruchomić aktualną wersję Gourmet, mogli dodać ten PPA do swoich źródeł oprogramowania. (Zależnie od zależności, nie powinno to stanowić większego problemu, ponieważ prawie wszystkie nasze obecne zależności są już dostępne we wszystkich obecnie obsługiwanych wersjach Ubuntu.)
Pobrałem *.dsc
plik oraz pliki tar debian i orig, a nawet doszedłem do wniosku, że mogę użyć tego do source.changes
pliku pakietu . Pobrałem również klucz publiczny opiekuna Debiana, aby dput
sprawdzić poprawność pakietu. Następnie próbowałem załadować pakiet do naszego PPA przy użyciu dput ppa:~gourmet/ppa gourmet_0.17.3-1_source.changes
(próbowałem również bez tilda). Wyglądało na to, że się udało, ale nie dostałem e-maila z potwierdzeniem i żadne pakiety nie są teraz wyświetlane w naszym PPA , co prowadzi mnie do przekonania że pakiet został odrzucony, ponieważ klucz opiekuna Debiana oczywiście nie znajduje się wśród kluczy członków naszego zespołu.
Więc jaki jest najprostszy sposób na „skopiowanie” pakietu z Debiana (sid) na PPA Launchpad? Czy naprawdę muszę odbudować cały pakiet lokalnie, zanim będę mógł go załadować?
Odpowiedzi:
Przed przesłaniem musisz odbudować pakiet źródłowy lokalnie, aby dostosować dziennik zmian i ponownie wygenerować plik zmian. Chociaż ponieważ backportowanie pakietu jest dość powszechnym zadaniem, zostało to skrypty. Sprawdź pakiet
backportpackage
poleceń ubuntu-dev-tools .Aby backportować pakiet z Debiana, po prostu podaj docelową serię dystrybucji, PPA i plik dsc dla pakietu:
Jeszcze prostsze jest przeniesienie pakietu z jednej wersji Ubuntu do innej, ponieważ nie trzeba znajdować pliku dsc. Powiedzmy, że chcemy cofnąć się z utopii na zaufaną:
źródło
~gourmet/ppa
jako argument do-u
parametru. (Ale na szczęście udało mi się skopiować go z mojego PPA do zespołu Gourmet przez Launchpad.)Można to zrobić na kilka sposobów.
Kiedy zrobiłem to dla Rhythmbox, postępowałem według następującego przepisu:
za. Weź plik źródłowy i pliki debian
b. Rozpakuj źródło (.orig.tar.xz)
do. zmień nazwę folderu źródłowego na np
rhythmbox-3.0.3
do. rozpakuj plik debian (.debian.tar.xz)
re. przenieś folder debian do katalogu źródłowego
mi.
dch -i
zmienić plik dziennika zmianfa. zmień nazwę „niestabilnego” pakietu na nazwę celu Ubuntu - tutaj użyłem precyzyjnego dla 12.04. Zmień wersję odpowiednio do swojej aplikacji. Tutaj rhythmbox to 3.0.3 - więc właśnie dodałem
-1~ppafossfreedom
sol. utwórz nowy pakiet źródłowy:
dh_build --createorig
h. Zbuduj tylko źródło za pomocą klucza:
debuild -S -k0xABCDEFG
gdzieABCDEFG
jest twój kluczja. prześlij swój pakiet do budowy:
źródło
dget
polecenie zdevscripts
pakietu. Uprości to nieco.dget
=) Plik dsc zawiera wszystkie informacje o innych częściach pakietu źródłowego. Więcdget
weźmie wszystko i wyodrębni poprawnie, jeśli podasz link do pliku dsc.dget -ux http://http.debian.net/debian/pool/main/r/rhythmbox/rhythmbox_3.0.3-1.dsc