Get an app on the Raspberry Pi Store – Tutorial
So, you’ve written a game or app for the Raspberry Pi, why not put it on the app store? Here’s how it’s done…
You can download the latest Raspbian image from the our tutorial if you are unsure on this. You’ll only need to go up to the step where you write the image to the SD card. You’ll have to adapt the instructions slightly for using the newer Raspbian image rather than the Debian one.
Recently, the Raspberry Pi Foundation launched an app store in collaboration with IndieCity. In their own words: “We’re launching the Pi Store to make it easier for developers of all ages to share their games, applications, tools and tutorials with the rest of the community. The Pi Store will, we hope, become a one-stop shop for all your Raspberry Pi needs; it’s also an easier way into the Raspberry Pi experience for total beginners, who will find everything they need to get going in one place, for free.”
The app store provides a great opportunity for developers to share their work with as many people as possible, as well charge a small fee for their software should they wish. Our expert is going to be uploading a simple Noughts and Crosses game that he wrote for a previous Linux & User Developer tutorial.
Original content – to upload to the app store
A Raspberry Pi – running the latest Raspbian image with an internet connection
An email address – which you can use to register with the app store
Step by Step
Getting to the app store
The app store runs as an X Windows application, so start up the LXDE desktop environment using the command startx, and then double-click on the Pi Store shortcut on the desktop. The store may take a short while to start because it will need to update its package lists when it first runs.
Logging into the Pi
You need to register before you can do anything on the app store. Click the Log In link in the top-right corner and then click the Register button. Don’t worry, the registration process is hassle-free. You only need to provide an email address, a password and a security question/answer. Once you’ve filled in the required fields, click the Sign Me Up button. Once you’ve done this, you’ll be signed in with an account with a name similar to ‘IndieGamer47601’. You can change your username and upload an avatar for your account by clicking on the blue Edit link and filling in the required fields.
Registering as a developer
Now that you’ve registered as a standard user, you can click on the Upload tab and register as a developer. If you don’t have a company name, you can enter your own name. You also need to provide a contact email address and agree to the terms and conditions of the distribution agreement, which you can read by clicking on the blue Distribution Agreement link. Once you are happy with everything, click the Register button.
Disabling the default Bluetooth plug-ins
You’ll be taken to the Developer page once you’ve registered as a developer. Here, you can fill in information about yourself, or your company, including any public email addresses or a website you may have. Feel free to have a browse around the developer area and fill in any information you like. If you go to the My Company tab, you can upload a company logo and even link your account to social media accounts such as Twitter and Facebook.
Creating a project
Go to the My Games & Apps tab and select the type of project you want to create. Our expert wanted to upload a game so he selected the Game option.
You’ll need screenshots of your application, so before continuing let’s learn how to do that. We’ll be using a program called scrot to take screenshots. You can install scrot using the command ‘sudo apt-get install scrot’. Once you’ve installed scrot, open up your application, and a terminal and type ‘scrot -s’. Then click on your application. Scrot will take a screenshot of the window you clicked on, and save an image file in your terminal’s current directory named by the date and time you took the screenshot.
Filling in the information
Go through the project page and various tabs, filling in information about the application and uploading images. Note that when uploading images, you’ll need to click on the Pi folder to access your files. When filling in the price, set each value to 0.00 if you want to make your app free.
Setting a URL and folder name
Go to the Platforms/Installers tab. The first step is to set a URL and folder name for the project. You need this to continue. Once you’ve set a URL and folder name you are happy with, click the Save button.
Creating a zip file containing the project’s files
Projects are uploaded to the Pi store in zip files. This is because a zip file allows everything required for your program to run to be uploaded as a single file. Our expert made a directory for his project to demonstrate how to create a zip ile containing multiple files – for example, any sounds or images needed by your program. Raspbian doesn’t come with the zip utility by default, so we’ll need to install it using the command ‘sudo apt-get install zip’. Once you’ve done that, you can create a zip archive, as demonstrated below (missing out the creating a folder step if you already have one). The -r flag tells the zip command to recursively add files, which basically means to add files inside directories.
pi@raspberrypi ~ $ mkdir NoughtsAndCrosses pi@raspberrypi ~ $ mv O&X.py NoughtsAndCrosses/NoughtsAndCrosses. py pi@raspberrypi ~ $ zip -r Liam-NoughtsAndCrosses.zip NoughtsAndCrosses/ adding: NoughtsAndCrosses/ (stored 0%) adding: NoughtsAndCrosses/NoughtsAndCrosses.py (deflated 75%)
Uploading the project
Once you’ve filled everything in, and checked that you are happy with the licence that your project will be distributed under, you can upload the files for you project. Click on the Pi link, under the Manage Platforms/Installers section, and select Full Game. Once you’ve done that, select the Upload Installer Files link and upload your zip file. If your application is written in Python, then you need specify that it should be launched with Python. You then need to specify the path to the main executable that you run to start the application. Clicking in the field will show a list of possible files. Once you are happy the form is filled in correctly, click the Confirm Settings button.
Building the game
Once you are happy that you have filled in every aspect of the applications information pages correctly, you can go back to the Manage Platforms/Installers section and select the BUILD button to build the application. The build process should only take a few seconds.
Testing your build
Select the Download Build option. Clicking on this will take you to your library and download the build that you’ve just uploaded. Double-click on the game, once it’s installed, to test it out.
Submitting your game for approval
If the game runs, then you can go back to the Manage Platforms/Installers section again and submit the game for approval. You can submit the game for both In Progress and Final Approval. The latter means that the game will be in the main store whereas In Progress approval means that the game is not marked as finished yet, but can still be tried out by people if they decide to look through the In Progress section. Our expert submitted his game for Final Approval. Check the box to indicate that you have tested your game. Once you’ve filled in the information, click the Submit button. If you have uploaded an improved version of your game, you can write information about any bugs that you have fixed, or new features. You will receive an email to notify you that the game has been submitted for the community approval process.
The waiting game
The community approval process may take a few days. Our expert’s game was on the store within three days of submitting. As long as you haven’t uploaded any copyrighted content and your game works, there should be no problem getting your app into the Pi Store. You’ll receive an email when your application has been through the community approval process.