Linux’ta, masaüstü dosyası olmayan bir uygulama, masaüstü ortamınızla bütünleşmeyecektir. Çoğu uygulama bir tane sağlar, ancak bazen bir tane oluşturmanız gerekir.
Masaüstü Dosyaları
Masaüstü dosyaları, ait oldukları uygulama veya komut dosyası hakkında bilgi içerir. Genellikle yürütülebilir dosyalarla kullanılırlar, ancak isterseniz bunları bir komut dosyasıyla da kullanabilirsiniz. Yazının devamında , sadece “uygulama” diyeceğiz.
Bir masaüstü dosyası, masaüstü ortamınızın o uygulamayla uğraşırken başvurabileceği meta verileri içerir. Masaüstü dosyası, uygulama ikili dosyasının veya komut dosyasının nerede olduğunu, hangi simgeyi kullandığını vb. belirtir. Masaüstü dosyaları standart konumlarda depolandığından, masaüstü ortamınız bunları güvenilir bir şekilde bulabilir ve bunlara başvurabilir.
Bir uygulamanın masaüstü dosyası yoksa, masaüstü ortamınızla entegrasyonunun bir kısmı başarısız olur. Uygulama aramalarının sonuçlarında görünmeyecek ve onu dock’a veya başka bir başlatıcıya sabitleyemeyeceksiniz. Bazı masaüstü ortamlarında, masaüstünüze bir masaüstü dosyası yerleştirebilirsiniz ve bu bir kısayol görevi görecek ve masaüstü dosyasına çift tıklayarak uygulamayı çalıştırmanıza izin verecektir. Onlara isimlerini veren bu kullanım durumudur.
Uygulamalar, çeşitli nedenlerle bir masaüstü dosyasına sahip olmayabilir. Kurulum rutini aksamış olabilir veya asla bir kurulum sağlamayı amaçlamayan minimalist bir kurulumcu olabilir. Bir uygulamayı kaynak kod olarak indirmek ve bilgisayarınızda derlemek çoğu zaman bir masaüstü dosyası oluşturmaz.
Tabii uygulamayı kendiniz yazdıysanız, masaüstü dosyasından da siz sorumlusunuz. İyi niyetli ve masaüstü ortamınızın normlarına ve beklentilerine uyan uygulamalar, profesyonel hissettiren ve kullanıcılara ne yaptığınızı bildiğiniz konusunda güven veren uygulamalardır.
Bir Masaüstü Dosyasının Oluşturulması
Bir masaüstü dosyası, düz bir metin dosyasıdır. Herhangi bir metin düzenleyici kullanılarak oluşturulabilirler. Temsil ettikleri uygulama ile aynı adı taşırlar ve geleneksel olarak bir “.desktop” uzantısına sahiptirler.
Masaüstü dosyaları yorumlar, grup üstbilgileri ve anahtar/değer çiftleri içerebilir.
- Yorumlar: Yorumlar bir “#” karesiyle başlar.
- Grup Başlıkları: Grup başlıkları, bölüm başlıkları görevi görür. Bunlar “[]” parantezleri içine alınır. İlgili anahtar/değer çiftleri kümelerini gruplamak için kullanılırlar. Tek zorunlu grup başlığı “[Masaüstü Girişi]”dir.
- Anahtar-Değer Çiftleri: Ayarlar, adlandırılmış öğelere veya “anahtarlara” değerler verilerek girilir. Örneğin, Type=Application bir anahtar/değer çiftidir. “Tür” anahtardır ve “Uygulama” değerdir.
Çalışan Bir Örnek
Başlamadan önce uygulamanın çalıştığından emin olun. Bir terminal penceresi açın ve uygulamayı başlatın. Çalışırsa, bu harika. Devam edebilir ve masaüstü dosyanızı yapabilirsiniz. Uygulama çalışmazsa, masaüstü dosyanıza ne koyarsanız koyun yine de çalışmayacaktır.
Bir masaüstü dosyası yoluyla başka bir soyutlama katmanı eklemeyi düşünmeden önce, uygulamanın başlatılmasını engelleyen her şeyi düzeltmeniz gerekir.
Çalıştığımız programın “/usr/local/bin/taf/” dizininde taf adında bir yürütülebilir dosyası var. Herhangi bir sorun olmadan başladığından emin olmak için uygulamayı başlatacağız.
./taf

Program gayet güzel açılıyor.

Bu basit test, faydalı bilgiler verir. Uygulamayı masaüstü dosyamızdan başlatmaya çalışırken zorluklarla karşılaşırsak, sorunun uygulamanın kendisiyle değil, masaüstü dosyasıyla ilgili olması gerektiği anlamına gelir.
Masaüstü dosyamızı herhangi bir yerde oluşturabiliriz, ancak onu kullanmak için iki yerden birine kopyalamamız gerekiyor.
- Uygulamayı kullanacak tek kişi sizseniz, masaüstü dosyanızı “~/.local/share/applications” dizininize kopyalayın.
- Uygulamayı tüm kullanıcıların kullanabilmesini istiyorsanız, masaüstü dosyanızı “/usr/share/applications/” dizinine kopyalayın.
Tam olarak çalışan bir masaüstü dosyasının çok fazla bilgi içermesi gerekmez. İşte taf uygulaması için oluşturduğumuz masaüstü dosyası. Adı “taf.desktop”.
[Desktop Entry] Name=Text Adventure Framework GenericName=Interpreter for GDL Adventure Scripts Comment=Game Description Language interpreter Version=1.0 Exec=/usr/local/bin/taf/taf Path=/usr/local/bin/taf/ Icon=/usr/local/bin/taf/taf_icon.png Terminal=false Type=Application Categories=GNOME;GTK;Game;
Bu, kendi masaüstü dosyalarınız için bir şablon olarak kullanılabilir. Masaüstü dosyasını oluşturduğunuz uygulama için yürütülebilir dosyanızın adını kullanmayı ve buna uygun dizin yollarını değiştirmeyi unutmayın.
Her satırın anlamı budur.
- [Desktop Entry]: Bu satır, dosyayı bir masaüstü dosyası olarak tanımlar. Dosya yanlış adlandırılmış ve “.desktop” uzantısına sahip olmasa bile, bir masaüstü dosyası olarak tanınmalı ve işlenmelidir.
- Name: Yürütülebilir dosyanın adı değil, uygulamanın tam adı. Bu, masaüstü ortamında görüntülendiğinde uygulama simgesinin altında gösterilecektir. Ayrıca araç ipuçlarında kullanılacak metindir.
- GenericName: Bu, uygulamanın türünün genel bir açıklamasıdır. Web tarayıcısı, IDE veya kelime işlemci gibi genel bir terim varsa, bunu kullanabilirsiniz.
- Comment: Bunun amacı, “Ad” ve “GenericName” anahtar/değer çiftlerini desteklemek için ek bilgi sağlamaktır.
- Version: Bu dosyanın uyumlu olduğu masaüstü dosyası belirtiminin
- Exec: Bu, yürütülebilir dosyanın adı veya yürütülebilir dosyanın adı da dahil olmak üzere yürütülebilir dosyanın tam yolu olabilir.
- Path: Bu, uygulamanın başlatılacağı dizine giden yoldur. Başlatma zamanında uygulamanın çalışma dizinidir.
- Icon: Uygulamanın simgesi. Bu simge, uygulama arama sonuçlarında ve uygulama dock’a veya başka bir başlatıcıya eklendiğinde kullanılır.
- Terminal: Uygulamanın bir terminal penceresinde çalışıp çalışmadığını gösterir.
- Type: Normal uygulamalar için bu her zaman “Uygulama” olacaktır.
- Categories: Bu değer noktalı virgül “;” ile sonlandırılmalıdır. çünkü bir liste tutar. Liste, uygulamanın menülerde listelenebileceği kategorileri içerir.
“~/.local/share/applications” veya “/usr/share/applications/” içindeki canlı masaüstü dosyanızı her değiştirdiğinizde, yaptığınız değişikliklerin ne gibi etkileri olduğunu görmek için oturumu kapatıp tekrar açmanız gerekir. Bunu önlemek için update-desktop-database komutunu kullanabilirsiniz. Bunu yaparken sudo kullanmanız gerekecek.
sudo update-desktop-database

Masaüstü dosyanızın doğruluğunu kontrol etmek için bir yardımcı program da vardır. Herhangi bir sözdizimi veya başka hatalar tespit ederse, bunları size bildirir. Dosyamızdaki “Kategoriler” satırına “Uygulama” kelimesini ekleyeceğiz ve kontrol edeceğiz.
Son satırı şu şekilde değiştirdik:
Categories=GNOME;GTK;Game;Application;
“Uygulama” kategorisi kullanımdan kaldırıldığı için bu bir hata oluşturmalıdır.
desktop-file-validate taf.desktop

Doğrulayıcı, “Uygulama” kategorisinin artık “Kategoriler” listesinde kabul edilebilir bir değer olmadığı konusunda bize bir uyarı verir.
Masaüstü Dosyanızı Kullanma
Uygulama sadece sizin kullanımınız için ise, masaüstü dosyasını “~/.local/share/applications” dizininize kopyalayın. Tüm kullanıcıların uygulamayı kullanmasına izin veriliyorsa, masaüstü dosyasını “/usr/share/applications/” dizinine kopyalayın.
“/usr/share/applications/” dizinine kopyalayacağız.
sudo cp taf.desktop /usr/share/applications

Ayrıca yeni masaüstü dosyamızın okunduğundan ve meta verilerinin veritabanına eklendiğinden emin olacağız.
sudo update-desktop-database

“Süper” tuşu genellikle sol taraftaki “Ctrl” ve “Alt” tuşlarının arasında bulunur. GNOME’da “Süper” tuşa basmak, uygulama aramasına girer. Masaüstü dosyamız “Metin Macera Çerçevesi” adlı bir uygulamayı tanımladığı için, arama sonuçlarında uygulamanın simgesini görüntülemek için arama ipucu olarak “metin” girmek yeterlidir.

Simgeye tıklamak uygulamayı başlatır.

Uygulama, masaüstü ortamına güzel bir şekilde entegre edilmiştir. Çalışırken dock’ta simgesi doğru şekilde görüntüleniyor. Simgenin üzerine gelindiğinde uygulamanın tam adını içeren bir araç ipucu görüntülenir.

Simgeye tıklamak, uygulamanın açtığı pencereleri gösteren pencere önizleme görünümünü gösterir.

Uygulama simgesine sağ tıklamak bir bağlam menüsü oluşturur. “Sık Kullanılanlara Ekle” seçeneğinin seçilmesi, uygulamayı yuvaya sabitler.

Uygulama simgesi, ayırıcı çizginin üzerine taşınır ve yuvada kalıcı bir simge haline gelir. Uygulama çalışmıyorken bile simge mevcuttur.

Yazının orijinalini buradan okuyabilirsiniz.

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.