>>2010-09-22>> Updating Ubuntu with a Previous Version of Sun Java 

Ubuntu no longer keeps versions of Sun Java in its multiverse repository.  Instead, it it installs OpenJDK by default.

To install the latest version of Sun Java (currently 1.6), you first have to add the partner repository to the machine.  Be sure to use the proper name of the distribution.  In this case, “lucid” stands for Release 10.4.
Read the rest of this entry »

>>2010-07-10>> Mercurial: Branching, Cloning and Revisions, oh my! Part Three 

This is the third article in a series where I discuss how I dealt with the challenge of maintaining two separate but similar web sites in source control. This kind of scenario doesn’t really follow the Version->Maintenance->Next Version linear development process. Instead, it has common code and separate themes.

In article one, I talked about your choices in how to work with this kind of structure.

In article two, I talked about how to use the Convert extension to split the common code out of our database.

In this article, I’m going to talk about the third and least friendly choice:

Finally, if you believe that the common code will change infrequently, you can avoid site merges and instead use the hg export and import commands to merge only certain transactions to the other branch. This last choice may seem the most expedient – especially if you’ll have many small differences in the common code – but it’s also the most error prone. Should another developer accidentally do a push and merge, you’d better know how to recover from it.

Read the rest of this entry »

>>2010-07-06>> Vim Favorite Tips #1 — Copy Last Command Into Clipboard 

I use Vim for pretty much everything these days.  So I’ve decided to start a “tips” category for my favorite Vim tricks.   Here’s a question for you:  how can you paste into the command buffer?  And more importantly, how can you copy the command buffer to the clipboard?

Read the rest of this entry »

>>2010-07-04>> Mercurial: Branching, Cloning and Revisions, oh my! Part Two 

In a previous article, I discussed with you how I might deal with the challenge of maintaining two separate but similar web sites in a Mercurial source control system. These sites don’t really follow the Version->Maintenance->Next Version linear development process. Instead, they have common code and separate themes. I mentioned three options for dealing with this issue:

  • Let’s say it’s only a few files that are different – what then? Perhaps the easiest way of handling this situation is to just maintain the second set of files in the same database. No need for branching!
  • But what if I have a good portion of files that will need to differ? Say 100 or more? What then? The best option in that scenario would probably be to split the differing “theme” files out of the database completely using its Convert extension. Then I’d end up with three databases: the common code and two sets of differing “theme” code, one each for Site A and Site B. The upside is that future maintenance is painless and a big bonus is that creating a third site will be a breeze. The downside is that you need to know in advance what the differing code will be and, more importantly, you’ll have to rewrite much of the common code to allow for different entry points, parameters and scenarios. This is the most time consuming of our options but also the best option for future code stability.
  • Finally, if you believe that the common code will change infrequently, you can avoid site merges and instead use the hg export and import commands to merge only certain transactions to the other branch. This last choice may seem the most expedient – especially if you’ll have many small differences in the common code – but it’s also the most error prone. Should another developer accidentally do a push and merge, you’d better know how to recover from it.

Today, I’m going to discuss the second case – how to use the Mercurial Convert extension to split an existing repository.

Read the rest of this entry »

>>2010-07-01>> Accurev’s Only Supports Two Year Old Ubuntu Releases 

Arggh!  Accurev!  Your only support for Ubuntu is for Hardy and earlier?  What’s up with that?  In their defense, Accurev actually runs on 32-bit versions of Lucid…  But you’ll find it will die without an error on 64-bit versions of the OS… The only way around it is to install a 32-bit version of Lucid.  I found that out the hard way.

Here’s a link to the Accurev site and its support matrix.

>>2010-06-29>> Mercurial: Branching, Cloning and Revisions, oh my! Part One 

I was stuck in a strange situation today. Typically in software development, branches are used for “one offs” – such as a maintenance branch off of a major line of code.

My dilemma today was slightly different. I have an existing web site and I need to make a some-what duplicate of it for another site. Two different websites. They each will have the same base skeleton and functionality but their look and feels will be different. They will each be a living project and the same functionality will be given to both sites over time – even though we may not want to ever merge some of the changes to both branches.

cmReady has been using Mercurial as our CM tool of choice for the past year because it’s easy to use and we need to be able to take our entire histories to customer sites. In the past, creating a maintenance branch has been super easy. But can Mercurial handle this particular challenge?

Read the rest of this entry »

>>2010-06-26>> So You Want to Run Commands in ESX using SSH… 

In a previous article, we talked about how to get SSH command line access in ESX 4.0. Well, now that you’ve got the access, what are you going to do with it? I use VMware Sphere for most of my administration, but every now and again I like to use the command line for quick and easy shutdown and startups. In addition, if I have a mass shutdown/restarts, I like to use ssh-agents and authorized keys to easily script them.

Read the rest of this entry »

>>2010-06-21>> Setting Up SSH Command Line Access for VMware ESX 4.0 

VMware Sphere is all well and good until you have ten or more ESX servers that you need to manage. Then it can be quite a drag to use the GUI to log in to each host and take care of business. In addition, VMware Sphere doesn’t yet support Linux… so if you’re a Linux guy (or gal) you’re forced to keep a Windows machine around and running just to do basic administration.

But here’s a secret: since ESX has a unix-like base operating system, you can turn on SSH access with little trouble. Once it’s on, you can do everyday jobs without your fingers leaving the keyboard – or even scripting using authorized keys if you like.

For this trick, you need to have physical access to the VMware ESX host machine and its root password. Note: A root password is not set by default when you install on a new box.

Read the rest of this entry »

>>2010-06-16>> Getting a Dell Service Tag Number from the Command Line 

So you’re logged into a server remotely and you have no idea what kind of machine it is…  If it’s a Dell, there’s a fairly easy way to get the service tag as long as you have root or administrator access.  Here’s how!

Read the rest of this entry »

>>2010-06-11>> Getting Around Gnome Desktop When Using VNC 

We talked last week about how to use VNC with a server that doesn’t have a monitor connected to it.

This week, I’m going to talk about how to get around the fact that you have to be logged into Gnome in order to use VNC.

Read the rest of this entry »