Linux
Pisi Paket Arama
19th Eyl 2008 | Sınıfı: Linux 4
Paketler temasıyla paket arama
Paketler temasıyla paket arama

Evet, uzun zaman oldu yine yazmayalı. Sahip’in ardından hemen yeni bir projeye koyuldum: Paket içeriği arama sayfası. Diyelim ki lsmod adlı programın hangi paketten çıktığını merak ediyorsunuz. Sayfaya girip arama çubuğuna lsmod yazmanız durumunda lsmod ile ilgili olan tüm paketleri ve paketin içerdiği alakalı dosyaları görebiliyorsunuz. Bu sadece programlarla sınırlı değil, her tür (html, resim, xml vs.) dosyayı ve hatta ara-konumları (lib/python2.5, bin/make, vs.) aratabiliyorsunuz. Bu sistem vasıtasıyla özellikle geliştiricilerin zaman kazanacağını umuyorum.

Sistemin işleyişi şu şekilde, bir adet sql oluşturucu programım tüm paketlerin kurulu olduğu sunucuda (inşa çiftliği) pisi API’sini kullanarak kurulu tüm paketlerin listesini, sonra da her bir paketin içinden çıkan dosyaların listesini alıyor bunları iç içe 2 for döngüsüyle INSERT INTO ifadeleri haline getiriyor. Oluşan SQL dosyası, belirli aralıklarla web sunucusu tarafından çekilerek veritabanı güncelleniyor. Web kısmını ise ilk önce Django ile yaptım ancak çatının çoğu özelliğini kullanmamam sebebiyle sunucuya da yük binmesin diye düz mod_python ile yazmak zorunda kaldım. Ayrıca siteyi elimden geldiğince sürüm bağımsız yapmaya çalıştım. Böylelikle 2007, 2008 ve ileride pisi API’si değişirse 2009 desteğine de sahip olmuş olacaktı. Evet, tam bu yazıyı yayınlayacaktım, projenin yayınlanmasını bekliyordum ki mod_python ile ek güvenlik önlemleri almam gerektiğini fark edip bunu dile getirdim (Bahadır’ın önerileriyle). Sonuç olarak tekrar Django’ya dönme kararı aldık ve Django’ya bazı ek özellikler katarak, temasını da Pardus Paketler sayfasına uyarlayarak projeyi bitirdim. Geriye projenin yayınlanması kaldı. Yayınlandığında aşağıdaki adreslerden erişilebilir halde olacak:

http://packages.pardus.org.tr/search

Diğer gelişmeler ise şöyle, öğrendiğime göre artık ekran kartı tercihlerimizde NVIDIA değil ATI’yi tercih etmeliymişiz. Geliştiricilere donanımların özelliklerinin (spec) açılmasıyla çok daha hızlı bir şekilde Linux sürücüsü yazmak ve 3 boyut, compiz desteği sağlamak mümkün halde gelmiş. Dedikleri doğru, bir süredir (1-2 sene ekran kartı sorunu çektiğim) bilgisayarımda compiz (3 boyutlu masaüstü) kullanabiliyorum. Aklınızda olsun…

Bir diğer husus Akbank’ın beni yeniden bezdirmesi. Internet bankacılığı sitesinde Firefox’un kullanılamamasına “Lütfen IE kullanınız” anlamına gelen bir yanıt vermeleri yetmiyormuş gibi dün de (ies4linux ile) EFT öncesi cep telefonuma bir türlü cep şifresi göndermediler. Aradan saatler geçtikten sonra tekrar denediğimde 6. şifre elime ulaştı, öncekiler mefta… Acil bir durum olsa yandınız! Bir de üstüne bu ay kart ücretini de çekmişler. Liste’de belirtildiği gibi değiştirmek lazım şu bankayı.

Etiketler: , , ,
4 Comments
  1. Mete Ercan Pakdil
    1.44 on Eylül 22nd, 2008

    Merhaba,

    Ekran kartı ile ilgili haberin beni hem sevindir di hem de üzdü :) Laptop’um ATI ekran kartı kullandığı için linux kurmak işkenceydi o yüzden uzun zamandır laptopta linux kullanmıyordum ancak şimdi denemeyi düşünüyorum. Eğer kurmayı denersem bir sorun çıkmacakmı yoksa bu verdiğin haberin gerçekleşmesi için daha zaman varmı?

  2. Ahmet Emre Aladağ
    10.31 on Eylül 22nd, 2008

    Merhaba,

    Şu anda birçok kart desteklenmiş durumda. Yeni kartlar çıktıkça da hızlıca destekleniyor. Dizüstün eski olduğuna göre muhtemelen desteklenmiştir ancak ufak bir desteklenmeme ihtimali de var tabi :) Bence bir dene…

  3. Melih
    14.42 on Eylül 22nd, 2008

    E sql injection u da ben yapinca :D tam oldu site. Guzel guzel, aferim.

  4. Ahmet Emre Aladağ
    18.06 on Eylül 22nd, 2008

    Ehehe, efem SQL Injectionla bitmedi ki, GET ile değişken sızdırma vs. açıkları vardı, URL filtreleme yapmak gerekiyordu. Dolayısıyla o yapıyı terk etmek durumunda kaldık. Şimdiki sistem Django.

Leave a Reply

IMPORTANT! To be able to proceed, you need to solve the following simple math (so we know that you are a human) :-)

What is 11 + 13 ?
Please leave these two fields as-is: