One thing to consider, which might make my whole idea not a good idea, is that AppImages are read-only, so they might not be a good fit for an IDE with built-in Python. How would the user install new packages? Could we target a site-packages folder outside the AppImage? I don’t know.
An alternative to the AppImage strategy could perhaps be a bash script that installs everything we want. Currently Thonny provides this: bash <(wget -O - https://thonny.org/installer-for-linux) (the running bash source)
Update: I asked a friend who is very good at bash scripts to have a look…
Good point. If the AppImage is read only and the user could not install packages, I would guess that Thonny would give a strange error when the user tried to install something because a read only package jar would be completely unexpected.
How does Thonny package itself? Doesn’t it come with installed packages already? Why can’t we add our own package that adds a few more? It is open source after-all.
For the MacOS “Thonny + py5 bundle” I guess this is the way forward (following instructions on that link I posted in the first message).
For Windows, the portable zip seems to be mostly working.
Then for Linux, packaging to different distro ecossystems seems lots of trouble, so I thought about the AppImage strategy, but now I’m more inclined to try to hack the bash script, which is already installing stuff.
Interesting. I just went through the packaging directory in the Thonny repo.
It seems achievable, and the team does respond to questions. I don’t think we’d need to worry about multiple LInux distros. They don’t seem to do anything special for that for their own releases:
Hi Villares. The current version works amazing, thank you for this! I’ve run this on multiple systems (Windows), there seems to be a major lag between running the script and the canvas window showing up. Is this expected? Sorry I am completely new to py5 (processing user for a very long time). Thanks!
Cheers @dodo! Thanks for sharing your experience, I’m glad it has been helpful.
I’m also worried about this lag, my students also complain about it taking too long to start & open the canvas, do you think the waiting time has increased in this latest iteration?
The py5 maintainer, @hx2A, has been working on this new feature called Live Coding available with module mode in the latest release, that tackles this as it updates the running sketch each time you save a source modification… Maybe this will help us, when available in imported mode…
Hi, @dodo! Thank you for bringing the lag issue to my attention. I did not know this was a concern for users.
I thought about it for a bit and came up with a better design idea that would address this:
This isn’t 5 minutes of work but it isn’t all that difficult either. We’d also need to update the Thonny plugin to use this new method after this enhancement is complete. It’ll get done though.
Yes, the wait times are definitely a bit of pain at the moment. I teach beginner workshops and the feedback loop is critical between running code and executing it. Nevertheless, this has been a wonderful interface to work in so far otherwise and I’ll continue using it both in the studio and my classes. Look forward to the continued development on this !