PPA ve Paketleme: Birden fazla dağıtım için paket sürümlerine sahip olmak


36

(sohbetten alıntı)

İlişkili olduğum bir IRC bot projesinin kaynak paketleri için fırlatma panelinde bir PPA aldım (sürümler arasındakiler için tüm ara ambalajları olduğundan, "deneysel" PPA olarak sınıflandırılıyor). Soru: Zaten berrak bir yapı için malzemeleri paketledim. Maverick için paketlemek ve berrak paketlemeye koyduğum PPA'ya koymak dışında, aynı ambalajları nasıl oluşturabileceğime dair bir ipucu var mı?

Yanıtlar:


41

Muhtemelen en kolay yol, Launchpad'deki ikili dosyaları kopyalamaktır.

  1. PPA'nıza gidin ve 'Paket ayrıntılarını görüntüle' seçeneğini tıklayın:

    görüntü tanımını buraya girin

  2. 'Paketleri kopyala' üzerine tıklayın:

    görüntü tanımını buraya girin

  3. Lucid paketlerini seçin:

    görüntü tanımını buraya girin

  4. Seri için 'Maverick'i seçin ve' mevcut ikili dosyaları kopyalayın 'seçeneğini seçin:

    görüntü tanımını buraya girin

  5. 'Paketleri kopyala' üzerine tıkla, hepsi bu!


Çok teşekkürler. Talimatların çok açıktı . Hızlı cevap için çok teşekkürler.
Thomas Ward

@Evil: Sorun değil. Yardımcı olduğuma sevindim!
Nathan Osman

4
BURAYA BAĞLANAN DİĞER SORULAR İÇİN NOT !!! Mevcut ikili dosyaları kopyalamak, ubuntunun diğer sürümleri için yazılmış programlar için HER ZAMAN ÇALIŞMAYACAK! Ne demek istediğimi anlayabilmek
Thomas Ward

@ThomasWard: İyi nokta - her zaman işe yaramaz.
Nathan Osman,

2
@KhurshidAlam Süper süper geç cevap için özür dilerim. Bu bir "Geçersiz Değişiklik" ile başarısız olur ve bu nedenle, farklı bir sürümde bir PPA kullanırken her birini ayrı ayrı etiketlemeniz gerekir. [ launchpad.net/~nginx/+archive/stable ] ( launchpad.net/~nginx/+archive/stable ) buna iyi bir örnektir, çünkü bunu oluşturmak için dağıtımı sürdürebilmek için sürüm eklemeliyim tüm farklı kütüphanelerle doğru. (Şimdilik nginx ekibinin ppas'ını korudum, bu yüzden bunu örnek olarak kullanıyorum.)
Thomas Ward

11

Oluşturduğunuz paket için ikili dosyaları kopyalamak işe yaramazsa, debian/changelogdosyayı düzenleyerek her dağıtım sürümü için bir kaynak paket yüklemeniz gerekir .

Başka Bir Distro Sürümü İçin Yeniden Paketleme

  1. Edit debian/changelogkaynak paket dizinine
  2. Değişim hem versiyonunu ve hedef dağılımı için inşa ediyoruz dağıtıma hangi yansıtmak için

    Örneğin:nginx (1:1.4.1-0ubuntu1~preciseppa1) precise; urgency=low
  3. Kaynak paketi yeniden oluşturun: debuild -S
  4. PPA'nıza .changesdosya yükleyin :dput ppa:teward/nginx-stable-testing ../nginx_1.4.1-0ubuntu1~preciseppa1_source.changes

Derleme başarılı olursa tebrikler, o dağıtım için bir paket hazırladınız! Değilse, Başlatma Çubuğundaki yapı günlüğünü kontrol etmeniz ve bulduğunuz sorunları gidermeniz gerekir.

Referanslar:


Bu benim işim! : D MOTU'lar (evrenin deposunun tanrıları), PPA'daki farklı nginxprogramlar ve diğer programlar yapmam gerektiğinde bunu açıkladılar ve sorunlarımın çoğunun çözülmesine yardımcı oldular. Bunu gönderdiğiniz için teşekkür ederiz! :)
Thomas Ward

Evet, bunun tüm debian paketleme araçlarını, PPA yüklemelerini, konvansiyonlarını ve hata ayıklama başarısız yapılarını kullanmak için dik bir öğrenme eğrisi olabileceğinden, bunun yeni paketleyicileri belgelemek ve mümkün kılmak için yararlı bilgiler olacağını düşündüm.
TrinitronX

Aslında. Yine de kabul edilen cevabı değiştirmiyorum, çünkü bu soru sırasında, Ubuntu'nun çeşitli versiyonlarında mevcut olan çeşitli kütüphaneler için endişelenmenize gerek yoktu. İle nginxya da rkhunterdiğer paketler veya ben backport genellikle büyük bağımlılıklar (farklı bir adrese sorunu var depends:hep kullanmak bu nedenle, denetim dosyasında ve böyle) programversion-1~RELEASE0ben den backport zaman .. Genellikle ~ RELEASE0 hep İçinde verilen sürümüyle bazı sayıdır Ubuntu'dan Debian'a durum böyle :)
Thomas Ward

Evet, bağımlılıklar kesinlikle geridönüş için bir acı noktasıdır ;-) Kabul ediyorum, çoğu durumda kabul edilen cevabın yeterli olması gerektiği ve Launchpad'in bzr-yapıcı reçetesinin kullanılmasıyla pazar kaynağı kontrol repoları kullanıcıları için de cazip görünüyor. Ancak, birçok bağımlılığa sahip paketler söz konusu olduğunda, bazen hedef dağıtımınız için özel bir paket oluşturmanız gerekir.
TrinitronX

Ve nginxDebian'ın Kararsız'dan Kesin, Quantal, Raring ve Saucy'ye (ve bir PPA'ya güveniyorum) destek veriyorum, ancak ayrıca Debian'ın donmasına kadar, NGINX ekibi için Debian'ın bir araya geldiği: P'nin de güveneceğinden eminim: ama ne yazık ki bazen düzeltemediğim hatalar var ve Debian'ın uğraşması gereken ... bu nedenle
Thomas Ward
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.