BSDnexus
11Mar/11Off

Minimalist X setup

A minimalist X environment offering the most screen real-estate using xmonad as the window manager of choice and conky as an informational bar. A taskbar is not used.

Xmonad has a configuration file written in Haskell, however, a simple search on the net provided the basics for styling and for starting conky. The file is ~/.xmonad/xmonad.hs and the basics are as follows:

import XMonad
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.ManageDocks
import XMonad.Util.Run(spawnPipe)
import XMonad.Util.EZConfig(additionalKeys)
import System.IO
 
main = do
xmproc <- spawnPipe "/usr/bin/conky -q"
xmonad $ defaultConfig
 { manageHook = manageDocks <+> manageHook defaultConfig
 , layoutHook = avoidStruts $ layoutHook defaultConfig
 , normalBorderColor  = "#009B95"
 , focusedBorderColor = "#FFA900"
 , modMask = mod4Mask     -- Rebind Mod to the Windows key
 }

It's pretty self-explanatory and quite readable. Notice that conky is called from within the xmonad config file.

Conky uses a configuration titled ~/.conkyrc and in order to give the feel of a consistent theme, the same colours have been used in conky as they have in xmonad. Clearly this can be customised to your needs:

update_interval 1.0
own_window yes
own_window_type panel
alignment top_middle
gap_x 0
gap_y 0
use_xft yes
xftfont DejaVu Sans Mono:size=10
minimum_size 1280 10 
 
TEXT
 ${alignr 25} ${color #FFA900} Eth0 ${color #009B95} ${downspeedgraph eth0 11,50 00CC00 FF0000} ${color #FFA900} Disk ${color #009B95} ${diskiograph /dev/sda 11,50 00CC00 FF0000} ${color #FFA900} CPU ${color #009B95} ${cpugraph 11,50} ${color #FFA900} Mem ${color #009B95} ${membar 11,50} ${color #FFA900} ${time %a, %d %b %l:%M%P}

Obligatory screenshot of said design (click for fullscreen version):

xmonad running with conky

minimalist xmonad and conky

Tagged as: , , No Comments