[Gelistirici] pisi tarZ desteği
Fatih Aşıcı
fatih at pardus.org.tr
13 Haz 2010 Paz 15:15:27 EEST
Selamlar,
tar.Z arşivleri için uncompress çağırıyoruz. Çünkü bu arşivleri python
modülleri ile açmak mümkün değil. Archive sınıflarını file-like objelerle
kullanmak için birkaç değişiklik yapacağım; ancak tar.Z için ayrı process
çağırdığımızdan gerçek bir dosyaya ihtiyacımız var. Dolayısıyla eklemek
istediğim özellik üzerinde bu bir engel.
Depoları araştırdım. Hiçbir paket tarZ arşivi kullanmıyor. Yukarıda sözünü
ettiğim özelliği şu anki haliyle de bir şekilde eklerim; ama ortaya çıkacak
kod çok kötü olacak. Kullanılmayan bir özellik için buna değmeyeceğini
düşünüyorum.
tarZ desteğini trunk'ta atacağım. Eğer birisi, kuvvetli bir argüman gösterir
de atılmamasına karar verirsek geri alabiliriz; ancak şimdi üzerinde
çalıştığım işi bir an önce bitirmek için sileceğim.
Eklemek istediğim özelliğin ne getireceğinden de bahsedeyim. Pisi'nin depodaki
hali ile openoffice paketi kurulurken önce zip formatındaki pisi arşivi
içinden install.tar.lzma dosyasını geçici bir dizine yazıyoruz (Paket boyutu
kadar disk alanı kullandık ~65M). Sonra lzma komutunu çağırıp aynı dizinde
eskisini de koruyarak install.tar dosyasını çıkartıyoruz (~250M disk alanı
daha kullandık). En sonunda da python'un tarfile modülünü kullanarak tar
arşivi içindeki dosyaları diske çıkarıyoruz.
pisi trunk'ta lzma binding'lerini kullanarak install.tar.lzma'dan direkt
dosyaları çıkartmayı sağladık. Şimdi ise yukarıda ekleyeceğim özellikle hiç
geçici dosya kullanmadan doğrudan zip arşivi içindeki install.tar.lzma'yı
diske açmayı düşünüyorum. Tahmin edebileceğiniz gibi bu değişiklikler kurulum
zamanındaki disk kullanımını önemli derecede düşürecek.
Gelistirici mesaj listesiyle ilgili
daha fazla bilgi