22 Eylül 2010 Çarşamba

spamassassin ve saz arkadaşları

Uzunca bir süre yazamadım ama gezmek, UPEM, başka işler falan internete de pek nadir girebildim. :)

Neyse, okulun ilk gününde Necdet Hoca ile spamassassin ve saz arkadaşları konusunda el sıkıştık. Artık ben bakıyorum bunlara :)

Spamassassin + 60 Perl bağımlılığı konu olunca insan biraz düşünüyor ama zevkli ya. Öncelikle pspec.xml dosyalarındak Pacakger tagındaki Name ve Email taglarını düzenlemem gerekiyordu. 60+1 paket + bir de 3 tane depoda da uygulamam gerekiyordu. Tek tek yapmak pek de mantıklı değildi. Sonradan da takeover betiğini kullanmak aklıma geldi ama onun yerine daha çok işe (işime) yarayacak bir betik hazırlayayım dedim. Python ile yazdım.

betiğin adı takePisiPackages. Şu an Pardus deposundaki playground'umda[0]. Kullanımı şu şekilde:

takePisiPackages paketlerin_isimleri_bulundugu_dosya yeni_paketci_adi yeni_paketci_eposta

buradaki "paketlerin_isimleri_bulundugu_dosya" ismindeki dosyada paketlerin listesi bulunuyor. Bu dosyada

ffmpeg

şeklinde

ya da

multimedia/video/ffmpeg

ya da

multimedia/video/ffmpeg/pspec.xml

şeklinde olabilir. Yarısı öyle yarısı öbür türlü de olabilir. Eğer sadece ffmpeg var ise bulunduğunuz dizinden itibaren içeri doğru özyinelemeli (recursive) olarak arıyor. Bulduğu yere göre de pspec.xml dosyaları tekrardan düzenleniyor. Arama fonksiyonunu da kendim yazdım.

Eğer isterseniz belirli dosyaları istediğiniz editör ile açabiliyorsunuz. Mesela her açtığınız paketteki actions.py'lere de bakmak isterseniz çalıştırdıktan sonra sorulan soruya 'y' diyorsunuz sonra editör'e vim, dosyaya da actions.py dediğiniz zaman her actions.py de vim ile açılmış oluyor.

Bunlar aslında sadece benim istediğim özellikler, eğer başkalarının da istekleri olursa onları da betiğe eklerim.

Şimdilik betik, sed'leme şeklinde değil de satır satır okuyup ona göre yapıyor. Bunu değiştirip değiştirmeme konusunda kararsız kaldım.

Hepsinin haricinde diğer projelerden:

guestlogin'in isminin değişmesi işi var. Bu işlemi de şöyle yapıyormuşuz. (Serdar'a teşekkürler)

önce sürüm yöneticilerine haber veriyormuşuz. Sonra

eğer paket pardus depolarındaysa paketin ismini devel'de değiştiriyoruz, devel root'undaki distribution.xml dosyasına

yorum satırı içerisinde ( !-- -- tagları) replaced by yeni_paket

ve Package tagı içerisinde eski paket



gibi ekliyoruz. ( burayı düzgün yazamıyorum çünkü blogger bunun öyle yazılmasını istemiyor :)

burada dikkat edilmesi gereken

************************************************************
not gone to binary stable yet, please don't remove this mark
************************************************************


satırlarının altına yazmak. Ondan sonra da devel'i stable ile birleştirmek kalıyor. (stable şu an için sadece Pardus 2009 Deposunda olduğu için sadece 2009 da stable ile birleştirmek var)

python-guestlogin paketinin ismini de pam_guestlogin yapacağım.

Guestlogin'in bir de bug'u mevcut. Aslında bug değil de yeni bir özellik isteği.[1] Onu da yakında tamamlayacağım. Bir de KDM'ye buton eklemek var. (hmm. bitireyim bi ara bunları ya)


[0] https://svn.pardus.org.tr/pardus/playground/mesutcan/takePisiPackages
[1] http://bugs.pardus.org.tr/show_bug.cgi?id=14233

Hiç yorum yok: