Robert Bossy <[EMAIL PROTECTED]> on Wed, 20 Feb 2008 09:29:12 +0100 didst step forth and proclaim thus:
> Sam Peterson wrote: >> I've been googling for a while now and cannot find a good way to deal >> with this. >> >> I have a slightly messy python program I wrote that I've historically >> just run from the extracted source folder. I have pictures and sound >> files in this folder that this program uses. I've always just used >> the relative path names of these files in my program. >> >> Lately, I had the idea of cleaning up my program and packaging it with >> distutils, but I've been stuck on a good way to deal with these >> resource files. The package_data keyword seems to be the way to go, >> but how can I locate and open my files once they've been moved? In >> other words, what should I do about changing the relative path names? >> I need something that could work from both the extracted source >> folder, AND when the program gets installed via the python setup.py >> install command. >> > This seems to be a classic distutils question: how a python module > can access to data files *after* being installed? Man, I was afraid of that. Python is an awesome language, but this is yet another instance of seeing something in the standard library sucking. > The following thread addresses this issue: > http://www.gossamer-threads.com/lists/python/python/163159 > > Carl Banks' solution seems to overcome the problem: his trick is to > generate an additional configuration module with the relevant > informations from the distutil data structure. However it is quite an > old thread (2003) and I don't know if there has been progress made > since then, maybe the distutils module now incorporates a similar > mechanism. Not if the documentation for 2.5's got anything to say about it. If it does, it's well hidden. I think I'll kill the idea of using distutils for my program. It seems like distutils was primarily designed for modules and extensions. -- Sam Peterson skpeterson At nospam ucdavis.edu "if programmers were paid to remove code instead of adding it, software would be much better" -- unknown -- http://mail.python.org/mailman/listinfo/python-list