Basic Config w/ Some Scripted Bits

This is a somewhat generic config that works between my laptop and my desktop. It started out very simple, just flattening out titles and menus and adding a basic pager.

I started making the config more portable between my systems by adding tests for applications before I add the applications to any menus. Originally I had disabled desktop Icons, but I put those back in so that some of the people with whom I share my config could have them.

I started adding environment variables to control the variable parts of the config – mostly wallpaper and colors, but I started expanding it to the fonts, icon box, preferred applications for various actions, etc. I set a bunch of variables at the beginning of the config and later I PipeRead over rides from .fvwm/preferences/*. I’ve added functions that write out SetEnv commands.

I wanted to add system application entries, but fvwm-menu-desktop doesn’t work on either of my systems. When I discovered that I started to write a script to replace it but then I got distracted by the fvwm-menu-headlines. I read through it and it looked pretty cool, but it only supported a very few rss feeds, so I threw together a python script for feeds and that’s in this config, too. If anyone snags a copy of my be warned, it does very little input validation.

The icons come from icomoon.io The CC version of them is available through github, and these are the names used in my config. Occasionally there is an update and I have to use a sed expressions to fix the names, but oh well.

Terminals launched via hot keys and menu items will steal focus as they pop up. Any other popped up windows aren’t allowed to steal focus, but if they somehow pop up under the mouse then they may.

Anyway, here’s the config on github (The version specifically used for the botton screenshot is And the project where all my dot-files are hosted

All of the background images are from I created a few simple color schemes by grabbing the background color of each background and stuck those in a menu.

The only running applications on screen are Steam (really I’m just waiting for a game to download,) urxvt, and chromium-browser. In the tray are the icons for hangouts and ibus. Note that if ibus isn’t installed but fcitx is, then it will launch that on startup. Below the tray is conky displaying ethernet stats. Off on another page is Aether.

In the first screenshot I tore off a bunch of the menus so I could capture them.

Bottom screenshot is from my laptop because I realized my desktop config wasn’t entirely up to date.

Edit: I’ve removed the PipeReads I was using to slurp up rss feeds via my python script. Instead, I’m now using FvwmCommand to tell fvwm to Read a tempfile with the new menu content. I’m also cleaning up more temp files, but I still leave behind png files that are being used by the menu. I probably wont perform any more edits to this post, but I’ll definitely be making small tweaks to the config over on github.

Edit: updated thumbnail since I’ve removed fvwmbuttons and modified the borders a bit][/url]

Setings menus][/url]

Above 3 screenshots are from commit db2b34 on github.