Your Raspberry Pi has lots of applications already installed, like Minecraft, Mathematica, and the browser.
And there are a lot of 'libraries'. Linux programmers don't like writing code when they can use code that other people have already written and tested, so there are lots and lots of 'libraries' that have been written and shared by applications. Unless you are going to develop your own applications, you probably don't need to worry about these.
But what you probably do want to know is 'what is installed on my Pi' and 'what else can I install'.
Obviously, you can find out what is there by looking at what is in the Menu, under the headings of 'Programming', 'Internet' , 'Games', and 'Accessories'.
You can find out what else is there by running the following command in a terminal window:
The list will probably scroll off the screen, and most of it is unlikely to mean anything to you! Don't worry - there's more.
The Raspberry Pi Foundation has created the 'Pi Store', similar to the Play Store or App Store on your phone. You'll find it under the Internet Menu when you're running the GUI on the Pi. There are a few applications that have been written by the Pi community, but this is only a really small selection of what is available.
There are two ways to install more applications, or 'packages' as they are called in the Linux world. One is via the command line ('apt-get', in a terminal window), while the other has a user interface. We're going to do the latter using 'synaptic'.
First, we're going to have to install 'synaptic'. Open a terminal window and type the following:
sudo apt-get install synaptic
Answer 'yes' to any questions that are asked during installation.
You need to be in the Desktop mode on your Pi. If it is not started, start it with 'startx' in the terminal.
Synaptic is started from the Preferences menu:
You will be prompted for a password as Synaptic needs to run as the 'root' user 'pi'. The default password is usually 'raspberry':
You'll see a list of packages on your Pi that can be installe, but first we need to update the list of packages to the latest ones. To do this, choose 'Reload Package Information' from the Edit menu, or press 'Ctrl+R':
This may take some time, so be patient.
The packages are split into sections, starting 'Amateur Radio', 'Base System' etc.:
While you are there, you might as well upgrade what can be upgraded to the latest version, by clicking on 'Mark All Upgrades':
The upgradable packages will be listed. Just press the 'Mark' button to mark them for upgrade; note that the upgrade is not done right away:
Now comes the interesting part! You can scroll through the sections on the left looking for interesting packages to install. Most should install without problem, but you may find that some do not run on your Pi. To install a package, click on the tickbox on the left of the name:
In the next menu, select 'Mark for Installation':
Additional 'dependency' packages may be required, so they will be listed. Click on 'Mark':
Once you have selected all the packages you want to install, click on the 'Apply' button at the top:
You will be given a summary of what will be installed. Click on the 'Apply' on that screen to finally download and install the packages:
And that's it!
Any package that has a UI will be listed under the Pi's desktop menu
Remember, the Pi is a pretty good computer, but the original Pi with a single core is not a match for a modern Laptop or PC, so things may not run that fast. The Pi2 is much more capable and therefore more likely to be able to run whatever packages you find.
- gimp - the GNU Image Manipulation Program - a powerful Photoshop-like photo package
- arduino - You can program an Arduino connected to your Pi using this IDE (Integrated Development Environment)
- fritzing - A program for drawing electronic circuits
- chromium - the Chrome browser
- apache2 - an advanced Web Server
- calibre - an eBook converter and library management
- libreoffice - an Office suite, containing word processor, spreadsheet, presentation package and more
If you find any other useful packages, please tweet me, @Geeky_Tim, and I will add them to this list.