[Pythonmac-SIG] Advice wanted on dependency building...

Chris Barker - NOAA Federal chris.barker at noaa.gov
Thu May 23 20:00:02 CEST 2013


On Thu, May 23, 2013 at 12:45 AM, Samuel John <python at samueljohn.de> wrote:

> I am from the homebrew team and passionate python lover. I can almost feel
> your pain :-)

Thanks for joining the discussion -- really great to have a
homebrew-familiar person to discuss with.

However, and please to correct me if I'm wrong, but my understanding
of the goal of homebrew (and macports, and fink [anyone still use
fink?] ) is to make it easy to build and run stuff on your system, and
indeed, in a way that is optimized for your system (macports, at least
has a bunch of use flags you can set that will customize the build the
way you like it).

On the other hand, what I'm talking about here is supporting people
that want to:

Distribute binary packages that support:
  - installing on older OS versions (and maybe different
architectures) machines than the developer is running.
  - using those packages with Py2app, to distribute apps that will run
on older machines and OSs.

I _think_ that homebrew's goals don't support that. I know homebrew
supports an option to build "universal" (i386+x86_64) binaries, but:
  a) not all formulae support that -- in general, it's not well tested
  b) I don't think it will build with an older sdk, which you'd  need
to support the above.

In fact, on my machine (64 bit, OS-X 10.7), I'm sort-of-running
homebrew, but it only partially works because I've got XCode 3
installed -- and it keeps telling me I should upgrade. I haven't
upgraded XCode, because I haven't figured out how to get XCode 4 to
build the binaries I need (Or needed, it may be the PPC support that
I've lost, and I guess I can dump that now...)

Anyway, if homebrew could support the goals above, it may be a good
way to go to solve the problems at hand.

> Some things install nice with pip, but others don't. That is why I started
> to maintain a separate "tap" for additional homebrew python  formulae
...
> These formulae re-use and depend on other software
> built with homebrew (for example suite-sparse from homebrew/science,
> libpng).
> See https://github.com/samueljohn/homebrew-python if you like.

cool -- very nice!

> With our recent kickstarter supported Mac Minis, we plan to build and
> provide binary "bottles" for all our packages.
> Perhaps that is a good starting point?

If those binary bottles support older OS versions (more or less, the
oldest one that Apple is currently supporting -- I think that's 10.6
now), then yes, that could be a way to go.

> Homebrew works bests if installed at `/usr/local` because of the paths to
> other libs.

yup -- I can imagine! And I'm fine with homebrew in usr/local, but I
don't want something someone installs specifically for MacPython
(outside of homebrew) stomping on it.

> I am currently making Python 2.x and 3.x support in homebrew possible and
> simplifying how to install python software that provides a setup.py.

Question:

Does homebrew put Python in usr/local? and give you a regular old
unix-style install? Or do you get a "proper" Mac Framework install
(wherever it puts it). I guess the key question is can you use it to
develop proper desktop apps, and use py2app to make re-distributable
app bundles?

If so, and if it can support older machines with binaries, then maybe
we could build MacPyton on top of it (or with it).

But the key issue is if the goals of the homebrew project align with
the goals I outlined above.

Thoughts?

-Chris




-- 

Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker at noaa.gov


More information about the Pythonmac-SIG mailing list