[Distutils] Extending distutils with 3rd party build commands?
Bob Ippolito
bob at redivi.com
Sat Oct 23 04:30:39 CEST 2004
On Oct 22, 2004, at 22:14, Fred L. Drake, Jr. wrote:
> On Friday 22 October 2004 06:23 pm, Bob Ippolito wrote:
>> I need an editable file in a system-wide directory such as
>> site-packages that isn't "owned" by the Python installation. Even if
>> this were the case, it would be a real pain to implement, because it
>> would have to be done as a very careful postflight script that merges
>> the user's current config file with the necessary additions (in this
>> case, make sure to preserve anything else in the command-packages list
>> if there is one).
>
> Something that's supposed to affect all users should require that root
> set it
> up. I understand the issue about it being owned by the Python
> installation,
> though.
The problem is that Python itself will be owned by the vendor. Let's
say Apple, Debian, FreeBSD, etc. Anything additional to that should
live somewhere else, in a location that's explicitly not controlled by
the vendor. $prefix/etc creates another problem in that Python has
never used $prefix/etc for anything before. It's not a general
solution to this problem.
In particular, the situation on OS X is such that site-packages is
writable by the admin group (it's technically a symlink to somewhere
else, but that's inconsequential), where the rest of the Python
installation is owned by root:wheel (not writable by admins). It's of
course possible for administrator users to authenticate as euid 0 and
modify vendor files, but it's frowned upon and should not be done,
period.
> Where would you suggest it be? $prefix/etc/distutils.cfg, perhaps?
> What
> about on Windows?
There should be a way to register new distutils functionality by way of
sys.path. This allows the vendor, admins, users, and specific
applications to add functionality. The performance impact is
completely negligible.
-bob
More information about the Distutils-SIG
mailing list