packaging a python project and associated graphics files

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Rajarshi Guha

    #1

    packaging a python project and associated graphics files

    Hi, I've been trying to package a python project and I'm a little confused
    about how I distribute some PNG's that the program uses as icons.

    Using distutils I can set the data_files argument of setup() and get my
    data files located in, say, /usr/local/mydata.

    However when I write my code, it would seem that I have to hardcode the
    above path. But this would mean that while working on the code I would
    need to have it 'installed' on my system (or else actually make the above
    directory).

    This seems a little unwieldy. How do people handle this situation?

    Thanks,

  • Mike Meyer

    #2
    Re: packaging a python project and associated graphics files

    Rajarshi Guha <rajarshi@presi dency.com> writes:
    [color=blue]
    > Hi, I've been trying to package a python project and I'm a little confused
    > about how I distribute some PNG's that the program uses as icons.
    >
    > Using distutils I can set the data_files argument of setup() and get my
    > data files located in, say, /usr/local/mydata.
    >
    > However when I write my code, it would seem that I have to hardcode the
    > above path. But this would mean that while working on the code I would
    > need to have it 'installed' on my system (or else actually make the above
    > directory).
    >
    > This seems a little unwieldy. How do people handle this situation?[/color]

    With symlinks from the installed location to the source tree.

    <mike
    --
    Mike Meyer <mwm@mired.or g> http://www.mired.org/home/mwm/
    Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.

    Comment

    • Robert Kern

      #3
      Re: packaging a python project and associated graphics files

      Rajarshi Guha wrote:[color=blue]
      > Hi, I've been trying to package a python project and I'm a little confused
      > about how I distribute some PNG's that the program uses as icons.
      >
      > Using distutils I can set the data_files argument of setup() and get my
      > data files located in, say, /usr/local/mydata.
      >
      > However when I write my code, it would seem that I have to hardcode the
      > above path. But this would mean that while working on the code I would
      > need to have it 'installed' on my system (or else actually make the above
      > directory).
      >
      > This seems a little unwieldy. How do people handle this situation?[/color]

      I recommend packaging the files in the package itself. With Python 2.4,
      you can make distutils do this with the package_data argument to
      setup(). You can find your files by looking at the __file__ variable in
      any of your modules.

      Also, take a look at PythonEggs and pkg_resources.

      http://peak.telecommunity.com/DevCenter/PythonEggs
      http://peak.telecommunity.com/DevCenter/PkgResources

      --
      Robert Kern
      rkern@ucsd.edu

      "In the fields of hell where the grass grows high
      Are the graves of dreams allowed to die."
      -- Richard Harter

      Comment

      Working...