You are not logged in.
Many Window Managers are available in the Debian repos (or available to be built), and they can be easily installed to your #! machine. I have been WM hopping for a while now, and it occurred to me (with some encouragement) that others might find my experiences useful, or at least be able to build something useful from them.
So to that end, I present 30 Window Managers in 30 days. I will start with easy floating WMs we are probably all familiar with, and by necessity eventually progress to a few I have not even heard of yet.
I will be the first to admit that I am a relative noob, so if anyone has more experience with a WM I mention, or anything else to add, please feel free to add, correct, or admonish.
First off is the WM we all know and love, openbox. I'd like to combine this with a thread I have wanted to start concerning openbox config files and where they live.
Simple to use, simple to configure, openbox is (in my opinion) the ultimate floating window manager. "Everything you need, nothing you don't" -- it's why we all ended up here in #! land.
But we also want to be able to change, configure, and personalize it. There are gui tools like obconf and the tint2 config editor, but it's really much easier to tweak it by hand, and you learn a lot in the process.
The main right-click menu is controlled by ~/.config/openbox/menu.xml -- strangely enough, an XML file -- but don't let that scare you. It's super easy to add entries to the menu once you see how the existing entries are laid out in the file:
Want to change your terminal from terminator to sakura? just find this entry in menu.xml
<item label="Terminal">
<action name="Execute">
<execute>
terminator
</execute>
</action>
</item>
and change it to
<item label="Terminal">
<action name="Execute">
<execute>
sakura
</execute>
</action>
</item>
The keybindings and window definitions are in ~/.config/openbox/rc.xml.
Want to change the file manager that starts when you click Super-F? Just find this section in rc.xml:
<keybind key="W-f">
<action name="Execute">
<name>thunar</name>
<command>thunar</command>
</keybind>
and change it to
<keybind key="W-f">
<action name="Execute">
<name>pcmanfm</name>
<command>pcmanfm</command>
</keybind>
Simple. Elegant. It's why we love openbox.
Tint2 (the default panel) and conky have their own config files and web sites. They are both simple and easy to configure, or complex and feature-rich if you want or need them to be.
I won't say much more about openbox, as it's covered in detail on this forum and in the default menus provided with every #! install.
I will say though that I really mean what I say in my sig -- it's all in a config file somewhere, you just have to figure out where to look. And you can do it yourself if you just look at the existing file or the man pages... or ask for a little help from the forum. I can give you a fish, but you'd really rather I taught you how to fish for yourself; trust me. There's nothing like that first fish...
Let's see where this goes. Tomorrow we'll look at another simple floating WM; JWM, (also know as Joe's Window Manager). A little lighter, still easy to configure. Stay tuned. I won't give you an openbox screen shot, but starting tomorrow I'll add scrots if there's any interest.
And if you think this is a good idea or you think I'm insane, let me know! It will be a lot easier to do this if I know I have an audience of some sort..
(edit) already got feedback from gensym, who suggested a list of links to the WMs covered. Since I hope others will add their insights as well, I'll just link to the first post for each WM, and let it flow from there...
Stacking Window managers
Day 1.5 -- Housekeeping
Day 2 -- jwm
Day 3 -- flwm
Day 4 -- fluxbox
Day 5 -- pekwm
Day 6 -- twm
Day 7 -- evilwm
Day 8 -- windowlab
Day 9 -- lwm and wm2
Day 10 -- aewm
Tiling Window Managers
Day 11 -- scrotwm
Day 12 -- wmii
Day 13 -- i3
Day 14 -- wmfs
Day 15 -- dwm
Day 16 -- catwm and dminiwm
Day 17 -- snapwm and monsterwm
Day 18 -- musca
Day 19 -- tmux
Day 20 -- ratpoison
Random Other Window Managers
Day 21 -- sithwm
Day 22 -- euclid-wm
Day 23 -- oroborus
Day 24 -- icewm
Day 25 -- herbstluftwm
Day 26 -- dvtm
Day 27 -- sapphire and cwm
Day 28 -- echinus and larswm
Day 29 -- xmonad and awesome
Day 30 -- tinywm
Day N -- Amiwm -- joek review
Day N+1 -- AfterStep -- joek review
Moderator Edit - Add Additional Reviews
Last edited by 2ManyDogs (2015-01-30 18:20:39)
Be eggsalad to each other.
Offline
/subscribed
Looking forward to your insights.
Offline
And if you think this is a good idea or you think I'm insane, let me know! It will be a lot easier to do this if I know I have an audience of some sort..
Those two don't necessarily have to be mutally exclusive
Nice work!
Last edited by gensym (2012-03-05 22:44:54)
'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind.', {Eric}
Offline
Looking forward to this
Offline
<keybind key="W-f">
<action name="Execute">
<name>pcmanfm</name>
<command>thunar</command>
</keybind>
I guess it's a typo, or is there some wizzy under-the-hood thing going on?
Or is there a "t" missing between the "W" and "f"?
BunsenLabs Group on deviantArt
damo's gallery on deviantArt
Openbox themes
Forum Moderator
Offline
I'm amazed at the fact that there are at least 30 window managers in linux =O
It's a great idea, so keep it up ^o^
Offline
I subscribe, so encourage you.
Offline
/subscribed
I'm signed up..
This would also make a great Blog/Review outside the #! forums..
As an Xfce guy I was surprised to find myself configuring OpenBox on Wheezy this Weekend..it is very addictive.
OpenBox is all about how inventive you are...
When ever I installed it on past Distros I found my self faced upon boot with that Blank Desktop...I thought..Well, good for a Server.
Once I saw #! I finally could see the potentials of OpenBox...
Looking forward to the Next 29 installments..
OHCG #!, Jessie,, Siduction-13.1, Slackware 14, Bridge,, Sabayon 13.4,
Offline
This would also make a great Blog/Review outside the #! forums..
That is true, we have already some Arch people lurking here because Scrotwm is not that popular over there.
Offline
/subscribed
I knew there were many WM's but 30 ??? Looking forward to it
A computer without Windows is like a pie without mustard #!
Offline
awesome dogman! great idea.
Offline
we have already some Arch people lurking here
Off with their heads!
Offline
/subscribed
Are you sacrificing 30days off from work?
bootinfoscript - emacs primer - wireless problems- I ♥ #!
Offline
^ Dunno about work, but pretty sure he's sacrificing 30 days off from having a life.
Point & Squirt
Offline
Off with their heads!
Their what?
Are you sacrificing 30days off from work?
Yes, the real world is what's preventing me from doing the same. What better way to spend a month than workking through a whole host of tiling/minimal window managers!
• Support #! • Waldorf • Debian sid • Xubuntu • siduction • Peppermint • OpenBox • Xfce • LXDE •
Offline
el_koraco wrote:Off with their heads!
Their what?
Dirty!
Offline
2Dogs, I really think you ought to have a screenshot or two of each of the window managers you profile, sort of like a teaser or, if I may make the analogy, an image of the dish that accompanies a recipe. It give the consumer more of an idea of what they'll be getting by doing things the way you present them.
Offline
^ Ooh, yes, that's a good idea!
• Support #! • Waldorf • Debian sid • Xubuntu • siduction • Peppermint • OpenBox • Xfce • LXDE •
Offline
Window Manager project day two. Thanks everyone for the encouraging words. To anyone who is concerned about me giving up work for 30 days, don't worry. I am semi-retired and work one or two days a week, so I have plenty of time for this project. To anyone who thinks I don't have a life, be assured that I have not had a life for some time, so I did not give up anything to do this project. Plus, how much of a life can you have if you have time to read all this?
Now, an interlude and a little preparation. Installing a new window manager from the repo is easy; just apt-get and you're done. But now what? How do you start your new toy, and then what?
Well-behaved window managers will create a .desktop file in /usr/share/xsessions. Once this is done, the new WM will show up in the "sessions" in GDM or LightDM. You'll still have to do a little more work to get it to show up in SLiM. Some window managers don't provide their own .desktop file. If you want the WM in the sessions list you will need to create one. (Hold your questions until the end of the talk please, I'll provide a list of links.)
Another way is to simply ditch your login manager entirely, and start the appropriate window manager manually by placing the call to the WM in ~/.xinitrc and running "startx" from the console. I used the GDM method for months, but now I have no login manager on my test machine and I start X when I'm ready. This gives me time to edit .xinitrc and prepare any startup files that might be necessary -- some window managers don't have a built-in "autostart" feature, so you'll need to create a script if you want to start conky or nitrogen along with the WM. (I'll cover this when I get to the WMs where you need to do this).
So -- your choice -- use one of the already GDM-enabled versions of #!, install GDM or LightDM if you have SLiM, figure out how to use SLiM, or use the "startx" method.
Once you have your new WM started, then what? Faced with a black screen and no-right click menu, what do you do? I mentioned in another thread that I found it useful to know two things before I started a new WM: how to start a terminal, and how to log out. If you know at least these two things you can start any app from the terminal and/or bail if you know how to log out. I will try to provide links to a wiki or home page for each WM I talk about; do a little research before you startx!
Here are the links I promised:
adding a new session to GDM
starting a new session with SLiM
starting X without a login manager
Now, on to today's installment -- Joe's Window Manager, or JWM.
Last edited by 2ManyDogs (2012-03-07 15:07:50)
Be eggsalad to each other.
Offline
Day Two -- JWM
Today we are installing JWM; Joe's Window Manager. It's another floating window manager, a little lighter on resources (uses less memory) and slightly faster on old hardware (in my opinion and experience) than openbox.
Not so much different that it's instantly obvious, but if you watch conky like a hawk (and I do at times) you may notice a difference, and I think it starts from the login manager much more quickly.
Installing
JWM is in the repos, so just
sudo apt-get install jwm
JWM creates a .desktop file, so just log out of openbox, and select "jwm" from the list of sessions in GDM. The default JWM config is a little ugly (in my opinion) but perfectly usable.
It's got a built-in menu and a built-in panel with a menu, a pager, a taskbar and a clock. You can either right-click the desktop to get a menu, or left click the JWM at the lower left corner of the screen. You get the full Debian menu, with all kinds of stuff you may or may not want.
Configuring
JWM is even easier to configure than openbox. It uses a single config file called jwmrc. When you first install jwm, it uses its default config file, /etc/jwm/jwmrc. To modify it, you just copy that file to your home folder and tweak it from there:
cp /etc/jwm/jwmrc .jwmrc
geany .jwmrc
.jwmrc is xml like openbox, but it's an even simpler format, and all the config is in just the one file. There is an awesome web site here and a bunch of people on this board who have created some really nice looking jwm themes and menus.
Here is what a sub-menu looks like in .jwmrc:
<Menu label="applications">
<Program label="catfish">catfish --hidden --path=/</Program>
<Program label="geany">geany</Program>
<Program label="truecrypt">truecrypt</Program>
<Program label="viewnior">viewnior</Program>
<Program label="screenshot">xfce4-screenshooter</Program>
<Program label="grsync">grsync</Program>
</Menu>
Window style:
<WindowStyle>
<Font>liberation.sans-8</Font>
<Width>3</Width>
<Height>16</Height>
<Active>
<Text>white</Text>
<Title>#4b4b4b:#3c3c3c</Title>
<Outline>#3c3c3c</Outline>
</Active>
<Inactive>
<Text>#9c9c9c</Text>
<Title>#4b4b4b:#3c3c3c</Title>
<Outline>#3c3c3c</Outline>
</Inactive>
</WindowStyle>
and key binding:
<Key mask="A" key="F3">exec:dmenu_run</Key>
jwm also has one really nice feature for WM hoppers and config junkies. After you edit .jwmrc, you can run
jwm -p
and it will parse .jwmrc and tell you if it finds errors. This can save you a lot of grief if you make a mistake, but if you do make a mistake in .jwmrc, it's not usually fatal; you'll just end up with a really ugly theme with big red borders around everything.
The same conky config that works with openbox will work well with jwm. Just add it to the top of .jwmrc in the <startupcommand> section:
<StartupCommand>
/home/bsh/.scripts/random-wallpaper
conky -c /home/bsh/.config/conky/.conkyrc-jwm
</StartupCommand>
If you don't like the built-in bar, you can disable it and run tint2 (or any other panel) from the startupcommand section.
And when you make changes to .jwmrc, it's simple to run "restart" from the menu to cause the changes to take effect. Some changes require a logout/login (like adding things to StartupCommand) but restart will usually work.
Here is a scrot of how I have jwm set up on my main machine now. When I'm not using spectrwm I use jwm with this config.
What I Like
I like jwm a lot; I didn't at first (I thought it was really ugly) but it's now my favorite floating window manager (sorry openbox). It's especially useful for old slow machines with crummy graphics, especially if you change the window move mode from opaque to outline:
<MoveMode>outline</MoveMode>
Then jwm doesn't redraw the window until you're done moving it.
I also like the built-in config file parser (jwm -p) and how it defaults to a really ugly theme if you make a mistake in jwmrc.
What I Don't Like
Not much really. The default config is ugly, in my opinion. It takes some time (or borrowing the work of other people) to make it look nice.
Links
joewing.net (configuration info)
themes and menus on the #! site (bigbenaugust's famous jwm topic)
more themes and menus in jens' thread
What will we try tomorrow? The fast light window manager (flwm) perhaps?
Last edited by 2ManyDogs (2012-03-14 20:44:16)
Be eggsalad to each other.
Offline
fantastic post on JWM. looking forward to tomorrow's!
Offline
Nicely done.
Offline
nice!!
looking forward to the tilers. Always wanted but never did try them. This will make is easier.
Thanks a lot!
Nothing 'real' is solid.
Offline
This is definitely better than watching TV.
Offline
OMG, it's an absolute mad thing :-) But I love it.
Waiting for Musca and Ratposon :-)
Ha ezt el tudod olvasni, biztosan nem vagy rövidlátó.
Offline
Copyright © 2012 CrunchBang Linux.
Proudly powered by Debian. Hosted by Linode.
Debian is a registered trademark of Software in the Public Interest, Inc.
Server: acrobat