[Gelistirici] pardus'un kurulum hızının arttırılması

Gürer Özen gurer at pardus.org.tr
26 Oca 2008 Cmt 15:55:45 EET


On Saturday 26 January 2008 12:49:36 Huseyin Akcan wrote:

> Bu işi yapmak için iki şey gerekiyor, tabii CD'ler yazılmadan öncesi
> için konuşuyorum, birincisi PISI'den kurulacak tüm paketlerin
> topolojik sırasını alıp bir dosyaya sırasıyla satır satır yazmak ve
> sonra bu dosyayı ters sıralayıp satırlara sıra numarası eklemek.
> İkinci olarak ise pardusman'la CD hazırlarken mkisofs'e --sort
> parametresi ile bu hazırladığımız dosyayı geçirmek.

Tamamen Pardusmanın içinde çok basitçe yapılabilir bu iş.

[0] dosyasında bağımlılıklar arasında Cycle olup olmadığını detect eden bi kod 
var. dep_graph = Digraph() ile başlıyor. Orada bütün depo içinde Cycle 
arıyor. Bu Digraph kodu pisiden kullanılıyor zaten.

Hemen peşinden gelen make_index(self, package_list) ise asıl kurulum için 
seçilen paket listesi. İşte bu make_index içinde yukardaki gibi graph 
oluşturulup, dep_graph.topological_sort() ile kurulum sırasına göre paket 
adlarından oluşan listeye ulaşılabilir. Sonra bunu reverse() edip [1] 
içindeki make_iso() fonksiyonunda mkisofs çağrılan yere parametre olarak 
verilebilir.

Ne kadar hız kazancı olacağını deneyip görmek lazım.

[0] http://svn.pardus.org.tr/uludag/trunk/pardusman/src/packages.py
[1] http://svn.pardus.org.tr/uludag/trunk/pardusman/src/maker.py



Gelistirici mesaj listesiyle ilgili daha fazla bilgi