Operating Systems for every Raspi use case
A Raspberry Pi OS for everyone: the Pi supports many different operating systems. In this article, you will get an overview of popular OSes for the Raspi, and which OS you should choose for your project / use case.
TL;DR: For beginners and most use cases Raspberry Pi OS (previously called Raspbian) is a good choice. Click on the buttons below to quickly jump to the operating system you are interested in, or read on for an introduction.
What is an Operating System on the Raspberry Pi ?
We have written previously about what a Raspberry Pi is. The Raspberry Pi needs an Operating System (or OS in short) to run. What is an Operating System?
Every computer executes code. To allow programmers to focus on just the functions they add, and benefiting from a common infrastructure, some software developers and companies / communities have specialized on developing a software foundation for all other software to work on. This foundation is called operating system. It provides all the necessary plumbing, connections & settings, to allow all other applications to go about their every day work.
For example, you can use Google Chrome to browse the web, look at web pages, shop online, connect with friends through Facebook, and so on.
Google Chrome needs a way to display this information to you – it talks to the operating system (Raspberry Pi OS, which is a variant of Debian – more on that later) to display this to you (to know which screen, which resolution, etc.). Also it needs to take user input from you – mouse movements, keyboard input. Finally, it needs to access some files on the system – cache files and so on. The Raspberry Pi OS (previously called Raspbian) supports all these functions, Chrome can simply “call” OS code to deal with what it needs, instead of having to have code for everything. Other applications can benefit from the same code.
The desktop environment is part of the operating system – the part you can see. But there’s lots more happening under the hood. (And PiCockpit helps you to visualize this with an easy web interface for the Raspberry Pi!)
Which OS should I use on my Raspberry Pi?
We have established already that the operating system for your Raspberry Pi is the base of every other application which will run on it.
Therefore, the choice of the right OS for your Raspberry Pi is important. It will depend upon what you want to do with your Raspberry Pi. In this article I’m giving you an overview of the most common operating systems on the Raspberry Pi. This will possibly even inspire some project ideas, so you can learn new things you can do with a Raspberry Pi 🙂
Luckily, experimenting is really easy: a different operating system is just one additional microSD card away – you can even install several operating systems on one SD card, and choose at boot time which OS you want, with NOOBS.
NOOBS stands for “New out of Box Software”. It is not an operating system per se, but a multi-boot environment for several operating systems. NOOBS is a good choice for beginners, because it will allow you to easily re-install the operating system if you ever break something by accident.
The first time you boot into NOOBS you will get an installer screen, allowing you to choose the operating system you would like to run on your Raspberry Pi. To get into NOOBS again, reboot your Raspberry Pi and press the shift key (and keep it pressed). This will allow you to reinstall the operating system.
You can get NOOBs here from the Raspberry Pi download page.
Which other operating systems does NOOBS support?
Here is a complete list of currently supported operating systems by NOOBS:
How can I set up an operating system on my Raspberry Pi?
We suggest to use the Raspberry Pi imager. Read more about it in our Raspberry Pi overview article.
Read on to find out more about the different operating systems available for your Raspberry Pi.
Raspberry Pi OS
Raspberry Pi OS, previously called Raspbian, is the standard operating system for the Raspberry Pi.
Note, it can be a bit confusing when talking about operating systems in general, as these are also abbreviated to OS – usually Raspberry Pi OS will mean the Raspberry Pi provided operating system.Raspi Berry clarifying misunderstandings
I recommend Raspberry Pi OS in combination with NOOBS for people who are starting out with the Raspberry Pi.
This modern OS is based on Debian, and supports most functions and applications you would expect from a computer:
- surf the web using Chromium
- listen to audio files & watch movies using VLC
- create documents and use spreadsheets, using LibreOffice Writer and LibreOffice Calc
- develop Python code using Thonny or use the Geany IDE for a wide support of programming languages
- learn how to code using Scratch
- send e-Mails using the Thunderbird email client
- play retro games (if you want to manually install retropie)
and many more.
Raspberry Pi OS is also a great way to get started with the GPIO pins on Raspberry Pi, running a server of any kind (print server / web server / file server / SAMBA server).
You can also run the very popular Pi Hole network-wide ad blocker on Raspberry Pi OS.
For a lot of these applications, separate, specialized Raspberry Pi OSes exist. It’s a bit like with tools: all-in-onetools can be used, and you can use this one tool for many purposes. But if you really need a job well-done, you should opt for a specialized operating system. Be sure to finish reading this article to get a good overview!
Download Raspberry Pi OS
You can download Raspberry Pi OS from the official Raspberry Pi website.
The 32-bit versions (the default versions) will work fine with any Raspberry Pi model. The 64-bit version of Raspberry Pi OS is only required for special use cases (and possibly only really useful for the Raspberry Pi 4, which has more than 1 GB RAM). The 64-bit version will not work with earlier Raspberry Pi models (Pi Zero W / Raspi Model 1 B / Raspberry Pi 2), as these have a different CPU instruction set architecture (aka ISA) (ARMv6 / ARMv7).
If in doubt, go with the 32-bit versions.
Which Raspberry Pi OS should I choose?
Raspberry Pi OS (32-bit) with desktop and recommended software
This version is the biggest one, takes the longest to download. It includes a lot of software out of the box, though. If you have a big SD card (16GB+), and a fast Internet connection, go for this one.
Raspberry Pi OS (32-bit) with desktop
If you want to use a comfortable desktop environment (as you are possibly used to from Windows or MacOS), but do not need the extra software, go for this one.
Raspberry Pi OS (32-bit) Lite
The lite version does not include the desktop. If you know your way around a terminal and SSH is not a gibberish word to you, and if you are looking for the smallest possible Raspberry Pi OS version, download this one. Ideal for running headless servers.
As mentioned before, for beginners we recommend to start with NOOBS (which contains Raspberry Pi OS aka Raspbian). Download NOOBS here.Raspi Berry’s Raspberry Pi tips
PiCockpit for Raspberry Pi OS: your handy web interface for remote access of your Pi
PiCockpit currently only supports Raspberry Pi OS (and derivatives, like DietPi). With PiCockpit, you’ll be able to manage, control and monitor your Raspberry Pi from anywhere using a web interface:
If you want to use PiCockpit and the functionality it has to offer, I therefore recommend for you to go with Raspberry Pi OS.Raspi Berry’s helpful Raspberry Pi and PiCockpit tips
LibreELEC is an OS specialized for media viewing on TVs. For this particular purpose it is one of the most popular operating systems on the Raspberry Pi.
LibreELEC consists of a plethora of plugins, allowing you to:
- stream videos (for example from YouTube)
- listen to music (stream music, from online radio channels, or play back files you have saved on your hard drive or on a network server in your network)
- check the weather
- play retro games
- remote control LibreELEC playback, from your smartphone
These plugins can be installed easily from within LibreELECs interface.
“Just enough OS for KODI”: LibreELEC is based on the KODI project, which is a community effort to develop a media center application. KODI needs an operating system to run on. LibreELEC packages the KODI code and adds just enough additional Linux code for KODI to run.Raspi Berry’s Raspberry Pi explained
LibreELEC is very suitable if you want a home entertainment center, based on the Raspberry Pi. We recommend for you to use the Raspberry Pi 4. Be sure to check out the FLIRC case as well, because the Pi 4 will work better with it.
If you want to surf the web, write documents and learn how to code, you should opt for Raspberry Pi OS, however.
You can download LibreELEC here. Scroll down to “Direct downloads” and click on Raspberry Pi:
This will filter the list and show you only the Raspberry Pi downloads. Now choose the Raspberry Pi model you have, as LibreELEC has optimized versions for different Raspberry Pis. (The Raspberry Pi 4, for example, supports H.265 / HEVC decoding in hardware, while others do not).
The best Raspberry Pi for LibreELEC
As a media center, the Raspberry Pi 4 is the best choice, due to it’s processing power and hardware support of H.265 / HEVC. We recommend the FLIRC case to go along with it and improve the performance.
OSMC, like LibreELEC, allows you to run your own media center on the Raspberry Pi. As of now, it does not support the Raspberry Pi 4, which would be the optimal choice for a media centre. Therefore I recommend you to look at LibreELEC if that is what you want to do with a Raspberry Pi.
OSMC is a successor to Raspbmc. Like LibreELEC it is also based on KODI.
OSMC for Raspberry Pi 2 / 3 / 3+ and Pi 1 / Zero / Zero W can be downloaded here.
Recalbox is an open source retrogaming console application. You can play old games with it (if you happen to have the ROMs), such as NES, MEGADRIVE, Playstation, and Nintendo64 on your Raspberry Pi.
Lakka is another Retrogaming solution, built upon the RetroArch emulator.
Download Lakka here. To see the Raspberry Pi 4 version, you need to scroll way down. You’re welcome 🙂
This is possibly the oldest Operating System included here. Together with Microsoft’s Windows 10 Core IoT it is also the only one not based on Linux.
RISC has a long history which is also related to the Raspberry Pi . RISC OS was also the very first operating system to run on the ARM chipset.
It is mostly of interest for historical purposes, but still being developed by the RISC OS Open Group.
Download RISC OS
Download RISC OS here. It supports all Raspberry Pi models currently on the market (Compute Module 4 is not mentioned explicitly, but it supports the Pi 4 Model B).
Screenly OSE (Open Source Edition) is free digital signage software. You can display 1080p Full HD images, videos and live web pages with it.
Screenly also have a paid edition, which will allow you to manage the Raspberry Pis.
Download Screenly OSE
If you know what a Thin Client or Digital Signage, or an IoT Gateway is, and want to build one based on a Raspberry Pi, this system is for you. Note that you will get a 30 Day Free Trial – a TLXOS licence costs $5 to $10, depending on your Raspberry Pi model.
Thin Clients allow you to access remote servers, which do the processing, and to display their output and take local input and send it to the server. TLXOS is compatible with Citrix HDX, VMware Horizon and Microsoft RDP.
Note that you will also be able to achieve some success using Raspberry Pi OS and open source software (free of charge) to create a thin client. For mass installations, TLXOS might be more convenient and feature-rich, though.
Digital Signage means to display slideshows, videos or static image, or other information. The Raspberry Pi is used as an output-device only. Again, this functionality can be achieved for free by modifying Raspberry Pi OS, but if you want a quick and easy solution (and also one that scales), TLXOS might be a good choice.
IoT Gateways usually connect sensors and bluetooth devices to the Internet (IoT is short for Internet of things). The Raspberry Pi serves as an intermediate node to allow these devices to pass on their data.
TLXOS is developed by ThinLinX Pty Ltd, an Australian company.
Alpine Linux is a bare-bones Linux distribution focused on having a small size and good security. You will get only the essentials you need, and install all other packages which relate to your project.
Alpine Linux is frequently used as the base operating system for Docker container images. An important technical point to note is that Alpine uses busybox and musl as its libc (not glibc).
We use Alpine Linux for embedded development. Contact us, if you need consulting or development services for the Raspberry Pi platform. We offer both software and hardware development, and can assist your supply chain by procuring the actual Raspberry Pi hardware.
Download Alpine Linux
You can download Alpine Linux for Raspberry Pi here. Make sure you select the right architecture (aarch64 / armhf / armv7).
SuSE is a German company offering a free (OpenSUSE) and a commercial Linux version (SLES – SuSE Linux Enterprise Server) for the Raspberry Pi.
Download SuSE Linux
OpenSuSE supports aarch64 (Raspberry Pi 4), but not other Raspberry Pi architectures. Download it here.
If you want the newest packages and to participate in SuSE development, have a look at OpenSuSE Tumbleweed. Other users should go with Leap.Raspi Berry’s helpful SuSe tips
Windows 10 Core IoT
This variant of Windows is provided by Microsoft for the Raspberry Pi. However, it will not allow you to run “classic” desktop applications, like Microsoft Word or Excel on the Raspberry Pi.
Windows 10 Core IoT is designed for companies who want to run code on the Raspberry Pi and build their own IoT devices (also called “embedded operating system”). Note that Windows 10 Core IoT is free for evaluation, but you need to buy a commercial licence from Microsoft to run it for commercial purposes (such as, for example, vending machines).
If you are looking for a company to develop embedded software and hardware solutions for you, please get in touch with us:
There are some users who have managed to run other (desktop) variations of Windows on the Raspberry Pi. If classic applications will start on the Pi, however, they will be very slow – as most Windows applications are optimized for a different CPU architecture (x86) than the Raspberry Pi (ARM).
Thus, they need to be emulated – imagine if someone spoke Spanish, and to understand them, you need to have another person take everything they say, and everything you say, and translate it. The conversation would be much slower – and this is the same case for emulation.
Download Windows 10 Core IoT
Note, there is no version for the Raspberry Pi 4 currently. The last release for the Raspberry Pi happened in October 2018.
Raspberry Pi 4 EEPROM boot recovery
Raspberry Pi Imager also allows you to choose “Misc utility images” (EEPROM recovery, etc.). Scroll down in the list of operating systems to see it:
Click on “Misc utility images” to see the Raspberry Pi 4 EEPROM boot recovery image, with the text “Use this only if advised to do so” beneath it:
This is not an operating system proper, it is a helper utility.
The Raspberry Pi 4 has an additional boot stage (an EEPROM) which allows it to add additional boot capabilities in the form of software updates. Sometimes there are problems with this EEPROM, and it needs to be rewritten.
Therefore, if your Raspberry Pi does not boot from SD cards which are known to have a good and compatible operating system on it, you can try this Raspberry Pi 4 EEPROM boot recovery image as an effort to reflash the EEPROM.
This will not be of any use to other Raspberry Pi models (Pi Zero / Pi 1 / Pi 2 / Pi 3).
Many different Raspberry Pi operating system variants exist. For many users Raspberry Pi OS (which can be installed with the help of NOOBS, for example) will be the perfect choice, as it allows you to do most things quite well.
If you are into home entertainment systems, you should have a look at LibreELEC, instead.
Windows on Raspberry Pi is not a thing yet, you should look into the Linux-based Raspberry Pi OS and software alternatives, instead.
Which Operating System do you like to use on the Raspberry Pi? What are your experiences and recommendations? Comment below to share your wisdom with us 🙂