PrepFS
Been a while since I posted anything here, and it's always good to have some fresh content, so I thought I'd post my latest creation PrepFS (Pre-process FS), a small utility FUSE filesystem, that enables preprocessing of files.
My main motivation behind creating this, is enabling modified .Xdefaults dependent on running window manager, or machine it is being viewed from. An Example of usage would be something like this:
~/.xinitrc
wm=`echo -e "openbox\nxmonad" | dmenu`
prepfs ~/.dotfiles/prepfs -b ~/.dotfiles/real -pp "gpp -D$wm -x \"%s\""
exec $wm
~/.dotfiles/real/.Xdefaults
#ifdef openbox
blah*blah: blah
#else
this*stuff: here
#endif
Then make sure ~/.Xdefaults is symlinked to ~/.dotfiles/prepfs/.Xdefaults
More information (including source) can be found here http://bbs.archlinux.org/viewtopic.php?pid=576680