Giter Club home page Giter Club logo

Comments (5)

osfanbuff63 avatar osfanbuff63 commented on September 24, 2024 1

Or more specifically, where is zip used/distributed, if at all?

It isn't - it's just a test I did to just include the exe in a zip file or a 7z vs one file (made with --onefile) that extracts to a temp directory. I found it interesting that zip was that much more in testing though haha

from vanilla-installer-python.

osfanbuff63 avatar osfanbuff63 commented on September 24, 2024

This is unfortunately just the state of Python compiling. We have solutions that bundle the entire Python interpreter (PyInstaller, cx_Freeze, etc), or compiling it to C(++) and then compiling it to DLLs that way (nuitka). Both take up quite a lot of space; I think what's most at fault is the fact that we have to bundle Qt/PySide. In theory I could delete all the Qt DLLs that we don't use however I'm not sure how much that would help and if it would break anything.

The only other solution is a rewrite in another language that has a native compiler with a better solution - I think I was going to try to rewrite this in Rust to learn it and basically for fun; however if it ever is any better then we could consider using it. That's not in the scope of this for now though; not to mention I'm a terrible UI designer lol

from vanilla-installer-python.

Madis0 avatar Madis0 commented on September 24, 2024

We have solutions that bundle the entire Python interpreter (PyInstaller, cx_Freeze, etc), or compiling it to C(++) and then compiling it to DLLs that way (nuitka). Both take up quite a lot of space; I think what's most at fault is the fact that we have to bundle Qt/PySide. In theory I could delete all the Qt DLLs that we don't use

Do test these options then.

Don't the style effects play any role in this? As in, using a system font/background and icons as normal buttons maybe could reduce the size.

from vanilla-installer-python.

osfanbuff63 avatar osfanbuff63 commented on September 24, 2024

Done some experimenting here - it turns out that when compiling we were including the PySide6.examples module, which is not used (as you could guess). Removing that brings it down to 31MB as a .zip, 21MB as a .7z, and 23MB as a onefile compressed exe. To say the least, that's progress.

from vanilla-installer-python.

Madis0 avatar Madis0 commented on September 24, 2024

Could be even smaller but I'd say it is okay for the first release.
Does zip really have to be 31 MB or can it be compressed more? Or more specifically, where is zip used/distributed, if at all?

from vanilla-installer-python.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.