[Gelistirici] Depo sorunları - distribution.xml / component.xml

Ekin Meroğlu ekin at pardus.org.tr
1 Nis 2009 Çar 21:09:10 EEST


Merhaba;

Kararlı ve test ikili depolarını tutarlı tutmaya çalışırken bazı temel 
dertlerimizi fark ettim, ne zamandır elle müdahale ile çözer gibi yapıyorduk 
ama artık asıl sorunları çözsek fena olmayacak :-)

** Test ve kararlı depoların obsolete listelerinin (dolayısıyla 
distribution.xml'lerinin) farklı olması gerekliliği : 

Depodan attığımız paketlerin önce test deposunda, daha sonra kararlı depoda 
obsolete işaretlenmesi gerekiyor. Şu anda test deposunu kullanan geliştirici 
ve testçiler düzgün test edebilsin diye obsolete işaretliyorum, ama o sırada 
kararlı depoya bir güvenlik güncellemesi girecek olursa o obsolete'i elle 
sil, güvenlik güncellemesini depoya alıp index oluştur, sonra obsolete'i geri 
ekle yapıyorum, bu da hataya açık bir durum. Benzer bir sorun daha önce 
obsolete işaretlenmiş bir paketi tekrar depoya alırken de karşımıza çıktı - 
virtualbox.
 
Buna hızlı çözüm önerim iki ayrı obsolete listesi tutmak 
(distribution-stable.xml /  distribution-test.xml), pisi index komutuna o 
depo için kullanması gereken dist.xml'i ayrıca belirtmek. 

** component.xml'lerin birçok yerde olması, bu dosyaları güncel ve tutarlı 
tutmak zorunluluğu : 

Şu anda bileşenlerin isimleri, açıklamaları, bu açıklamaların çevirileri ve 
bileşen sorumluları bilgileri tüm depolara yayılmış olarak duruyor. Bu 
bilgiler şu anda devel - 2008 depoları arasında bile tutarsız, herhangi 
birisinde bir güncelleme yapmak için şu anda 4 (devel, 2008, contrib-devel, 
contrib-2008 - 2009 deposu açıldığında ise 6) ayrı kaynak depoya aynı 
değişikliği yansıtmak gerekiyor.

Buna çözüm önerim(iz) ise ana bir components.xml gibi bir dosyada tüm bu 
bilgileri tutmak, Pardus / contrib tüm depoların component bilgilerini 
buradan almak. Bu dosyanın tüm Pardus depoları için tek bir tane olması 
doğrusu ama 2008 - 2009 geçişinde depo component yapısı değişeceğinden 2008 / 
Kurumsal2 ile 2009 için -bir seferliğine- ayrı olması gerekecek gibi 
görünüyor.  

Tabii pisi index yaparken bu  ana dosyayı göstermek gerekecek, bir avantaj ise 
şu anda ikili depo index'i oluştururken component bilgisi için tüm kaynak 
depoyu geziyoruz, buna gerek olmayacak.

Bu dosya şöyle bir şey olacak :  
-------8<----------------------------------
<Component>
	<Name>kernel.drivers</Name>
  		<LocalName xml:lang="en">Kernel Drivers</LocalName>
  		<LocalName xml:lang="tr">Çekirdek Sürücüleri</LocalName>
 		<Summary xml:lang="en">Various kernel drivers</Summary>
  		<Summary xml:lang="tr">Çeşitli çekirdek sürücüleri</Summary>
  		<Description xml:lang="en">In this component are various kernel drivers 		
that are not built into the base kernel, but that can be installed or removed 
later on.</Description>
  		<Description xml:lang="tr">Bu bileşende çekirdeğe gömülü olmayan ve 
sonradan yüklenebilen veya kaldırılabilen çeşitli çekirdek sürücüleri 
bulunur.</Description>
  		<Icon>camera</Icon>
  	<Packager>
      		<Name>S.Çağlar Onur</Name>
      		<Email>caglar at pardus.org.tr</Email>
  	</Packager>
</Component>
<Component>
	<Name>kernel.firmware</Name>
....
-------8<----------------------------------

Kaynak depolarda ise bileşen dizinlerinde yine component.xml olacak, ama 
sadece tanım : 

-------8<----------------------------------
<PISI>
	<Name>kernel.drivers</Name>
</PISI>
-------8<----------------------------------

Evet, ne dersiniz ? Dökülsün fikirler :-)

--
İyi Çalışmalar;
Ekin Meroglu <ekin_at_pardus.org.tr>

... did i listen to pop music because i was miserable, or was i miserable
because i listened to pop music?... - rob [nick hornby / hi fi]



Gelistirici mesaj listesiyle ilgili daha fazla bilgi