Masaüstü ortamıızın konfigürasyon dosyaları her kullanıcının ev dizinin altında .fluxbox dizini içerisinde bulunurlar.Bu dosyalar;

init Kullanıcıların kendilerine ait fluxbox ayarlarını tutar

menu Fluxbox Menüsü ayarlarının okunduğu dosyadır.

keys Klavye tuşlarımıza atadığımız değerleri tutan dosyadır.

apps Uygulamaların özelliklerini tutar,hangi boyutta açılacağı gibi özellikler.

backgrounds/ Arka Plan resimlerinin bulunduğu dizindir.

styles/ Kullanıcya ait stillerin(temaların) bulunduğu dizindir.

themes/ Kulanıcıya ait temaların bulunduğu dizindir.

Şeklindedir.Bu dosyalar ile kullanıcının fluxbox’a ait ayarları değiştirilebilir.Tüm kullanıcılar için genel bir ayar yapmak isterseniz /usr/X11/share/fluxbox dizini altında bulunan aynı isimli konfigürasyon dosyalarını kullanmalısınız.

Fluxbox ın ayarlarını okuyacağı dosyalarımızı belirtmeden ortamızı konfigüre etmeye çalışmak biraz saçma olacağından hemen ayar dosyalarını belirtmek için ~/.fluxbox/init dosyasını düzenleyelim.

session.keyFile:~/.fluxbox/keys

session.menuFile:~/.fluxbox/menu

satırlarının var olduğundan yada yukarıda belirtildiği şekilde olduğundan emin olun.init dosyasını ileride ayrıntılı olarak inceleyeceğiz.

Gelelim en eğlenceli bölüme ; konfigürasyon dosyaları ile oynayarak kendi masaüstümüzü şenlendirmeye…Öncelikle kendi kullanım alışkanlıklarımıza göre bir menü oluşturmak ile işe başlayabiliriz.Bunun için ~/.fluxbox/menu dosyasını favori metin editörünüz ile açın.Karşınıza aşağıdakine benzer bir söz dizimi gelecektir.Menümüzü oluşturmak için bu şekilde bir söz dizimi kullanacağız.Bu söz dizimi ile gerçekten çok kısa zamanda ve eğlenceli bir şekilde kendi menülerinizi oluşturacaksınız ve menüleri kendi alışkanlıklarınıza göre hazırladığınızdan zaman tasarrufu da sağlayacaksınız.

[begin] (Slackware) {}

[submenu] (Slackware Menu) {}

[exec] (TTT`s xterm) {xterm -fg green -bg black -fn 22 -cr red -hc white}

[exec] (ArkaPlanı Ayarla) {fbsetbg /home/ttt/.fluxbox/backgrounds/odd.jpg}

[exec] (Xmms) {xmms}

[exec] (Gmplayer) {gmplayer}

[exec] (Unreal Tournament 2004) {ut2004}

[exec] (K3b Cd Yazma Uygulamasi) {k3b}

[begin] (Slackware) {}

[exec] (Kmix Ses Seviyesi) {kmix}

[submenu] (Yardımcı Uygulamalar) {}

[exec] (Fluxter) {fluxter}

[end]

[end]

[end]

Menü oluşturmak için kullanacağımız yapı şu şekilde olacaktır(işaretler aynı şekilde kullanılmalıdır);

[Menü_Komutu] (Uygulama yada menü adı) {Çalıştırılacak komut yada dosya yolu} <Menüde_görüntülenecek_simge _dosyası>

Menü komutlarından bazıları ve kullanımları ise şu şekildedir;

[begin] (Ana Menü Adı)

Bu menü komutu ile Fluxbox menü yapılandırmamızı okumaya başlar.Fluxbox menü yapılandırma dosyasının başında mutlaka bulunmalıdır aksi takdirde fluxbox sistem tarafından kullanılan öntanımlı menüyü çalıştıracaktır.Fluxbox menüsünün üzerinde yer alacak isim için ise [begin] den sonra () parantez işaretlerinin içerisine kullanmak istediğiniz ismi yazmalısınız.Örnek; [begin] (Slackware FluxBox Menu)

[submenu] (Alt Menü Adı)

Bu komut alt menüler oluşturur.Oluşturacağınız alt menüye isim vermek için ise () parantez işaretleri içerisinde ismi belirtmelisiniz.Örnek;[submenu] (Ofis Uygulamaları)

[end]

begin ve submenu ile başlatılan bir menüyü sonlandırmaya yarar.Her submenu ve elemanlarını oluşturduktan sonra mutlaka bir end komutu gelir.begin komutu ve menüde kullanılacak elemanlar yerleştirildikten sonra menü yapılandırmamamızın en son kısımınaa da mutlaka menünün bitiş yerini göstermek amacıyla end getirilmelidir.end in kullanıldığı yer menünün tasarımını değiştireceğinden dikkatli olunmalıdır.

[exec] (Menüde görünecek uygulama adı) {komut yada dosya yolu}

Komutu yada yolu verilen uygulamayı çalıştırmamızı sağlar.Örneğin menümüzde xmms i çalıştırmak için ; [exec] (XMMS) {xmms} yada [exec] (XMMS) {/usr/bin/xmms}

Menüye hoş bir ara çubuğu yerleştirir.

[nop] (Menüde görünecek isim / Boş bırakılabilir)

Non-operational’ın kısaltması olan nop menüye herhangi bir işe yaramayan boşluklar yada yazılar koymamızı sağlar tasarım açısından hoş bir görüntü oluşturuyor.

[exit] (Menüde görünecek ad)

Fluxboxdan çıkmamızı sağlar.Örnek;[exit] (Fluxbox’dan Çık)

[restart] (Menüde görüntülenecek ad) {komut ? Boş bırakılabilir}

Fluxbox’ı yeniden başlatmamızı sağlar.Komut bölümünde herhangi bir komut tanımlandı ise fluxbox kapatıldıktan sonra o komut çalıştırılır , sistem tekrar fluxbox a dönmez.Örnek; [restart] (Fluxbox’ı Yeniden Başlat) , ikinci kullanımına örnek [restart] (Enlightenment) {starte16}

[reconfig] (Menüde görüntülenecek ad)

Fluxbox ayar dosyalarında var olan ayarları tekrar okur , herhangi bir değişiklik yapıldıysa onları uygular.

[config] (Menüde görüntülenecek ad ? Boş bırakılabilir)

İçerisinde fluxbopx konfigürasyon menüleri barındıran bir alt menüyü menünüze ekler.Örnek;[config] (Flux Ayarlar)

[stylesdir] (Fluxbox a ait stil dosyalarının dizin yolu)

Verilen dizin içerisindeki tüm dosyarları doğru kabul eder, stillere ait menü elemanı oluşturmak için kullanılır.

[stylesmenu] (Menüde görüntülenecek ad) {dizin adı)

Verilen isimde stillere ait bir alt menü oluşturur.

Örnek bir menü oluşturalım ve görünümüne bakalım.Menümüzü oluşturduktan sonra Fluxbox’ı yeniden başlatmalısınız ki flux yeni menüsünü okuyabilsin:)

[begin] (FluxBox)

[submenu] (Hızlı Menüm)

[exec] (Xmms) {xmms}

[exec] (Mplayer) {gmplayer}

[exec] (Xterm) {xterm}

[exec] (OpenOffice) {soffice}

[end]

[nop] (T T T)

[submenu] (Geliştirme Araçları)

[exec] (Kdevelop) {kdevelop}

[exec] (Quanta) {quanta}

[exec] (Anjuta) {anjuta}

[end]

[submenu] (Stiller)

[stylesdir] (~/.fluxbox/styles)

[stylesmenu] (/home/ttt/.fluxbox/styles)

[end]

[config] (FluxBox Ayarla)

[restart] (FluxBox Yeniden Başlat)

[reconfig] (Tekrar Ayarla)

[end]

Önemli ayar dosyalarından bir diğeri ise farklı tuş kombinasyonlarını FluxBox ta kullanmamıza olanak sağlayan ,bu ayarları saklayan ~/.fluxbox/keys dosyasıdır.Bu dosyada ise ayar yaparken tanımlamalarımız şu şekilde olacaktır.

<İlk Tuş> <İkinci Tuş> : <Komut>

Ayar dosyasında ilk tuş olarak belirttiğimiz tuşlar yerine Mod1,Mod2 gibi onları tanımlayan ifadeler yazılır.Bunlar değiştirici tuşlar olan Alt,Ctrl,Linux Logolu tuş gibi ingilizce de ?Modifier ? tabir edilen tuşlardır bu yüzden de dosyada bahsettiğim şekilde kullanılmışlardır.Bu tuşlardan Mod1 Alt tuşunu, Mod4 Linux Logolu tuşu ifade eder diğer tuşları ise Shift,Tab,Control gibi aynı ismleri ile kullanabilirsiniz.

Ayar dosyamızda kullanılabilecek bir çok komut olmasına karşın kullanacağımız komutlardan en önemlileri ise;

Workspace <Numara> Numara ile belirtilen sıradaki çalışma ortamına gider.

PrevWorkspace; Bir önceki çaçalışma ortamı

NextWorkspace; Bir sonraki çalışma ortamı

ExecCommand yada exec; Verilen komutu çalıştır.

Alt + Shift + F1 tuşlarına bastığımızda Mplayer ı açan bir tanımlama yapalım.

Mod1 Shift F1 : ExecCommand gmplayer

Alt + Shift + Tab ile Bir sonraki çalışma ortamına giden bir kombinasyon tanımlayalım.

Mod1 Shift Tab :NextWorkspace

Alt + F3 ile üç numaralı çalışma ortamına giden tuş birleşimi ise;

Mod1 F3 :Workspace 3

şeklinde olacaktır.

Başta da belirttiğimiz gibi init dosyası Fluxbox ayarlarını tutan dosyamızdır.Bu dosya Fluxbox tarafından oluşturulur.Buradan okunan çoğu özelliği fluxbox konfigürasyon menüsünden ayarlayabilirsiniz.Ancak bazı ayarları kendiniz manual olarak yapmak isteyebilirsiniz.Dosyamız içerisinde yer alan elle ayarlayabileceğimiz satırlara bir göz atalım;

session.keyFile: Tuş kombinasyonlarını saklayan dosyanın yerini belirtir.

session.menuFile: Menü ayarlarını saklayan dosyanın yolunu belitmenizi sağlar.

session.stylesFile: Temaların bulunduğu dizini ayarlar.

session.screen0.toolbar.tools:Araçlar çubuğunda kullanılacak araçları seçmenizi sağlar.Örneğin ; saat,simge çubuğu,bir sonraki masaüstü gibi düğmeleri araç çubuğunda göstermemizi sağlar.Ayrıca bu elemanların hangi sırayla gösterileceğini de belirler.Örnek;session.screen0.toolbar.tools: prevworkspace,nextworkspace,workspacename, iconbar,workspacename ,systemtray, clock, prevworkspace, nextworkspace(Hemen uygulayın bana sorarsanız, kullanımı hoş bir araç çubuğu)

session.screen0.rootCommand:Masaüstümüzde kullancağımız arkaplanı belirlememizi sağlar.

session.screen0.toolbar.height: Araç çubuğunun yüksekliğini piksel cinsinden ayarlamanızı sağlar.

session.screen0.toolbar.widthPercent: Araç çubuğunuzun genişliğini yüzdelik cinsten ayarlamanızı sağlar.

Init dosyasından okunan değerleri değiştirmek yerine FluxBox ortamında temalar oluşturmak,tema konfigürasyonları yapmak gibi bir seçeneğimiz bulunmaktadır.Bu şekilde diğer yönteme göre daha zevkli bir şekilde görünümü kolaylıkla değiştirebilirsiniz.TEma dosyaları ile yapılan işlem de zaten farklı bir şey değildir.Sadece ayarları init e işleyerek kalıcı hale getirmek yerine tema konfigürasyonları ile init te yer alan bir çok özelliğe atamalar yaparak ayarları değiştiririz.Tema yada stil ne demektir peki?FluxBox için tema yada stil masaüstümüze giydirdiğimiz giysi olarak tabir edilebilir.Temalar flux ın şekilsel kaplamalarıdır,ASCII metin dosyaları ile masaüstü yöneticisinin farklı bileşenlerinin görünümülerini değiştirmemize olanak veririler.Bir tema dosyasında ana elemanlar olarak;

menu.*

window.*

windowtab.*

slit.*

toolbar.*

bulunmaktadır.Bu elemanların ardından kullanılan özelliklere değerler atayarak görünümlerini değiştiririz.Örnek olarak;

menu.title.color:Menü başlığının ne renk olacağını,

menu.title.textColor:Menü başlığında kullanılan yazının rengini belirlememizi sağlar.

Daha öncede belirttiğimiz gibi kullanıcıya ait stil dosyalrı ~/.fluxbox/styles/ ,sisteme ait olanlar ise /usr/X11/share/fluxbox/styles/ dizini altında yer alırlar.Bu aşamda bu dizin altında bulunan dosyalardan herhangi birisini açıp kontrol etmeniz yararlı olacaktır.Stil dosyalarını oluştururken fluxbox geliştiricileri bir bilgisayarcının en iyi dostu olan asterisk işaretini(*) kullanabilmemizi olanaklı kılmışlardır.Peki bu işaret ne işimize yarayacak?Çok daha kısa metinlerle etkili stiller oluşturmamızı sağlamak için geliştiriciler bize bu sayede bir kolaylık sunmuşlar.HEmen işaretimizin stil dosyalarındaki kullanımına gelelim.Bildiğimiz asterisk işaretinden farklı bir işe yaramıyor aslında;tamamen joker görevi görüyor diyebiliriz.Masaüstü yöneticisinde bulunan menü,araç çubuğu elemanlarına ait özellikleri aynı biçimde ayaralamamızı sağlar.Söz gelimi; Fluxbox ait tüm metinlerin renklerinin aynı olmasını istiyorsak;

*textColor:blue

bileşenlerde kullanılan tüm renklerin aynı olmasını istiyorsak;

*color:green

yazarız bu sayede;

menu.frame.color

menu.title.color,

window.frame.color,

toolbar.color,

toolbar.clock.color gibi özelliklerin tümü aynı rengi alırlar.

Ayrıca menüde geçen renk tanımlamalarını aynı kılmak için ise

menu*color:rgb:7/5/7

yazabiliriz.

Masaüstü yöneticimizin en güzel ve çekici özelliklerinden biriside menülerinde,araç çubuğunda ve diğer bileşenlerindeki kaplamaları çalışır durumda iken uygulamasıdır.Kaplamalar bir menünün değişken renkli mi(gradient), tek renkli(solid) mi olacağı gibi özelliklerini değiştirir.Kaplamalar ait özellikleri değiştirmek için beş farklı seçeneği belritiriz, bunları tek tek anlatmak yerine en hoş görünenlerini açıklayıp geriye kalanlarını da sadece isimlerini vermekle yetineceğim.

Flat | Raised | Sunken

bileşenin düz mü,…..

Gradient | Solid

bileşenimizin tek renkli mi yoksa değişken renkli miş olacağını belirtiriz.

Horizontal | Vertical | Diagonal | Crossdiagonal | Pipecross | Elliptic | Rectangle | Pyramid

Kullanılacak kaplama yönteminin hangi şekilde olacağını seçeriz,bu özelliği doğal olarak değişken renkli kaplamayı seçti isek kullanırız.

Interlaced

bileşenin gittikçe koyulaşan bir kaplamayla oluşturmamızı sağlar.Solid ve Gradient özellikleri ile kullanabilirsiniz.

kullanacağımız renkleri ise ya ingilizce isimlerini kullanarka yada kırmızı,yeşil,mavi(rgb) karışımlarını kullanarak belirleyebiliriz.Bunu yapmak için örneğin;

toolbar.clock.color:rgb:3/4/5

yada

toolbar.clock.color:blue

gibi tanımlamalar kullanabilirsiniz.Stil dosyalarında yer alan tüm bileşen

özelliklerini burada anlatmamıza imkan yok ancak anlattığımız şekli ile dosyanın yapılandırması hakkında bilgi sahibi oldu iseniz kendi temalarınızı oluturmamanız için hiçbir engeliniz yok demektir.Çok kısa tanımlamalar ile ve asterisk in gücü ile kendimize ait bir tema oluşturalım isterseniz.

*color:rgb:6/7/15

*textColor:white

*unfocus.color: pink

*unfocus.colorTo:orange

*unfocus.textColor: lightgrey

*font: lucidasans-10

menu.hilite:Gradient

menu.hilite.color:red

menu.hilite.textColor:black

Burada menu.hilite menüde üzerinde bulunduğumuz aktif durumda olan menü seçeneğinin ne renk olacağına karar vermemizi sağlar.Elemanlar ve onlara it özellik ve alt özellikler ise şu şekilde sınıflandırılabilir(tablo tamamını içermemektedir.)

Eleman

Alt Eleman

Özellik

menu

frame

font

color

colorTo

justify

textColor

disableColor

title

hilite

bullet

(position) bullet alt özelliği

toolbar

label

font

color

colorTo

justify

textColor

windowlabel

clock

button

window

button

focus

font

label

unfocus

color

title

colorTo

handle

justify

grip

textColor

Yukarıda ki tablodan görebileceğiniz gibi her bileşenimizin/elemanımızın kendisine ait alt elemanları ve bu elemanlara ait tanımlayabileceğimiz özellikleri bulunmaktadır.Bu tablodan çıkarabileceğiniz gibi her alt eleman için kullanılan özellik tanımlamaları ana elemanımız için de kullanılabilir.Mesela;

toolbar.color: white

toolbar.clock.color: red

Tabloda tüm özellikler bulunmamasına rağmen ,tablo kendi stillerinizi oluşturmanızda kolaylık sağlayacaktır.Tüm eleman ve alt elemanlarına değinmemiz mümkün olmadığından belli başlı bir kaç özellikten bahsedebildik ancak eleman ve alt elemanlarına ait özelliklerden bazıları ise şu şekilde açıklanabilir;

font: Eleman yada alt elemana ait yazım fontunu belirtir.

textColor: Eleman yada alt elemana ait metin rengini belirler.

justify: Eleman yada alt elemanların hizalanmasını sağlar(left,right,center gibi)

color: Elemanın rengini belirtir.

colorTo: Eleman yada alt elemanın hangi renge dönüşeceğini gösterir.

position: Menu elemanın bullet alt elemanı için konum bilgisini ayarlamamızı sağlar.

title: Menülerde kullanılan başlığa ait alt elemandır.

Clock: Araç çubuğuna ait saat alt elemanıdır.

windowlabel: Araç çubuğu ve pencereye ait pencere etiketi alt elemanıdır.

label: İsimlendirme yapmamızı ve etiket atamamızı sağlar.

rootCommand: Stil dosyası içerisinde yer alır ve o stile ait arkaplanıayarlamanızı sağlar.Örneğin:

rootCommand: fbsetbg $HOME/resimlerim/resim1.jpeg