Rebuilding Packages for ARM (or any other arch)

Sometimes there are packages out there that don’t come in your cool new Architecture. In my case it is ARM, and the package I wanted was Puppet. Here is how to rebuild source packages the cool way. Add the Puppet repo so you can get fresh source packages cd /tmp # Add the repo, even though it may not have arm binaries... wget http://apt.puppetlabs.com/puppetlabs-release-precise.deb dpkg -i puppetlabs-release-precise.deb # Get dependencies... apt-get update apt-get build-dep puppet facter Build / Install # Get sources.

Read Full Post…

An Overdrive Pro Connecting on OpenWrt

Have a fancy FreedomPop Overdrive Pro? Want to hook it up to your OpenWrt based router to use as a backup (or primary?) internet connection? Lets do it. Plug it into your router via USB. Then run: opkg install kmod-usb-net-cdc-ether Run dmesg and it will report which eth device came up. Mine shows up as “eth1”. Now make eth1 your “wan” interface: uci set network.wan.ifname=eth1 uci commit reboot Whoa. Or, set it up as a second wan interface and use Multiwan:

Read Full Post…

A Team Fortress 2 See 'n Say!

Hopefully Valve will offer me a job instead of suing me? :) Teardown Parts Many See N’ Says to destroy (I burned through 3) An Arduino (yes, because I’m a lazy noob) Wave shield Some sort of ISP programmer Speaker / Switch / Hot-glue / Resistors / etc How It Works A user pulls the handle, activating the normally-open switch and powering the arduino When the handle is released and the spinner starts spinning, a resistor sensor detects at least two succsessive reistor changes, indicating that the spinner is in motion and noting the first value of the resistor for the next step

Read Full Post…

Getting Started With SPDY on Nginx

SPDY is a fancy new way to do HTTP, pioneered by Google. Pretty much all modern browsers support it now, except for of course, IE. If you have SSL enabled and are using nginx, they you are pretty close to running your sites with SPDY. What how easy it is! Step 1: Get a version of nginx with spdy enabled. Ubuntu Get some packages. The Ubuntu packages have “–with-http_spdy_module” compiled, so you can install them with no problem:

Read Full Post…

Disabling Microphone Auto-Gain (Sensitivity) For Google Plus Hangouts

Google’s Google Plus Hangout / Gtalk plugin automatically adjust your volume to account for varying noise conditions by default. Sometimes this is an undesired behavior, but there is no button to turn it off. Here is how you do it: Linux: Run this in a terminal: echo "audio-flags=1" > ~/.config/google-googletalkplugin/options Windows: Set the registry Key: HKEY_CURRENT_USER\<wbr></wbr>Software\Google\Google Talk Plugin\options\audio-flags = 1 Mac OSX: Edit the plist: ~/Library/Preferences/com.<wbr></wbr>google.GoogleTalkPluginD.plist and set “Audio Flags” = 1

Read Full Post…

My First Published Puppet Module: bios

What? I’ve written lots of crappy Puppet modules. Here is a slightly less crappy module that can help you configure BIOS settings on your servers for you. It works on Dell C class servers and Intel platforms. Please pull request or email me if you want to have it work on something else too! Why? BIOS settings should be considered configuration just like any other configuration, and hence managed by your configuration management tool, if possible.

Read Full Post…

Puppet on OpenWrt!

Status: Github Repo is here: https://github.com/solarkennedy/puppet-on-openwrt/ OpenWrt package files are submitted for inclusion Puppet/facter patches have been included in Trunk for inclusion in puppet 3.2 Binary packages have been made for early adopters (and me) Why? To scratch my own itch, and for Fun! How? Downloads are here: http://download.xkyle.com/openwrt/ Because of the dependencies, it is probably easier to add the repo: . /etc/openwrt_release VERSION=`echo $DISTRIB_RELEASE | cut -f 1 -d -` TARGET=`echo $DISTRIB_TARGET | cut -f 1 -d /` LINE="src/gz puppet-packages http://download.

Read Full Post…

Picking Server Hostnames: Worstest, Worser, Worst... Better, Betterer, Bestest

Picking a server hostname is a big deal. I’ve seen quite a few, lets traverse the hostname-awesomeness-continuum and see if we can learn something. Worsest morpheous trinity alf Why do these suck? These names have no information what-so-ever. If you see a server alert, you have no clue what services are actually down. It might as well be a random string. IT is a random string. Pro Tip: Don’t give make server hostnames random strings.

Read Full Post…

Decoding Balanced Payments Puzzle 1

A strange string appeared at the bottom of a Balanced Payments blog post: NmQ2ZjYzMmU3Mzc0NmU2NTZkNzk2MTcwNjQ2NTYzNm U2MTZjNjE2MjQwNjU2MzZlNjU3MjY1NjY2NjY5NjQ2MTY1N mI2MTZkNmY3NDc0NmU2MTc3Njk= One of those puzzles to attract coders I guess. The guys at Hacker News spilled the beans, so lets spill them some more. First though,** Mad Props** to the Balanced team for thinking “outside” the unit-test-box. Plus Jenkins rocks. The world needs more Jenkins. Bash? I’m not a developer, so my first instinct was to use the existing set of tools that people have already written to solve this puzzle:

Read Full Post…

Hacking a Hallmark Text Band: First Attempt

The Hallmark Text Band is a strange thing: Doesn’t Hallmark know kids have cell phones now? Anyway, it is an extremely simple micro-controller driving a led matrix and a C-Max CMM-9201. You get 10 characters, and a small reed-switch? triggers a hardware interrupt, and broadcasts your 10 characters to a friend, and you swap messages. The devices holds 24 messages, FIFO. Memory is volatile. Profanity filter included. Oh well. Lets hack it.

Read Full Post…