Wednesday, 31 October 2012

Big Bash Of Light weight Desktop Managers openSUSE 12.2

 Big Bash of Light weight Desktop Managers is about pitting against each other the various DMs offered by openSUSE 12.2 . It involves taking each of the each of the desktops for a spin and checking out whether they are good enough for daily use. The desktop managers described here are managed by the community and not officially supported. The end of the article features a table which compares and rates these desktops.
Special Note:-
 It would be a good idea to create a new user profile and turn off auto login feature to avoid getting stuck with a broken system. To know more about user management from a GNOME 3.X perspective you may take a look at this post.
 Since I had already written about Cinnamon i am not covering it again. The following are the desktop managers we are going to take a look at in the rest of the article
 I badly wanted to review Razor Qt / Razor Desktop too. But it currently suffers from "Razor Death". Once we login the screen goes blank and I became it's latest victim :) .
Installation
  • Assuming that you have GNOME 3.4.2 / openSUSE 12.2 installed, we need to ensure that we have installed the community repositories similar to what has been described here.
  • Open the gnome terminal and add the relevant desktop repositories. The -f option will make the repos' auto-refresh enabled.
    sudo zypper ar -f http://download.opensuse.org/repositories/X11:/windowmanagers/openSUSE_12.2/X11:windowmanagers.repo
  • Reresh the repository metadata
    sudo zypper ref -f
  • Install the relevant packages/rpms
    sudo zypper in iceWMCP icewm-gnome icewm-themes iceWMCP enlightenment epplet-base fluxbox fvwm2 pekwm pekwm-theme-adriano awesome
Awesome
 It is a  window manager for X. It is very fast, extensible. It is primarily targeted at power users and developers. It has minimal graphical user interface and is not the for people who need a GUI (Graphical User interface) to configure or do things. Awesome needs users to be comfortable  editing config files and at ease with command line settings to perform basic things like changing wallpaper. If changing the desktop background involves editing a configuration file sounds like a bad idea then avoid Awesome.
Change background
 You need to download a ".png" image of your choice as ".jpg" are not accepted by the themes framework and then edit the below line in the file "/usr/share/awesome/themes/default/theme.lua" provided you are using the default theme.
-- You can use your own command to set your wallpaper
--theme.wallpaper_cmd = { "awsetbg /usr/share/awesome/themes/default/background.png" }
theme.wallpaper_cmd = { "awsetbg /home/test/Downloads/Fable3-wallpaper_1280x1024.png" } 

Open an application
 Press key combination "Win key+r" which opens a tiny command launcher on the top panel where you can type in a command of your choice to launch any application. If you need to browse and need Opera you can type in opera in the command launcher and press the return or enter key.
Screen Layouts
 Awesome provides a cool layout switcher at the right end of the panel which can be used to switch between 12 different screen layouts. The default is the floating layout. Using key combination "Win+Space" we can switch between various layouts.
Switch Screen Resolution
 Awesome requires  its users to know what XRandR is and how can one set the screen / display resolution using command line interface. You open a terminal by terminal in command launcher(win+r) or (win+Enter key) and then type in "xrandr -q" to get the screen resolution list.Then you can type in something like "xrandr --size 1280x1024". Ensure that the 'x' is a small one.
Close Applications
 Applications can be closed using "win+shift+c" key combination.
Switch between workspaces
 You can switch between workspaces using key combination "win+1, win+2, ..." or use the GUI tool on the panel numbered 1 to 9.
Application Switcher
 Instead of using Alt+Tab for application switcher you need to use "win+Tab"
 Screenshot of Awesome desktop showing time at the top right end of the screen, customised desktop wallpaper, a rudimentary panel at the top which also contains a workspace switcher and very simple menu at the top left hand side.
 Screenshot showing Nautilus (File & folder organizer), Gedit (Text Editor), Terminal and SeaMonkey (Browser)
Enlightenment(e16)
 Enlightenment also known simply as E, is a stacking window manager for the X Window System which can be used alone or in conjunction with a desktop environment such as GNOME or KDE. Only thing I found annoying is that the focus shifts to a window based on the location of mouse pointer on the screen. E16 has a very different user interface and main desktop consists of:-
  • Two Pagers(Workspace Switchers)
  • System Tray
  • Icon Box(Dock or Panel like stuff) for switching between open applications
  • E-Applets which provide additional functionality like E-NetFlame(Network app),E-CPUFlame(CPU load app), E-Exec(Application launcher)
 The following snapshot shows the Enlightenment desktop with "iconbox" at the bottom of the page , systray at the right hand side bottom, Two pagers at the bottom left hand side, two E-Applets at the top left hand side.
 The next snapshot shows the Enlightenment desktop with Alt+Tab switcher at the centre of the screen. It is a switcher with a difference as the applications are stacked vertically.
 Instead of placing the application menu on the panel the desktop E has opted to display the application menu on the left click of the mouse.
 Not many desktops provide maintenance menu to purge cache and stuff and i am impressed that E16 provides a way to purge desktop latency.
 There is a very good E16 settings tool which provides various tabs to manage sessions, theme, desktop background and a host of other settings.
Fluxbox
 Fluxbox is a lightweight window manager for the X Windows. It offers a bare bones desktop similar to Awesome and requires a high degree of customisation using command line and editing myriad config files.
The default desktop with command launcher(Alt+F2) is displayed below
Fluxbox showing Gedit and nautilus
 Fluxbox screen with context menu(right click) showing sub menu to change themes
 Fluxbox theme ZimekGreen in action. The snapshot also shows the way to customise panel/toolbar which consists of a widget showing list of open application list, workspace switcher , time widget and system tray.
 Since Fluxbox doesn't give you a fully loaded application menu the desktop users can download the menu creator software from here and create their own menus as displayed below. After you download the menu creation software you can extract the archive file and then launch the tool by using the command "python fluxMenu.py" from terminal.
 After creating your own customised application menu you can get a menu similar to the one below . When creating new menus you may want some icons. You will find that application icons are of format "png" or "xpm" and are available under folder path "/usr/share/pixmaps"or "/usr/share/icons/...".I have created four custom menu items for applications Shutter(Screenshot Tool) , SeaMonkey( Browser ), Artha( Thesaurus ) and Pinta( drawing/editing program ) using the menu creator software as shown in the screenshot.
FVWM
 FVWM is a window manager for  X Windows. FVWM is intended to have a small memory footprint but a rich feature set, to be extremely customizable and extendible. This window manager tends to iconify windows and place them at the top left hand side of the desktop when minimised which i found to be novel and at the same time amusing.
 Default start up screen of FVWM with banner displayed prominently. You can see the task bar at the bottom of the page.
 FVWM provides a very cool feature for power users. It provides menu item which launches xterm in super user mode which is very helpful if we are going to change any settings.
FVWM screenshot showing Libreoffice Calc, Pinta and xterm windows
FVWM iconifies applications when they are minimised
 FVWM has a very simple and dull looking application switcher (Alt+Tab). I guess it reflects the age of the product.
There is cute application launcher called Talk!
IceWM
 IceWM is a ice cool window manager for the X Windows System .It has lot of quirky themes. IceWM features multiple workspaces, opaque move and re-size,  taskbar,  window list, mailbox status, and a digital clock. It is fast but at the same time has a lot of features. It has a good desktop configuration utility in the form of iceWMCP (IceWM Control Panel) which can be accessed through the main menu.
 The fact that the main menu of IceWM responds to windows key on keyboard is a welcome relief compared to other desktops which have not bothered to implement this simple feature. The panel is loaded with buttons like "show desktop"  button, "window list" button which adds up to provide a good user experience. Pressing "Win+Space" opens up a command launcher on the panel which is pretty cool.
 This is a screenshot of the default IceWM desktop with toolbar / taskbar at the bottom of the screen.The toolbar has a network monitor as well CPU load monitor at the right end near the digital clock. If we want more detailed stats we can click on the monitors and they will open full fledged monitors.
 The application list is exhaustive and can be accessed either through right click of mouse of through icemenu(win key) at the bottom of the screen.
 The below screenshot shows Nautilus(File manager), SeaMonkey (Browser) and DrJava (light weight IDE for Java)
IceWM with xterm and YaST installer in action
 You can launch the "IceWM Control Panel" using the command "iceWMCP" from xterm. The control panel allows users to do various activities like change themes, change desktop backgrounds etc.
 The IceWM Menus or IceMe provides a cool way to add more application launch buttons to the panel/toolbar.
To customize IceWM we can create the following files in the folder "~./.icewm"
  • toolbar - If you make entries in this it will create application launchers in  toolbar. The entries in my file as below. The format is prog<space>"<tooltip>" "<iconpath>"<space><excutable name>
    prog "Nautilus" "/usr/share/icewm/icons/folder_16x16.xpm" nautilus
    prog "SeaMonkey" "/usr/share/pixmaps/seamonkey-orig.png" seamonkey
    prog "DrJava" "/home/test/Downloads/drjava-icon-512x512.jpg" java -jar /home/test/Downloads/drjava-stable-20100913-r5387.jar
    prog "Calc" "/usr/share/pixmaps/xcalc.png" xcalc
    prog "Shutter" "/usr/share/pixmaps/shutter.png" shutter
    prog "IcePref" "/usr/share/iceWMCP/icons/icewmcp-icepref.png" iceWMCP
    prog "1360x768" "/usr/share/pixmaps/gdm-setup.png" xrandr --size 1360x768
    prog "1280x1024" "/usr/share/pixmaps/gdm-setup.png" xrandr --size 1280x1024
  • startup - This file needs to be made executable and any executable / program entries made in this file are executed at start of IceWM session.
  • theme - The theme settings are stored here. The settings look  are something like this Theme="icedesert/default.theme"
 You can use MenuMaker to recreate the the IceWM menu using the command "mmaker icewm" which creates menus based on categories like "Education", "Development" etc. You can refresh menus using command "mmaker icewm -f". You can get the MnuMaker executable by extracting the archive downloaded from the link. The following screenshot shows the menu created by MenuMaker.
 Though outdated this page should serve as a good starting point for your IceWM customisation needs.
PekWM
 pekwm is a window manager which was based on the aewm++ window manager. It has a expanded feature-set, including window grouping , autoproperties and much more. It is very Lightweight and unobtrusive. It feels like an much improved version of TWM. I would call it TWM++. The following screenshot shows tiled windows of running applications on PekWM.
 The default theme has a Orange tint to it. Here is screenshot of Gedit, Nautilus and Terminal applications and PekWM after applying "Vista Black" theme.
 All PekWM applications sport 4 buttons on the top bar which are "Tiling button" on the top left and then the usual minimize, maximize and close buttons are bunched together at the top right.But in some themes(Vista Black) all the four buttons appear together .
 The application menu can be launched using the key combination "Mod4+R" or "Winkey+R". It can also be opened by right clicking on the desktop.

 When applications are minimized they get hidden unlike what you see on other desktop managers. Once minimised they can be opened using the "Focus Client" which can be accessed through the application menu.
 The command launcher is mapped to "Mod4+D" or "Winkey+D" and very useful to launch applications.
 You can use MenuMaker to recreate the the PekWM menu using the command "./mmaker -f pekwm" which creates menus based on categories like "Education", "Development" etc.You can get the executable by extracting the archive from this link.
 Sample PekWM config file can be obtained from here. It can be downloaded and copy pasted into the path ~/.pekwm/ or /home/<profileName>/.pekwm. This folder has various files which can be used to configure things like programs which should startup with PekWM and so on. To figure out the usage of all the configuration files you can take a look at this webpage. Here is also a official page for your configuration needs.
Comparison & Rating
Window
Manager
Ease
Of Use
Cmd
Launch
Theme
Support
Sys
Tray
Dock
Panel
Steep
Learn
Curve
App
Menu
Personal
Rating
Awesome No Win+x Yes Yes Yes Yes No 2/5
E16 Yes E-Exec
(Applet)
Yes Yes Yes No Yes 4/5
Fluxbox No Alt+F2 Yes No Yes Yes Yes 3/5
FVWM Yes Talk Yes No Yes Yes Yes 3/5
IceWM Yes Win+Spc Yes Yes Yes No Yes 5/5
PekWM No Win+D Yes No No Yes Yes 3/5

4 comments:

  1. Add to the list AmiWM. I use it everyday and really recomend it. It is a DE that tries to replicate the behaviour and workflow of AmigaOS 2.*- 3.*. And that it by defaults to keeeping the windows within the desktop borders is just awesome and the draggable workspaces is just a killer feature. But i do not know if it would qualify as it is even smaller than all of these. But if you add it, make sure you not use the 14 year old 0.20 versions get latest stable at http://www.lysator.liu.se/~marcus/amiwm.html. The config is also a text file ~/.amiwmrc just like some of the others, and might look a bit confusing for new users, but it is alteast simpler than "awesome" rc.lua. Keep in mind that AmiWM is more of a appless DE rather than window manager only. As it provieds it own desktop where minimized windows are iconified. Also default icons is rather ugly, you could get more at for instance gnome-look or anything similar.

    ReplyDelete
  2.  Hi Egon. I will definitely take a look at AmiWM. I am not much of a power user in Linux though i have being using it for past 3 years. I do very little tweaking with my desktop as i as i want a working system on a daily basis :-D . I would check out AmiWM if it is offered by openSUSE repositories. Again i am not the type of guy whom you would expect to cooly edit system files in /usr/share/.. or /ect/.. :-). Thanks a lot for posting your views.

    ReplyDelete
  3. But you know that FVWM is a "framework-windowmanager", so you can pretty much implement whatever you want?
    Thats the reason there is no systray-

    let the dock swallow the one you prefer!
    Generally your review is a little bit too much scratching on the surface without looking deeper than possible in 5 minutes, while only looking to get a windowsy workflow, and complaining whenever you haven't got it.
    It's a pity.

    ReplyDelete
  4. Thanks for sharing your thoughts. Will try to do a better job in future ;)

    ReplyDelete