[Pythonmac-SIG] bdist_mpkg questions

Nick Matsakis matsakis at mit.edu
Sat Jun 4 08:24:10 CEST 2005


I'm playing around with bdist_mpkg and have some questions.  If these get
answered, I promise to put them on the wiki:

1. Why does it build a meta-package with a single package inside?  Why not
just a package?

2. When I install a bdist-made package, the files have the owner of the
user that built the package not the user installing the package, even
though no root authorization is required.  Apple's documentation says "By
default, if no authorization is required, the files that Installer places
on a user's computer are owned by the user doing the installation." see:

http://developer.apple.com/documentation/DeveloperTools/Conceptual/SoftwareDistribution/Concepts/sd_permissions_author.html

I strongly suspect this is a bug in Apple's installer; Under 10.3, their
documentation claimed that packages wouldn't change the permissions of
existing directories, but this is exactly what happened with the Appscript
Installer 1.0 (10.4 appears to fix this).  Anyway, if we can't trust
Installer.app to set the permissions appropriately, is there any way to
set the owner/permissions of the file at the time the package is built
(other than su-ing to that user)?

3. What's the deal with PackageManager?  What is a "repository", exactly,
and what format are the packages in a repository?

4. I'm getting a very bizarre error trying to run bdist_mpkg.  If I run
the script directly, it can't find the bdist package.  However, if I run
it as an argument to python2.3, it does.  I'm willing to ignore this, but
if anyone has suggestions I'd love to hear them (this is with the built-in
python on 10.3.9.  Observe:

artoo% cat /usr/local/bin/bdist_mpkg
#!/usr/bin/python2.3
from bdist_mpkg.scripts.script_bdist_mpkg import main
main()

artoo% bdist_mpkg -h
Traceback (most recent call last):
  File "/usr/local/bin/bdist_mpkg", line 2, in ?
    from bdist_mpkg.scripts.script_bdist_mpkg import main
ImportError: No module named bdist_mpkg.scripts.script_bdist_mpkg

artoo% /usr/bin/python2.3 /usr/local/bin/bdist_mpkg -h
Global options:
  --verbose (-v)  run verbosely (default)
  --quiet (-q)    run quietly (turns verbosity off)
  --dry-run (-n)  don't actually do anything
  --help (-h)     show detailed help message
...

???

Nick Matsakis


More information about the Pythonmac-SIG mailing list