Tiger

Fixing "can't find package Pextlib 1.0" in MacPorts installation

Installing MacPorts (formerly DarwinPorts), I ran into an issue with the post-installation selfupdate command which took some digging to solve. Eventually, I tracked it down to this thread at gmane.org.

Two fixes need to be made: adding a missing line in a text file, and replacing a PPC binary with an Intel-compatible version.

First up, follow the installation instructions at the MacPorts wiki: InstallingMacPorts.

After installation is complete and the installer app is quit:

  1. Right-click on the .pkg launcher (which is as of this writing called “MacPorts-1.4.0.pkg”) and select “Show Package Contents”.
  2. Navigate into the “Contents” folder and double-click on the “Archive.pax.gz” file. This will result in an “Archive” folder in your Downloads folder.
  3. In the Terminal:
    cd /opt/local/share/darwinports/Tcl/pextlib1.0
  4. Open “pkgIndex.tcl” in your favorite Terminal text editor. Assuming vim:
    sudo vim pkgIndex.tcl
  5. On the first blank line (below the commented text), add this text all on the same line:
    package ifneeded Pextlib 1.0 [list load [file join Pextlib.dylib]]
  6. Save and quit the editor.
  7. Backup the incompatible binary just in case:
    mv Pextlib.dylib Pextlib.dylib.old
  8. Use the command open . to reveal this directory in a Finder window.
  9. Leaving this window open, open a second Finder window and go to the corresponding folder in the Archive you extracted in step 2. It will be at “Archive/opt/local/share/darwinports/Tcl/pextlib1.0”
  10. Copy the “Pextlib.dylib” file from the Archive into the permanent folder.

Back in the Terminal, your sudo port selfupdate command should work now. You can trash the Archive folder and Archive.paz file from your Downloads folder.

Note: see comments for another approach in step 5 that worked for at least one visitor.

And for your reference, here’s the original error message I got when I first ran the selfupdate:

can't find package Pextlib 1.0  
    while executing  
"package_native require Pextlib 1.0"  
    ("eval" body line 1)  
    invoked from within  
"eval package_native $args"  
    (procedure "package" line 14)  
    invoked from within  
"package require Pextlib 1.0"  
    (procedure "dportinit" line 315)  
    invoked from within  
"dportinit ui_options global_options global_variations"  
Error: /opt/local/bin/port: Failed to initialize ports system, 
can't find package Pextlib 1.0

kGTD not GTD well enough

kGTD is pissing me off. :)

Generally speaking, it has done a serviceable job during my recent experiments, even if it has (understandably) slowed down as dozens of projects and scores of actions are added.

But where it’s beginning to fail is on the recurring actions. There’s some sort of screwy thing going on during syncing where random recurring items are either “completed” out of repetition (and thus existence) or are kept moving to the next day.

This is not acceptable for a system that is supposed to be trusted; unfortunately, since kGTD is apparently not going to be updated with the still-unscheduled appearance of OmniFocus, I am forced to look at other options.

I think I have three or so choices (which isn’t to say there aren’t others), not counting sticking with kGTD for now. None of them is ideal; all of them will be supplemented (and thus improved) by using Quicksilver as the main entry method.

  1. Anticipating Leopard’s coming improvements, trying an iCal-only system even though its current slowness is a big drawback.
  2. Cobbling together something with Remind, as I’m well-familiar with its syntax and could get back up to speed pretty quickly.
  3. Switching over to the quickly evolving iGTD.
  4. Some combination thereof, e.g. using Rem2ics and iCal to Remind.

More later. It’s time to get my muffins prepped for baking. :)

links for 2007-03-30

Mmmmm... mutt

I have had occasion in the past to fall in love with the CLI email client “mutt” — last year, in fact, it wound up being a great resource while I made various server consolidation and administration moves and was spending a lot of time in term windows.

There are several guides out there for setting up mutt, but it’s always nice to find a newly updated one with the latest info. Via an article on macosxhints comes this great linsec.ca guide: “Using mutt on OS X” by vdanen. He covers everything from installation, building/compiling, and the usual setup stuff, then moves on to what have been deal-killers for folks in the past — Address Book integration, attachment handling, improved threading, and other coolness. Definitely recommended.

Myself, I’m holding out to see how Leopard’s improvements work out. “Stationery” and a “media browser” don’t bode well. ;) Notes and to-dos are intriguing, however.