17 Best Apps to Use a Raspberry Pi as a Desktop PC


Finding good apps that work on Raspberry Pi is important if you plan on using it as a replacement for your desktop computer.
I used my Raspberry Pi as a desktop PC for two days prior to writing this article.
This article explains which apps I found useful when replacing your main computer with a Raspberry Pi.

CategoryBest application
Email clientThunderbird
GraphicsMyPaint
DevelopmentVisual Studio Code
Web browserVivaldi
OfficeLibreOffice
ConsoleTerminator
Printers managementCUPS
MoviesVLC
MusicQMMP
Instant messagingEmpathy
Recommended apps on Raspberry Pi

This list was created according to my needs after two days of using a Raspberry Pi as a desktop computer.
You might know some of these apps already, but I’ll introduce each with a picture and a short description explaining why you need it on your Raspberry Pi

I have written a complete tutorial on how to install new apps on Raspberry Pi, feel free to read it first, especially if the apps you are interested in aren’t available with traditional methods.

If you need help getting started on Raspberry Pi, I have an entire course to guide you through your first steps. I’ll help you use the perfect hardware, plug everything in and install your first system. You’ll also do your first project with me, just to make sure you are ready for the next level. Get all the information on this page if you are interested.

Synaptic

x
Best retro-gaming solution
Download the Pi Glossary!
If you are lost in all these new words and abbreviations, request my free Raspberry Pi glossary here (PDF format)!

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

You can see all Raspberry Pi OS packages on one page, browse by categories or search for specific words.
And mainly you’ll get all menus on the top bar, a thing that we don’t have on the default software.
It allows 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 don’t need this tool. However, for desktop usage of the Raspberry Pi I will give you mainly graphical software.

Before installing any apps, make sure you are using a fast SD card with enough space to keep everything. I don’t know about you, but I hate having to start all over again because I didn’t choose my materials. If you are not sure if your SD card is good enough, you can check my benchmark of the best SD cards here. I have compared them all, and I give you the best recommendation.

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 the main shortcuts at the bottom of the screen (you can 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 install xfce4
  • 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 can 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 can do this in the Applications menu > Settings > Appearance.
  • If you want to stay on this desktop environment, you can uninstall the default one to free space on your SD card if needed:
    sudo apt remove lxappearance lxde lxde-* lxinput lxmenu-data lxpanel lxpolkit lxrandr lxsession* lxsession lxshortcut lxtask lxterminal sudo apt-get install pistore
    sudo apt autoremove
    sudo apt 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.

Anyway, you can check my tutorial here on how to install any desktop environment on Raspberry Pi if you want to try other ones.

Guake Terminal
guake terminal

Guake is a terminal that 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 comes in the foreground, if you hit F12 again the terminal disappears (but keeps running).

It’s okay to let something run behind, like an error log display of 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 (Don’t know what htop is? Check my command cheat sheet here).

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, which is not the best to browse the menu and find the terminal.
So Guake helps me a lot with 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 can 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 can 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 simultaneously.
You can split windows, close them or add a new one. You can also 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.
If you master the commands that any Raspberry Pi users should know (check my shortlist here), you’ll love this tool.

Vivaldi

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 can’t make this choice.
It will depend on your needs and habits.

On my first test, Vivaldi seemed quicker than Chromium or Firefox, so I used it for a few hours.
But in the end, I re-compared everything, and it wasn’t so obvious.

Anyway, I think you can 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 that I have all my preferences saved in the cloud (bookmarks, extensions, passwords, …).

Note: To install it on your Raspberry Pi, you can get the package here (choose Linux ARM 32 bits).

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 Raspberry Pi OS.
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 many extensions that are 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 run out of space.
Try to use IMAP if possible and sync only the most essential folders on your Raspberry Pi.

By the way, a Raspberry Pi can also host your email server, check my tutorial here if you are interested in this project.

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 everyone in the same software.

I like Empathy because it’s a light app and well-integrated with Raspberry Pi OS.
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 can use another software like Pidgin.

For video conferences, you can also install Zoom on Raspberry Pi. I explain everything in this post.

Filezilla
filezilla

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

As with any file transfer client, you’ll have a source repository on the left (you generally), and the destination server on the right (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 them 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 can 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 can manage cool things like default actions on transfer, concurrent 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 you download files legally.
For example, Raspberry Pi OS 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 many 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 are an exciting couple.
If you have many 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.

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 on most platforms, including 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 almost anything.

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

If you are using your Raspberry Pi mostly as a media center, a better solution like Kodi might be considered. You can learn more about Kodi on this page. You can access YouTube, Netflix, and other streaming services by installing a few plugins (list here).

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 similar look 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?

If the main usage of your Raspberry Pi is a music player, I would recommend taking a look at these other options I have tested here.

MyPaint
mypaint

I don’t like GIMP at all.
Generally, I use Photoshop (with Windows or Wine) or Krita (on my Ubuntu computer).
I use these tools to make quick modifications to pictures like adding text, resizing, or cropping.
And with GIMP, every time I tried, I lost a lot of time with its dumb interface :).

So on Linux, I usually install Krita to do this, which is an excellent tool for these kinds of small edits.
But Krita isn’t available on Raspberry Pi OS, 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 the 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.

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 can 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 can also install LibreOffice on any other computer if you want).

Zim

I used to recommend CherryTree to take notes with a desktop app, but it’s more complicated to install it (it’s no longer available in the repository) and Zim is now a great option.

Obviously, it’s only useful if you want to avoid using online tools like OneNote, Evernote, Google Keep, or other alternatives. I tend to prefer them as it’s all synced with my other computers, phone, and tablet. But it’s your choice, I understand that you might prefer to keep your data away from these giant companies :).

Anyway, Zim does an impressive job at this, you can create unlimited pages and subpages, all the formatting is available as with other similar tools. The only thing I haven’t found is how to resize images, maybe it’s possible, if not, you may have to use a tool like “MyPaint” first.

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 a ton over two days, but it seemed to work 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 can categorize each transaction, add notes, make your bank reconciliation, etc.

Your data is easy to export, so it won’t be lost.
You can 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 can keep this app.

CUPS
cups printer manager

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

CUPS is a web interface to manage printers.
You can add a printer on the network or a USB plug.
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 is installed, go to http://localhost:631 to use the interface.
The default login is pi and the password is the same as your current system password.
All the configuration is in /etc/cups/cupsd.conf if you need to change something.

If you want to learn more about CUPS, I have a detailed tutorial available here.

Microsoft Visual Studio Code

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 most of the same features as 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-day 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

Visual Studio Code is now available directly in the “Recommended Software” tool. You can install it easily now, no need to install it from sources or a random GitHub project.

After the installation, you’ll find the shortcut in the main menu, under “Programming”.

Visual Studio Code is not the only option. You can find my top text editors in this article. And I also have dedicated blog posts for PyCharm and Geany if you want to learn a few tips about them.

Need more?

Maybe these apps were too obvious to you, here is a video where I introduced 21 other apps that most people don’t know!

Final thoughts

Get My Cheat Sheet!
Grab your free PDF file with all the commands you need to know on Raspberry Pi!

My two-day test using my Raspberry Pi as my primary computer ended with a mixed opinion.
On 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 a single task (even multi-tab browsing was a pain).

So yes, you can give a Raspberry Pi to a kid or someone who doesn’t often need a computer.
I think for example for 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 can be useful and save money.
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.
By the way, Raspberry Pi Imager is also a great app you can install on your Raspberry Pi, especially if you don’t have a computer (click the link to read my tutorial about it).

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

If you have any comment, suggestion or just want to chat with us about this tutorial,
you can post your messages in the community on Patreon. See you there!

Raspberry Pi Resources

Not sure where to start?
Understand everything about the Raspberry Pi, stop searching for help all the time, and finally enjoy completing your projects.
Watch the Raspberry Pi Bootcamp course now

Master your Raspberry Pi in 30 days
Don’t want the basic stuff only? If you are looking for the best tips to become an expert on Raspberry Pi, this book is for you. Learn useful Linux skills and practice multiples projects with step-by-step guides.
Download the e-book

VIP Community
If you just want to hang out with me and show your support, you can also join the Patreon community. I share behind-the-scenes content there and give you early access to my content. You’ll also get a shoutout when you join.
More details here

Need help to build something with Python?
Create, understand and improve any Python script for your Raspberry Pi.
Learn the essentials, step-by-step, without losing time understanding useless concepts.
Get the e-book now

You can also find all my recommendations for tools and hardware on this page.


This tutorial doesn't work anymore? Report the issue here, so that I can update it!


Patrick Fromaget

I'm the lead author and owner of RaspberryTips.com. My goal is to help you with your Raspberry Pi problems using detailed guides and tutorials. In real life, I'm a Linux system administrator with a web developer experience.

Recent Posts

Master your Raspberry Pi - 10% off