Entries in the ‘OSS’ Category:

Make your Linux servers dance with Puppet

Puppet is a system for replicating configurations to many servers, and it makes managing a Linux1 server farm ridiculously easy. One server runs a master process, while the others run a client which connects to the master2 to get the correct configuration. Clients are identified by hostname, so if your servers don’t have resolvable names you’ll need to put them in the hosts file on the master.

Puppet uses a declarative syntax built on top of ruby for defining rules. The documentation is mediocre at best, so you may struggle at first learning how to write the rules. Just read through the example recipes and test it out with a non-production server. The easiest way I found to test a rule is to run

sudo puppetd --test

on the server that should be getting the configuration. It will tell you there if there are any errors.

The version of puppet in Ubuntu 9.10 doesn’t support defining node names with regular expressions, so you might want to grab the version in Debian sid.

I’m still trying to figure out the best way to split up modules and organize my node definitions, so if you’ve used Puppet leave a comment and let me know what you think.


  1. The website also has packages for BSD and MacOS, but I can’t vouch for them. 

  2. By default the clients connect to a host named puppet, so you should either make an DNS entry for your master, or define the name puppet in your clients’ hosts files. 

Tags: , , , ,

Comments (1)


Mathcad 13 with Wine, first attempt

The professor for my electricity and magnetism class wants me to use Mathcad instead of Maple, so I bought the student version. I’ve been using it on my Windows laptop for a week or so, but it would be nice to be able to run it on my desktop. The Wine compatibility lists show good results with earlier versions of Mathcad, so I thought it might work out. Unfortunately, it requires the .NET framework, which requires IE 5, which I’m not going to install just yet. Damn.

Tags: , ,

Leave a Comment


Flash 9 in Linux

Those of you in the know already know that Adobe recently released Flash 9 for Linux. An official, honest to god, up to date version. The best part? It actually works.

I’ve had problems with Flash since I switched to Linux, because I foolishly chose the AMD64 version of Kubuntu. After messing around with a 32-bit chroot for awhile, I finally discovered Swiftfox, a version of Firefox compiled to use 32-bit libraries but optimized for, and compatible with, 64-bit systems. I could watch Flash movies again. Sound didn’t work, but who needs to hear them anyway? Oh, and since Macromedia never released Flash 8 for Linux, there were more and more SWF’s that I couldn’t watch. And it crashed the browser a lot.

Okay, so it totally sucked.

Even so, I was pretty disappointed after I upgraded to Swiftfox 2 and found that Flash stopped working. Imagine my surprise when I clicked on the missing plugin button and saw that Flash 9 was available. I knew Flash 9 for Linux was out, but I’ve never had the plugin search feature actually work correctly. Then, right before my eyes, Flash 9 installed, the page reloaded, and the SWF started playing. With sound. “Thus Spoke Zarathustra” came on the radio, the sun broke through the clouds of winter storms, and a chorus of angels heralded, or trumpeted, or whatever it is that choruses of angels do.

It’s almost as if big companies are starting to take Linux seriously.

Tags: , ,

Leave a Comment


Why I switched to Linux

My first experience with Linux was in 1996. Somebody I met in IRC offered to send me a set of Slackware CDs he had lying around for free. What a deal! It blew my mind a little to think that a whole operating system could be (legally) free. I can’t remember now if it was four CDs or eight, but I remember being a little disappointed after I got it installed. Later I understood that Slackware was probably the worst distribution to start with, but then, coming from Windows and DOS, I couldn’t understand why nothing worked right. Where were the drives? Where’s the GUI? Why can’t it autodetect my sound card? With no guidance and no goal, it felt like I had taken a huge step backwards into the days of DOS. I quickly gave up on it, but the vision of a free, open source OS had impressed me deeply. I tried to switch to Linux on my desktop around 1998 or ’99; I think it was Redhat 6.something (this was before Redhat was selling an enterprise edition, I believe). I spent days and days trying to configure things like an internet connection over PPP, email, and sound. Sound never worked, but I finally figured out the rest. The breaking point, though, was X11.

What a mess. Back then, you had to actually define every display mode in terms of the horizontal and vertical refresh timings of your monitor. Not only that, but the only guidance the documentation gave was to find these timings in your monitor’s manual (what manual?), along with the ominous warning that using an incorrect set of timings could permanently damage your monitor. I finally got X11 working, but the default windows manager was ugly as hell, and there weren’t even any decent GUI applications available.

Well, by this time I’d had enough. I was spending all my time just trying to get the damn system to work the way I wanted instead of actually using it, and I haven’t even mentioned the dependency hell caused by RPM (this was before yum). For a number of years, Linux’s only place in my eyes was on servers. I finally switched for good last October, this time to Ubuntu 5.10, then Kubuntu 6.06. Here are the reasons I switched:

  1. Ease of use. Most things just work now; installation was a breeze, all of my hardware was detected, and most of the configuration dialogs make sense.
  2. I had started using a lot of GNU software on Windows with Cygwin. The Cygwin folks have done a great job, as have the contributors to GNU software that release Win32 versions, but despite all this running the stuff on Windows is still a pain in the ass. This was a very important point. I had gotten used to using a lot of software that I knew would work better and be easier to use in Linux. This is probably the biggest reason that I was able to stick with Linux through the rough parts, because even if I was having trouble with WMVs or Flash, I could still do my work.
  3. Windows Vista will be an expensive, unnecessary upgrade. I never upgraded from Windows 2000, but when it went into the no-updates phase I realized I’d be forced to upgrade soon. Vista has absolutely nothing that I need, and a lot of features I don’t want. On top of that, I realized in the previous year that pirating software is unethical, and I had a moral obligation to stop. Facing the choice of paying $200 for an OS with a lot of features that I didn’t want, or paying nothing for an OS with a lot of features that I did want but felt a little awkward, I decided to hunker down and make the switch.

Why am I writing this? There is a big group of people that advocate open source software with a conviction approaching religious. Like anyone advocating anything with such conviction, I think they are causing some harm to their cause. Here’s the thing that most of them try not to admit: Linux is not right for most people. Sure, it could be right for most people, but it isn’t. A lot of it isn’t Linux’s fault, but even if you got hardware manufacturers to make real Linux drivers, and you got the X11 group behind XGL, and you hired Orson Scott Card to write documentation for every package that was so good you’d read it in the bathtub, it still wouldn’t be right for most people.

Most people are afraid of change. These days, Linux itself isn’t really such a big change from Windows (patent and printer issues aside), but expecting someone to change not only their operating system, but every piece of software they use, it’s too much. Most people have a tenuous grasp on their computer as it is, they simply can’t drastically alter every aspect of how they interact with it.

If you’re serious about advocating open source software you have to embrace Windows. You don’t have to use it, but you have to acknowledge that most people do use it, and it’s good enough for them. Don’t push Linux on people, push open source alternatives to software they already use. Once they get comfortable with those things, they’ll find Linux when they’re ready.

If you want to advocate open source software, you have to be rabidly anti-piracy. Unfortunately, the very idea that software can be owned by someone, the crux of piracy, is considered invalid by a lot of OSS advocates, but for the average Windows user price is the only advantage that OSS has over more traditional software. Piracy takes that advantage away, so you absolutely must make it very clear to people that piracy is wrong. Really guilt them about it, and they’ll make the right choice when they know they have an option.

Remember that computers are already very scary for most people. So talk softly and carry a big LiveCD.

Tags: , , ,

Leave a Comment