Hier ist mein abgespecktes setup.py-Skript, bei dem Nicht-Code-Inhalte entfernt wurden:
#!/usr/bin/env python
from distutils.core import setup
from whyteboard.misc import meta
setup(
name = 'Whyteboard',
version = meta.version,
packages = ['whyteboard', 'whyteboard.gui', 'whyteboard.lib', 'whyteboard.lib.pubsub',
'whyteboard.lib.pubsub.core', 'whyteboard.lib.pubsub.utils', 'whyteboard.misc'],
py_modules = ['whyteboard'],
scripts = ['whyteboard.py'],
)
MANIFEST.in:
include *.txt
include whyteboard-help/*.*
recursive-include locale *.mo
recursive-include images *.png
Wenn ich "python setup.py install sdist" ausführe, erhalte ich eine schöne .tar.gz mit einem Stammordner "whyteboard-0.41", in dem sich meine Ordner locale / images / und whyteboard-help / befinden. Dies hat auch mein whyteboard.py-Skript, das mein Programm aus dem whyteboard-Quellpaket heraus startet.
So:
whyteboard/
├── locale/
├── images
├── whyteboard-help/
├── whyteboard/
│ ├── __init__.py
│ └── other packages etc
├── whyteboard.py
├── README
├── setup.py
└── CHANGELOG
Dies spiegelt die Quelle meines Programms wider, ist, wie alles sein sollte und ist korrekt.
Wenn ich jedoch "python setup.py install" ausführe, wird keine meiner Datendateien geschrieben - nur das Quellpaket "whyteboard" und die Datei whyteboard.py werden in /usr/local/lib/python2.6/dist-packages/ abgelegt. .
Im Idealfall möchte ich, dass dieselbe Verzeichnisstruktur wie die in der Datei .tar.gz generierte in dist-Paketen erstellt wird, da mein Programm auf diese Weise erwartet, nach seinen Ressourcen zu suchen.
Wie kann ich "installieren", um diese Verzeichnisstruktur zu erstellen? Soweit ich das beurteilen kann, scheint es meine Manifestdatei zu ignorieren.