Music Free Static

All the content of other websites but none of the music!


Date: 25 March 2012

Categories: meta

I’ve been a busy PerlStalker this week. As you may have noticed, this site has changed somewhat. I’ve recently decided to drop Drupal and switch to IkiWiki. Drupal has been good to me but it’s really too heavy for my little blog. I have no use for most of the features that Drupal provides and it’s not worth it to me to keep it up-to-date. IkiWiki has a couple of really nice things going for it.

Setting the Default Monospace font in XFCE

Date: 19 December 2011

Categories: fonts, xfce

I use XFCE4 on my box at work because it’s lightweight and still provides the features I want. I wanted to change the default font so that emacs used the font I wanted without having to change my .emacs file. Unfortunately, XFCE4 only lets you set system default but not the monospace font. Fortunately, XFCE4 uses fontconfig. All you need to do is edit $HOME/.fonts.conf and add this little XML snippet.

Running Emacs Functions in Batch Mode

Date: 10 November 2011

Categories: emacs

I use emacs for a lot of things at work. One of the more useful is org-mode for to do lists, scheduling and meeting notes. Org-mode can sync to mobile devices running the app MobileOrg. Unfortunately, that sync is a manual process. The good news, emacs is scriptable and can be run in batch mode to automate things. Here are a couple of things I use. Note: Emacs batch mode spews a huge amount of crap to stderr.
Following up on a previous post discussing finding old user accounts in Active Directory, here’s how you find old computer accounts. This works on basically the same premise as the user script. In short, we’re going to check the last time the computer logged into Active Directory. That happens on every reboot and from time to time while the machine is up. The same warning applies to computers as it does for user accounts.

Convert a Moose Object into a Subtype

Date: 03 June 2011

Categories: Moose, perl

Have you ever had the situation where you had a parent class but you find out later in the code that you really want a subclass? With perl Moose, it’s really easy to do. Consider the classic point example described in Moose::Cookbook::Basics::Recipe1. Suppose I start with a Point but I decide later that I need that point to shift into 3D. I don’t want to change the values for x and y, I just want to add the new z point.
I’m hacking on a new tool in perl to manage my KVM cluster. Part of it is a RESTful interface using JSON. The objects I’m using are written using Moose and MooseX::Storable to simplify serialization. I can convert objects back and forth between perl objects and JSON all day. Unfortunately, there’s a fly in the ointment. I’m using Dancer to provide the framework for the RESTful interface. The nice thing about Dancer is that it can automatically serialize perl data structures and it can do it via JSON.

Ubuntu Fails to Boot with Spice Console

Date: 12 April 2011

Categories: grub, kvm, spice, ubuntu

I needed to roll a couple of debs for my Ubuntu servers at work. Since I run Gentoo on my desktop, I rolled a 64-bit Lucid VM. Unfortunately, after the install finished, I got the following error on the console and the VM wouldn’t boot. error: no suitable mode found error: unknown command 'terminal' I figured the problem had something to do with the interaction with spice console (which I’m using instead of VNC).

Life With Chrome OS: Cr-48 Review

Date: 25 March 2011

Categories: google, chrome-os

The good thing about being stuck in an airport waiting for a plane that’s been delayed for an hour is that I finally get around to writing a post on actually using Chrome OS. If you’ll recall, Google shipped me a Cr-48 Chrome OS notebook to play with. After some initial problems with the hardware of the first one, Google sent me a replacement. I’ve been using it as my main machine at home since.
I’ve been putting off dealing with a problem at work for a while and I finally worked out a way to deal with it. At work, when a faculty or staff member leaves, we don’t delete the account right away. Instead, the account is disabled. It’s sort of a CYA policy. It came in useful today, in fact, when I was told that the professor whose account I disabled a couple of days ago was actually granted emeritus status and so his account needed to hang around a while more.
I’m getting ready to deploy a pair of Server 2008 Active Directory servers to replace a couple of old 2003 boxes. In preparing those servers, I installed the remote agent for Microsoft Data Protection Manager before I installed the ADDS role and promoting the new AD servers. That turned out to be a mistake. After promoting the AD servers, the DPM agent service (DPMRA) stopped running and would not start again.