Diğer paketleri otomatik olarak yükleyen bir meta paket nasıl oluşturulur?


Yanıtlar:


47

Bunun gibi bir meta equivs paket, sadece bağımlılık bilgisine sahip bir paket oluşturacak olan bir araçla oluşturulabilir .

İlk önce bir dizin oluşturun:

mkdir my-metapackage
cd my-metapackage/

Şimdi programı çalıştırın:

equivs-control ns-control

Bir dosya oluşturacak ns-control, bu dosyayı metin editörünüzle açacaktır. Eğer onun sahip olmalıdır oluşturmak kontrol dosyası Dependsveya Recommendsçizgiler kurulmasını istediğiniz paketlerin bağımlı değiştirilme:

Section: misc
Priority: optional
Standards-Version: 3.9.1

Package: my-metapackage
Version: 1.0   
Depends: openssh-server, gedit
Description: This package installes an ssh server and a text editor
 The Long description of this package ends with a newline!

(Sadece bir örnek, daha fazla bilgi eklemelisiniz)

Ve son olarak, çalıştırarak paketi derleyin

equivs-build ns-control

Paketiniz adresinde yer almaktadır my-metapackage/my-metapackage_1.0_all.deb.

Ayrıca bir kaynak paket oluşturmak istiyorsanız, --fullseçenek equivs-buildörneğin equivs-build --full ns-control; Bu debuild kullanır ve ayrıca .dsc & .tar.gz dosyaları oluşturur.

Bir PPA'ya yükleyebileceğiniz bir kaynak .changes dosyası oluşturmak için kaynak paketi ile çıkartın ve oluşturun.

dpkg-source -x my-metapackage_1.0.dsc
cd my-metapackage-1.0
debuild -S

Ns-kontrolünde belirlediğiniz Koruyucunuz GPG anahtarınızla eşleşiyorsa, PPA'nıza giriş yapmanız için benim metapackage_1.0_source.changes dosyasını oluşturup imzalamalıdır.


Çok teşekkürler. Bunu daha sonra test edeceğim, ancak şimdiye kadar, talimatlar çalıştı. :)
Thomas Ward

2
Mükemmel çalışıyor!
Stefano Palazzo

Cevabınız için teşekkürler, ajmitch, ama sadece nedenlerden ötürü, bir ~/.devscriptsdosyanız varsa ve özel olarak devscripts dosyasında kullanmak için farklı bir GPG anahtarı tanımladığınızda, dpkg / debuild işleminde OVERRIDE olacak ve bu dosyaya sahip olacak. belirtilen özel GPG anahtarını kullanın .devscripts. Cevabınızdaki son cümle için dikkat çekici bir nokta olarak
Thomas Ward

Paketleri altına koymanın, Depends:yalnızca paketler mevcutsa ve kurulumun iyi yapıldığını fark ettim ; benim makinede değilse, onları yüklemiyor. Onları kurmak için kullandım Providesve bir cazibe gibi çalışıyor. Koduma
Riccardo
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.