Linux Setup

مؤلف

Show all

Hide

An opinionated, perpetually-incomplete yet aspirational guide for setting up Linux as your daily driver OS.


TL;DR
  1. Install Xubuntu on older machines. This is a basic distro of Ubuntu using the XFCE desktop environment. It gives a decent experience on almost every piece of hardware from the past 15 years.
  2. Install Pop!_OS 22.04 on newer machines. NOTE: DO NOT INSTALL Pop!_OS 24.04 AS IT USES WAYLAND AND "COSMIC" AND IS A HORRIBLE "UPGRADE"; AT THE VERY LEAST, TRY A LIVE CD OF 24.04 BEFORE INSTALLING.
  3. Install Pop!_OS 22.04 Though it's been scrubbed from the System76 website, the Pop!_OS 22.04 (r58) ISO files are available on archive.org. The Pop!_OS servers also still have ISO files available, as of 2026. Pop!_OS 22.04 (r58) with NVIDIA Driver Pop!_OS 22.04 (r58)
  4. Don't customize the UI or Desktop experience too much. The beauty of Linux and UNIX is that an individual can move from one machine (or server) to the next and be familiar enough with the core functionality that one won't need to spend time setting up favorite nonsensical GUI customizations before being able to be productive.
  5. Try to avoid kernel mods by researching and purchasing a machine with Linux compatibility rather than hoping kernel mods or patches will bring an incompatible machine into a working state. This is a recipe for failed future upgrades.
  6. Don't distro-hop, but if doing so, use LIVE CDs, VMs or an old, spare machine, not a current daily-driver machine, to experiment.
  7. On Intel Macs, either dual-boot to Pop!_OS 22.04 or use VirtualBox to run Xubuntu in a VM. Intel Macs are also excellent platforms to natively install Pop!_OS 22.04, especially when Apple deprecates them; Mac Mini from 2013 feels like a brand new machine with Pop!_OS in 2026.
  8. On *M1/M2/M3/M4/M5/M Macs, good luck! Asahi Linux** is getting better at supporting Apple Silicon hardware.
  9. The scripts below are intended to assist in installing some commonly-used packages that help Linux work well as a daily-driver OS.
Introduction

Linux is an excellent OS for many applications, but it's often relegated to running on servers, raspberryPis, and cloud VMs. As of 2023, Linux has many flavors and distributions that are mature and polished to an extent that they're a viable option for desktop and laptop daily usage. Certain elements of the desktop experience may take some getting used to when switching from Windows or MacOS, but with basic tweaks, Linux can provide a very stable and familiar environment for work and play.

This guide is unapologetically opinionated (and likely wrong in many ways, based on the infinite opinions in the Linux world) for the sake of simplifying the process of getting to a workable setup. There is known challenge in using Linux called "distro-hopping", that, when you're trying to use Linux for productive purposes, tends to be an infinite time sink of trying every possible distribution in hopes the next one will be more perfect. As a humble recommendation, if "distro-hopping" is a pass-time you enjoy, try doing this by spinning up virtual machines rather than installing a new distro on your bare metal machine.

Hardware Setup

Before installing Linux, it's good to change some settings in the BIOS of the computer. On boot, press the necessary keys to enter the BIOS setup (DEL / F2 / F7 / F8 / F12).

  1. For simplicity, you should disable things like secure boot, etc. It is possible, on some Linux distributions, to use secure boot, but it tends to over-complicate a first foray into Linux.
  2. Be sure to setup the BIOS to use EFI without legacy boot options. This will enable the automatic installation of a recovery partition in certain distros (e.g. Pop!_OS).
Suggested Distributions

There are too many distributions to mention or compare here, and as mentioned above, the goal of this guide is to save the effort of "distro-hopping". After many years of using Linux in desktop, server, and embedded environments, the two distros below have emerged as leading options for the two major situations most users will encounter.

  1. For individuals with older machines that feel sluggish with modern versions of Windows, Xubuntu will work well as a feature-rich desktop experience that won't overload the limited resources of an older machine. Xubuntu is based on Ubuntu which is, in turn, based on Debian, and follows the Ubuntu release cycles with Long-Term Support (LTS) versions released every 2 years. LTS versions are released in April of even-numbered years. For sanity's sake, and in the same vein as suggesting avoiding distro-hopping, it's best to skip the non-LTS releases unless you have a hyper-specific need for bleeding-edge features under development between LTS releases.

  2. For individuals with relatively modern machines with mid-level to high-level specifications, Pop!_OS will provide a relatively full-featured desktop experience. Pop!_OS is based on Ubuntu which is, in turn, based on Debian, and Pop!_OS follows the Ubuntu release cycles with Long-Term Support (LTS) versions released every 2 years. LTS versions are released in April of even-numbered years. For sanity's sake, and in the same vein as suggesting avoiding distro-hopping, it's best to skip the non-LTS releases unless you have a hyper-specific need for bleeding-edge features under development between LTS releases.

Pop!_OS Install

  1. Procure USB Thumb Drive (minimum 4GiB)
  2. Download Pop!_OS 22.04 LTS ISO Image File. Pop!_OS 22.04 (r58) with NVIDIA Driver Pop!_OS 22.04 (r58)
  3. Use a tool like Balena Etcher to copy the ISO Image to the USB Thumb Drive
  4. Insert the USB Thumb Drive into your computer and press the necessary key (often F12) at boot to choose to boot from USB.
  5. Select "Try or Install Pop!_OS" at boot
  6. Select Language and keyboard region (choose something sensible, can be changed later if needed)
  7. Unless you're setting up a multi-boot configuration, select "Clean Install" and select your internal hard drive.
  8. Erase and Install (be sure you've backed up files you care about from previous OS installs)
  9. Create username and password.
  10. Drive Encryption. Choose this to suit your needs, but unless you need high-security for a specific reason, life is just simpler if you don't encrypt the drive.
  11. Installation will begin. On a modern machine, it should take less than 5 minutes.
  12. Choose shutdown (or reboot). Shutdown will ensure the disk is unmounted and the machine is fully powered off when removing the USB Thumb Drive.

Power on. After the initial boot into Pop!_OS, you will be prompted for the following:

  1. Login as the user you created during install.
  2. Dock Settings : In the middle, does not extend to edges (recommendation, can be changed later)
  3. Top Bar Settings: Don't show Workspaces (recommendation, can be changed later).
  4. Top Bar Settings: Date and Time to the right (recommendation, can be changed later)
  5. Appearance: Dark (recommendation, can be changed later)
  6. Join Wi-Fi (if available). Next.
  7. Privacy: Leave location services off (recommendation, can be changed later)
  8. Time Zone: Search for your time zone. Next.
  9. Online Accounts: Skip (recommendation, can be added later)
  10. Start Using Pop!_OS
  11. You should now be staring at a Desktop environment, and you'll likely be advised by a pop-up that updates are required. You can follow the suggested prompts to update, or you can ignore, as updating is the next step in this guide. (note: sometimes the update prompts, when clicked, don't open the Pop!_Shop. You can launch it manually and click on "Installed" tab to see the available updates.)

Xubuntu Install (additional details to be added)

  1. Procure USB Thumb Drive (minimum 4GiB)
  2. Download the current Xubuntu LTS ISO Image File
  3. Use a tool like Balena Etcher to copy the ISO Image to the USB Thumb Drive
  4. Insert the USB Thumb Drive into your computer and press the necessary key (often F12) at boot to choose to boot from USB.
  5. Follow the steps of the Install Guide (many choices can be changed after install, so no stress)
  6. You should now be staring at a Desktop environment, and you'll likely be advised that updates are required. You can follow the suggested prompts to update, or you can ignore, as updating is the next step in this guide.
Initial Setup, Post-Install

Pop!_OS Specific

(Note: This option is only available if you have setup your BIOS to use EFI/UEFI. If you forgot to do that, this is a chance to consider changing that BIOS setting and quickly reinstalling Pop!_OS to have a more full-featured experience)

  1. Open Settings > OS Upgrade & Recovery
  2. Under "OS Recovery", you should see "Recovery partition update is available"
  3. Click "Update" to install the update on your recovery partition (note: it will download 3-4GiB)

Common for both Pop!_OS and Xubuntu

Open a Terminal
Press the "SUPER-KEY" (Windows Key / Command Key) to bring up the application launcher
Type "Terminal" and Launch a Terminal
All of the following commands are entered into the Terminal

Update software repositories

sudo apt update

Install packages that have been upgraded since the LTS ISO release

sudo apt upgrade -y

Remove any packages that are no longer needed

sudo apt autoremove -y

Reboot for good measure

sudo reboot

Confirm all pacakges were installed correctly. Should result in "All packages are up to date."

sudo apt update

Install ClamAV, a basic anti-virus

sudo apt install clamav clamav-daemon clamtk-gnome

Install ufw firewall (and its gui)

sudo apt install ufw gufw

To be Continued...