Browse Source

pyinstaller --onefile support

pull/128/head
Alexander Gordeyev 9 years ago
committed by chriskiehl
parent
commit
20a13e5f68
1 changed files with 10 additions and 6 deletions
  1. 16
      gooey/gui/util/freeze.py

16
gooey/gui/util/freeze.py

@ -10,13 +10,17 @@ def get_resource_path(*args):
if is_frozen():
# MEIPASS explanation:
# https://pythonhosted.org/PyInstaller/#run-time-operation
resource_dir = os.path.join(sys._MEIPASS, 'gooey')
basedir = getattr(sys, '_MEIPASS', None)
if not basedir:
basedir = os.path.dirname(sys.executable)
resource_dir = os.path.join(basedir, 'gooey')
if not os.path.isdir(resource_dir):
raise IOError(("cannot locate Gooey resources. It seems that the program "
"was frozen, but resource files were not copied to "
"directory of the executable file. Please copy "
"`languages` and `images` folders from gooey module "
"directory into `{}{}` directory.".format(resource_dir, os.sep)))
raise IOError(
("Cannot locate Gooey resources. It seems that the program was frozen, "
"but resource files were not copied into directory of the executable "
"file. Please copy `languages` and `images` folders from gooey module "
"directory into `{}{}` directory. Using PyInstaller, a.datas in .spec "
"file must be specified.".format(resource_dir, os.sep)))
else:
resource_dir = os.path.normpath(os.path.join(os.path.dirname(__file__), '..', '..'))
return os.path.join(resource_dir, *args)
Loading…
Cancel
Save