Saturday, December 11, 2010

Linux Mint 10

According to two articles on Linux Magazine, Linux Mint is the next big Linux distro. Taking the advice of the latter article ("Linux Mint 10: A Perfect 10?"), I decided to download the Linux Mint 10 install live DVD and give it a spin in a VirtualBox OSE virtual machine.

Unfortunately, it was quite possibly the most frustrating and dissappointing Linux live installer I have ever tried. I shall now enumerate the problems I encountered:

1. Metacity crashes

Or, at least, I think it was Metacity. The title bars would disappear from all open windows, and I could no longer change the window Z-order. I have seen this before, and it was repairable by restarting metacity. I cannot find a reliable sequence of actions to reproduce the problem, unfortunately.

Additionally, even the task bar would crash and restart itself, and I managed to crash the installer by choosing "Quit" from the first page.

2. No LVM

LVM is not installed in the live image, and the installer does not allow configuration of LVM. But even when I installed LVM using apt-get, the installer would not recognize the logical volumes I created. I can understand LVM configuration being a big task for an installer, but at least if it would recognize logical volumes, an advanced user could still set up the system properly.

3. Personal Information Page Broken

The installer page that takes personal information to create the first user refused to take any input in any of the text fields, either during or after the installation finished. By the way, I was very impressed by the installer collecting only the essentials and beginning the copying of the system while the rest of the information was collected. But then it stopped collecting information, and did not finish the install.

I was able to repair the install, but I would be surprised if many users would know or even think to manually repair a broken install. If such a user happens across this entry, here is how to make your system work if the installer fails before finishing:

Step 1: Put yourself into the installed system

Get a root prompt and set up a directory containing the new install:
$ sudo su
# cd /mnt
# mkdir root
# mount /dev/sda5 root
# cd root
# mount -t devtmpfs none dev
# mount -t proc none proc
# mount -t sysfs none sys
# mount /dev/sda1 boot
# mount /dev/sda6 home
# chroot .

Obviously, your partitions will likely be different. The above layout depends on a partition table that looks like this:
/dev/sda1 /boot
/dev/sda2 swap
/dev/sda3 [extended]
/dev/sda5 /
/dev/sda6 /home

Step 2: Create your user

Create a new user for yourself:
# useradd -d /home/jonathan -m -s /bin/bash -U jonathan
# usermod -a -G adm,dialout,cdrom,plugdev,lpadmin,admin,sambashare jonathan
# passwd jonathan

Step 3: Set up grub

Tell Grub to install itself. This is surprisingly easy with Ubuntu-based systems, as the update-grub2 command will do it all for you:
# update-grub2

You should now be able to reboot into your new system (don't forget to remove the disc).

4. Keyboard Layout Not Saved

I use the Dvorak keyboard layout because it feels like my fingers flow better than with the Qwerty layout. I can still use Qwerty, but it feels clumsy. So, when the installer gets to the keyboard layout page, I chose Dvorak. But it did not remember that choice when I booted into the new system, and instead was using the Qwerty layout.

Impressions

Once I had the system running, I really liked what they did with the menu (what I would call the Start menu if it was Windows). It has big icons for all of the important programs right on the first display, along with smaller choices for the other useful but less common programs. They realized something that most other environments have not yet: If you are using the system menu, you are not interacting with another program, so why not take advantage of the screen to display everything well?

I also liked the clean interface. From the boot splash screen to the standard set of sounds, everything is simple and clean, and seems to be inspired by Apple. The icon sets are attractive, and different enough from what you may be used to that they are actually worth looking at.

Conclusions

I will not be using Linux Mint 10 as my OS of choice. I was impressed with the concurrent install/extra setup info, and with the few pieces of the main system after I had it running, but my heart just wasn't in the exploration. Once I discovered that I would be unable to use LVM, I completely lost interest in actually using the system. LVM is to partitioning a hard drive as directories are to a completely flat filesystem, and I cannot live without it.

Perhaps I will try the Debian-based version, or Linux Mint 11 when it comes out, but I am quite satisfied with Kubuntu 10.04 LTS for now.

Wednesday, July 21, 2010

Oracle

I was browsing the Java API docs today and noticed that the Oracle favicon looks like the Eye of Sauron. Has anybody else noticed this?

Friday, May 21, 2010

Chili

I love chili. It's one of my favorite foods. The only problem, though, is that when I make it, I make a lot of it.

This isn't really a problem (I get to eat one of my favorite meals every day for the next two weeks!), except that once I've finished eating all of it, I'm so tired of it that I can't eat any more for a few months.

Anyway, that wasn't why I decided to post about chili. I figured that I've made it enough times to have a recipe that I'd like to share. It's based on my Mom's chili recipe, combined with some input from Alton Brown's chili recipe in The Big Chili and some input from my friend Matt.

This is the basic recipe, and I'll follow it with some options on how to augment it:

Ingredients:

The Beans

1 lbDry Black Beans
1 lbDry Red Kidney Beans
2Bay Leaves
2 tspKosher Salt
2-3 clovesGarlic, sliced thickly
2-4Dried chiles, sliced (optional)
~½ gallonWater
  1. Preheat the oven to 250° While it is heating...
  2. Boil the water. While it is heating...
  3. Sort the beans (remove any pebbles or weird-looking specimens)
  4. Rinse the beans (a colander works well)
  5. Place the beans in a large, oven-safe pot (I use a 2 gallon graniteware), along with the salt, bay leaves, chiles, and garlic.
  6. Once the oven is hot and the water is boiling, pour just enough water over the beans to barely cover them.
  7. Place the beans in the oven, covered, and set a timer for ~20 minutes.
  8. When the timer goes off, check the beans. They will likely need some more water. Re-boil the remaining water (bonus points if you started heating it a couple minutes before the timer went off) and pour some more over the beans (again, just enough to cover them).
  9. Set the timer for 30 minutes and repeat the previous step.
  10. Set the timer for 30 minutes. When it goes off, the beans should be nearly done. Remove them from the oven and drain them (they will be cooked some more later).

The Chili

1-2Large onions, diced
3-5 clovesGarlic, crushed and chopped
½-17oz can of chipotle peppers
314.5oz cans of diced tomatoes, any style
16oz can of tomato paste
215.25oz cans of whole-kernel sweet corn
1-2Fresh jalepeños, diced
1-2 tbspDried oregano
½-1 tspTurmeric
~¼ cupChili powder
~½ tspMSG (optional)
~12 ozDark beer, preferably home brewed
~4 handfulsTortilla chips, crushed coarsly
Salt & pepper to taste
  1. Much of this procedure can be performed while the beans are cooking.
  2. Preheat the oven to 300°
  3. Sauté the onions and garlic. If you are using meat (see below), cook them in the rendered fat from the meat (augmenting with olive oil if necessary). If not using meat, cook in olive oil (no need to use extra virgin, it would be overpowered by everything else).
  4. Dice the chipotle peppers.
  5. Briefly toast the chili powder in a dry skillet, until fragrant.
  6. Combine all ingredients except for the corn, in an oven-safe pot. The pot that the beans were cooked in should do nicely, once they are done and drained. Stir to combine. Add additional ingredients to taste, keeping in mind that the tortilla chips will give up quite a bit of salt as they disintegrate. Don't forget to include both the diced chipotles as well as some of the sauce from the can they came in.
  7. Bake for 1 hour, covered.
  8. Once removed from the oven, stir in the (drained) cans of corn.
  9. Serve, generally over rice with some shredded cheddar on top.

Accents

Depending on whom I expect will be eating the chili, I may go either for a vegetarian or a con carne version.

For the vegetarian version, I will generally add another pound of dried beans (small red beans, navy beans, ...; whatever looks good), along with one more teaspoon of salt and another bay leaf. In the chili, a package of fake ground beef works well, but it generally disintegrates in the oven and provides only a hint of flavor. Tofu chunks also go well, but remember that they will not provide any real flavor, only absorb it. If you use tofu, you may need to add more of some of the other seasonings, especially chili powder. You may also want to drain the tofu first.

For chili con carne, I like to use 1-2 lbs of meat, an equal balance of ground chuck (80-85% lean) and ground pork. Ideally I would use equal portions each of ground chuck, pork, and lamb, but I can never find all three at the same time, so I have never tried it. Brown the meat before cooking the onions and garlic, then cook the onions and garlic in the fat that rendered out of the meat.

In my latest batch, I managed to get my hands on some ground lamb, but I did not find any ground pork. Combined, I had about 0.6 lbs of 80% lean ground chuck and 1.3 lbs of ground lamb. The chili came out quite well, except that it tasted very strongly of lamb. Next time I would discard some of the fat that rendered out of the meat, as I think that provided most of the lamb flavor, and there was quite a lot.