* You are viewing the archive for the ‘pozitif linux’ Category

KDE adam olacak mı?

KDE, her geçen gün daha güzel görünüyor. Özellikle, eski Windows kullanıcılarına da alıştıkları bir ortam sağladığı için, GNOME’a göre daha çok tercih edilen bir masaüstü ortamı.

Gelgelelim, KDE doğru dürüst çalışmıyor. Muhtemelen, KDE 4 de düzgün çalışmayacak; çünkü bir süredir takip etmekten sıkıldığım bir DCOP tartışması var. KDE’ciler DCOP gidecek diyor; ancak son haber aldığımda DCOP hala yerindeydi. D-bus’ı merakla bekliyorum; aslında GNOME şu an D-BUS’ı destekliyormuş; ama ıvır zıvır birsürü şeyle uğraştığım için, GNOME’u 2 senedir açtığım yok. DCOP, hafif olduğunu iddia etsede pek öyle değil. Bu arada, eski DCOP kullanan programların KDE ve yeni D-BUS kullanan programlarla nasıl konuşacağını ayrıca merak ediyorum. Görünen o ki, KDE 4′e geçmek sancılı olacak.

KDE yavaş. Konqueror, özellikle JavaScript ve CSS ile pek iyi geçinemediği için, bilhassa web 2.0 uygulamalarında karın ağrısı olmaya devam ediyor. KIO slaves gibi tadından yenmeyen bir özelliği olmasına rağmen, KDE’ciler Konqueror’ı artık dosya tarayıcısı olarak kullanmak istemiyorlar. Yerine, GNOME’da beni ağlatankine benzer bir dosya tarayıcısı olan Dolphin gelecek. Doğrusu, Dolphin’de, Konqueror gibi “uçmuyor”. Neden aynı derecede yavaş, üstelik çok daha beceriksiz bir dosya tarayıcı üzerinde çalıştıklarını anlamış değilim.

Bence asıl problemlere odaklanmak yerine, biraz ıvır zıvır işlerle uğraşıyorlar. Masaüstünü cilalayıp dursalarda, masa yine aynı masa. Mockup’larda gördüğümüz ve kafamıza kakılan olağanüstü kullanım özellikleri gelmiyor.

Hadi biraz detaya girelim: Konqueror ve Kate’i açın ve URL adresini Kate’e taşımaya kalkın: direk hata veriyor. Neden? Kate, metin bekliyor ama Konqueror bir pointer yolluyor. İkisi de, KDE’nin temel programlarından ve farklı dilleri konuşuyorlar.Kate bir yandan harika bir program olmasına karşın, inanılmaz derecede yavaş çalışıyor ve pratik kullanabilmek için sürüyle ayar yapmanız gerek. Bu ayarların çoğunu Pozitif Linux için öntanımlı yaptım; ama yine de Kate, performansıyla sabrımı zorluyor.Tüm compiler optimizasyonlarına rağmen, performansını biraz olsun artıramadım.

Tabii, suçun birazı da X’e ait. X’in, ekran kartı sürücüleri konusunda sorunları var. Bazı sürücüler çok iyi çalışıyor: örneğin, masaüstü makinamın neredeyse beşte biri güce sahip bir Via’da,Xvid videoları çok daha akıcı çalışabiliyor. Hem 2D, hem de 3D hızlandırmada sorunları var; ama topu X geliştiricilerine atmak gereksiz. Nvidia’yı bilmiyorum ama ATI sürücüleri hala ham. X ile gelen orjinal sürücülerin hali içler acısı; tuhaftır ama, doğru dürüst doküman bile yazamayan Via’nın, sürücü kalitesi şaşırtıcı. EKran kartı üreticilerinin X geliştiricileri ile daha sıkı fıkı olmaları gerek; keza monitör üreticilerinin de. Çoğu driver, monitörün Sync sinyalini yakalamaya bile uğraşmadığından, özellikle video oynarken sanki Pentium II makine kullanıyormuş gibi hissediyorum (Evet; bende ATI kullanıyorum!)

Açıkçası, GNOME’a geçmeyi düşünmeye başladım.

TWIX nasıl gidiyor?

Bir zamanlar, biryerlerde TWIX diye birşeyden bahsetmiştim. TWIX şu: Linux sisteminizin kontrol paneli ve “ince ayarları” yapan bir araç.

Pozitif Linux’a dair hödük ve salakça bazı tepkiler, bu ülkede işe yarar Bir şey yapmaya çalışmanın zevzekçe bir çaba olduğunu iyiden iyiye kanıtladı bana. Cuma gecesi, TWIX dosyasını tekrar açtım ve yepyeni bir proje haline getirdim. Birsürü tasarım planım da değişti.

TWIX’de artık GAMBAS ve shell scriptlerinden eser yok. GAMBAS ile yazdığım kodu, hard disklerden birinin kuytu bir köşesine atıp yeni baştan başladım. Bu sefer, PHP ile. Bunun bazı avantajları var: Sistem gereksinimleri çok az, web tabanlı uzaktan kontrol mümkün ve artık AJAX sayesinde güzel görünen akıllı arabirimler oluşturmak çok da zor değil.

Zordan başlayıp, ağdan girdim. Bir miktar kod yazdım; açıkçası şu an yazdığım kod, beni bile şaşırtan bir hızda çalışıyor. Şu an itibariyle, sistemin tüm ağ ayarlarını okuyup, belli koşullara göre ayarları sorunsuz yapabiliyorum (network kısmından bahsediyorum tabi). Şimdilik memnunum; çünkü KDE ile gelen denetim masasından ya da SUSE ile gelen YAST, ya da Mandriva tabanlı dağıtımlarla gelen DRAK’tan daha iyi çalışıyor. Öte yandan, çok ciddi bir sorun var…

Sorun şu: Linux ortamında, sayısız özel ayar olası. “Ne gibi?” derseniz çok kısa bir cevap vereyim; örneğin bir ethernet kartına birden fazla IP adresi atayabilirsiniz. (Şimdiye kadar gördüğüm kontrol panelleri bunu yapamıyor) Örnekler çok ama şu an verecek ruh halinde filan değilim; bu sorunu wizard’lar sayesinde aşacağım.Açıkçası başka pratik bir yolu da yok; zira Linux’un ağ kısmı, dipsiz ve karanlık bir kuyu. Üstüne üstlük, konfigürasyon dosyaları tam bir mezbelelik. Aşırı plansız, düzensizler. Bu konuda, KDE geliştiricilerini -kısmen- kutluyorum. KDE’nin yapılandırma dosyaları son derece kötü -hatta hiç- dokümente edilmiş olmasına rağmen, resmen askeri nizama sahip! Dolayısıyla, TWIX’in KDE ayarları modülünü yazmak, benim için tatil gibi Bir şey olacak.

Fazla detaya girmek istemiyorum, çünkü şu aşamada elimde çalışan 7 tane, tamamen sıfırdan yazdığım fonksiyon var. Bunları düzgün bir arabirimde bir araya getiremedim, çünkü tasarım konusunda hayli zayıfım. (Kendi yaptığım deneysel arabirim çok uyuz göründüğü gibi, adam gibi de çalışmıyor; ama PHP tabanlı yönetim kodları işlerini mükemmel ve hızlı yapıyorlar) Üstelik, JavaScript’e herzaman şüpheli baktığım için, AJAX güçlü olduğum bir konu değil. Keşke GFXDesign gibi üstadlar bir el atsa!

Arada birkaç “eşantiyon” PHP fonksiyonu da yazdım, bunlarda CPU bilgisi, PCI kartlar gibi bilgileri topluyorlar. Aslında bunları PhpSysInfo projesinden araklamayı düşünmüştüm; ama yazdıkları kodu anlayana kadar, yenisini yazmak daha kolay ve hızlı oldu.

Amaçlarımı, gelişmeleri ve kodu ayrı bir sayfada -muhtemelen pozitifpc.com altındaki başka bir subdomainde- hem İngilizce, hem Türkçe olarak anlatacağım zaten. Yurtdışından katılım bekliyorum; zira kod çok temiz, basit anlaşılır oldu. Yapı içinde aynısını söyleyebilirim; ama web sayfalarının tasarımı beni kasacak. Temiz bir template sistemi ve okunabilir AJAX -Javascript- kodları için, ya kendimi bu alanda bir miktar eğitmem, ya da bu becerilere sahip birini bulmam gerekecek.

Neden PHP?

Aslında Python’da daha iyiyim. (Son PHP kodunu yazdığımda, sanırım 2000′de bile değildik!) Ama Python’u sevmiyorum ve bir kontrol paneli için, yanlış bir seçim. Zibilyon tane Python modülünü, ister Debian olsun, ister Red Hat tabanlı olsun, herhangi bir dağıtım altında sorunsuz ve az yer kaplayacak şekilde kurmak haddinden fazla zor. PHP çok daha az yer kapladığı gibi, Zend ile birlikte kullanıldığında, Python’a nal toplatıyor (bunu birgün söyleyebileceğimi hayal bile edemezdim!)

Üstelik PHP bilen daha çok insan var ve düzgün, “enterprise” düzeyde modül ve fonksiyonlara sahip. Pythoncular kızmasın ama bana biraz oyuncak gibi geliyor.

Bir başka alternatif Perl idi, Perl’e çoğu insanın olduğu gibi, benim de kanım ısınmadı. Üstelik, Perl bilgim çok sınırlı. Perl’in bir sıkıntısı, dağıtımlar arasındaki kurulumunun Python’dan daha problemli olması. Örneğin, Mandriva, kendi kontrol paneli başka dağıtımlarda çalışmasın diye, uyduruk Perl paketleri hazırlamış. Mandriva Control Center’in çok kısıtlı bir kısmını, Ubuntu üzerinde, deveye hendek atlatarak (Perl’in logosu da deve,ne tesadüf!) çalıştırmayı başardım. Bu kayda değer bir başarı da değildi; üstelik Mandriva Control Center’ın çalışma hızı, devenin yürüyüş temposu civarında.

YAST da ayrı bir macera. Birileri, YAST2′yi Ubuntu üzerinde çalıştırmak için 2 sene harcamışlar ve aldıkları mesafe ürkütücü derecede az. Kısa bir denemenin ardından, YAST sevdasından da vazgeçtim. Kaldı ki ayar modülleri filan çalışsa bile, RPM ile entegre olan kısımları yeni baştan yazmak gerek; zira RPM ile kullanılabilen fonksiyonları, böyle kapsamlı bir program içinde DPKG ile çalışır hale getirmenin kısa ve kolay bir yolu yok.

PHP ile hazır gelen sayısız modül olsa da, TWIX ile bunların çoğunu kullanmayacağım. Hatta, hazır gelen bazı fonksiyonları bile kullanmayacağım. Mümkün mertebe, standart fonksiyonları kullanmanın bariz avantajları var; kodu herkes anlıyor, kaynak sıkıntısı yok, kurulum paketi küçük oluyor ve genelde daha hızlı çalışıyor. Şimdiye kadar, kaçamadığım bir tek Regular Expressions oldu; bir de KDE için XML kütüphanelerini kullanmayı planlıyorum. Amacım, Mandriva Control Center ya da SUSE’nin YAST2’si aksine, 100 MB gibi bağımlılıklar gerektirmeyen, 3-5 MB tutan, ama herşeyi yapabilen bir kontrol paneli yazmak. Web tabanlı yönetim ve embedded cihazlarda bile kullanılabilecek kadar küçük olması en büyük avantajları (tabi embedded cihazlarla çalışması için 300K’lık browser, lighthttpd ve JavaScript’in çıkarılması gibi modifikasyonlar gerekecek; şu an için iki sürümü paralel götürebilirim gibi görünüyor)

Ubuntu / Kubuntu / Pozitif Linux’da apt-get ve synaptic problemi: Eğer 0% [Connecting to us.archive.ubuntu.com (1.0.0.0)] gibi bir hata alıyorsanız okuyun

Debian, Ubuntu, Kubuntu ve Pozitif Linux, apt-get ya da synaptic ile depolara bağlanıp paket indiremiyorsa, bunun oldukça sofistike bir nedeni olduğunu söyleyeyim. Aslında çözümü çok basit ve çok sık sorulan sorulardan biri bu.

ubuntu apt-get ve synaptic sorunu 1.0.0.0Komik gelebilir, ama sorun kullandığınız ADSL modem / router ile ilgili. Eğer Linux tabanlı bir ADSL router/modem kullanıyorsanız, içinde muhtemelen dproxy adında bir program çalışıyordur. Dproxy, eğer linux makinanızda DHCP çalışıyorsa, DNS adresi olarak router’ın kendi IP adresini yolluyor. Buraya kadar bir sorun yok; zira bu hatanın karakteristik özelliği, Firefox gibi programlarla Internet’e bağlanabilirken, apt-get ve synaptic’in çalışmamasıdır. Aslında sorun biraz apt-get kaynaklı.

Üstesinden gelmekse kolay:

sudo nano /etc/resolv.conf

komutuyla, resolv.conf dosyasını açın. Ubuntu kullanıyorsanız muhtemelen nano yüklü değildir, gedit gibi başka bir editör kullanabilirsiniz.

resolv.conf dosyasında DNS sunucularının adresleri bulunmaktadır. Tüm DNS sunucularını silin ve eğer ADSL kullanıyorsanız, şu satırı ekleyin:

nameserver 195.175.39.39

Dosyayı kaydedin ve çıkın.

Şimdi, bilgisayarınıza DHCP’den IP almak yerine, sabit bir IP vermelisiniz. (Eğer DHCP kullanmıyorsanız dokunmayın!)

sudo ifconfig eth0 192.168.1.3 netmask 255.255.255.0

192.168.1.3 yerine, router adresiniz ile aynı subnette olan ve kullanımda olmayan bir IP vermelisiniz. Sözgelimi, eğer router adresiniz 192.168.3.4 ise, IP adresi yerine 192.168.3.5 gibi bir sayı verebilirsiniz (router’ın kendi adresini ya da ağınızda mevcut herhangi bir IP adresini vermeyin; IP çakışması olur)

Son olarak, yaptığımız ayarların geçerli olması için, network servisini tekrar başlatacağız (IP adresini değil de, sadece resolv.conf’u değiştirdiyseniz bu işleme gerek yok!)

sudo /etc/init.d/networking restart

Bu işlemleri, KDE ya da GNOME altında denetim masasından da yapabilirsiniz. (Ekranda görüldüğü gibi)

*Eğer Türk Telekom dışında bir ADSL hizmeti alıyorsanız, ya da dialup bağlanıyorsanız, kullandığınız servisin DNS adreslerini öğrenerek buraya geçerli bir DNS adresi yazmalısınız. Eğer yazdığınız DNS adresi doğru değilse, Internette hiçbir yere bağlanamazsınız. Sorun değil; DNS adresini bulmak üzere tekrar Internet’e çıkmak için, demin girdiğimiz nameserver yerine, ADSL modem/router adresini yazın. Bu genelde, 192.168.1.1′dir, ama marka ve modele göre değişiklik gösterir. Örneğin, 10.0.0.1 gibi adresler kullanan routerlarda mevcut.

2, toplam 8 sayfa«12345678»