At 11:19 PM 3/9/2009 -0400, David Lyon wrote:
What I want to do is use these in a list of installed packages. And then
later provide for deinstallation. I'm thinking of parsing this file to read
all the package names..
My question is is there any way to do the same thing with setuptools?
http://peak.telecommunity.com/DevCenter/PkgResources#workingset-objects
You can simply iterate over pkg_resources.working_set to obtain
Distribution objects for all eggs on sys.path -- that will give you
all *activated* packages (i.e., ones listed in .pth files or
otherwise explicitly on sys.path).
If you want all *installed* packages (which may not be on sys.path,
but are still physically present in a directory on sys.path), you
want an Environment object instead:
http://peak.telecommunity.com/DevCenter/PkgResources#environment-objects
And to remove a package from the .pth file, you can use "easy_install
-mxNd targetdir project==version" -- this will remove the named
project from the easy-install.pth file in targetdir. (The -m takes
it out, the -x means don't reinstall scripts, the -N means don't
install dependencies, and the -d targetdir specifies where the .pth file is.)
_______________________________________________
Distutils-SIG maillist - Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig