[Pythonmac-SIG] What is the future of Python on OSX?

Samuel Smith smithsm@samuelsmith.org
Fri, 6 Sep 2002 16:57:26 -0600


>
> But: I think we can do something that is almost as good, if we create a 
> simple way by which an end user can install add-on packages for Python.
> I've dropped this idea here before, but noone reacted, so here goes again.
>
> We create a bit of software called the Python Install Manager. This 
> should probably be a part of the IDE (or at least be accessible easily 
> through the IDE, with a GUI and such). It goes to a specific location on 
> the net where it retrieves a current database of installable Python 
> extension packages. It then presents the user with this list, and for 
> each package also shows whether it's currently installed, not installed 
> or installed but outdated (i.e. the database has a newer version than the 
> user has). The user can then easily install or remove packages at the 
> click of a button.
>
> The packages in the database consist of a Python script to determine 
> whether you have it installed at the moment (and determine the version 
> number) and a script to do the installation of a current version and a 
> list of dependencies.
>
> For a simple pure-python package the scripts would be simple: the test 
> script would be an import of the package to determine existence and a 
> version check. The install script would be a download plus a 
> distutils-based install.
>
> For Python packages with extension modules the install script should grab 
> a binary distribution (also distutils based).
>
> For external packages (i.e. the AquaTk package needed by a Tkinter 
> package) the install script can fire up standard MacOS tools to install 
> the package.
>
> For really complicated things the install script should open an 
> instructions page in the users' webbrowser.
>
> The amount of code needed for all this isn't all that much. The real work 
> is in two things:
> - deciding on a database format that is rich enough, but also small 
> enough to actually be implementable in the 2.3 timeframe (a few months, I 
> guess)
> - finding someone who will take responsibility of keeping the database 
> plus the underlying installers up to date.
>>
This reminds me very much of Fink Commander 
http://finkcommander.sourceforge.net/ which I like a lot. It went a long 
ways towards removing my fear and trepidation when I started using fink.

A useful feature that would help a common beginner problem is to update 
the python path to make sure all the "installed" modules are reachable and 
to report any obscured modules due to a duplicate in a higher priority 
path.