All Projects → achadwick → styrene

achadwick / styrene

Licence: GPL-3.0 license
A repacking tool that creates usable app bundles for regular Windows users out of MSYS2 binary packages.

Programming Languages

python
139335 projects - #7 most used programming language
c
50402 projects - #5 most used programming language
shell
77523 projects
NSIS
403 projects
Batchfile
5799 projects

Styrene – a package bundler

Documentation Appveyor Build status Tea-CI Build status

Styrene makes usable app bundles for Windows. It repacks MSYS2 software into neat bundles that are nicer for your users, and easier for you to distribute. If a package containing your app is already available in MSYS2, it can be bundled with Styrene. You can also bundle packages you build yourself.

Quick start

  1. Install MSYS2 from its download page, and upgrade it as described there.

  2. Install Styrene’s runtime dependencies from the MSYS Shell command line that came with MSYS2:

    pacman -S --needed zip \
      mingw-w64-x86_64-python3 \
      mingw-w64-x86_64-gcc mingw-w64-x86_64-nsis mingw-w64-x86_64-binutils \
      mingw-w64-i686-python3 \
      mingw-w64-i686-gcc mingw-w64-i686-nsis mingw-w64-i686-binutils

    And the ones for fetching and installing the Styrene source too:

    pacman -S --needed git
    pacman -S --needed mingw-w64-i686-python3-pip mingw-w64-x86_64-python3-pip
  3. Clone Styrene from its GitHub repository and install it. You'll need the MINGW64 Shell or its MINGW32 buddy for these later bits.

    git clone https://github.com/achadwick/styrene.git
    cd styrene
    pip3 install .
  4. Try it out with the demo config file!

    styrene -o ./tmp ./gtk3-examples.cfg
    start ./tmp     # then try running one of the installer .exe files
  5. Read the docs to find out more.

Contributing

This project has a Code of Conduct for its contributors. By participating in this project, you agree to abide by its terms.

Licenses

Styrene’s code is licensed as follows:

  • GPLv3 or later for the tool itself.
  • CC0 for code templates and generated code inside bundles.

See the Styrene licensing policy in the documentation for details of why we make this split.

Other licenses:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].