[Gelistirici] Gparted'in Kdebase bağımlılığı var =)

Gürer Özen gurer at pardus.org.tr
20 Oca 2009 Sal 22:44:11 EET


On Tuesday 20 January 2009 18:36:51 Gökmen GÖKSEL wrote:

> Yani araya katman eklemek yerine bu katmanları COMAR'a ekleyelim mi
> diyorsun ? Eğer anladığım doğruysa bu da işimizi görmez ki.. Manager
> dediğin yine comarı import edecek, package-kit'i değil.

Bahsettiğim şey pseudo code olarak şu (UI tarafı):

import dbus
iface = dbus.Interface(proxy_şeyi, "org.freedesktop.PackageKit")
iface.InstallPackageName("inkscape")

Dikkat ettiysen bu standart package kit kullanımı. Bahsettiğin ara katmanı 
dbus sağlıyor, bizim yeniden icat etmemize gerek yok.

Bu UI lar her dağıtımda çalışacak.

Peki burada çomar nerede diyeceksin? Çok basit çomar kendini package-kit 
olarak dbus'a register etmiş, bu install çağrısını yakalayacak. Sonra bizim 
pisi betiğine verecek, o da install işlemini gerçekleştirecek. Tabi bu pardus 
üzerinde default olarak böyle. İstersek çomarın model.xml gibi bir dosyasında 
bunu kapatıp gerçek package-kit'i yada başka bişeyi de kullanabiliriz.

Çomar bu mapping dışında "tr.org.pardus.comar.Disk" vb gibi şeylerden bizim 
kendi yaptığımız özel modelleri de sunacak. Hatta eski kodlar bozulmasın diye 
eski interfaceleri vb. Mesela package-kit interfacesi tüm pisi işlevlerini 
sunmuyorsa onlar da kendi alanımızda extra olarak sunulabilir.

Gerekirse yeni şeylerin modellerini de org.freedesktop içinde oluşturup 
geliştirebiliriz hatta.

Yani Çomar bizim jenerik *-kit'imiz olacak, import comar yerine import dbus 
ile kullanacağız ama bize kolayca yeni yapılandırma araçları sunma ve eldeki 
araçları Python ile daha güçlü ve maintainable şekilde geliştirme imkanı 
verecek.

Böylece UI larımız dağıtım bağımsızlaşacak. Çomar ise diğer dağıtımlardaki 
*-kit lere drop-in replacement hale gelecek.

import comar ise zaten altta dbus kullanıyor, eski kodlar için obsolete olarak 
bir kenarda bırakılır.

Burada yapılacak üç iş var:
1. Çomarın model yönetiminin böyle bir işe göre elden geçirilmesi.
2. Sistem modelimizi elden geçirmek ve artık diğer dağıtımlarla birlikte 
geliştirmek için gerekli ortak çalışmalara katılmak.
3. Yavaş yavaş UI araçlarını bu yeni sisteme geçirmek.
4. Profit!



Gelistirici mesaj listesiyle ilgili daha fazla bilgi