best raspberry pi desktop apps

17 best Raspbian apps to use a Raspberry Pi as a Desktop PC

I’m not cheating on you guys; I used my Raspberry Pi as a desktop PC during two days for you
And I’m even writing this article from the Raspberry Pi 🙂
This post will explain to you which apps I’ve found to be useful in order to use the Raspberry Pi as your main computer

What are the best apps for Raspberry Pi?
It’ll depend on your needs, but here are the must-have apps by category:

  • Multimedia: QMMP
  • Internet: Empathy
  • System: Guake Terminal
  • Office: LibreOffice
  • Development: Microsoft Visual Studio Code

This list was created according to my needs after two days of use of the Raspberry Pi as a desktop computer

Maybe you already know some of them, but I’ll introduce every app with a picture and a short description, explaining why you need it on your Raspberry Pi

Introduction

Before starting the apps list, I remind you that you have two ways to install software on Raspbian:

  • Either in the command line:
    sudo apt-get install <package-name>

    You need to replace <package-name> with the software name, most of the time it’ll be the paragraph’s title
    If you don’t find it, you could do a package search with this command:

    sudo apt-cache search <search-string>

    It’ll display all packages name matching your search string

  • Or with the package manager:
    • Go into the Applications menu
    • Open the System submenu
    • Click on Add/Remove software
    • In the window that opens you have two possibilities:
      • Either use the search tool on the top left to find a package
      • Or use the category browser to list all apps from a category
    • Once you have found your package, check the box next to the package name and click the Apply button in the bottom

For some of the apps, they are not available in these packages list, so I’ll give you the installation procedure step by step
And the first app of this list in an alternative desktop manager you could use to install the other apps

System

Synaptic
synaptic packet manager

Synaptic is the Debian package manager. It will help you find and install new software on your Raspberry Pi
It’s an equivalent to the default “Add/Remove Software” with more features

You could see all Raspbian packages on one page, browse by categories or search for a specific word
And mainly you’ll get all menus on the top bar, a thing that we don’t have on the default software
It will allow you to add repositories, customize the tool or to use a script to download packages automatically from a previous installation

If you always use the apt-get command to manage your packages, you’ll not need this kind of tool, but for desktop usage of the Raspberry Pi I will give you mainly graphical software

XFCE4
xfce4 on raspberry pi

The old-school default desktop environment was not for me.
If I have to use the Raspberry Pi as my computer, I’ll install a better interface

I have chosen XFCE4, but depending on your needs,  other possibilities exist

I think XFCE4 is a good balance between performances and design, so I start with this one
You’ll get the applications menu on the top left (I like that) and a dock with main shortcuts at the bottom of the screen (you could customize it as you want)

The installation process is not natural, so I’ll give you all the steps:

  • Firstly, you need to install xfce4 and xfce4-all packages
    You can use your packages manager to do this (synaptic or the default one), but here is the apt command to do the same:

    sudo apt-get install xfce4 xfce4-all
  • Then you have to set XFCE as the default desktop environment
    Open a terminal and type this command:

    sudo update-alternatives --config x-session-manager

    You’ll get a result like this
    session manager raspberry pi
    If you get the same, enter the xfce4-session ID (6 in my case)
    This command will set XFCE as the default desktop environment on the next boot.
    You could use this tool again to come back to LXDE as default if you don’t like XFCE

  • Reboot your Raspberry Pi and give a try
    It’ll start directly on XFCE4
    Check that everything is fine
    On my screenshot I have changed default colors, you could do this in the Applications menu > Settings > Appearance
  • If you want to stay on this desktop environment, you could uninstall the default one to free space on your SD card if needed:
    sudo apt-get remove lxappearance lxde lxde-* lxinput lxmenu-data lxpanel lxpolkit lxrandr lxsession* lxsession lxshortcut lxtask lxterminal
    sudo apt-get install pistore
    sudo apt-get autoremove
    sudo apt-get autoclean
    sudo reboot
    
    

     

If you prefer another desktop environment, have in mind that the Raspberry Pi is not a powerful computer
As we’ll see in conclusion, you may have performances issue, so choose what you want, but prefer a light environment

Guake Terminal
guake terminal

Guake is a terminal which works like any terminal
But you can call it with a key, and hit hide with the same key
So if you hit F12 the drop-down terminal come in the foreground, if you hit F12 again the terminal disappears (but keeps running)

It’s perfect to let something run behind, like an error log display of a real-time information
I often use this to display htop in Guake (process list and system load).
Every time I had slow performance, I just hit F12, and hop, htop appeared

This tool is particularly useful on a Raspberry Pi when you don’t always have a good mouse
Usually, I have a good Bluetooth keyboard (see my recommended products page), but it’s a tactile mouse on it, not the best to browse the menu and find the terminal
So Guake help me a lot for this

I didn’t say it, but you have to start it first in the Applications menu > Accessories > Guake terminal
Guake will run in the background until you call it with F12
You could also click on the system tray icon to open it

Terminator
terminator multi terminal

Terminator is a multiple terminals manager that allows you to add and close terminals in a grid
Guake is good for one command running behind, but Terminator is useful during active work

For example, if you install WordPress on your Raspberry Pi (or wherever), you could have a window displaying logs, one in the apache folder for the configuration and another in the www folder for wordpress configuration

Rather than switch seamlessly between windows, Terminator allows you to display them all at the same time
You can split windows, close them or add a new one. You can resize any windows
Simultaneous typing is also possible, as well as grid export

It’s a great tool on Linux. I often use it for complicated things

Internet

Vivaldi
vivaldi web browser

Vivaldi is a good web browser, fully compatible with your Raspberry Pi
I’ll introduce this one because you probably already know the alternatives: Chromium and Firefox

This browser is developed by Vivaldi Technologies, a company created by the former CEO and co-founder of Opera
So if you are familiar with the Opera browser, you’ll not be lost with Vivaldi, they have kept the favorite features from Opera

Ok, but why should I install Vivaldi rather than Chromium or Firefox?
It’s a good question. I was not able to make this choice.
It will depend on your needs and habits

On my first test, Vivaldi seemed quicker than Chromium or Firefox, so I use it for some hours
But at the end I re-compared everything and it wasn’t so obvious

Anyway, I think you could use the browser you want. They all have similar features
And most of the time, I think you will keep the one that you usually use

If I had used the Raspberry Pi as my computer longer, I would have taken the browser on which I have all my preferences saved in the cloud (bookmarks, extensions, passwords, …)

Thunderbird
thunderbird email reader

I’m not a big fan of email clients.
I usually prefer webmail like Gmail or Outlook.com
But if you want to use your Raspberry Pi as your desktop PC, you may need one

Thunderbird is one of the best email clients on Linux and is available on Raspbian
You can use it with any email provider (POP/IMAP) and also manage other feeds on it like RSS or newsgroups
By default, there is an integrated calendar, and you can add a lot of extensions, downloadable on this website

Don’t forget that you work on an SD card, so if you have an account with 30G of emails, you’ll quickly get out of space 🙂
Try to use IMAP if possible and sync only the most essential folders on your Raspberry Pi

Empathy
empathy chat client

Empathy is a chat client for the main chat services on the web (Facebook, Google, Jabber, …)
It’s a tool similar to Pidgin, Trillian or Franz Messenger
You add every account you want on your usual services and can chat with every one in the same software

I like Empathy because it’s a light app and well integrated with Raspbian
Appearance and notifications are fine, whatever your desktop environment

If you use services not listed in the default Empathy selection, try to search the community for additional plugins
Or maybe you could use another software like Pidgin

Filezilla
filezilla

Filezilla is a well-known FTP client, but that’s not all

As any file transfer client, you’ll get on the left the source repository (you generally), and on the right the destination server (another computer or server in your network, or on the Internet)
You can manage connections in the site manager
And then you can transfer files with a drag and drop into the other side

On the site manager, you can choose between FTP, SFTP and Storj protocols
SFTP is particularly useful in Raspberry Pi or Linux environments
You could connect to another Raspberry Pi, or from your computer to the Raspberry Pi with Filezilla
That’s how I got all the screenshots of this article 🙂

In the advanced settings, you could manage exciting things like default actions on transfer, concurrents transfers or speed limits

Deluge
deluge torrent client

Deluge is a tool to download torrents on your Raspberry Pi
Torrent is a protocol to download files.
It’s not illegal if your download files legally
For example, Raspbian images are available for torrent download, and often it’s faster than HTTP download

I like Deluge because it’s a simple app at first look, but with a lot of hidden options
So for beginners, just grab your .torrent file and open it in Deluge. The download will start. Done.
For others, you’ll find a ton of features in the app menu, like a web interface or a console manager

Deluge and Raspberry is an exciting couple.
If you have a lot of files to download (or big files), you can manage this with your Raspberry Pi, stop your usual computer, go to sleep and get all files downloaded in the morning
This way you’ll save energy. And the web interface will be great for that.

Multimedia

VLC
vlc media player

I think that everyone knows VLC, but I have to put it on this list
VLC is an open source media player, available in most of the platforms, and so on Raspberry Pi

Take a media file (.mkv, .avi, .mp3/4, …) and open it with VLC.
Most of the time it’ll work, no codecs issues as it can read mostly anything

Then, it’s a classic media player, with all needed options, I don’t have much to add

QMMP
qmmp music play raspberry pi

I don’t really like all the default music players in any Linux distribution
I find that apps like Audacious, Amarok or Rhythmbox have an old-school look and take a lot of space on the screen

QMMP does just what we need: play music, with playlist management and equalizer options
It has a look close to Winamp for those who know.
You can close any section window if you don’t use it

It’s a lightweight app for the Raspberry Pi, which works fine and is available on the default repository
What more could you want?

MyPaint
mypaint

I do not like GIMP at all
Generally, I’m using Photoshop (with Windows or Wine) or Krita (on my Ubuntu computer)
I use this tools to make quick modifications on pictures like adding text, resizing or cropping
And with GIMP, every time I tried it, I lost a lot of time with this dumb interface 🙂

So on Linux, I usually install Krita to do this, which is an excellent tool for this kind of small edit
But Krita isn’t available on Raspbian, so I have to find another tool

I found MyPaint, which seems to do what I want
In a small interface, you’ll get all needed stuff in the main toolbar

Anyway, on hardware like the Raspberry Pi there is no way to install Photoshop or Wine, so you will have to deal with basic software

Office

LibreOffice
libreoffice office alternative

LibreOffice is almost the only decent alternative to Microsoft Office on Linux
I’m not familiar with Office 365. If you have an account, maybe you could use the online version on your Raspberry Pi
But if you are looking for installed software, LibreOffice will do the job

LibreOffice is an entire suite of tools, like the Microsoft one:

  • Microsoft Word => LibreOffice Writer
  • Microsoft Excel => LibreOffice Calc
  • Microsoft Powerpoint => LibreOffice Impress

The interface changes a bit, but globally you should quickly find the main tools on LibreOffice

By default, new files are saved into an OpenDocument format, with a .odt or .ods extension for example
But you can choose to save it as .doc or .xls to keep compatibility with another computer if needed (you could also install LibreOffice on any other computer if you want)

Cherrytree
cherrytree raspberry pi

With a perfect name to run on a Raspberry Pi, Cherrytree is the ideal alternative to Microsoft One Note on Linux
And it runs smoothly on Raspberry Pi.

This app allows you to take notes of everything, create nodes and subnodes to organize them, add images or code in your notes, use all usual font formatting tools and more
You can export your files to backup them or import them into another tool

If you are still unsure, know that you can also import archives from another tool like Zim or KeepNote
Try it without risking anything, and see if it fit your needs 🙂

HomeBank
homebank cash manager

And the last Microsoft Office tool alternative we don’t see is Money
Homebank is a light tool to manage your bank accounts
I didn’t use it deeply for just two days, but it seems to works fine

This tool allows you to analyze your personal finance and budget, with a nice interface, including charts
Most of the time it’s possible to export data from your bank interface and upload it into HomeBank
Then you could categorize each transaction, add notes, make your bank reconciliation, etc …

Your data is easy to export, so it will never be lost.
You could re-import it into any tool of this kind (like GnuCash for example)
HomeBank is also available on Windows, so even if you change your operating system you could keep this app

CUPS
cups printer manager

Printing stuff on Linux has always been complicated, but this tool could help you 🙂

CUPS is a web interface to manage printers
You could add a printer on the network or USB plugged
A list of drivers is already built-in and you can add more if needed

This app will allow you to install a new printer with a few steps on a web interface rather than using a non-intuitive interface or using obscure commands
You’ll even be able to share your printers on your network, even if it’s an old dumb printer without a network port

Once cups installed, go to http://localhost:631 to use the interface
The default login is pi and password is the same as your current system password
All the configuration is in /etc/cups/cupsd.conf if you need to change something

Development

Microsoft Visual Studio Code
microsoft vs code on raspberry pi

Yes, it’s Microsoft, but it’s still a good tool 🙂
I often do code for work or projects at home, and recently I switched from Sublime Text to VS Code for both
It’s free, with mostly the same features than Sublime Text and the ability to add plugins to do everything (direct git or svn management, PHP autocomplete with functions parameters tooltip, …)

If you only need basic features, Geany is already installed by default and will do the job
I used it at work for over a year without problems, so it must be enough for home projects 🙂

So I needed to install Visual Studio Code on my Raspberry Pi during my two days test to use it as my primary desktop pc
It’s possible, but you need to build it from source, so I’ll give you the step by step process here

In fact, after losing an hour trying to build in from source, jumping from issue to issue, fixing packages versions and Raspberry Pi paths, I found another way to install it

The process is more straightforward than expected

  • Download the script
    wget https://code.headmelted.com/installers/apt.sh
  • Change permissions
    chmod +x apt.sh
  • Run it
    sudo ./apt.sh

    In my case, everything works fine, but at the end, I had an apt issue about unsecured packages I fix in the next step

  • Fix installation
    sudo apt-get install code-oss -y --allow-unauthenticated

And it should be ok.
You’ll find the app “Code – OSS” in the Applications Menu > Development

As I made all the prerequisites to build it from source before running this script, I hope it will also work for you
Ask me in comments if you are stuck somewhere

Source: HeadMelted

Conclusion

My test of two days using my Raspberry Pi as my primary computer ends with a mixed opinion
On the one hand, I confirmed that it’s possible to use a Raspberry Pi as a desktop PC
On the other hand, everything is very slow, and overall the Raspberry Pi was only useful for the single task (even multi-tab browsing was a pain)

So yes you could give a Raspberry Pi to a kid or someone who doesn’t often need a computer
I think for example to parents or grandparents. If they check their emails once or twice a week, they don’t need a $500 computer to do this, a Raspberry Pi could be useful and money saving
Also, they usually don’t have the habit of more powerful computers, so “slowness” will not be a problem for them

But for me, I’m pleased to go back to my latest generation pc 🙂
I hope this post will help you to get an honest review of the Raspberry Pi and some ideas for apps to use on it

Feel free to comment if you know other good apps you want to share with us

 

 

Leave a Comment