January 19th, 2010
Continuing my heroic quest to avoid doing any actual work, I’ve just set up another Neat Geek Convenience for myself: Bip. Bip is an IRC proxy server. For the uninitiated, that just means Bip connects to IRC and you connect to Bip and relay everything through.
This provides a couple of things I’ve wanted for ages: I can actually shut down my desktop without missing IRC messages, and I can connect from multiple systems – even simultaneously, if I like – without worrying about clashing nicks and logs getting split up all over the place and that kind of crap.
Of course, me being me, I had to make it over-complicated. Obviously I wanted to follow my usual practice and set up Bip on a single-purpose VM (long-term readers will know I already have single-purpose VMs for my web and mail servers). I run my mail and web servers on VMWare Server on a system running Mandriva 2009.0; if I were starting today I’d probably run them on a Fedora or RHEL machine running KVM, but I have them set up and working great in VMWare Server. But I thought, hey, I’ll set this new one up using KVM on Mandriva, if I can, just to see if I can that much working. So off I went cheerfully poking through posts about how to set up KVM on Mandriva, and got through the process of setting up a bridged network connection, before I realized that my VM host system is ancient and has no hardware virtualization support.
So I decided to just do it in VMWare like the others, and – cleaning up after myself like a good little geek – started to take down the bridged network connection. During which process, thanks to a certain Mr. Murphy no doubt, I managed to kill the VM host system’s network connection.
There’s probably a way to bring down a bridged network connection which _doesn’t_ involve knocking out overall network connectivity halfway through, but I missed it. This means I have to drag my ‘server cabinet’ (a cheap metal box from Ikea) out from the corner where it lives (otherwise I can’t get into it), steal the keyboard and monitor from my partner’s system, hook them up to the VM host machine, sort out the problem, switch the peripherals back, close up the cabinet and shove it back into place (it’s on carpet and not mounted on castors; not trivial). Which I hate doing. Especially at midnight. Sigh. I realize it’s entirely freaking absurd, but I am seriously considering getting some cheap second-hand rackmount equipment whenever we finally move to a bigger place and I get to rebuild all the infrastructure from scratch. (Yes, I know the fact that I consider a three room apartment for two people to have tech ‘infrastructure’ and actively look forward to redoing the entire thing at some vague future date makes me a terrible, terrible person.)
So after that delightful little interlude, I got the new VM up and running in VMWare Server easily enough, set it up running Mandriva (I dunno why, I could easily have picked Fedora, but hey, Mandriva still rocks :>) and threw bip on it. Bip’s nice and easy to set up as long as you follow the (very clear) instructions and don’t do stupid things like forgetting you have to set the client password field specially. When you do stupid things like that, you can poke the author on IRC and he tells you very politely how you did a really stupid thing. Oops
Now it’s all set up and running great. I can log into bip from my desktop, laptop and phone simultaneously, type from any of ‘em, and it just comes from ‘adamw’. If none of the clients is connected, bip on the server still is, and still logging. When I log in again from a client I’ll get whatever stuff happened while I was away regurgitated back to me (that feature’s called ‘backlogging’). It’s super awesome. Very happy with it. Also makes it easy to back up my IRC logs (my backup machine just rsyncs the log directory across daily, like it does with my mail). To access the logs conveniently I set the bip machine up as an NFS server on the local network, sharing the log directory. Only tricky bit with that was that bip creates the log files owned by itself with quite restrictive permissions, so you have to set up permissions properly on the NFS client machines so that they can actually read the log files in the shared directory. But hey, nothing major.
Definitely feels like an improvement in a system I use all the time!