walls.corpus

By Nathan L. Walls

  • Sunset, Jan. 2, 2021/Williams Township
  • On Bougher Hill/Williams Township
  • Sunrise, Dec. 19, 2020/Williams Township
  • Sunset, Dec. 27, 2020

Articles tagged “mac-os-x”

Catching up on Mac OS X history

While waiting for his own review of Snow Leopard to go live on Ars Technica, John Siracusa reminded his Twitter followers of his back catalog of authoritative examinations of previous Mac OS X versions.

They go back all the way to Mac OS X Developer Preview 2 from December of 1999.

Release-to-release, there’s always a lot more to ask for, and from 10.0 through 10.4, there was a whole lot of refinement needed. Heck, 10.2 was really the first version I gave an unabashed recommendation for to people who weren’t interested in being developers.

What’s nice about Siracusa’s reviews, release-to-release, is his consistent thoroughness. Part of that is revisiting past (and continued) frustrations.

From his 10.2 review:

By the time version 10.1 was released, I was ready for some salvation. Version 10.1 held the promise of being the “mainstream release”–something good enough for everyone to use, not just the brave early adopters that sweated out the public beta and the 10.0 release. Version 10.1 certainly was a vast improvement over 10.0. The previous statement can be read as praise for 10.1 or as a condemnation of 10.0, but it is undeniable.

In the end, I wanted more than something that was simply “better than 10.0.” As I wrote in my 10.1 review:

I want to believe that [Mac OS X] will replace Mac OS 9 in a way that improves upon every aspect of the classic Mac OS user experience. Unfortunately, although this may still come to pass, Mac OS X 10.1 is not that version of Mac OS.

It seemed that even Apple itself didn’t fully believe in its new OS, as it continued to ship hardware that booted into Mac OS 9 by default.

I’m reminded of several of my own frustrations with early Mac OS X. While I’m looking forward to Snow Leopard’s refinements and enhancements, I can’t think of an overarching complaint I have about the OS itself now. It’s come a long way in eight years or so of public release.

For instance, I remember purchasing the Public Beta and installing it on the PowerMac G3 I had at home and, somewhat ill-advisedly, my work machine. The Public Beta was interesting, but looking back, there were some nasty bugs and decisions I’m glad Apple rectified. Consider, the Apple Menu didn’t exist, but there was an Apple logo that sat dead center in the title bar. Then there was the train-wreck of differing user interfaces. Oh, and pinstripes. Lots of pinstripes.

Siracusa has the enthusiasm for the platform, but having the clear-eyed vision to identify its shortcomings and disappointments. That’s a valuable critique.

The past will inform the present. Here’s the list (with one addition) from Siracusa:

Using a Leopard disk image to resolve case-sensitivity issues

One aspect of starting a new development gig is setting up a new development environment and checking out new-to-me code.

At the new shop, I ran into an issue trying to check-out the main Subversion repository on my Mac. Subversion erred out in an images directory half-way through the checkout. The reason is, there are two files with the same name, save for the case in that directory. One is named like foo-bar.jpg, the other is Foo-Bar.jpg.

By default, Mac OS X filesystems are case-retentive, so capitalization within a filename is preserved. However, the default filesystem (HFS+, Journaled) is case-insensitive, so the operating system complains when there are overlapping names like FOO.txt, foo.txt or fOO.TXT

Mac OS X supports case-sensitive filesystems, UFS and HFS+ (Case-sensitive, Journaled)1. A while back, I tried creating a Mac OS X boot volume as HFS+ (Case-sensitive, Journaled). Unfortunately, the installer for Adobe CS3 refused to operate with the case-sensitive filesystem.

So, I’m stuck using the default filesystem. I don’t think having two filenames unique in case only is good practice, but, as previously stated, I sometimes encounter filename overlap in source repositories.

Since I use Leopard, my initial idea was to resize my default partition and create a new, case-sensitive disk partition. The Leopard Disk Utility can resize partitions. This, however, did not solve my problem. While I could create a new partition, I could not change its format.

Idea number two, however, worked. I used Disk Utility to create a 500 megabyte, case-sensitive disk image and saved it to a location in my home directory. Double-clicking on the image mounts it to /Volumes. In Terminal.app, the mounted disk image looks like part of the regular filesystem, allowing me to cd into it and do my Subversion checkout there. Now, I can have overlapping filenames. Moreover, changes to the disk image are saved automatically, so I only need to worry about remounting the disk image after restarts.

Instructions

These instructions are for Mac OS X Leopard (10.5)

  • Open Disk Utility.app. It’s located under /Applications/Utilities
  • Click New Image from the menu bar.
  • A dialog sheet will appear.
  • Save As will be the name of the file the disk image will be saved as. Navigate to a location you won’t mind having the disk image live.
  • Pick a Volume Name. This will what the disk image appears as in a Finder sidebar when mounted. It will also be the name the disk image appears at underneath /Volumes. I stay away from spaces, odd punctuation or anything that would interfere with easy tab-completion from the shell.
  • Pick a Volume Size. The starting size is 100 megabytes and goes up 8 gigabytes. Custom sizing is also available.
  • Pick the Volume Format. The option I selected was “Mac OS Extended (Case-sensitive, Journaled)”
  • Select whether or not you want the image encrypted.
  • I didn’t do anything special with Partitions for the disk image.
  • Image Format Pick read/write disk image.
  • If the dialog sheet doesn’t present these options, cancel the operation and make sure you don’t have an existing volume selected.
  1. You can have a third option, HFS+ (Case-sensitive) that is not journaled.

← Previous Next →