diff --git a/doc/requirements.txt b/doc/requirements.txt index c0050c9..728e22d 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -3,6 +3,7 @@ Pillow>=2.0 qrcode>=4.0 pyserial sphinx-rtd-theme +setuptools setuptools-scm docutils>=0.12 sphinxcontrib-spelling>=5 diff --git a/setup.cfg b/setup.cfg index 567e548..8052855 100644 --- a/setup.cfg +++ b/setup.cfg @@ -40,6 +40,7 @@ install_requires = qrcode>=4.0 pyserial python-barcode>=0.9.1,<1 + setuptools six appdirs PyYAML diff --git a/src/escpos/capabilities.py b/src/escpos/capabilities.py index 65c2666..80f88a1 100644 --- a/src/escpos/capabilities.py +++ b/src/escpos/capabilities.py @@ -1,5 +1,6 @@ import re from os import environ, path +import pkg_resources import pickle import logging import time @@ -15,9 +16,9 @@ logger = logging.getLogger(__name__) pickle_dir = environ.get('ESCPOS_CAPABILITIES_PICKLE_DIR', gettempdir()) pickle_path = path.join(pickle_dir, '{v}.capabilities.pickle'.format(v=platform.python_version())) -capabilities_path = environ.get( - 'ESCPOS_CAPABILITIES_FILE', - path.join(path.dirname(__file__), 'capabilities.json')) +# get a temporary file from pkg_resources if no file is specified in env +capabilities_path = environ.get('ESCPOS_CAPABILITIES_FILE', + pkg_resources.resource_filename(__name__, 'capabilities.json')) # Load external printer database t0 = time.time()