pyEmpires v0.2

Version 0.2 is out! Hurray!

First: old post: http://wp.me/pp3Ng-Z
Update: pyEmpires is GPLed!

New screenshot from v0.2:

Changes since v0.1 are:

• Map is a seperate file
• New textures came, water, sand, grass: walking on sand is slower!
• Group’s are easier to find
• Keyboard Shortcut XML file
• Creating groups, and selecting them with CTRL+NUM_KEY
• double clicking select all units of that type
• fixed a few bugs

If you want to work with us, take a look at http://my-trac.assembla.com/pyempires

Or why not here: http://www.assembla.com/spaces/pyempires

Google Nereye Gidiyor?

Merhaba, bu yazıda neden Google’ın FOSS (özgür yazılım ve açık kaynak) dünyasına destek verdiğine ve bunun nedenlerine değinip gelecekte bizleri nelerin beklediğine az da olsa göz atmak istiyorum. Ayrıca yazıda Cloud Computing kavramından ve ileride bu kavramın FOSS  dünyasındaki etkilerinden söz edeceğim.

Google’ın nereye gittiğini anlamak için öncelikle onun ekonomik kaynaklarını bilmemiz gerekiyor. Google’ın çoğu yazılım şirketi gibi masaüstü yazılımları satarak bu duruma gelmediğini, internet reklamlarından kazanç sağladığını zaten biliyoruz. Google arama motorundaki üstünlüğünü diğer alanlarda da kullanarak (mesela Adsense) ve daha birçok yenilik sunarak web ortamında hizmet vermekte. O yüzden sürekli web’in gelişmesine ön ayak olmaya çalışıyor. Web ne kadar çok kullanılırsa Google’ın reklam gelirleri artıyor. Bu nedenle ki insanların tüm işlerini web üzerinden gerçekleştirmeleri Google’ın işine geliyor. Bunu sağlamak için de daha iyi bir tarayıcı, çeşitli web yazılım kütüphaneleri, web uygulamaları ve son olarak da yeni bir işletim sistemi (Chrome OS) geliştirdi. Google’ın geçmişte yaptıklarını düşündüğümüzde bu işletim sisteminin de yoğun olarak internet üzerinden çalışması hiç şaşırtıcı olmuyor. Google, Chrome OS’la netbooklarda (ve Android ile Mobil cihazlarda) Windows’a göre bir avantaj yakalayabileceğini gördü. Çünkü notebooklar daha az sistem kaynaklarına sahip ve Chrome OS bu sistemler üzerinde, Windows Vista ve Windows 7’ye göre daha iyi performans gösterebilir. Zaten “Cloud Computing” herşeyin internet üzerinden yapılmasını ve çok büyük sistem kaynaklarına gerek kalmadan çalışmasını sağlamakta. Bu şekilde bakarsak neden Google’ın açık kaynak dünyasında bu kadar aktif olduğunu veya mesela Microsoft’un neden olmadığını da anlayabiliriz. Microsoft kendi teknolojilerini kullandırtmak için tekel olmak zorundayken, Google “açık kaynak” kavramının yenilikler açısından ne kadar önemli olduğunun olup destek veriyor. Chrome OS da tıpkı Chrome tarayıcısında olduğu gibi (Chromium Browser), Chromium OS adında bir açık kaynak işletim sistemine dayanmaktadır. Bu sayede Chromium OS, Google’ın bizzat anlaşması olmayan donanımlarda da kurulabilir olacaktır.

Her ne kadar “Cloud Computing” popülerleşen bir kavramsa da şu an için hala işletim sistemlerine ve güçlü donanımlara bağımlıyız. Bunu oyunlarda veya mühendislik yazılımlarında görebiliyoruz. “Cloud Computing”, internet bağlantısı hızlarının artmasıyla, ileride tam anlamıyla kullanıldığında insanlar, kaynak gerektiren işlemlerini internet üzerinden “kiralama” yoluyla gerçekleştirip, internet üzerinden takip edebilecek. Mesela son çıkan bir oyunu internet üzerinden kiraladığım CPU, RAM, ve Grafik işlemcisi üzerinden oynayıp, kendi bilgisayarımda (ya da ekranı ve interneti olan herhangi bir cihaz üzerinde) izleyebileceğim.

Bana göre Microsoft şu an için işletim sistemlerinden ve diğer masaüstü yazılımlarından 5 yıl sonra para kazanamayacak hale gelecek. Ya daha rekabetçi olan bu yeni ortama girip (Windows Azure ve Mono ile yaptığı gibi) tekel konumundan vazgeçecek ya da tıpkı PC devrimini öngöremeyen IBM gibi batma noktasına gelecek.

Son olarak da GNU/Linux işletim sisteminin ve diğer özgür yazılımların da gelecekte daha da değerleneceğini söyleyebilirim. Çünkü “Cloud Computing” ile birlikte büyük şirketlerin tekel konumları ve standart dışı uygulamaları ortadan kalkacak ve özgür yazılımlar şu an için en rekabetçi ve en verimli yazılım geliştirme yöntemini sunduğu için gelecekte daha çok destek görecek, daha çok kullanılacak.

Chromium Browser Synchronization on Linux available

Update your chromium browser to the latest version and start it with a “–enable-sync” command line argument. Sync it from options.

Chromium tarayıcınızı son sürüme güncelledikten sonra komut satırından “–enable-sync” parametresiyle çalıştırın. Seçeneklerden senkronize edin.

Taze ubuntu

Bu adresten ubuntunun taze sürümünün isosunu indirip kurabilirsiniz. Update gerekmez.

http://cdimage.ubuntu.com/daily-live/current/

linux bash ipuçları-2

Diyelim sürekli cd komutuyla bir o dizine, bir öbür dizine gidip gelmeniz gerekiyor. Normalde birden fazla kabuk (shell) kullanarak bu işlemleri kolaşlaştırabiliriz. Ama daha kolay ve pratik bir yol var:

cd -

linux bash ipuçları – 1

Köşeli Parantez

Diyelim HOME dizinindesiniz.
/var/log/apache2/error.log dosyasının yedeğini almak istiyorsunuz.

ne yapmanız lazım?

cp /var/log/apache2/error.log /var/log/apache2/error.log.yedek

Peki bunun daha kolay bir yolu yok mu?

Evet var, köşeli parantezleri kullanmak.

cp /var/log/apache2/error.log{,.yedek}

Bu şekilde yukardaki komutu “eval” etmiş oluyorsunuz.

Evet kısaca bu komutu açıkladım. Her hafta şu makaleden (http://www.linuxjournal.com/article/7385) çevirileri çevirip yayınlamayı düşünüyorum. Orijinal makaleden daha ayrıntılı bakabilirsiniz.

Çalıntı python kitabı

Belki bunu tweet olarak vermem gerekirdi. Ama daha çok insana ulaşırım diye buraya yazıyorum.

Bugün istihza.com sitesi sahibi ve ubuntu topluluğunun tanınan üyesi istihza’ya yapılan haksızlıktan haberim oldu. Burdan geçmiş olsun diliyorum.

Kısaca durumu anlatmak gerekirse, daha önceden “Her yönüyle Pardus” isimli bir kitabın yazarı olduğunu öğrendiğimiz “Talat Uyarer” adlı vatandaşın, istihza’nın sitesinde yayımladığı Python 2.x dersleri araklayarak “Uzmanından Python” adlı bir kitap çıkardığını görüyoruz.

Özgür yazılım camiasından böyle bir hareketin çıkacağını düşünmemiştim.

Herkesin bu kitabı boykoy etmeye davet ediyorum. (Sanırım istihza’nın sitesinde yayımlanan e-kitabı kendiniz ücret ödemeden çıkartabilirsiniz.)

İlgili linkler:
http://www.istihza.com/blog/yeni-bir-python-kitabi.html/
http://www.istihza.com/blog/yeni-python-kitabi-sonuc.html/
http://www.istihza.com/py2/icindekiler_python.html
http://www.kodlab.com/programlama/64-uzmanindan-python.html
http://forum.ubuntu-tr.org/index.php/topic,11522.0.html

DropBox yardımıyla yedekleme ve Ubuntu Karmic göçü

English-spoken  users: Please read this article…

DropBox Nedir?

Dropbox internet üzerinden yedekleme, paylaşma, senkronizasyon aracıdır. Linux, Mac ve Windows üzerine kurulabiliyor. Linux üzerinde nautilus‘a bir eklenti kurularak çalışılır hale getirilebiliyor. Otomatik olarak HOME dizininiz altında Dropbox klasörü oluşturup, bu klasörü internetle senkronize etmeye başlıyor. (Dosyalarınıza web sitesinden de ulaşabilirsiniz.)

Dropbox’ı bilgisayarınıza kurmak için şu linkten kendinize uygun işletim sistemini, dağıtımını seçebilirsiniz.

Kurulum sonrası bilgisayarınızı yeniden başlatmanız gerekebilir (ya da oturumu kapatıp açabilirsiniz.)
Ardından Dropbox’ı uygulamalar menüsünden bulup açın. Geri kalan işlemleri yönergelere göre gerçekleştirin.

İlk kez yüklediğinizde üst seçeneği, daha sonraki bilgisayarlarda alt seçeneği işaretleyin; böylece o bilgisayarı diğer bilgisayarlarla bağlamış oluyoruz.

İlk kez yüklediğinizde üst seçeneği, daha sonraki bilgisayarlarda alt seçeneği işaretleyin; böylece o bilgisayarı diğer bilgisayarlarla bağlamış oluyoruz.

Yüklendikten sonra Dropbox klasörün görünümü

Yüklendikten sonra Dropbox klasörün görünümü

Tüm dosyaların indirilmesi bittikten sonra...

Tüm dosyaların indirilmesi bittikten sonra...

Linux’ta Dropbox’a nasıl dosya atacağınızı şu linkten bakabilirsiniz. Ben bildiğimiz ln -s komutuyla yedeklemek istediğim dosya ve klasörleri Dropbox klasörüne bağlıyorum. Mesela:

/home/dh/Pictures dizinini /home/dh/Dropbox dizinine bağladım...

/home/dh/Pictures dizinini /home/dh/Dropbox dizinine bağladım...

Kullandığım komut:

ln -s /home/dh/Pictures /home/dh/Dropbox/Pictures

Bu sayede /home/dh/Pictures dizinine eklediğim sildiğim tüm dosyalar, otomatik olarak Dropbox sitesine gönderilerek senkronize olacak. Sanal makinede çektiğim ekran görüntülerini Dropbox ile kolayca Host makinemde kullanabildim böylece…

Yedekleme işlemleri

Basit dosya transferi, senkronizasyonu işlemlerini nasıl yapacağımızı öğrendik. Bakalım Tomboy notlarını her iki bilgisayarda nasıl senkronize edebilirim? Ekran görüntüsünden de anlaşıldığı gibi tomboy dizini Dropbox altında. O zaman dosyalarımızı gerekli yerlere taşıyalım.

Ubuntu 9.04’te tomboy dosyalarını HOME/.tomboy altında tutarken 9.10’da HOME/.local/share/tomboy altında tutmaya karar vermişler. Biz de doğru yere taşımalıyız o yüzden:

önce tomboy'un kullandığı dizini siliyoruz. Ardından Dropbox'taki tomboy dizinini o yere bağlıyoruz.

Önce tomboy'un kullandığı dizini siliyoruz. Ardından Dropbox'taki tomboy dizinini bağlıyoruz.

Bağlama yapıldıktan sonra tomboy notları aynen diğer bilgisayarımda kullanılabilir durumda...

Bağlama yapıldıktan sonra tomboy notları aynen diğer bilgisayarımda kullanılabilir durumda...

Evet bu şekilde tüm kullandığım programları Karmic Koala’ya taşımayı düşünüyorum. Böylece uzun çileli backup/restore işlemleri kolaylaşmış olacak. Umarım bu yazı sizin de işinizi kolaylaştıracaktır.

Not: Dropbox gibi Ubuntu’nun da bir hizmeti, Ubuntu One adıyla başladı. Bu hizmet Tomboy’un yeni versiyonunda doğrudan kullanılabilir iken, diğer programlarda Dropbox tarzı çalışmaktadır. Ayrıntılı bilgi web sitelerinde mevcut.

Migration to Karmic with Dropbox

Yazının Türkçe versiyonu için: Lütfen şu makaleyi okuyunuz…

What is DropBox?

Dropbox is a tool for backup-restore and synchronization via internet. It supports Linux, Mac and Windows operating systems. It can be ran through a nautilus extension. After installing it automatically will add HOME/Dropbox directory, and starts to synchronize immediately. (You can get your files from Dropbox’s web interface.)

To install Dropbox, select your distribution or OS  from this link.

After installing you may need to restart or log in again.
After that, find Dropbox from the applications menu. Then follow the instructions.

Installing for the first time, select the first option, if you have installed it before select the second option to able to connect that computer to others.

Installing for the first time, select the first option, if you have installed it before select the second option to able to connect that computer to others.

Your Dropbox directory after installing

Your Dropbox directory after installing

You can learn how to copy/move/link directories to your Dropbox folder from here. I prefer to use ln -s command. It creates a symlink (symbolic, soft link). For example:

I linked /home/dh/Pictures to /home/dh/Dropbox path.

I linked /home/dh/Pictures to /home/dh/Dropbox path.

To link directory or files use this:

ln -s /home/dh/Pictures /home/dh/Dropbox/Pictures

In this way, all the files I put to or delete from /home/dh/Pictures path, will be automatically sent to Dropbox web server and will be synchronized. So I’m able to use these screenshots in the Host Machine which I grabbed from the Virtual Machine by this way.

Restoring

You learn how to send and get files at a basic level. Lets test our knowledge with Tomboy notes which we downloaded them by Dropbox already.

In Ubuntu 9.04 tomboy saves its notes to HOME/.tomboy directory, but in 9.10 it’s saved under HOME/.local/share/tomboy directory. Use the codes in the screenshot.

First remove the tomboy's directory, then link the Dropbox's tomboy directory to there.

First remove the tomboy's directory, then link the Dropbox's tomboy directory to there.

All the notes are restored and ready to use!

All the notes are restored and ready to use!

I’m planning to move all my favorite applications to Karmic Koala with this way. This was just a trial to see if it would work, and it worked very smoothly. I hope it helped you, too.

Note: There is a new service by Canonical called Ubuntu One. It is just like Dropbox but has a Tomboy synchronization support, also. You can get detailed information at  their website.

python ile dosyanın başına yazı ekleme

linuxta bir dosyanın sonuna birşey eklemek çok basittir. Mesela:

echo "Sonuna ekledim" >> dosya.txt

Bu şekilde bash’te işimizi çok kolay halledebiliriz.

Ancak dosyanın başına yazı eklemek bu kadar kolay olmuyor. Bunu gerçekleştirebilmek için bir python scripti yazmaya karar verdim. Amacım ise unutulan bir satırlık kodu ekleyerek dosyanın tıklanarak çalıştırılmasını sağlamak. (windows kullanıcıları bunu yazmıyorlar çünkü onlarda öyle bir problem yok)

Yapılacaklar sırayla:

  1. o klasördeki dosyaları bulmak
  2. bunlardan uzantısı py olanları filtrelemek
  3. geçici dosya açıp ona eklenecek satırları eklemek
  4. geçici dosyaya asıl dosyanın içeriğini eklemek
  5. geçici dosyanın ismini asıl dosyanınki haline getirmek.

Şu adresten yazdığım scripti alabilirsiniz: http://dhalsim.pastebin.com/f218830cd

Kedilerin Gariplikleri

Bu yazıları okuyunca çok gülüyorum, bi yandan kedim olsun istiyorum, bi yandan da kedim olursa ben naparım diye korkuyorum.

EkşiSözlük

Checkgmail 401 hatası, checkgmail 401 buggmail’in

Öncelikle daha önceden duymadıysanız, gmail hesabınıza, maillerinize çok kolay ve etkin bir şekilde dışardan erişmek istiyorsanız Checkgmail isimli programı denemenizi tavsiye ederim.

checkgmail.sourceforge.net

Yalnız google geçenlerde gmail’e giriş sistemini değiştirmesi ötürü checkgmail’in eski sürümlerinde 401 hatası alınıyor.
Eğer siz de öyle bir hata yapıyorsanız, sitede bahsettiği gibi

checkgmail -update

yazmanız yeterli. sürecin sonunda sizden sudo parolasını isteyecektir. Onu da girin. Not: sisteminizde SVN kurulu olması gerekebilir.

For the english users:

If you haven’t heard of this wonderful software that enables you to get, read, delete, mark as read, set starred messages in Gmail, just check this site, and install it to your system.

checkgmail.sourceforge.net

But there is a problem which because Google changed their authorization  system, old versions of checkgmail may get a 401 error. You have to just type:

checkgmail -update

to the terminal, and follow the instructions. Not: SVN shall be needed in your system.

Linux’ta komut bitince başka komut çalıştırma

Gece yatarken download yapmak heralde en sevdiğim şeylerdendir. Böylece sabah yapmam gereken işleri internet yavaşlamadan yapabilirim.

Ancak bilgisayarın da tüm gece boyunca açık kalmasını istemiyorum. Yani indirme işleti bitince bilgisayarımın kapanmasını istiyorum.

Bunu linux shell’de çok kolaylıkla yapabilirsiniz. Tabii ki efsanevi wget programı sayesinde.

Ben ubuntunun 9.10 sürümünün betasını indireceğim. İndirme bitince de bilgisayarımın kapanmasını istiyorum.

wget http://releases.ubuntu.com/releases/9.10/ubuntu-9.10-beta-desktop-amd64.iso; shutdown now

Gayet basit değil mi?

Peki ya siz indirmeye başladıysanız ve indirdiklerinizin boşa gitmesini istemiyorsanız? (yani baştan başlamamak için)

Bunun için çalışan komutu arkaplana alıp, kapatma komutunu girebilmemiz lazım.

O zaman wget çalışırken (CTRL+Z) tuşuyla işlemi arka plana atın. wget çalışmaya devam edecektir. Sonra şu komutları girin:

fg;shutdown -h now

Eğer shutdown kullanacaksanız, haliyle sudo girmeniz gerekecektir. O da download bittikten sonra parola soracağı için bilgisayarınızın kapanmamasına neden olacak. O yüzden shotdown programının iznini değiştirmeniz gerekmektedir. (Bu işlemi tüm işlemlerden önce yapmalısınız)

sudo chmod u+s /sbin/shutdown

Yeni Exaile 3

Not: Şu an exaile’in 0.2.14 sürümüne geri dönmüş bulunuyorum. Bunun nedeni 3. sürümün bana göre hiçbir artısı olmaması. hatta libnotify’ı bile çalıştıramadım. Performans olarak da düşük buldum. Size de 3. sürümü yüklemenizi tavsiye etmiyorum.

Yaklaşık 6 ay önce kendime düzgün bir gtk müzik çalar ararken, exaile ismini duydum ve hemen ubuntu depolarından yükledim.

Ve eylül başlarında exaile’ın 3. sürümü çıktı. En son bir bug fix sürümü olarak 3.0.1 çıktı. Ben de bu sevdiğim player’ı denemek istedim.

Yeni geliştirme ortamı launchpad’de bulunan exaile’i ubuntuya kurmak için şunları yapın:

  1. /etc/apt/sources.list dosyasına şu satısı ekleyin (karmic kullanıcıları jaunty yerine karmic yazsın)
  2. deb http://ppa.launchpad.net/exaile-devel/ubuntu jaunty main
  3. terminale şu satırları yazın
  4. gpg --no-default-keyring --keyring /tmp/.exaile.keyring --keyserver keyserver.ubuntu.com --recv   B79BBC58DE219687E584187AC174A7B143CBFCC0
    gpg --no-default-keyring --keyring /tmp/.exaile.keyring --export --armor  B79BBC58DE219687E584187AC174A7B143CBFCC0 | sudo apt-key add -
    rm /tmp/.exaile.keyring
    sudo apt-get update
    sudo apt-get install exaile

Bu işlemlerden sonra yeni exaile karşımızda.

Neler var yenilik olarak onlardan bahsedelim

  • Last.fm albüm kapağı desteği
  • cd ve diğer ortamların otomatik algılanması
  • kullanıcı arabiriminin geliştirilmiş olması
  • ve yeni pluginler

Belki eski sürümde olup da benim bulamadığım birkaç özelliği yazmam lazım.

  • Öncelikle Tabları orta fare tuşuyla açıp kapatabiliyoruz.
  • Pluginlerden ise mini mode (always on top ile) gerçekten kullanışlı görünüyor.
  • Bunun dışında yeni ipyhton konsolu da çok yerinde olmuş, eski konsolun hiçbir kullanışlılığı yoktu.
  • Bunun yanında m3u dosyalarını artık açabiliyoruz. Ama hala pls dosyaları çalışmıyor.
  • ReplayGain isimli yeni plugin ise ses üzerinde extra düzenleme isteyenler için gelmiş. Ancak + değerlerde bir değişim yaşamadım ne yazıkki. sadece – değerlerde işe yaradığını görüyorum.
  • Ve libnotify plugini nereye gitti? En beğendiğim özelliklerden biriydi. Umarım bu sürümde de onu buluruz.

Sonuç

Eğer eski sürümden zaten memnunsanız yeni sürümü kurmanıza gerek yok. En azından pluginlerdeki hatalar düzelene kadar.

pyEmpires artık GPL v3 lisanslı

Önceki makalelerden kaynak kodlarına ulaşabilirsiniz.