Sinerji programı

Bildiğinizi gibi staj projem Synergy üzerine. Bir önceki girdimde Synergy’inin ne yaptığının sizlere anlatmıştım. Son bir hafta içinde bir çok şeyi yazdım. Arayüz de hala taslak, yani her an değişebilir. Çünkü nasıl yapılacağına tam karar veremedik. Ama son hali bu şekilde de olabilir.  Bunun dışında buradaki kişiler olmazsa bu 1 hafta içinde bu kadar şeyi yapamazdım herhalde. Özellikle Faik abi çok yardımcı oldu. Gerçekten çok şey öğrendim, hala da öğreniyorum. Keşke diyorum staj 4 hafta değil de 8 hafta falan olsa.

Arayüzü PyQt4 ile yazdım, ayrıca avahi ile olan kısım da bitti. Yani kendi servisini oluşturabiliyor ya da ağdaki belirli servisleri okuyabiliyor. Kendi sitesindeki Python binding’leri çok işe yaradı, zaten yaptığım aramalarda bir çok kişi de aynı şekilde kullandığını gördüm. Onlardan çok şey aldığım söylenebilinir. Zaten arayüz QuickSynergy’ye benziyor. Fakat biz ayrı bir konsept işledik, ve daha kolay olacak şekilde yapıyoruz. İleride Tasma modülü olarak doğrudan Tasma içinden kullanabileceksiniz. Qt4 ile yazıldığı için Tasma’da kullanabilmek için 2009 sürümünü beklemek lazım ama, çünkü şu anki Tasma Qt3 ile yazıldı.

Apayrı bir program oluştuğu için programın adına “Sinerji” dedim.  Kendisi de şöyle bir şey:

Burada üsteki bilgisayar “uekae-pardus” ile sağdaki bilgisayar “obsidian” kendi klavye ve faremiz ile kullanabileceğiz. Bu isimleri biz girmiyoruz, avahi kendisi buluyor ve ekliyor. Biz sadece listeden istediğimiz bilgisayarları seçiyoruz.

Pardus gibi bir yerde staj yapmanın ayrı bir güzeliği ise, yaptığım çalışmaları istediğiniz an bakabilmeniz ve inceleyebilmenizdir. Yaptığım tüm değişiklikleri svn deposuna yansıtıyorum. İlgilenenler ya da merak edenler http://svn.pardus.org.tr/uludag/trunk/staj-projeleri/sinerji/ adresinden çalışmalarımı takip edebilirler.

Staj Projesi – Synergy entegrasyonu

Staj başladı ve geride 3 gün bıraktım. İlk önce şunu belirteyim ki buradaki ortam çok şahane. Herkes birbirine yardım ediyor, destek sağlıyor, büyük bir aile gibi yani. Burada misafirhane’de Ankara TÜBİTAK‘ta çalışan 3-4 kişi ile de tanıştım. Sağ olsunlar onlar da baya yardımcı oldular, oluyorlar.Burada sanki herkes birbirini tanıyor gibi. Güzel bir yer, çok sevdim.

İlk gün tanışma faslından sonra  projeler tahtaya yazıldı ve sonra da beyin fırtınası yapılarak herkese uygun olan proje verildi. Emre Aladağ da bu konuda bir şeyler yazdı, okuyabilirsiniz. Benimki ise Synergy ile ilgili olan projeydi. Danışmanlarım ise Pınar ve Faik abi. Staj boyu süresince bu proje üzerinde çalışacağım, tabi erken ya da geç de bitebilir bilmiyorum henüz.

Synergy nedir ?

Bir örnek üzerinde açıklayayım. Linux kurulu bir bilgisayarınız var, bunu dışında bir tane de Windows yüklü ayrı bir makineniz var. Her iki bilgisayarı da kullanıyorsanız, ekranları da yan yana. Fakat her zaman klavyeleri değiştirmek, fareyi değiştirmek bir süre sonra zor olabiliyor. Synergy ile işte bir bilgisayarın, ki bunu siz belirliyorsunuz , bizim örneğimizde Linux kurulu olan, klavyesini ve farenizi her iki taraf için de kullanabiliyorsunuz. Ayrıca bu sadece 2 değil, 3 tane bilgisayar için de geçerli. Solunuzda Mac, sağınızda Windows, tek bir klavye ve fare ile hepsini kullanabilirsiniz.

Synergy nasıl çalışır ?

Her bilgisayar kurulması gerekir. Bir server olacak, bu bizim ana bilgisayarımız, bizim örnekte server Linux kurulu bilgisayar. Bir de client’ler olacak, bunlar da diğer tüm bilgisayarlarda olacak. Bizim örnekte Windows ve Mac yüklü bilgisayarlar client’tir. Synergy her bilgisayar yüklenmesi gerekiyor yine hatırlatayım. Ardından synergy.conf dosyası vardır, Server bilgisayarında düzenlenecek bu dosya, client tarafında ayara gerek yoktur.Fakat Client tarafı hangi bilgisayarın Server olduğunu bilmesi lazım, ve bunu da siz yazmanız lazım. Ayara gerek yok, ama “synergyc -f hostname” komutu ile belirtmeniz lazım, her client için geçerli olacak bu. O yüzden client tarafından da biraz uğraş var.

Pardus’ta Synergy entegrasyonu nasıl olacak peki?

Şimdi birinci kısım synergy.conf olayı olmayacak, tasma için hazırlanan bir arayüz olacak ve oradan kolay bir şekilden ayarlanabilinecek. İkinci kısım ise, server tarafı kolay bir şekilde tasma’dan ayarladıktan sonra, client kısmında hiç bir iş düşmeyecek. Avahi sayesinde client’ler server’den haberdar olacak, ve otomatik olarak synergy’e ayarlanacak. Synergy’de avahi desteği yok ayrıca, bu da eklenecek. Tabi bu sadece Pardus için geçerli olacak. İlerleyen zamanlarda daha tekntik detayları anlatacağım.