How to install pkg in a non-standard location? (OS X)

1

In brief, my question is this:

How can I install an OS X framework from a *.pkg file somewhere other than under /Library/Frameworks (or /System/Library/Frameworks)?


Background

I want to install a version of Python 2.7.3 that lives under $HOME/Library/Frameworks/Python.framework and $HOME/python.

My goal here is to have a version of Python that is as independent as possible from the Python that comes with OS X Lion.

Among the problems I am trying to avoid by doing this is the buggy Tk framework that comes with the latest versions of OS X.

Therefore, a key sub-goal here is to install new Tcl and Tk frameworks, separate from the system-supplied ones. The ones I want to install come from ActiveState ("Mac OS X (10.5+, x86_64/x86)"), in the form of a *.pkg file.

When I click on this file, I get presented with the usual "wizard"-like sequence of steps ("Introduction", "License", etc.). At no point during this sequence I am offered the opportunity to choose a different installation location for these frameworks before I reach the choice of clicking on the INSTALL button.1

I suspect that if I click on this button, the installed files will go under /Library/Frameworks (or possibly under /System/Library/Frameworks), which is what I'm trying to avoid. (Indeed, when I click on INSTALL, I'm immediately presented with an password-entry dialog, which is a pretty good indication that the installation will put files somewhere under /Library or /System.)

Therefore I'm looking for an alternative way to perform this installation that will allow me to explicitly set the destination folder for the installed files.

1Yes, the installer allows me choose a different volume for the installation, but it does not let me specify, e.g., $HOME/Library/Frameworks as the destination for the installed files.

kjo

Posted 2013-02-25T14:24:42.400

Reputation: 733

If you want a version as independent as possible, compile it manually in /usr/local, for example. – slhck – 2013-02-25T14:46:07.827

@slhck: I need instructions for how to do that; the ActiveState website does not offer a source version of the package. Maybe the source code is contained inside the *.pkg archive, but I don't know how to extract it, etc. – kjo – 2013-02-25T15:08:12.633

You can get the sources and compile them yourself, e.g. from here, or with Homebrew (which automatically compiles it for you into /usr/local). But this is really just Python—no idea about Tcl/Tk.

– slhck – 2013-02-25T15:36:43.743

No answers