MainCategoriesAlbums
About |
Kevin SemandeDRAFT Privacy and Email Usage PolicyI found out today my MX is blacklisted by Spamhaus, one of many RBL services out there. It's encouraging that this is the only RBL I failed. To remediate it, I need to implement some info on this site.
The Frankenstein1/8 oz Fernet Branca
1 oz Melon liquer 1 1/4 Dillon's gin 1 oz Dolin's dry vermouth measure over ice, stir and strain pasado de modaA Mexican variation on the Old Fashioned:
Back OnlineAaah, it's good to be back. After a hiaitus of several months, the 26a.net servers are back up and running, and nearly fully operational.
Email has just been restored and flipped back on for some tentative testing. If you had an account and cannot login, please contact me and I will get you up and running again. SVN access is next on the list, and after that will be shell / sftp accounts. Thank you for your patience. Search and Replace on all rows in a MySQL table using bashWhile wrestling with a software upgrade to the LAMP application running this website, I wanted to test a fix for an issue I was experiencing. I would have thought this could be accomplished in straight MySQL, but a few searches including the official docs on the regexp and replace functions suggest it is not. When the best advice I could find was to do it in perl. Rather than bust out the old DBI routines, I decided to just use my shell.
Alpha Launch of Parallel::Supervisor Perl Module
Update (Aug 23): Fixed a test for Win32 and clarified documentation. Updated the URL below to point to a local copy of the latest revision. From the readme: The current release can be downloaded here:Parallel-Supervisor version 0.01 ================================ This module was written to provide a simple way to manage tasks run in parallel using any of a number of techniques, such as fork(), or any of the other Parallel modules. It simplifies managing a collection of processes and provides a uni-directional pipe to allow the child to communicate with the parent. It is not intended or replace more sophisticated solutions such as POE, Proc::Launcher, or Supervisor. Your Parallel::Supervisor object essentially holds a collection of structs representing the children, and provides methods for setup, access, and teardown of child tasks. Please see the perldoc for more details. Parallel-Supervisor-0.03.tar.gz Also available by doing: svn co https://secure.26a.net/svn/projects-kevin/perl/lib/Parallel-Supervisor/ If you would like to help, please download and install - or at least run `make test` and let me know if any tests fail on your platform. (If so, please provide details!) Any feedback is welcome. I am still unsure whether the module is named properly - it is certainly very different from the Supervisor module, so it might better be named Parallel::Juggler or Proc::Manager or something. Thoughts? Enjoying My mp3 JukeboxA while back, I wrote down some thoughts about turning a spare computer into a jukebox to connect to my home stereo. Well, that dream has become a reality, although not exactly as I had originally envisioned it.
I'm currently listening to my Black Mountain mp3's through via a jukebox controlled over the home network. Thank you very much to the makers of Theory, a client for mpd. Theory is written in python using pylons, has a nifty AJAX-based interface, and optionally hooks into AWS to grab album art. To make theory more useable, I installed a light web server (I chose nginx) in order to proxy theory over port 80. Of course pylons can't connect to port 80, since that would be a huge security risk for a number of reasons. I created a user account under which to run theory, and added a line to /etc/rc.local which starts theory when the machine boots. As it turns out, theory didn't like having the URL paths rewritten, so I couldn't use, e.g. "location /tunes"; I had to map the app to the docroot of the host, like so:
Finally, I didn't want the machine to be on all the time (too noisy, wastes power, generates heat), and I didn't want to wait for the whole boot sequence every time I wanted to play some tunes, so I installed hibernate and the userspace software suspend package for debian. After configuring uswsusp, I modified /etc/acpi/powerbtn.sh - at the very end of the file, I commented out the call to "shutdown", and replaced it with a call to hibernate:
Headless and wireless, the beige box just sits on the stack with my other stereo components in the living room, while I control it via any machine on my LAN. Ta da! Kevin's Eggs of IshtarAt work, we like to havepot-luck lunches on special occassions. For Easter, I decided to make Deviled Eggs. I named them in honour of the season - spring, and the rebirth of the sun.
A) Bounty 8 large hard-boiled eggs 3 T Mayonnaise 1 T Lemon Juice 1/2 t Dried Oregano 1/4 t Salt 1/4 t Freshly ground Black Pepper Paprika for garnish B) War 8 large hard-boiled eggs 2 T Mayonnaise 1 T Hot Pepper Paste 1 T Green Onion, finely chopped 1/8 t Cayenne Pepper 1/8 t Salt 1/4 t Freshly ground Black Pepper Paprika for garnish C) Fertility 8 large hard-boiled eggs 2 T Mayonnaise 1 T Hot Dijon Mustard 1 1/2 T Green Onion, finely chopped 1/4 t Turmeric 1/2 t Dried Oregano 1/8 t Cayenne Pepper 1/8 t Chili Powder 1/8 t Salt 1/4 t Freshly ground Black Pepper Paprika for garnish Peel the eggs and cut them lengthwise in half. Remove the yolks and place in food processor with other ingredients. Mix until a smooth paste forms. Spoon the mixture into the egg halves, or pipe using a pastry bag and star tip. Garnish with Paprika Cover and refrigerate for up to 8 hours before serving. Makes 48 hors d'oeuvres. Fixing gnome-panel startup errorThis error kept appearing for the longest time, and my initial efforts to fix it by googling for a solution had failed. I decided today I would fix the error, even though I don't know much about how gnome-panel works.
The error message said "Some panel items no longer available" and was followed by an empty list. I checked in ~/.gnome2/panel2.d/ and looked over the launchers folder. Interestingly, deleting all the items from that folder only made some of my panel icons (aka applets) disappear, but not all of them. Time to inspect the dread gnome registry. Now, I understand the advantages of a registry system, but when the gnome project adopted the registry, I got shudders seeing this fine F/OSS project emulating one of the most painful, problem-causing features of the proprietary vendors' systems. And, lo, here is the problem. You can edit the gnome registry through System Tools -> Configuration Editor. Spilling out apps -> panel -> applets" I saw applets numbered 1 through 6. Looking at their names, I saw one which I knew was no longer on my system "MailCheck". I renamed this one "OAFIID:GNOME_MixerApplet" and gave gnome-panel a sighup. The error was gone, and two mixer applets were now on my launcher. Deleted one, and now, finally, my launcher launches without launching an error. Happy me. Thinking about an mp3 jukebox using linuxI wanted to use the best of all the computer parts I had lying around, so that I could finally let go of the rest, by putting together a machine dedicated to playing from my mp3 collection into my stereo. A quick search revealed a number of far more ambitious people building upon a brilliant piece of open source software.
Very nice, but I have an old 13 inch LCD I wanted to put to use, and I was already thinking of using ion or wmii for creating a custom (and locked down) display environment. Looks like this bossogg program might be just the thing, although it looks rather young. Well, if it can compile on Debian without too much effort, I'll take it for a spin. Humanity: A HaikuO, Humanity
Sitting on this spinning egg. Once we've eaten all the yolk, Will we fly above? Gunjun Bread (Indian Bread): A recipeI had the pleasure of meeting Faye Dockstader (nee. Kechego) over the Christmas holidays. Faye was born September 13, 1928 to the Munsee people of Chippawa, Ontario. In the short time I came to know this 78 year old woman, I came to learn about a personal history which, like the culture of her people, is to me rich, mysterious, and tragic. Sharing bread is a universal experience which helps us realize that we are all bound together physically and spiritually. It was Faye's wish that I share this recipe with the whole world, for anyone who might also like to share in her bread.
Firefox PluginsFirefox is a pretty rockin web browser. Still not quite as good, imho, as Galeon, but it's good enough, and it seems the Galeon project is heading into uncharted territory. I've been using Ffx a lot more lately, while I wait to see what comes out from the interesting experiment going on with the Galeon devs.
All of that is just a preface for the curious to the main point of this posting: Below I'm listing the Ffx extensions I find indespensible. Link love for the devs, and a list in one place so that I can sync up my desktop at home, laptop, and various work machines with the same set of tools I've grown to expect from my browser. Without further adieu: Tracking Changes to Important Files with Subversionaka. Revision Control for /home and /etc folders
IntroductionIn Unix, the /etc folder contains most if not all of the system's configuration files. /home usually contains folders for all the system's users. I once read an article from a self-admitted obsessive-compulsive sysadmin who kept his home folder under revision control using a program called subversion. I thought this was a nifty idea, but of course, I didn't quite find the article to be a one-stop how-to on the subject. I'll spare you the long story of everything I did to get this working; here's what I did right: Getting Set UpI set up my new computer and installed the base operating system. Don't be jealous... it's an old, second-hand laptop which is now running Gentoo Linux. Subversion was one of the first pieces of software I installed once the system was up and running. I decided that, at least for now, I don't need to set up a fancy daemon to act as a subversion server, so I just created the repository as root with the plan to check-in all my changes using the file:/// protocol to access the repository, since I'll always be committing the changes locally. Logged into my machine as the root user, I got down to it:
mkdir /var/svn/repos
svnadmin create /var/svn/repos/backups Dealing with Special FilesI quickly realized that file ownership, permissions, and special files such as devices would be an issue, so I downloaded a little script called asvn which is a wrapper script to subversion, to keep track of these properties that don't normally get recorded in a repository. I had to edit the script, which I put in /usr/local/bin, and change the path of my svn program which the script expects to be in /usr/local/bin, but which gentoo installed in /usr/bin. Then I was ready to go. Ready for TakeoffI imported my two very special folders into subversion, but then I realized that, though this added them to the repository, it didn't make the original folders into working copies for me. There is actually a 'best practices' way of doing this, described in the Subversion FAQ.
svn mkdir file:///var/svn/repos/backups/etc
I repeated the process for /home, and now my folders are all set up. I should be able to easily tell which files have been added or changed, revert back to an older configuration if I happen to screw anything up, and add in new files to be tracked. Once it's working smoothly, I'd like to automate some of it, so that my configuration is always saved when I shut down the computer.cd /etc svn co file:///var/svn/repos/backups/etc . asvn add * asvn ci Day to Day StuffIt was a good thing I did all this when the system was shiny, new and clean. But, I quickly noticed a number of files in my home folder that I wouldn't want to have under revision control or in my repository at all. I wasn't too worried about sensitive data being on there, for a number of reasons. Most importantly, nothing will be stored in my repository until I add it to subversion in my working copy. But, as it turns out, I do have to take things into consideration, such as my web browser's cache. Well, subversion has a way to let you ignore these things, by setting a property on a file or folder. First, I created a text file with the list of patterns to ignore:
*~
Next, I set the "svn:ignore" property on my home folder to the contents of that file:*history *.bak *private *[Cc]ache* .ssh
asvn propset svn:ignore -F svn-ignore-patterns.txt /home
New Site, New SystemSo far I'm quite happy with my new site that I've set up using Jaws. I can see a lot of potential, and I think I'm just going to let my dev site drift off into its own experimental zone. My tinkering with Jaws can be watched live at http://alpha1.26a.net. One thing that might be different over there is that that space contains my thoughts on the jaws software. Yes, I categorized this under "fun".
FPwoot!
Recent Posts
|