[Pythonmac-SIG] Installing PyObjC via PackMan

Kevin Altis altis at semi-retired.com
Thu Jul 31 13:04:29 EDT 2003


> From: Kevin Ollivier
>
> On Thursday, July 31, 2003, at 08:43  AM, Bob Ippolito wrote:
>
> >
> > On Thursday, Jul 31, 2003, at 04:53 America/New_York, Jack Jansen
> > wrote:
> >
> >>
> >> On donderdag, jul 31, 2003, at 07:39 Europe/Amsterdam, Ronald
> >> Oussoren wrote:
> >>> The PyObjC examples/documentation are not installed using distutils,
> >>> and I assume this means they are not installed by PacMan. You could
> >>> download the PyObjC installer for Python 2.2, the .DMG also contains
> >>> a folder containing the Examples and Documentation. That should work
> >>> just fine with Python 2.3.
> >>
> >> Ah, yes, all the installers have this problem: supporting documents
> >> like examples and documentation aren't installed.
> >>
> >> I think we need to do two things about this:
> >> - for the future, think of a way this could be added to distutils.
> >> - for now, we need a way to give users who do a binary install of a
> >> package a way to get access to the examples. One way would be to
> >> create an extra installer, pyobjc_examples-1.0b2-binary, that would
> >> put the examples and any other interesting stuff you don't get with a
> >> binary install into /Applications/MacPython-2.3/Extras.
> >>
> >> Does this sound like a workable plan?
> >
> > Also for documentation..  I was thinking last night that python could
> > keep an indexed directory of all pydoc and html documentation for
> > python.  Many packages use HTML documentation, that ends up getting
> > installed somewhere in site-packages.. That's probably not where it
> > should go, but there should be a metadata way of saying 'look here for
> > my documentation, don't bother introspecting me'.
>
> This sounds like a good plan. I think we should have a "Packages"
> directory under /Applications/MacPython 2.3 where examples and
> documentation go. Each package gets a folder, and that's where to look
> for everything regarding that package. Maybe even put a symlink to the
> actual module there? (For user installs, we could have something like
> $HOME/MacPython 2.3/Packages maybe?)
>
>  From within PackMan, I think we could also have a simple line saying
> "Install Location: /App.../Mac../Packages/PyObjC/Examples" when the
> user clicks on examples or documentation.
>
> What do you think?

For many distributions, it is crucial to keep the samples and documentation
in sync with the actual Python package (dir with __init__.py file). This
issue comes up periodically with PythonCard and while I would like to have
the documentation and samples in a directory other than
site-packages/PythonCardPrototype it is more important that the user doesn't
mix versions and get unexpected errors.

We solved the problem on Windows by having Python 2.3 distutils create a
Program Files group with shortcuts to the main tools, documentation and
samples launcher. The Linux RPMs have something similar, though distutils
does not have direct support for that and someone had to build the RPMs
separately. On the Mac, I would love to be able to have distutils or some
other standard mechanism for creating a PythonCard folder under the
Applications/MacPython folder or other logical place. I would also be happy
having an Applications/PythonCard folder as an option.

Using symlinks/aliases to the actual locations in site-packages seems to
make the most sense. I am still confused about the reasoning behind
splitting code, docs, samples, etc. on Linux and can never remember where to
look for all the pieces. Let's not repeat that mistake.

I still haven't figured out how I'm going to deal with some of the tools
like the codeEditor which really needs to be turned into a standalone with
bundlebuilder so users can drag and drop from the Finder. Building the
standalones might need to be part of the distutils process. Maybe we can
cover that kind of problem in a separate thread.

The problem of user-modifiable elements should be handled separately by
creating files and dirs in the users home directory and is not something
PackMan should have to deal with. Again, for PythonCard we started out with
a .pythoncard dir but the Unix convention of using a leading dot to hide
files and dirs just seemed to confuse people that couldn't find their
configs in the Finder and it didn't translate well to Windows either, so the
dir name was changed to "pythoncard_config" in release 0.7.1

My two cents,

ka






More information about the Pythonmac-SIG mailing list