I'm having a problem using setuptools to create a distribution for a project 
that includes data files. I can get the data files to be included in the zipped 
package file (*.tar.gz) but when I easy_install the package the data files are 
not installed. (Ubuntu 11.04, Python2.7).

I'm trying to use easy_install because the project is a game with dependencies 
and so it would be nice for easy_install to handle all that for people.


My setup.py file is below at the end of the post. 

I create the zip with,

> python setup.py egg_info
...
> python setup.py sdist

Then the dist/tacman-0.1.tar.gz includes my data files as identified in the 
MANIFEST.in file.

But when I do,

> sudo easy_install dist/tacman-0.1.tar.gz

... the python modules appear in 
/usr/local/lib/python27/dist-packages/tacman-0.1-py2.7.egg but the data files 
are nowhere to be seen. I tried locating them using pkg_resources but that 
didn't help. Some Googling suggested /usr/share as a location but they weren't 
there either.

Am I looking in the right place or did they just not get installed?

The whole distribution file is at http://perpetualpyramid.com/tacman-0.1.tar.gz 
in case that helps. The file is bit large because it is a game and the zip 
includes the music and graphics.

Thanks for any help and pointers.

Paul

--- setup.py ---

from setuptools import setup, find_packages

import game.common

setup(name='tacman',
      version=game.common.version,
      scripts=['tacman.py'], 
      entry_points = {
        'console_scripts' : [
            'tacman = tacman.tacman',
        ]
      },
      description='A tactical, turn-based clone on PACMAN',
      author='Paul Paterson',
      author_email='ppater...@gmail.com',
      url='http://www.perpetualpyramid/tacman.html',
      download_url=('http://perpetualpyramid.com/tacman-%s.tar.gz' % 
game.common.version),

      include_package_data=True,
      zip_safe=False,
      
      packages=[
        'serge', 'serge.blocks', 'serge.tools', 'serge.tools.template', 'game',
      ],
      package_dir={'':'.'},

      classifiers = [
        "Programming Language :: Python",
        "Programming Language :: Python :: 2",
        "Development Status :: 4 - Beta",
        "Environment :: Other Environment",
        "Intended Audience :: End Users/Desktop",
        "License :: OSI Approved :: GNU Library or Lesser General Public 
License (LGPL)",
        "Operating System :: OS Independent",
        "Topic :: Games/Entertainment",
        "Topic :: Games/Entertainment :: Puzzle Games",
        ],
       install_requires=[
         'pygame', 'networkx',
       ],
       long_description='''\
TACMAN
------

A turn-based, tactical version of PACMAN.

Play a PACMAN clone where the action is turn based. You move and then the 
ghosts move. The turn-based action adds additional tactical elements to the
game and allows you to plan ahead and outwit the ghosts!

Requires: Python 2.6+, pygame 1.9+, networkx

''',
         )
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to