Skip to main content

distutils extension module - create an installer by InnoSetup.

Project description

distutils extension module - create an installer by InnoSetup.

Requirements

Features

  • You can use your customized InnoSetup Script.

  • installer metadata over setup() metadata

  • generate AppId(GUID) from setup() metadata See the innosetup.InnoScript.appid property.

  • bundle exe and com dll and dependent libs and resources

  • bundle msvcr and mfc and their manifest

  • bundle all installed InnoSetup’s language file (If there is no valid [Languages] section.)

  • create windows exe’s shortcut

  • register com_server and service

  • check the Windows version with Python version

  • fix a problem py2exe.mf misses some modules (ex. win32com.shell)

An example

from distutils.core import setup
import py2exe, innosetup

# All options are same as py2exe options.
setup(
    name='example',
    version='1.0.0.0',
    license='PSF or other',
    author='you',
    author_email='you@your.domain',
    description='description',
    url='http://www.your.domain/example', # generate AppId from this url
    options={
        'py2exe': {
            # `innosetup` gets the `py2exe`'s options.
            'compressed': True,
            'optimize': 2,
            'bundle_files': 3,
            },
        'innosetup': {
            # user defined iss file path or iss string
            'inno_script': innosetup.DEFAULT_ISS, # default is ''
            # bundle msvc files
            'bundle_vcr': True, # default is True
            # zip setup file
            'zip': False, # default is False, bool() or zip file name
            }
        },
    com_server=[
        {'modules': ['your_com_server_module'], 'create_exe': False},
        ],
    # and other metadata ...
    )

Do the command setup.py innosetup. Then you get InnoSetup script file named distdistutils.iss and the installation file named distexample-1.0.0.0.exe.

History

0.6.0.0

  • support bundling tcl files

  • change OutputBaseFilename

0.5.0.1

  • improve update install support

0.5.0.0

  • add DEFAULT_ISS, manifest, srcname, srcnames

  • add zip option

  • fix bundle_files=1 option problem (always bundle pythonXX.dll)

  • add DefaultGroupName, InfoBeforeFile, LicenseFile into [Setup] section

0.4.0.0

  • support service cmdline_style options

  • rewrite codes around iss file

0.3.0.0

  • improve the InnoSetup instllation path detection

  • add inno_setup_exe option

0.2.0.0

  • handle py2exe’s command options

  • add bundle_vcr option

0.1.0.0

  • first release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

innosetup-0.6.0.0.zip (9.8 kB view details)

Uploaded Source

File details

Details for the file innosetup-0.6.0.0.zip.

File metadata

  • Download URL: innosetup-0.6.0.0.zip
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for innosetup-0.6.0.0.zip
Algorithm Hash digest
SHA256 99a0f363ce411d3b883b4e4a166ce523dd553a469fafc041104a6ff7ebe2c3c8
MD5 240191c7de6baac41f4721bd07bf7792
BLAKE2b-256 d206a7e79df57856d7fd7abdf3008610ef032c811d4271f9f028800af811c8f9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page