Promoting pypi for python game releases. Part 1.

This is a statement of intent similar to what I wrote to the pygame mailing list some weeks ago. That I think the python game community should promote packaging their games as python packages. When I wrote to the mailing list, not everyone was convinced, and some people had other ideas. So I'm going incorporate their feedback, and to try to be more detailed on the full plan of where I think we should go, what benefits this provides the python community as a whole, and the benefits it provides game developers.

This is the first in a series of articles about making python game distribution better.

“ the python game community should use python packages ”

With all the great work from lots of people pygame is often easily installable via pip - the standard python packaging system. We still have some issues, but it works quite well on major platforms. See "How we cobbled together a free Spectacularly Adequate Build Page." for more details on how we package pygame for pip.

Now our games can be installed with pip too! Here's an example game I started packaging up, now available on the python package index. Note, it will install pygame for you.

pip3 install --pre solarwolf


solarwolf - a game I packaged up for testing

Since many people enter the python world via games, it makes sense that they get used to publishing python packages as well. I've sat in python user groups, and still 80% of the room has never published a python package despite many of them working with python every day - for years. Let that sink in for a bit... most python developers never publish packages.
“ newbies to python often come in through game development
Currently most people making games find packaging them up for distribution very time consuming, and also pretty much impossible to do for multiple platforms. For game libraries, people still do not use pypi so much. It's easier for them to just put the source tarball up on a website and tell people to download it.

As a game developer why should I use pip? Firstly, there is a very large audience of people who can install python games - python developers. This is mainly your peers, but python also comes installed already on many platforms (linux, Mac, etc). You can manage dependencies more easily (so you don't need to worry people don't have one of your other libraries installed). You don't need to worry about the platform issues of binaries so much. If they have pip on their platform, then they can install your game. Other benefits of publishing on pypi include syndication, since many people tweet and copy all the releases on pypi. Another benefit is all the infrastructure work that goes into pypi, CDN networks and such.

I suggest efforts should be applied to:
  • updating tutorials, and spreading the idea of publishing python games to the cheeseshop (pyweek, pygame.org tutorials, external tutorials, books, youtube videos)
  • base code for a pygame game in a standard structure (skellington, cookiecutter etc)
  • contacting other python game communities to suggest pypi should be a priority
  • making the cheeseshop/pypi itself a better platform for game publishing needs
  • making python packaging easier, by fixing python packaging warts which stop newbies.
What pypi doesn't do currently? It doesn't do many things that a good game release system would do. Video/youtube links, and even screenshots aren't available. Discussion has been disabled (they found it way too hard to moderate). Even ratings are not on there (which can help for discover-ability). Another issue is that closed source things aren't really looked apon nicely there(but it is allowed). Finally, packaging in python still isn't the easiest thing (it's definitely not as easily as uploading a zip file, but it is waaaaaay nicer now than ever before).

Any work that goes into making the packaging better for games helps out with other python game communities as well. We can perhaps even gain allies from the other communities to help improve things for python games in general.

Here are where the pypi projects live.


The second part of this article series is about what else we can do to improve distribution. Topics coming up in this article series include - a new "skellington" (from pyweek) based on the "sampleproject" (from pypa) with everything setup, and using appveyor/travisci/etc to build binaries on mac/linux/windows/android for everyone, as well as a list of python packaging warts I've gathered from people trying to package their python modules.

Comments

Monika said…
Hulu is a channel that everyone would want to watch on Roku streaming player and has some special features that activate hulu on roku . Activate Hulu by going to the hulu.com/activate and take advantage of it.To activate your hulu activation code for tv . Enter Hulu Activation Code from hulu.com/activate and click Activate. Follow the instruction on the mentioned on the screen and complete the activation process from clcik threre hulu.com/activate After complete all the steps, you will get the message ‘You are all set up.’ Now you can use it for watching your favourite shows and videos.

First of all activate hulu on computer . When you open the Hulu app, the Hulu activation code will be on your TV. If your account needs activation then it will be displayed online on your screen then you can install it by going to hulu.com/activate . In this way you can use the Hulu app.You can use hulu.com/activate by creating a Hulu account. After creating Hulu account and hulu.com/activate from steps for hulu activation , you can sign in Hulu account and can access all your favorite movies and TV shows.
Monika said…
Taking a trip? We have your travel plans covered. Flights; Hotels , american airlines provide you all the facilities ,American Airlines give you great travel deals, discount flight tickets,Airline Reservations go the link southwebst airline reservations for other information .if you want to go to any international or domestic destination with American, then make southwebst airline reservations & fly to your desired destination in a hassle-free manner. Book southwebst airline reservations with us to enjoy great saving on your flight.
Monika said…
American Airlines amenities will have you living the high life. In-flight perks like American Airlines entertainment , extra leg room, available food and drinks, make your trip even better than you expected. go to the united airways reservations flight tickets you can fly to your dream destinations at a much affordable price without worrying much about the budget. Book united airways reservations tickets with us to enjoy great saving on your flight.Book American Airlines tickets with us to enjoy great saving on your flight.and go our website for book your tickets united airways reservations

American Airlines is one of the leading US airlines across the world ,American Airlines flight tickets you can fly to your dream destinations at a much affordable price without worrying much about the budget. Book united airways reservations tickets with us to enjoy great saving on your flight.and go to the our website : united airways reservations .
Monika said…
Taking a trip? We have your travel plans covered. Flights; Hotels , american airlines provide you all the facilities ,American Airlines give you great travel deals, discount flight tickets,Airline Reservations go the link cheap airticket for other information .if you want to go to any international or domestic destination with American, then make online tickets booking & fly to your desired destination in a hassle-free manner. Book plane tickets booking with us to enjoy great saving on your flight.

American Airlines amenities will have you living the high life. In-flight perks like American Airlines entertainment , extra leg room, available food and drinks, make your trip even better than you expected. go to the cheap flight ticket airways reservations flight tickets you can fly to your dream destinations at a much affordable price without worrying much about the budget. Book last minute flight tickets with us to enjoy great saving on your flight.Book heap flight ticket booking with us to enjoy great saving on your flight.and go our website for book your tickets united airways reservations .

Monika said…
The Canon printer enhances scan functionality, and includes a robust security feature set. Using a Canon printer service phone, you can get a full installation of the ij.start.cannon printer and go to the installed Canon printer to download the ij.start.cannon driver. To get more and more information, visit our website ij.start.cannon and get the information according to convenience .
Monika said…
The Canon IJ Network Tool is a free application that allows you to set, view, or configure the printer's network settings that are connected through the network. For more information about this, you can visit our website ij.start.cannon . And using the Canon printer service phone, you can get the complete installation of the ij.start.cannon printer and go to the installed Canon printer to download the ij.start.cannon driver.
Monika said…
Download the Canon printer from ij.start.cannon and set it up on your device. Canon printers are all in one printer that facilitates print, copy and scan. And to download Canon ijsetup printer drivers you can visit our website ij.start.cannon . Canon printers are designed for personal and business use. To learn more about Canon printers, visit our website ij.start.cannon and take advantage.

Using a Canon printer service phone, you can get a full installation of the ij.start.cannon printer and go to the installed Canon printer to download the canon.com/ijsetup driver. To get more and more information, visit our website ij.start.canon and get the information according to convenience .
-/'
Monika said…
You can watch movies and TV shows on the Roku channel such as hit hits movies, popular shows, live news, sports and you can activate it by visiting roku.com/link . But to do this you must follow certain conditions of Roku. To get more information about this you can visit our website roku.com/link . Our Roku team is available to help you at all times. You can contact the Roku team at any time at roku.com/link and can benefit.
Monika said…
Before enjoying the Hulu service you should subscribe to hulu.com/activate and hulu device activation code to service your Hulu account. To see all your favorite content online from hulu.com/activate enter the activation code to enter the code for hulu activation on your device. You will find this code on your registered email id. For more information, visit our website hulu.com/activate and get the information as per your convenience.
Monika said…
Log in to the Norton website norton.com/setup to get the Norton Product Activation Key. You can select Norton service at norton.com/setup for which you need a product key. You can find it under the My Subscriptions tab. Safely copy and note the given product activation key. You can get information by visiting our website norton.com/setup . Norton Antivirus has many features and benefits for you.
Monika said…
Enter avg retail activation code to install and activate your avg.com/retail instantly and download avg to visit : avg.com/retail AntiVirus is designed to keep critical data and files safe, private, and out of the hands of hackers.download and install avg ultimate ,If you need it, immediately download the Avg Activation Code.To download and install avg ultimate avg.com/retail install and activate your avg antivirus software instantly.
Monika said…
If you want to take full advantage of your Amazon Prime account please link it to your TV and thank us later. Simply head on over to primevideo.com/mytv
Monika said…
Be sure to install cartridges, load paper and power on the printer. Download the 123.hp.com/setup to get the recommended software for your printer. We will help you download the correct HP printer software and drivers. Which includes Windows, MacOS, iOS and Android. You can then install your 123.hp.com/setup . For installation of drives, you can take help of our website 123.hp.com/setup and enjoy.
Monika said…
Let's activate xfinity device. Visit xfinity.com/authorize from another device such as a mobile phone, tablet, or desktop. From the web browser, enter the six-digit xfinity stream authorized code provided to the Roku device. And stream your favorite shows and movies anytime, anywhere with Xfinity Stream. Watch TV series and top rated movies live by authorizing or certifying Xfinity TV.Install xfinity.com/authorize Stream on your Roku streaming device. Download Xfinity Stream on Roku and activate xfinity stream on roku. And stream all your 200+ channels. To learn how to activate xfinity on Roku TV setup ,visit our xfinity.com/authorize website. You can activate your device online. And switch it by connecting it to your Internet, voice and TV device. If you want to activate in this easy way, then you go to xfinity.com/authorize activate and enjoy it.
Monika said…
Let's disneyplus.com/begin activate and enjoy it. With which you can watch full episodes of your favorite Disney Junior and Disney XD shows, on the Disney Channel. Apart from watching movies, video clips, you can also play games.Here’s How to Use disneyplus.com/begin . If you want to know more about it then you can visit our website disneyplus.com/begin and take advantage of it.

If you want to know more about it then you can visit our website disneyplus.com/begin and take advantage of it. Click Here for the DisneyPlus.com Login: Sign In to Disney+ If you’ve been using Disney Plus on your iPhone or Samsung TV but now want to use it on your TV, then you need to know the disneyplus.com/begin page. Thankfully, it’s super easy to get to, and I’ve got all the details for you below. Here’s How to Use disneyplus.com/begin .
Monika said…
Disney Plus is one of the most popular streaming services in the world right now. You can go to disneyplus.com/begin and activate your disney now for watching TV shows and movie ,you can also play games. you can also disneyplus.com/begin to watch disney channel With which you can watch full episodes of your favorite Disney Junior and Disney XD shows . for more details Here’s How to Use disneyplus.com/begin .

Are you the proud owner of a Disney+ Subscription Card? You’re enjoying all the best stories in the world, all in one place. You can go to disneyplus.com/begin and activate your disney now for watching TV shows and movie ,To activate your Disney+ Subscription card, please follow our website disneyplus.com/begin .If you want to know more about it then you can visit our website disneyplus.com/begin and take advantage of it.

Popular posts from this blog

Draft 3 of, ^Let's write a unit test!^

Is PostgreSQL good enough?

post modern C tooling - draft 6