Recently in Fvwm Category
Now that I've pretty much got my Xfce 4.4 desktop where I want it in OpenBSD, I've been spending more and more time not in Xfce but in the Fvwm2 window manager that's the default for this OS.
Sure, Fvwm isn't as full-featured as Xfce, it's not as pretty, but it works very well, the documentation is excellent, and most importantly, it doesn't use nearly as much memory.
Don't get me wrong, Xfce is no hog, especially compared with GNOME and KDE, but when I looked at top in a terminal and saw more than a half-dozen little Xfce widgets/apps using 10 MB each, I started to get a little squirrely about it.
Not that system performance was poor, since it was and is anything but. I'm happy with Xfce's look, feel and speed on this 1.2 GHz/768 MB laptop, and I'm not in danger of running out of memory. And if I'm that bugged by it, I could remove all the stuff from my panels that is using that memory. A leaner Xfce just might be in my future now that I've gotten the full-panel look out of my system.
And I did enjoy monitoring my network interfaces, disk activity, swap space (which I don't think I've needed to use, ever, on this machine), and CPU and RAM use.
But I don't really need all that stuff.
So today I started the laptop and launched X with Fvwm as my window manager.
And there's nothing whatsoever wrong with that.
While I'm in a griping mood, I'll say that while I like the look and feel of Xfce's Terminal and Mousepad applications, for the former I can get along just fine in Xterm, and for the latter I chafed at Mousepad's inability to open multiple documents with tabs (and the seeming inability to default to UTF-8 instead of ASCII).
Sure I could easily use Geany as my main editor in Xfce, and I did have Geany in the panel right next to Mousepad.
I still like Xfce's Thunar file manager, although I'm more than comfortable with the Rox-filer.
And even in Fvwm, I could easily continue running Thunar, Terminal and Mousepad just as easily as I could use Rox, Xterm and Geany in Xfce.
And thinking that Xfce is "heavy" when I could very well be using KDE or GNOME is just geeky BS on my part. I was only reacting to what I saw in top, not actual system performance. And again, I can easily lighten up Xfce's load by dumping all those doodads from the lower panel.
But right here, right now, Fvwm is getting the job done. But geeky users are fickle. I could be back in Xfce tomorrow. And if I did a reinstall and had 20 GB set aside for /usr rather than the 6 GB I have now, I could roll GNOME onto the box and try that, too.
So why am I OK with GNOME in Ubuntu but not in OpenBSD? I guess that the OpenBSD philosophy of starting out with a minimal install and building up from there (the same philosophy with a "standard," non "desktop" installation of Debian, now that I think about it) makes it seem more natural to add the X apps I like best to the system rather than try to re-create some huge GNOMEish configuration.
Not that I don't have GNOME-based Debian and Ubuntu installations on three other boxes in my stable.
What I want to say at this point in this rambling entry is that the freedom to roll so many desktop environments/window managers into a Unix-like system is something that really sets it apart from the Windows and Mac OS X environments. And it's something we should celebrate — and educate the non-Linux/BSD-using public about in an effort to let them know what alternatives are out there.
Click the image above for the 1024x768 version of my Xfce desktop in OpenBSD 4.4.
After many months in OpenBSD 4.4 with the project's default window manager, Fvwm, I decided to finally try one of the more popular "desktop environments."
I could have gone with one of the two biggest projects — GNOME or KDE, but instead I chose Xfce not so much because it's lighter on resources but because I like the way it looks and works. One consideration was disk space, since I'm using roughly half of a 20 GB drive, leaving me with only 10 GB and a /usr partition with 2.52 GB remaining at the moment.
As with most things in OpenBSD, adding Xfce to the operating system isn't as easy as it is in Debian, Ubuntu or many other Linux distros. There is no "meta package" in OpenBSD for Xfce. I believe that with GNOME and KDE, it's possible to add one or two packages that call in everything you need for the desktop environment.
To install Xfce, however, you must use pkg_add to install about three dozena number of Xfce packages. I went through the entire list of packages for OpenBSD in i386 and installed just about everything I thought I needed. I still missed somewhere around four packages that were required to make Xfce look and work the way it's supposed to.
I did work off of a list I found on the Web, but it didn't exactly match up with what's in the OpenBSD repository for version 4.4 of the OS.
I finally did get everything I need installed on the laptop. I happen to really like Xfce's applications, including the Thunar file manager, the Mousepad text editor and Terminal (capital T — that's what they call it) terminal. The Terminal terminal — a bit awkward?
Besides having a nice look and feel, these Xfce apps are incredibly quick to load.
I opted to keep many of my other apps, and in my lower panel I still have icons for the Geany text editor, ROX file manager and even a little menu that springs from the panel next to the Terminal icon for xterm.
Rather than drop individual icons for all the OpenOffice components into the panel, I opted for a single OO logo that starts soffice, from which I can chose any of the OpenOffice apps I need, say Writer (swriter), Calc (scalc) or Impress (simpress).
Curiously, Xfce picked up most of my applications and placed them in the menu automatically. A few programs didn't make it, and I added many of them to the panel. I found icons for most of them by exploring /usr/local and drilling down to find .png icons. For a few apps, including Opera and OpenOffice, I couldn't find icons in the system. After a bit of Googling, I found fairly good-looking icons out there on the Web and used them to add items to the lower panel. The Opera icon has a bird in it, which is quite unusual, but it looks OK.
One nice thing about Xfce in OpenBSD is that when I add a new application, it generally goes into the menu automatically. It worked with Inkscape at any rate. I got used to adding things to the Fvwm menu, and it's nice in a way to have everything exactly the way I want it, but I'm lazy enough to allow the system to do it for me. I always seemed to have trouble in Debian with some apps having their menu item placed in a very awkward portion of the menu hierarchy. I'll be watching for similar behavior. Thus far, I've noticed that Dillo, Xmms, Xpdf, Adobe Acrobat Reader and most console apps didn't make it into the Xfce menu in OpenBSD. That's OK for now. I wonder if removing and reinstalling the Dillo browser, for instance, will make any difference. Since I have no sound at present, the Xmms music player isn't something I have any use for.
I've never done this much work setting up a desktop environment before, but like most things in OpenBSD, the net result of having to do a lot of things manually is a much deeper knowledge of the software that will serve me not only in OpenBSD but in every system I use.
As you can see in the image above, I added quite a few widgets/plugins to the panels, mostly to the lower one. I'm able to monitor disk activity, free space on /usr and /home, both of my network interfaces (wireless is wi0, wired is rl0), plus CPU activity and memory and swap usage.
I picked up the wireframe puffy OpenBSD image for the desktop wallpaper a while ago on some Web site dedicated to such things, and I can't remember the URL, but Googling for OpenBSD wallpaper should turn up this one and more. I do have a second 1024x768 image ready in case I get tired of this one (I do have the shirt, and if I'm wearing it while using a desktop with the same image, that pushes me further into OS-geek territory).
If you want to install Xfce in OpenBSD, here is a list of all the packages I installed. I didn't add everything since this laptop has a dead sound chip, but this is just about everything Xfce-related that's in the OpenBSD packages repository. I used pkg_info to generate the list:
$ pkg_info | grep xfce
exo-0.3.4p4 extension library for xfce4
gtk-xfce-engine-2.4.2p2 theme engine for GTK2
libxfce4mcs-4.4.2p2 settings management library used by most xfce4 modules
libxfce4util-4.4.2p2 basic utility library for xfce4
libxfcegui4-4.4.2p4 widget library for xfce4
mousepad-0.2.13p2 really simple text editor for xfce4
notification-daemon-xfce-0.3.7p4 notification daemon for Xfce4 desktop
orage-4.5.12.2p3 advanced calendar for xfce4
ristretto-0.0.20p1 lightweight image-viewer for xfce4
terminal-0.2.8p2 lightweight vte-based terminal for xfce4
thunar-0.9.0p4 lightweight file manager for xfce4
xfce-mcs-manager-4.4.2p3 settings manager for xfce4
xfce-mcs-plugins-4.4.2p3 settings manager plug-ins for xfce4
xfce-utils-4.4.2p4 essential utilities and scripts for xfce4
xfce4-appfinder-4.4.2p3 xfce4 application finder
xfce4-clipman-0.8.0p3 clipboard history plugin for the xfce4 panel
xfce4-dict-0.4.0p1 query a dictionary service for words or phrases
xfce4-diskperf-2.2.0p1 displays instant disk performance in the xfce4 panel
xfce4-fsguard-0.4.0p3 monitors a chosen mountpoint for free disk space
xfce4-genmon-3.2p1 generic scriptable monitor for the xfce4 panel
xfce4-icon-theme-4.4.2p2 icon theme for xfce4
xfce4-mailwatch-1.0.1p3 monitor various types of mailboxes
xfce4-mixer-4.4.2p3 volume mixer module for xfce4-panel
xfce4-mpc-0.3.3p1 simple client plugin for Music Player Daemon
xfce4-netload-0.4.0p2 displays load of a network interface in the xfce4 panel
xfce4-notes-1.4.1p5 sticky notes for the xfce4 desktop
xfce4-panel-4.4.2p3 panel for Xfce4 desktop
xfce4-places-plugin-1.1.0p1 gnome-like places plugin for the xfce4 panel
xfce4-session-4.4.2p5 xfce4 session manager
xfce4-systemload-0.4.2p3 displays cpu/memory/swap/uptime in xfce4 panel
xfce4-verve-0.3.5p3 command line plugin for the xfce4 panel
xfce4-wavelan-0.5.4p0 displays stats from a WLAN interface
xfce4-weather-0.6.2p3 see temperature/weather conditions on the xfce4 panel
xfce4-xkb-0.4.3p3 xkb layout switcher panel plugin for xfce4
xfdesktop-4.4.2p4 xfce4 desktop manager
xfprint-4.4.2p3 printing helper for xfce4
xfwm4-4.4.2p2 xfce4 window manager
Creating a meta-package or at the very least a script that installs all of these packages is something I'm very interested in doing. That would make installing Xfce in a new system a lot quicker and easier.
As I've written many times in the past few months, I do have a fondness for the default window manager in OpenBSD. Fvwm2 is a pretty nice, extremely light app, and I think it's a great light alternative to Fluxbox.
One thing in Fvwm I could never figure out was how to change the key bindings for switching between desktops from CTRL-arrow to CTRL-ALT-arrow. Whenever I was in a text-editing program such as Geany or OpenOffice Writer, I'd habitually use CTRL-arrow to skip from word to word and instead skipped from screen to screen.
In Xfce, I'm back to using CTRL-ALT-arrow to switch windows, and CTRL-arrow moves the cursor from word to word, just like in the other 99.99 percent of OSes out there.
A word on display managers: On this OpenBSD install, I didn't start out using XDM, GDM or KDM, the three display managers used to start a session with a login in X rather than at the console. Among the things a display manager can do for you is allow for easy switching between a number of desktop environments/window managers.
But since this installation started out with a console login, I decided to keep it that way.
Now when I type:
$ startx
That logs me in with Fvwm as the window manager.
When I type:
$ startxfce4
That logs me in with Xfce.
It just seems easier to keep the console login and choose between window managers at the command line. In theory anyway, if I decided to add GNOME, I could start it with:
$ gnome-session
or KDE with:
$ startkde
Shutdown ... sometimes: In OpenBSD with Xfce, I can choose "Shut Down" from the Quit menu, and the script will completely power off my Toshiba 1100-S101 laptop. I never expected this to work. I tried it again this morning, and the Shut Down button was grayed out. All I could do was click Log Out.
All I can think of is that perhaps the Shut Down feature is somehow connected to using sudo. I used sudo for all kinds of things during my previous sessions in Xfce, but this morning I just checked e-mail with Thunderbird and used Firefox for a few quick checks. No sudoing ...
Later: I confirmed my suspicion. If I open up a terminal and use sudo for anything, even something innocuous (I did sudo pkg_info, which doesn't require root privileges), Xfce will allow you to completely shutdown or reboot the box from the GUI. Otherwise your only option is to log out and shutdown as usual from the console.
I decided to start adding apps to the Self-Reliant Thin Client, which is running Debian Etch from an 8GB CF card as the boot drive with a 1 GHz VIA CPU that insists at running at 500 MHz, plus 256 MB of RAM.
I used aptitude to add the Geany text editor and the Fluxbox window manager.
Fluxbox runs great, as usual, but I really don't see any app-speed improvement with Iceweasel, OpenOffice, Geany or Gedit.
In previous tests, I saw a real advantage to using Fluxbox or Xfce over GNOME, but here in Debian, GNOME is running well enough that I'll probably use it quite a bit. I'll continue testing Fluxbox, but I imagine that GNOME will continue to be my main window manager on this box (as it has been when running off of a traditional hard drive).
It definitely depends on the specific box, and especially on the available RAM. I guess that 256 MB of RAM is enough for good GNOME performance. With 128 MB of RAM, Xfce, Fluxbox, Fvwm or other lightweight window managers might dramatically improve performance vs. GNOME.
One thing I have to do is run top when running the same apps in both GNOME and Fluxbox. If the same amount of swap, relatively speaking, is being used in both window managers, that tells me why my GNOME performance is so relatively good. But if there was a lot more swap used in GNOME vs. Fluxbox, then I'd know that the lighter-weight window managers are really making a difference.





Recent Comments
Steven Rosenberg on NetworkManager in Ubuntu 8.04 – here's the problem: Everybody thinks Slackware is so hard to use, but the netconfig utilit ...
Alan Rochester on NetworkManager in Ubuntu 8.04 – here's the problem: "My first question: How well (if at all) does Wicd handle wired networ ...
Steven Rosenberg on NetworkManager in Ubuntu 8.04 – here's the problem: I, too, have seen the move from NetworkManager to Wicd. My first ques ...
Alan Rochester on NetworkManager in Ubuntu 8.04 – here's the problem: In Kubuntu Forums people seem to be moving away from NetworkManager, i ...
Steven Rosenberg on Tropic of Vector – a blog devoted to Vector Linux Light, plus the Vector Linux Cookbook of Common Tasks: The few times I've run Vector and Zenwalk, I've been very impressed by ...
tropicofvector.wordpress.com on Tropic of Vector – a blog devoted to Vector Linux Light, plus the Vector Linux Cookbook of Common Tasks: Hey Steven, Thanks for writing about my blog. Rest assured, it has ha ...
garyam on Ubuntu 9.04 on my 8.04 laptop: Intel video issues sink upgrade: See updated versions of X.org drivers, libraries, etc. for Ubuntu from ...
Steven Rosenberg on Public Wi-Fi is problematic if you value your passwords and privacy: (I had a huge Chess Griffin bio here about all the things he does with ...
Alan on Tips on running netbooks with Ubuntu Netbook Remix from Ladislav Bodner ... plus a look at flash-memory life span: I don't own a netbook and normal desktop, I've also read that using yo ...