[Distutils] EasyInstall: scripts
Phillip J. Eby
pje at telecommunity.com
Mon May 30 02:35:09 CEST 2005
At 05:13 PM 5/29/2005 -0700, Bob Ippolito wrote:
>Mac OS X doesn't condone applications touching the user's dock, so
>the "start menu" thing is out. As for putting the applications in a
>reasonable place, the "reasonable place" depends on the user. The
>best solution might be to just pop open the dist folder and let the
>user drag it to where they want it, or to put it in a disk image and
>Anyway, "GUI scripts" is mostly a non-starter on OS X, it's generally
>not the right thing to do. Things should either be applications or
Um, yeah. I'm trying to say that I want a way to create a crappy
cross-platform application. :) Let's say I write a wx app (yes, it'll be
nasty-looking on the Mac, I get it), and just want to distribute it as a
cross-platform egg (because only its dependencies are impure). I would
want there to be a Mac version of EasyInstall that takes this script and
makes it into a Python application.
You're probably going to tell me that I'm talking about py2app, except for
the part where I don't have a Mac myself, so I can't run it. But the
application is something useful that people would like to use, even on the
Mac, despite its crappy wx-based user interface. Why can't Mac users just
download the egg and double-click it or drop it on EasyInstall or whatever
the idiomatic thing to do is, to get back an application that they can then
drag to wherever they're going to keep it?
> Python doesn't currently participate in the "script"
>infrastructure on Mac OS X.
Unfortunately, I don't even know what this means. I was talking about
command-line scripts, in a generic Unix-y sense.
>>On the other hand, it does seem a little silly to use a command- line
>>tool to install a graphical application. :) However, it
>>probably makes sense to create platform-specific GUI wrappers
>>around EasyInstall to do this sort of thing.
>Well, on Mac OS X, you don't install graphical applications, they're
>self-contained application bundles that you just put wherever you
>want and run. Installers, on Mac OS X, are for crappy applications
>that don't do things the right way.
Right, so when EasyInstall is eventually bundled with Python, perhaps
there'll be some kind of association such that trying to invoke an egg does
the right thing to turn it into an application or something.
The idea here is that if you bundle your application as an .egg, then a
platform-specific tool should be available to:
* Do whatever wrapping or installing is customary for making "an
application" available on the platform
* Download and install the application's dependencies, perhaps after
prompting for optional features (using the "optional dependencies" facility
Now, in the case of the Mac, once this is done, you presumably have a valid
"application" that you can then distribute any way you see fit. But, if
you'd like to have access to cross-platform apps that non-Mac people are
writing, it would be a lot more convenient if there were an
More information about the Distutils-SIG