Search code examples
python-2.7py2app

py2app - preserve directory structure


I would like to make a mac os x app for distributing my program.

The problem is that current script puts "images/Diagram.png" and other files under "images" folder to "Resources" but not to "Resources/images" as expected

What can I change in this setup.py part in order to put png files under images?

mainscript, ico, icns = "aproxim.py", "sum.ico", "sum.icns"

files = ["images/Diagram.png", "images/document.png", "images/Exit.png", "images/floppydisc.png",
         "images/folder.png", "images/Info.png", "images/settings.png"]
scripts = ["app_settings_dialog", "app_window", "approximator", "approximator2", "data_format",
           "easy_excel", "functions", "main_window", "settings_dialog",
           "util_data", "util_parameters"]

description = "Approximator is program for experimental data approximation and interpolation (20 dependencies for select)"

common_options = dict(name = "Approximator", version = "1.7", description = description)

if sys.platform == 'darwin':
    setup(
        setup_requires = ['py2app'],
        app = [mainscript],
        options = dict(py2app = dict(includes = scripts, resources = files, iconfile = icns)),
        **common_options)

Solution

  • It is easy, hope it is useful for other Python developers:

    resources = [('images', files), ('', [ico])]