burak@unix~$

~bilgisayar üzerine garip deneyimler~

Biraz geyik muhabbeti

with 11 comments

Sürüm çıkaralı çok olmuş, yazı yazmayalı da. Aylardır yaptığımız çalışmalar sanırım bir blog yazısını hakediyor.

Mayıs ayından beri Hadron cephesinde olan en iyi şey geliştirici sayısının 1’den 3’e çıkması oldu sanırım. Gürkan Gür ve Erdem Artan artık Hadron’a aktif katkı veriyorlar. Gitorious‘daki RSS beslemesinden neler yaptıklarını görebilirsiniz.

İkisinin birden paket yapmaya ve varolanlara bakmaya başlamasıyla üzerimdeki yük gayet azaldı. Azaldı derken boşa çıktığımı düşünmeyin. Temmuz ayından itibaren çalışıyorum, kendime ve Hadron’a ayırdığım zaman da bir hayli azaldı. Herşeyi bir arada düşündüğünüz zaman ~600 kadar paketi ve paket yöneticisini tek başıma yapmış kadar yoruluyorum, neyse.

Artık paketlerle daha az ilgilendiğim için Hadron’a ayırdığım vakti lpms üzerine yoğunlaştırıyorum. Hata kayıt sitemizden de görebileceğiniz gibi üzerimde şu an 30 kadar hata var ve bunların çok büyük bir kısmı lpms ile ilgili ya hata düzeltmesi ya da özellik isteği.

Sırası gelmişken lpms’de neler yaptığımı ve neler yapmayı planladığımı anlatayım:

lpms son rootfs sürümündeki atasının aksine şu an çok daha gelişkin ve olgun. Sanırım satır sayısı iki katına kadar çıktı ve pek çok yeni özellik ekledim. Bunlar irili ufaklı şeyler, bazılarını ben bile hatırlamıyorum ama bağımlılık çözme işlerini halleden lpms modülündeki commit sayısı lpms’e yaptığım toplam commit sayısının üçte birine yakın olabilir. Hala hataları var; zira oldukça karmaşık bir iş yapıyor. Sıkıntıları devam edecektir.

Geçen hafta sonu Hadron mesaimin bir kısmını lpms’i OpenBSD‘ye port etmeye harcadım.  Gerekli modifikasyonları yaptıktan sonra, sorunlar olsa da, OpenBSD üzerinde Hadron paketlerini derlemeyi/kurmayı başardım. Yani lpms, BSD ailesinden bir UNIX sistem üzerinde de çalışabilen bir paket yöneticisi şu an. Muhtemelen orta vadede sadece ben kullanabilirim ama; lpms’i Linux ve BSD sistemler üzerinde çalışabilen “evrensel” bir paket yöneticisi yapma hedefimi de açık etmiş olayım burada.

lpms paketleri kaynaktan derleyerek sisteme kuruyor biliyorsunuz. Bu bizim UNIX sistemi kullanma tarzımız ve bu konuda iyi bir paket yöneticisi çıkarmaya çalışıyoruz. Ama bazen binary paket lazım olabiliyor ve lpms şu an binary(bildiğiniz deb ya da rpm paketleri gibi) kuramıyor. Bu bir eksiklik evet ama; lpms’in konsepti paketleri kullanıcının bilgisayarı üzerinde derleyerek, hem herkesin istediği gibi bir sistem elde etmesini hem de ileri düzeyde işlemci optimizasyonlarının yapılmasını sağlamak üzerine kurulu. Gentoo ya da BSD’de ciddi deneyimi olanlar bu konuları bilirler zaten.

lpms’in gelecek sürümlerde binary paketleri kurup kaldırabilmesini ve hatta binary depoları oluşturup yönetebilmesini planlıyorum. Bu sayede hibrit bir paket yöneticisi ortaya çıkarmış olacağız. Ama Hadron hiç bir zaman binary paket deposu sağlamayacak. Bu özelliği 3. şahıslar ya da projeler kullanacak.

Bir diğer hedefim ise Debian‘daki debconf‘un bir benzerini lpms için yazmak. Bu konu henüz tasarım tahtasında bile değil. Orta vadede mümkün, muhtemelen 2012 yılı içinde çalışacağımız bir konu olacak.

Tüm bunları gerçekleştirdiğim zaman modern altyapılar kullanan BSD tarzı bir UNIX sistem yaratma konusundaki hevesimi biraz daha tatmin etmiş olacağım.

En son ve en çok arzuladığım iş ise Hadron’un altyapılarını tamamen Python 3‘e taşımak. Grafik arayüzlü araçlar gibi bizim açımızdan tamamen anlamsız hedeflerimiz olmadığı için GTK+ gibi şeylerin Python 3 tarafından desteklenmiyor olması umrumda değil ama sandboxing uygulaması olarak kullandığımız catbox C ile yazılmış bir Python 2 uygulaması olduğu için geçiş yapamıyoruz. Aslında catbox’u Python 3’e taşımak altından kalkamayacağım bir iş değil. Ama yeterince C ve bu dille Python modülü yazma tecrübem olmadığı için zorlanabilirim. Ve sonradan çıkacak hataların da faturası canımızı çok yakabilir. O yüzden girişmiyorum ama; Python 2.7.2 ile Python 3’teki tüm yenilikleri kullanarak kod yazıyorum, o da ayrı bir mesele.

Dökümantasyon işi de fena gitmiyor. Gürkan Hadron’la ilgililenmeye başladıktan sonra benim yazdıklarımı güncelleştirerek İngilizceye çevirdi. Dökümanlar HadronWiki’de duruyor. Girip okuyabilirsiniz.

Her Hadron yazısına eklediğim gibi buna da projenin sayfalarını ekleyeyim. İlgilenmek isteyen olursa hiç çekinmesin buyursun. Freenode üzerindeki #hadron kanalında ilgili birilerini bulma olasılığınız çok yüksek.

Hadron Projesi Anasayfa

HadronWiki

Written by Burak Sezer

Ağustos 20, 2011 at 10:26 pm

Hadron, Kişisel, Linux, Python kategorisinde yayınlandı

11 Yanıt

Subscribe to comments with RSS.

  1. Kod yazmaya başlasam iyi olacak. Ama önce öğrenmem lazım. Bu yazı insana heves veriyor. :)

    enki

    Ağustos 20, 2011 at 10:38 pm

  2. Çalış, övün, yarat… Hadron! Hepinizi tebrik ediyorum.

    fadike

    Ağustos 21, 2011 at 9:45 am

  3. Tebrikler ve başarılar..Kod yazabilsem ben de kesinlik ile projeye destek vermek isterdim.Ama bundan sonrasında sanırım buna daha çok yoğunlaşabileceğim. Hadron projesi gerçekten de çok heyecan verici uzun süredir takip ediyorum,pek destek olmadan kararlılık ile devam ettiriyorsunuz..Dilerim bir gün ben de böyle bir projeye destek verebilecek seviyede olurum

    Ümit YAKUPHANOĞULLARINDAN

    Ağustos 22, 2011 at 9:32 pm

    • Teşekkürler…

      Türkiye’de böyle bir projeye destek bulmanın imkanı yok. Zaten bunu biliyorum, biliyoruz. Açıkcası umrumda da değil Türkiye’deki topluluğun ne bok yediği.

      Hadron’a destek vermek için kod yazmanız gerekmez. Kullanarak, kurcalayarak, belgelerde bir imla düzeltmesi yaparak destek olabilirsiniz. Daha bunun gibi pek çok yol vardır. Siz yeter ki destek olun, olmayı isteyin. Kullanıp şurası şöyle olsa daha iyi olur deseniz gayet de destek vermiş olursunuz.

      Sürüm çıkmasına çok az kaldı. Sizi de bekleriz! :)

      Burak Sezer

      Ağustos 23, 2011 at 12:50 am

      • hocam bende destek olmak isterim ben bişiler örenirim en azından :) ve size de yardımcı olurum :) projenizi çok beğendim bende bişiler yapmak isterim

        nano68

        Eylül 2, 2011 at 6:24 pm

        • Selam,

          İlginiz için teşekkür ederim. Nasıl destek olabiliyorsanız öyle destek olabilirsiniz. Kullanarak, geliştirerek, hata raporlayarak ya da sadece fikirlerinizi bize aktararak olabilir.

          Burak Sezer

          Eylül 2, 2011 at 9:16 pm

  4. SydBox olayı nedir? Pek incelemedim ama uzak milestone için sandbox değiştirmeyi düşünebilir miyiz? Çok derine inecekse koy gitsin ama fena gelmedi bana, ileriye yatırım açısından. Bu arada son yaptıklarını yaz merak ettim lşjkhkg

    seqizz (@seqizz)

    Ekim 31, 2011 at 11:26 am

    • Düşünebiliriz.

      Sydbox aslında pinktrace diye bir kitaplığın arayüzü durumunda. Sadece bir cli tool yani. Eskiden değildi ama ayırıldılar diye biliyorum.

      Pinktrace’in Python ve Ruby bağlayıcıları var. Yani pinktrace’i lpms içinde kullanabiliriz ama; anladığım kadarıyla üstüne catbox ayarında bir şey yazmamız lazım. Kurcalamamız, anlamamız lazım.

      Şimdi değil ama uzak bir zaman diliminde olabilir. Neden olmasın…

      Burak Sezer

      Ekim 31, 2011 at 10:27 pm

  5. eposta adresini alabilir miyim? engerex_AT_gmail

    engerex

    Mart 8, 2012 at 10:01 pm

    • Benimle iletişime geçmek için bu blogun yorumlar kısmını ya da freenode üzerindeki #hadron kanalını kullanabilirsiniz.

      Burak Sezer

      Mart 9, 2012 at 2:38 am


Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logo

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter picture

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook photo

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ photo

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

Takip Et

Her yeni yazı için posta kutunuza gönderim alın.

%d blogcu bunu beğendi: