Dwm

Iz projekta Ubuntu-RS Wiki
Idi na: navigacija, pretraga
 
Linija 1: Linija 1:
{{Radovi u toku}}
 
 
__TOC__
 
__TOC__
 
=Dwm=
 
=Dwm=
[[Slika:Dwm.jpeg|right|thumb|dwm menadžer prozora v5.8.2]]
+
[[Slika:Dwm.png‎|right|thumb|dwm menadžer prozora v5.9]]
 
[http://dwm.suckless.org/ Dwm] je dinamični menadžer prozora koji je napravljen sa ciljem da bude:
 
[http://dwm.suckless.org/ Dwm] je dinamični menadžer prozora koji je napravljen sa ciljem da bude:
 
* jednostavan
 
* jednostavan
Linija 30: Linija 29:
 
Za početak je potrebno da preuzmete izvorni kod sa sledeće adrese: http://dl.suckless.org/dwm/ (poslednji fajl je obično najnoviji dwm). Raspakujte arhivu na željenu lokaciju i prebacite se na istu u vašem terminalu (primer: cd ~/dwm-5.8.2).
 
Za početak je potrebno da preuzmete izvorni kod sa sledeće adrese: http://dl.suckless.org/dwm/ (poslednji fajl je obično najnoviji dwm). Raspakujte arhivu na željenu lokaciju i prebacite se na istu u vašem terminalu (primer: cd ~/dwm-5.8.2).
  
Da bi podesili vaš dwm neophodno je da prekopirate '''config.def.h''' u '''config.h''' i da ga otvorite u uređivaču teksta koji koristite. Sadžaj te konfiguracije izgleda ovako:
+
Da bi podesili vaš dwm neophodno je da prekopirate ''config.def.h'' u ''config.h'' i da ga otvorite u uređivaču teksta koji koristite. Sadžaj te konfiguracije izgleda ovako:
  
  
 
       /* See LICENSE file for copyright and license details. */
 
       /* See LICENSE file for copyright and license details. */
 
+
     
 
       /* appearance */
 
       /* appearance */
 
       static const char font[]            = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
 
       static const char font[]            = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
Linija 47: Linija 46:
 
       static const Bool showbar          = True;    /* False means no bar */
 
       static const Bool showbar          = True;    /* False means no bar */
 
       static const Bool topbar            = True;    /* False means bottom bar */
 
       static const Bool topbar            = True;    /* False means bottom bar */
 +
     
 
       /* tagging */
 
       /* tagging */
 
       static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
 
       static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
Linija 54: Linija 54:
 
         { "Firefox",  NULL,      NULL,      1 << 8,      False,      -1 },
 
         { "Firefox",  NULL,      NULL,      1 << 8,      False,      -1 },
 
       };
 
       };
 +
     
 
       /* layout(s) */
 
       /* layout(s) */
 
       static const float mfact      = 0.55; /* factor of master area size [0.05..0.95] */
 
       static const float mfact      = 0.55; /* factor of master area size [0.05..0.95] */
Linija 63: Linija 64:
 
         { "[M]",      monocle },
 
         { "[M]",      monocle },
 
       };
 
       };
 +
     
 
       /* key definitions */
 
       /* key definitions */
 
       #define MODKEY Mod1Mask
 
       #define MODKEY Mod1Mask
Linija 70: Linija 72:
 
         { MODKEY|ShiftMask,            KEY,      tag,            {.ui = 1 << TAG} }, \
 
         { MODKEY|ShiftMask,            KEY,      tag,            {.ui = 1 << TAG} }, \
 
         { MODKEY|ControlMask|ShiftMask, KEY,      toggletag,      {.ui = 1 << TAG} },
 
         { MODKEY|ControlMask|ShiftMask, KEY,      toggletag,      {.ui = 1 << TAG} },
 +
     
 
       /* helper for spawning shell commands in the pre dwm-5.0 fashion */
 
       /* helper for spawning shell commands in the pre dwm-5.0 fashion */
 
       #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
 
       #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
 +
     
 
       /* commands */
 
       /* commands */
 
       static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
 
       static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
Linija 109: Linija 113:
 
         { MODKEY|ShiftMask,            XK_q,      quit,          {0} },
 
         { MODKEY|ShiftMask,            XK_q,      quit,          {0} },
 
       };
 
       };
 +
     
 
       /* button definitions */
 
       /* button definitions */
 
       /* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
 
       /* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
Linija 128: Linija 133:
  
  
 +
Konfiguracija je razumljiva ukoliko bacite pogled na istu. Objašnjenja se nalaze pored svake opcije i primeri već postoje. Naglasićemo par stvari:
 +
* za boje se koriste isključivo HEX boje (sa svih 6 karaktera) poput ''#003366'' ili ''#0000cc''
 +
* Tagovi (''static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };'' deo) mogu da sadže imena i da ne budu brojevi!
 +
* META taster zavisi od vaše konfiguracije sistema. Na nekim sistemimam je META taster "Win Key" odnosno taster za malim prozočićem dok je kod drugih levi ALT taster!
  
 
+
Da bi se dwm preveo u binarni kod neophodni su vam ''libx11-dev, libxinerama-dev, sharutils, libx11-dev, libxinerama-dev'' paketi koje možete instalirati sledećom komandom:
Da bi se dwm preveo u binarni kod neophodnu su vam ''libx11-dev, libxinerama-dev, sharutils, libx11-dev, libxinerama-dev'' paketi koje možete instalirati sledećom komandom:
+
 
   sudo apt-get install libx11-dev libxinerama-dev sharutils libx11-dev libxinerama-dev
 
   sudo apt-get install libx11-dev libxinerama-dev sharutils libx11-dev libxinerama-dev
 
ili  
 
ili  
Linija 139: Linija 147:
  
  
 +
==Pokretanje dwm-a==
 +
Da bi se dwm pokrenuo neophodno je da pokrenete X server. Pokretanje može da se izvrši automatski ukoliko imate program za prijavljivanje na sistem (login manager) ili ručno iz terminala.
  
 +
====Pokretanje dwm-a preko programa za prijavljivanje na sistem (login manager)====
 +
Da bi pokrenuli dwm preko programa za prijavljivanje na sistem (Gdm, Kdm, Slim...) neophodno je da napravite dwm pokretač koji će biti prepoznat od strane ovih programa. Da bi to uradili neophodno je da napravite ''dwm.desktop'' (ime je proizvoljno ali ekstenzija "desktop" mora da postoji) u ''/usr/share/xsessions'' sledećeg sadržaja:
 +
  [Desktop Entry]
 +
  Encoding=UTF-8
 +
  Name=Dwm
 +
  Comment=Dynamic window manager
 +
  Exec=xinit
 +
  Icon=dwm.png
 +
  Type=XSession
 +
 +
Obratite pažnju na to da ovakav pokretač dwm-a se oslanja potpuno na vaš ~/.xinitrc fajl.
 +
 +
=====Pokretači za dwm unutar ~/.xinitrc datoteke=====
 +
Da bi uspešno pokrenuli dwm preko xinit fajla možete, '''na kraju tog fajla''', da dodate sledeće:
 +
  dwm &
 +
 +
Ukoliko želite da se dwm pokrene čak i kada ga ugasite, možete da koristite sledeću komandu:
 +
  while true
 +
  do
 +
    dwm
 +
  done
 +
 +
Dwm može da loguje i greške prilkom rada sa sledećom komandom:
 +
  while true
 +
  do
 +
    dwm 2> ~/.dwm.log
 +
  done
 +
Ova komanda će da upisuje logove u ''~/.dwm.log''
 +
 +
Na kraju, dwm može da na svom panelu prikazuje izlazne infomarcije koje ostavlja conky-cli program. Komanda za to je:
 +
  conky | while read -r; do xsetroot -name "$REPLY"; done &
 +
  dwm &
 +
Prvi red '''mora''' da ide neposredno pre pokretanja dwm-a!
 +
 +
 +
====Pokretanje dwm-a iz konzole====
 +
Nakon prijavljivanja u konzolu, možete lako da pokrenete dwm kucanjem sledeće komande
 +
  startx
 +
 +
'''Važno:''' Da bi se uspešno pokrenuo dwm, neophodno je da podesite vaš ~/.xinitrc fajl (pogledati članak iznad)!
 +
 +
 +
==Pokretanje programa nakon pokretanja dwm-a (autostart)==
 +
Programi koje želite da pokrenete idu u ''~/.xinitrc'' fajl. Naglašavamo da je neophodno da se sve aplikacije pokrenu pre dwm-a i da isti mora da bude  pokrenut poslednji kako bi sve bilo kako treba. Primer podešenog ''~/.xinitrc'' fajla:
 +
 +
      #Set wallpaper
 +
      exec feh --bg-scale `cat ~/.desktop-background.txt` &
 +
     
 +
      #start Xdefaults manager
 +
      exec xrdb -all ~/.Xdefaults &
 +
     
 +
      #keyboard set
 +
      exec setxkbmap hr &
 +
      setxkbmap hr &
 +
     
 +
      #delay set
 +
      exec xset r rate 310 31 &
 +
      xset r rate 315 32 &
 +
     
 +
      #i kill X server :> (+keyboard)
 +
      exec setxkbmap -option terminate:ctrl_alt_bksp &
 +
      setxkbmap -option terminate:ctrl_alt_bksp &
 +
      setxkbmap -layout rs,rs -variant latin, -option compose:rwin,lv3:ralt_switch,grp:alt_ctrl_toggle &
 +
     
 +
      #app kill
 +
      killall mpd &
 +
      killall mpdscribble &
 +
     
 +
      #apps start
 +
      conky &
 +
      mpd &
 +
      mpdscribble &
 +
      #stalonetray &
 +
      firefox &
 +
     
 +
      #Other
 +
      export OOO_FORCE_DESKTOP=gnome &
 +
     
 +
      #exec desktop
 +
      while true
 +
      do
 +
      conky | while read -r; do xsetroot -name "$REPLY"; done &
 +
      # Log stderror to a file
 +
      dwm 2> ~/.dwm.log
 +
      # No error logging
 +
      #dwm >/dev/null 2>&1
 +
      done
 +
      #dwm
 +
 +
 +
====Podešavanje tapeta====
 +
Podešavanje tapeta se može vršiti sledećim komandama:
 +
  hsetroot putanja_do_vašeg_tapeta &
 +
 +
  display -size 1024x768 putanja_do_vašeg_tapeta &
 +
Gde je "1024x768" rezolucija ekrana koju koristite. Za ovo vam treba ImageMagick program.
 +
 +
  feh --bg-scale putanja_do_vašeg_tapeta &
 +
Gde "bg-scale" može biti "bg-center" (centrira tapet). Za ovo vam treba Feh pregledač slika.
 +
 +
 +
==Primenjivanje dodataka i pečeva za dwm==
 +
Da bi se proširile mogućnosti dwm-a, postoji pregršt dodataka i pečeva za isti. Na [http://dwm.suckless.org/patches/ strani sa pečevima] možete videti listu istih kao i kako da ih primenite na vaš dwm.
  
 
----
 
----
Linija 147: Linija 260:
 
4: [http://dwm.suckless.org/patches/ dodaci i pečevi]  <br/>
 
4: [http://dwm.suckless.org/patches/ dodaci i pečevi]  <br/>
  
 +
----
 +
{{Korisnička dokumentacija}}
 +
 +
{{aktuelne verzije}}
 
[[Category:Aplikacije]]
 
[[Category:Aplikacije]]
 +
[[Category:Saveti i trikovi]]

Tekuća izmena od 1. decembar 2011. u 11:49

Lični alati
Imenski prostori
Varijante
Akcije
Navigacija
alati
Linkovi