On Feb 24, 2009, at 12:48 PM, Andrew Straw wrote:

But that is already implemented via file/dir permissions.

That's what's beautiful about GNU stow.  Look:

sudo mkdir /usr/local/stow/grozz
sudo chown `whoami` /usr/local/stow/grozz
python ./setup.py install --prefix=/usr/local/stow/grozz # LOOK NO SUDO
cd /usr/local/stow
sudo stow grozz

The important point is that the install process doesn't have permission to write into the system, but GNU stow does. GNU stow is more trusted to behave well than the install scripts of the grozz package are, and it is extremely simple and fail-safe -- all it does is make symlinks from /usr/local/x/y -> /usr/local/stow/grozz/x/y .

Note that GNU stow can therefore completely and correctly *uninstall* everything that it installed, by examining all of /usr/local looking for symlinks into /usr/local/stow/grozz and removing them. (Therefore it doesn't need a "RECORD" file -- the filesystem itself contains the exact record.)

I hope that this new distutils work will make it possible to use GNU stow to manage Python packages (by making it so that installation consists only of *adding* files to the system, not requiring *editing* files such as .pth files).

Regards,

Zooko
---
Tahoe, the Least-Authority Filesystem -- http://allmydata.org
store your data: $10/month -- http://allmydata.com/?tracking=zsig
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to