Skip to content

pyinstailor is a tailor to replace files directly in the executable file generated by PyInstaller

License

Notifications You must be signed in to change notification settings

dashingsoft/pyinstailor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyinstailor

pyinstailor is a tailor to replace files directly in the executable file generated by PyInstaller. Sometimes the script is changed a little, for example, only refine log messages, no dependency changed, no analysis is required. In this case, pyinstailor could extract the executable, replace the old script with new one, then repack it.

Usage

pyinstailor.py [-h] [-d] [-s N] executable [files]

Examples

  • List all the available items in the archive

      pyinstailor dist/foo.exe
    
  • Replace entry script "foo.py" in the bundle "foo.exe"

      pyinstailor dist/foo.exe foo.py
    
  • If entry scrip is in other path, strip the first N path

      pyinstailor -s 1 dist/foo.exe src/foo.py
    
  • Replace package file reader/__init__.py in the bundle "foo.exe"

      pyinstailor dist/foo.exe reader/__init__.py
    
  • Strip the first path in the file path

      pyinstailor -s 2 dist/foo.exe ../../reader/__init__.py
    

This tool doesn't support PyInstaller 2.0, and it's not full test.

Change Logs

1.4

  • Fix bug: it fails when printing toc where the embedded PYZ archive contains subdirectories

1.3

  • Fix python2.7 bug: it raises exception TypeError: makedirs() got an unexpected keyword argument 'exist_ok'

1.2

  • Fix bug: when repacking an executable where the embedded PKG archive contains subdirectories, the repack script fails

1.1

  • Fix bug: the final bundle isn't patched in some platforms

About

pyinstailor is a tailor to replace files directly in the executable file generated by PyInstaller

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages