Rehber Arch XMONAD

Katılım
16 Mayıs 2022
Mesajlar
325
Makaleler
3
Xmonad, x (yani xorg) için döşemeli bir pencere yöneticisidir. Pencereler, açık ya da boşluk olmadan veya pencereler üst üste gelerek örtüşmeksizin, ekran kullanımını maksimizeleştirerek ekranı kaplamak amacıyla otomatik olarak düzenlenir. Pencere yöneticisi özelliklerine klavyeden erişilebilir, mouse ise isteğe bağlıdır.

Xmonad; haskell dilinde yazılmış, yapılandırılmış ve genişletilmiştir. Özel arayüz algoritmaları, tuş bağlamaları ve diğer uzantılar yapılandırma dosyaları içine kullanıcı tarafından yazılabilir.

Arayüzler dinamik olarak uygulanır ve her çalışma alanında farklı arayüzler kullanılabilir. Xinerama, birçok fiziksel ekranda döşenecek pencerelere izin vererek tamamen desteklenir.

Not: xinerama, tek geniş sanal ekran olarak iki veya daha fazla fiziksel ekranı kullanmak amacıyla x uygulamaları ve pencere yöneticilerini etkinleştiren x pencere sistemi için bir uzantıdır.

KURULUM
Çok temel bir yapılandırma sağlayan "xmonad" paketini ve en önemlisi ek döşeme algoritmaları, yapılandırmalar, betikler vb gibi daha yararlı bir masaüstü yapılandırması için "xmonad-contrib" paketini de birlikte kurun.

Alternatif olarak, birkaç ek bağımlılıklarla geliştirme paketi "xmonad-git" paketini ve aynı şekilde "xmonad-contrib-git" paketini kurun.

NOT: Xmonad paketini güncelleyerek yükselttikten sonra, "xmonad --recompile" komutunu çalıştırmayı unutmayın, yoksa daha sonra onu başlattığınızda paylaşılan kitaplıkları bulma sorunları olabilir. Bu süreci otomatikleştirmek için şu adrese bakın: xmonad - ArchWiki

BAŞLATMA
Xmonad'ı xinit ile çalıştırın. Alternatif olarak oturum menüsünden seçilen bir ekran yöneticisi olarak xmonad'ı seçin.
____________________________________________
NOT: Xinit programı bir kullanıcının manuel olarak bir xorg görüntüleme sunucusunu başlatmasına olanak sağlar. Startx betiği, xinit için ön-uç yani başlangıç betiğidir.

Xinit tipik olarak pencere yöneticilerini ve masaüstü ortamlarını başlatmak için kullanılır. Bunun için xorg-xinit paketinin kurulu olması gerekir. Bu ortamları " ~/.xinitrc " dosyasıyla çalıştırır. Eğer bu dosyayı oluşturmazsanız, xinit varsayılan olarak /etc/X11/xinit/xinitrc dosyasını çalıştıracaktır. Yani bu dosyayı home klasörünüze şu şekilde kopyalayın:

$ cp /etc/X11/xinit/xinitrc ~/.xinitrc

Ardından düzenleyerek "exec xmonad" komutunu girip kaydedin.
------------------------------------------------------------------------------

Xterm paketinin kurulu olduğundan veya yapılandırmada terminal emilatörünüzü değiştirdiğinizden emin olun. Yoksa, xmonad'da hiçbir şey yapamayacaksınız.


NOT: Xmonad varsayılan olarak bir X cursor ayarlamaz bu nedenle genelde cross cursor'ı görüntülenir. Beklenen sol işaretçiyi kurmak için, cursor temalarına buradan bakın: https://wiki.archlinux.org/titleCursor_themes#Change_X_shaped_default_cursor


YAPILANDIRMA
" ~/.xmonad " klasörünü ve bu klasörün içine " ~/.xmonad/xmonad.hs " dosyasını oluşturun ve ardından aşağıda açıklandığı gibi düzenleyin.

" ~/.xmonad/xmonad.hs " dosyasındaki değişiklikler yapıldıktan sonra, yeniden derlemek ve onları etkinleştirmek için "Mod-q" kısayolunu kullanın.

İPUCU: Xmonad'ın varsayılan yapılandırması oldukça kullanışlıdır ve bu yapılandırma sadece bir xmonad.hs dosyası olmaksızın basitçe çalıştırılarak elde edilir.

Xmonad yapılandırma dosyası Haskell dilinde yazıldığı için, programcı olmayanlar zor bir kurma süreci yaşayabilirler. Nasıl yapılacağına dair detaylı ve örnek yapılandırmalar için size aşağıdaki kaynakları öneririz:

* Xmonad - HaskellWiki

* Xmonad/Config archive - HaskellWiki

* Xmonad/Frequently asked questions - HaskellWiki

* Arch Linux forum akışı: xmonad Hacking Thread / Applications & Desktop Environments / Arch Linux Forums

En iyi yaklaşım değişiklikleriniz ve yapılandırmalarınızı sadece " ~/.xmonad/xmonad.hs " dosyasının içine koymaktır ve
yerleşik DEF fonksiyonundan alınan herhangi bir henüz kurulmamış olan bu tür parametreleri buraya yazmaktır.

Bu, aşağıdaki gibi bir " xmonad.hs " dosyası yazarak gerçekleştirilir:

import XMonad

main = xmonad def
{ terminal = "urxvt"
, modMask = mod4Mask
, borderWidth = 3
}

Bu kodlar basitçe; tüm diğer ayarları varsayılan yapılandırma ayarlarında bırakırken, varsayılan terminal ve kenarlık genişliğini ise girilen değerlere değiştirir (yani XConfig def değerinden miras alınanlara).

İşler daha karmaşık hale geldikçe, main fonksiyonu içindeki fonksiyon adıyla yapılandırma seçeneklerini araması ve bunları " ~/.xmonad/xmonad.hs " dosyanızın kendi bölümlerinde ayrı bir şekilde belirtmek yararlı olabilir. Bu büyük özelleştirmeler sağlar ve hooks fonksiyonu altındaki değerlerinizin yönetilmesini ve sonraki planlarınıza göre bakımını da kolaylaştırır.

Buna göre yukarıdaki basit " xmonad.hs " dosyası şöyle de yazılabilirdi:

import XMonad

main = do
xmonad $ def
{ terminal = myTerminal
, modMask = myModMask
, borderWidth = myBorderWidth
}
myTerminal = "urxvt"
myModMask = mod4Mask -- Win key or Super_L
myBorderWidth = 3

Ayrıca içe aktarmalar önce geldiği sürece; en üst seviyedeki sıra (yani main, myTerminal, myModMask ve benzerleri) veya kıvırcık parantez " {} " içerisindeki değerler haskelde önemli değildir.
 

Geri
Yukarı