Türkçe kurulum yapılan Linux dağıtımlarının çoğunda, kurulumdan sonra masaüstü ortamının "Masaüstü" adında Türkçe isimlendirilmiş bir klasöre bağlandığını görürsünüz. Bu klasör içinden çalıştırılan ya da bu klasör içindeki bir dosyayı kullanan bazı uygulamalar, içinde çalıştıkları klasörün adının içerdiği Türkçe karakterlerden ötürü, dosya olmasına rağmen "dosya ya da dizin yok" gibi hatalar verebiliyor. Buna benzer sorunları gidermenin geçici ve kalıcı iki basit yolu var.
- Geçici: Kullanılan uygulama ve proje dosyaları, Türkçe karakter içermeyen bir alana taşınır ve orada çalıştırılabilir.
- Kalıcı: Sistemin bağlı olduğu kullanıcı dizinleri değiştirilerek, dizin yolu içinde Türkçe karakter bulunmayan başka bir klasör, masaüstü dizinine bağlanır.
İkinci yöntem sistem genelinde uygulandığı için, bu soruna daha kalıcı bir çözüm oluşturur.
Kullanıcı dizinlerinin değiştirilmesi
Linux işletim sisteminde, genel amaçlı kullanılan bazı dizinler (Masaüstü, Belgeler, Müzik, Videolar vb.), sistem açılışında bağımsız değişkenlere tanımlanır. Bu sayede, kullanıcıların genel dizinlerine ihtiyaç duyan uygulamalar bu değişkenlere bakarak ilgili klasörü bulur. İnternet tarayıcınızın indirdiği dosyaları İndirilenler klasörüne kaydetmesi veya ofis uygulamalarının belgelerinizi Belgeler klasörüne kaydetmesi gibi. Bu tanımlanmış dizinler düzenlenerek, sistem genelinde uygulamalar farklı bir dizine yönlendirilebilir. Yani sistemin genel masaüstü ortamını, Masaüstü klasörüne değil de, başka bir klasöre yönlendirebilirsek, bu sorundan kurtulmuş oluruz.
Bu işlemi iki farklı yolla gerçekleştirebilirsiniz.
- Kullanıcı dizinleri dosyasını düzenleyerek.
- Yardımcı komut satırı uygulamasını (xdg-user-dirs-update) kullanarak (bu uygulama her masaüstü ortamında kurulu olmayabilir).
1. Kullanıcı dizinleri dosyasının düzenlenmesi
/home/$USER/.config/
dizinindeki
user-dirs.dirs
dosyasını, herhangi bir metin editörü ile açın.
Eğer sistem diliniz Türkçe'yse, aşağıdaki gibi Türkçe klasör isimleri
görebilirsiniz.
XDG_DESKTOP_DIR="$HOME/Masaüstü"
XDG_DOWNLOAD_DIR="$HOME/İndirilenler"
XDG_TEMPLATES_DIR="$HOME/Şablonlar"
XDG_PUBLICSHARE_DIR="$HOME/Genel"
XDG_DOCUMENTS_DIR="$HOME/Belgeler"
XDG_MUSIC_DIR="$HOME/Müzik"
XDG_PICTURES_DIR="$HOME/Resimler"
XDG_VIDEOS_DIR="$HOME/Videolar"
Dosyada tanımlanmış klasör isimlerini, kendi kullanmak istediğiniz klasörlerin
adlarıyla değiştirin. Örneğin Masaüstü
klasörünü İngilizce
kurulumda olduğu gibi Desktop
olarak değiştirelim.
XDG_DESKTOP_DIR="$HOME/Desktop"
Buraya yazdığınız klasör kullanıcı ana dizininde ($HOME
)
gösterildiği için, aynı yerde aynı klasörü oluşturmanız gerekiyor. Veya nereye
tanımladıysanız.
Dosyayı kaydedin ve sistemi yeniden başlatın. Ya da terminalden aşağıdaki komutu verdiğinizde uygulamalar
yeni masaüstü klasörü olarak Desktop
klasörünü görecektir.
$ xdg-user-dirs-update
Üstteki komutla dosya yöneticisi, medya oynatıcı, internet tarayıcı gibi
uygulamalar değişikliği anında görecektir. Ancak masaüstü ortamları (XFCE,
Gnome vb.) bu durumu ekrana hemen yansıtmaz. Ayrıca
xdg-user-dirs-update
uygulaması sisteminizde yüklü olmayabilir.
Bu durumda sisteminizi yeniden başlatmalısınız. Artık eski masaüstü klasörünüzdeki dosyaları bu
klasöre kopyaladığınızda, simgeler de ekranda görünecektir.
2. Komut satırı uygulamasının kullanılması
Yukarıdaki yönteme alternatif olarak,
xdg-user-dirs-update
uygulamasıyla da kullanıcı dizinlerini
değiştirebilirsiniz. Uygulamaya --set
parametresiyle birlikte
değiştirmek istediğiniz dizini ve tam dizin yolunu belirtmelisiniz.
xdg-user-dirs-update --set <DIR> <path>
-
<DIR>
Kullanıcı dizinini temsil eden bağımsız değişkenin adı. Değiştirmek istediğiniz dizinin, listedeki değişken adını kullanabilirsiniz.
DESKTOP
DOWNLOAD
TEMPLATES
PUBLICSHARE
DOCUMENTS
MUSIC
PICTURES
VIDEOS -
<path>
Kullanıcı dizinine bağlayacağınız klasörün tam dizin yolu.
Örnek olarak masaüstü dizinimizi, kullanıcı ana dizinindeki
Desktop
klasörüne bağlayalım.
xdg-user-dirs-update --set DESKTOP /home/$USER/Desktop
Artık uygulamalar yeni masaüstü klasörü olarak Desktop
klasörünü
görecektir. Masaüstü ortamınızda da etkin olabilmesi için sistemi yeniden
başlatmalısınız.
Varsayılan dizinleri yeniden oluşturma
xdg-user-dirs-update
uygulamasını kullanarak, dizinleri kurulumla beraber
gelen varsayılanlara döndürebilir ve ilgili klasörleri de yeniden
oluşturabilirsiniz. Bu işlemin, dil tercihinize bağlı olarak farklı seçenekleri var.
Sistemin kullandığı dilde varsayılan dizinler oluşturma
Sistemin kullandığı dilde varsayılan dizin ve klasörlere dönmek için bu komutu
kullanabilirsiniz. Bu komut sonrasında eğer sisteminiz Türkçe diline ayarlıysa,
kullanıcı kök dizininde Türkçe klasörler kendiliğinden oluşturularak dizinler
bu klasörlere bağlanır.
/home/$USER/.config/user-dirs.dirs
dosyası mevcut değilse yenisi
oluşturulur. İngilizce klasörler varsa silinmez.
xdg-user-dirs-update --force
İngilizce varsayılan dizinler oluşturma
İngilizce varsayılan dizin ve klasörlere dönmek için aşağıdaki komutu
kullanabilirsiniz. Bu komut sonrasında sisteminiz Türkçe dahi olsa, kullanıcı kök
dizininde İngilizce klasörler kendiliğinden oluşturularak dizinler bu
klasörlere bağlanır. /home/$USER/.config/user-dirs.dirs
dosyası
mevcut değilse yenisi oluşturulur. Türkçe klasörler varsa silinmez.
LC_ALL=C xdg-user-dirs-update --force
Mevcut duruma göre varsayılan dizinler oluşturma
Alttaki komut mevcut durumu gözeterek işlem yapar.
-
/home/$USER/.config/user-dirs.dirs
dosyası mevcutsa ve dosyada tanımlanan klasörler de mevcutsa doğrudan bağlantı kurulur. Klasörler mevcut değilse, klasörleri ve dizinleri oluşturmaz, dizini boş bırakır. -
/home/$USER/.config/user-dirs.dirs
dosyası mevcut değilse, Türkçe ya da İngilizce hangi klasör varsa dizini ona bağlar. Türkçe ve İngilizce klasörlerin ikisi de varsa dizinleri İngilizce klasörlere bağlar, Türkçe isimlileri silmez. Hiç klasör yoksa Türkçe isimli klasörleri oluşturur ve dizinleri bu klasörlere bağlar.
xdg-user-dirs-update
Ayrıca /home/$USER/.config/user-dirs.dirs
dosyası mevcut değilken sistemi yeniden başlattığınızda da bu son komut çalışır ve aynı sonuçlar gerçekleşir.