Discopter Pi Guide

Chapter 1: Picking Your OS and Storage Needs

Most Raspberry Pi kits come with a microSD card preloaded with an operating system. Depending on when you purchased the Pi, and what model it is, the OS installed could be a 32-bit or 64-bit OS. As of the writing of this guide, the latest release is called “Bookworm.” If you purchased/setup your Pi within the past several years, you may have “Bullseye” installed instead. If it's an older Pi (model 3), it may not have even come with an OS and instead shipped with NOOBS, a now discontinued software for installing an OS on a Pi.

Assuming you have a newer model (4 or 5), chances are your Pi will come out of the box with bookworm installed. If it's a Pi 4, it's most likely 32-bit. A Pi 5 will usually ship with a 64-bit OS. Regardless, it's almost certainly the standard Raspberry Pi OS with a desktop environment. The first thing you'll need to decide is whether to stick with the pre-installed OS, or install one different. Below are some considerations.

Bullseye vs. Bookworm

Raspberry Pi OS, formerly known as Raspbian, regularly updates its base to align with the latest stable Debian releases, ensuring users have access to new and improved features. "Bullseye" is based on Debian 11, while the newer "Bookworm" corresponds to Debian 12. If your Pi is more than about two or three years old, there's a chance it's running Bullseye. It's still work, but if you want the latest libraries and features, make sure your Pi is on Bookworm.

32-Bit vs. 64-bit

The choice between a 32-bit and a 64-bit operating system for the Raspberry Pi hinges on several technical and practical considerations. The 32-bit OS, historically the standard for Raspberry Pi devices, is compatible with all models and is optimized for maximum compatibility and stability. It is particularly beneficial for users with older Raspberry Pi models that do not support 64-bit architecture, ensuring that they can still access a full range of software and functionality.

On the other hand, the 64-bit OS, available for newer Raspberry Pi models such as the Raspberry Pi 3 and later, leverages the enhanced capabilities of these devices' processors. A 64-bit OS can handle more RAM effectively — beyond the 4GB limit imposed by 32-bit systems — and can execute more complex calculations and operations faster. This can lead to improved performance in tasks such as data processing, running advanced server environments, or gaming. Furthermore, software that is specifically optimized for 64-bit systems can run more efficiently and stably on a 64-bit OS.

For whatever reason, despite being perfectly capable of running at 64-bits, pretty much all Raspberry Pi 3 and 4 Cana Kits ship with a 32-bit OS. This is especially egregious for the model 4s because they can get up to 8GB of RAM, which you won't be able to leverage on a 32-bit OS. We're all going to be on a 64-bit OS, even if that does introduce some compatibility issues certain applications.

Standard vs. Lite

The Raspberry Pi OS offers two primary variants of its system: the Standard (sometimes referred to as "Full") version and the Lite version. Each caters to different user needs and system requirements, primarily distinguished by the presence or absence of a graphical user interface (GUI) and additional pre-installed software.

The Standard version of Raspberry Pi OS includes a desktop environment (PIXEL), which is based on LXDE. It comes pre-loaded with various software applications such as a web browser, office suite, programming tools, educational software, and other utilities. This variant is ideal for users who are looking for an out-of-the-box desktop experience, especially for educational purposes, software development, and general computing tasks where a GUI is advantageous.

In contrast, the Lite version is a minimal build of the Raspberry Pi OS that does not include a desktop environment or any unnecessary extras. It runs only the core operating system and includes the command-line interface (CLI). This version is significantly lighter on system resources and is preferred for server use, IoT applications, and other scenarios where performance and efficiency are critical. Users who choose the Lite version typically access the system via SSH or a terminal and install only the specific software they require.

We're using our Pis as a server, so we're going to install the Lite version. Not only will it have lower overhead, but it will have less of an attack vector, keeping our server that much more secure.

SD Card Size

Older kits tended to include a relatively small 8 GB microSD card. Many kits now instead ship with a 256 GB microSD card. For what we are looking to do in this guide, bigger is not better. Setting the Pi up as a headless server means dealing with a lot of configurations and settings, on the Pi itself as well as on various web services you may want to run. It's very easy to break your setup while trying to upgrade or add something new. If you plan on using your Pi to store/serve large files (photos, movies, music, games), it's far better to store those files on a separate storage drive and use your Pi's microSD card just for the OS and applications. With a smaller microSD card, you can easily take regular bit-for-bit images of your setup. Should something go wrong, and you want to roll back to a previous state, you can do so without losing any new media files or documents that you've uploaded in the meantime. Even the most bloated versions of Raspberry Pi OS are only around 8 GB. A 16 or 32 GB microSD card is more than enough and will make taking snapshots quick and easy. Should you ever actually need more storage, you can just write one of your snapshots to the larger SD card and then expand the partition to fill all of the available space.

With all the above in mind, it's recommended that you start from scratch and install the 64-bit Raspberry Pi OS Lite (Bookworm). The first part of the next chapter assumes that you're taking that route. If you are sticking with the one OS already installed, skip to the second part. If you are sticking with an OS already installed and have configured SSH key files, you can skip the chapter completely.