[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] Re: Playing with Flatpak packaging



+1 for python3 first.  Great work, Thomas, looks interesting.

On Tue, Mar 7, 2017 at 10:10 AM, Thomas Kluyver <takowl@xxxxxxxxx> wrote:
It should be easy enough to make a base app using Python 2.7 - I just focus on Python 3 first, because that's what I'm most interested in.

As John pointed out, Flatpak is a Linux technology. I have also experimented with making it easy to build Windows installers for Python applications - my project for that is called Pynsist, and you can see an example using Pygame here:
https://github.com/takluyver/pynsist/tree/master/examples/pygame

(Pynsist does not use the Windows sandboxing mechanisms John described)

Eventually, I'd like to have a common format for describing Python applications, and a set of tools that can use that to build packages, installers, self-contained executables and so forth for different platforms. Pynsist would be one such tool, and my investigations into Flatpak will hopefully lead to another tool.

Luke: thanks, I'll look at what it would take to Flatpak-ify your game.

Thomas

On 7 March 2017 at 07:06, DiliupG <diliupg@xxxxxxxxx> wrote:
a python 27 version for windows would be GREATLY appreciated unless you consider python 27 users redundant and windows, not a real os.
:(


On 7 March 2017 at 02:28, Luke Paireepinart <rabidpoobear@xxxxxxxxx> wrote:
Would be great to try this on my pyweek entry if you're looking for games to test, just let me know how it turns out. It's called solar flair, but was developed with python 2.7 on Windows. I'm not sure on the compatibility with 3.x. - https://github.com/lukevp/pyweek23


On Mar 6, 2017 12:11 PM, "Thomas Kluyver" <takowl@xxxxxxxxx> wrote:
I developed this a bit further, though there's still more I hope to do with it.

It turns out that building a custom runtime is discouraged; the better way to support game developers is to build a 'base app', which people can then add their own game files to. I have prepared two different base apps: one includes Python 3.6, and makes a download of about 30 MiB. The other uses Python 3.4 from the shared runtime, so is a download of about 7 MiB. My idea is that the game developer can choose between the latest language features and a quicker installation.

My next step is to make a more complete example of using this to package a game (so far, I've tested with the 'aliens' example that ships with pygame). I might try with the solarwolf example on Pygame's Github org - or if anyone wants to suggest another suitable open-source game based on pygame, I could try with that.

Thomas

On 26 February 2017 at 19:47, Thomas Kluyver <takowl@xxxxxxxxx> wrote:
I spent a while today playing with Flatpak, a new system for packaging sandboxed applications on Linux. The result is an example that can build and install Pygame's Aliens example game:

https://github.com/takluyver/pygame-flatpak-test

If you're running Fedora 24+, Ubuntu 16.10 (might need a PPA?) Debian testing/unstable or Arch, you can install Flatpak and try it out.

This is quite rough at the moment, but I think it has good potential for distributing games to Linux users in the future. It looks like [1] Flatpak is on its way to becoming the default cross-distro app distribution mechanism for desktop Linux.

The big improvement I'd like to make is building a dedicated Flatpak 'runtime' for pygame, including a newer version of Python - the base runtime I'm using at present has Python 3.4.

Thanks,
Thomas





--
http://www.diliupg.com

**********************************************************************************************
This e-mail is confidential. It may also be legally privileged. If you are not the intended recipient or have received it in error, please delete it and all copies from your system and notify the sender immediately by return e-mail. Any unauthorized reading, reproducing, printing or further dissemination of this e-mail or its contents is strictly prohibited and may be unlawful. Internet communications cannot be guaranteed to be timely, secure, error or virus-free. The sender does not accept liability for any errors or omissions.
**********************************************************************************************