DEB Paketlerinin Düzenlenmesi ve Yeniden Paketlenmesi
Örnek olması açısından python-gobject ve python-gobject-2 bağımlılıkları eksik olan Linux mint tarafından üretilmiş olan mintstick_1.3.9_all.deb paketini indireceğiz. Bu paketi çıkartıp, gerekli düzenlemeleri yaptıktan sonra tekrar paket haline getireceğiz.
https://mint.pkgs.org/19.1/mint-main-amd64/mintstick_1.3.9_all.deb.html
wget aracı ile indirme işlemimizi gerçekleştirip listeleyerek indirme işleminin başarıyla tamamlandığından emin olalım.
$ wget http://packages.linuxmint.com/pool/main/m/mintstick/mintstick_1.3.9_all.deb $ ls
Gerekli dizinlerimizi oluşturalım.
$ mkdir -p mint_1.4.0 mint_1.3.9/DEBIAN $ ls
Paketimizi eski paketimizin dizinine çıkaralım ve her bir dizin veya dosyanın düzenli bir şekilde görmemizi sağlayan ağaç yapısını inceleyelim.
$ dpkg-deb -x mintstick_1.3.9_all.deb mint_1.3.9/ $ tree
Kontrol bilgi dosyalarını paket arşivinden çıkaralım.
Ardından eski paketimizde oluşan DEBIAN dizinine girelim ve buradaki çıkarttığımız control dosyasını düzenleyelim
Versiyonu 1.4.0 a yükseltip 2 adet bağımlılık ekleyeceğim.
Çünkü python-gobject ve python-gobject-2 bağımlılıkları yer almadığı zaman Linux mint’in bu paketini grafik arayüz ile kullanmanız mümkün değildir. Ardından CTRL + X ile kaydedip çıkıyorum.
cat komutunu kullanarak control dosyasının içeriğini uçbirime yazdıralım ve değişikliklerimizi son kez gözden geçirelim.
Yaptığımız değişikliklerden sonra yeni bir .deb uzantılı paket oluşturalım ve listeleyerek emin olalım.
Yeni paketimizi kuralım.
$ sudo dpkg -i mint_1.4.0/mintstick_1.4.0_all.deb
Eksik bağımlılıkların otomatik olarak yüklenmesi için aşağıdaki 2 komuttan da yararlabilirsiniz.
$ sudo apt-get -f install $ sudo apt-get install --fix-broken
Yararlandığım Kaynak: https://medium.com/@kasunmaduraeng/how-to-modify-and-repack-deb-package-436f8351af41