Pop!_OS
Pop!_OS is a free and open-source Linux distribution developed by System76, an American computer hardware manufacturer based in Denver, Colorado.[1] It is based on Ubuntu and utilizes the APT and Flatpak package management systems for compatibility with Ubuntu software repositories.[2] Designed to empower users with efficient workflows, privacy protections, and seamless hardware integration, Pop!_OS targets creators, developers, gamers, and professionals seeking a customizable and secure operating system.[1][3] First released in October 2017 as version 17.10, Pop!_OS was engineered in-house by System76 to address the needs of their hardware ecosystem while providing a user-friendly alternative to stock Ubuntu.[4] The distribution has evolved through regular updates aligned with Ubuntu's Long Term Support (LTS) cycles, with the current stable release being Pop!_OS 22.04 LTS, supported until 2027.[5] As of November 2025, Pop!_OS 24.04 LTS is available in beta, introducing the new COSMIC desktop environment—a fully custom, Rust-based interface developed by System76 to replace the modified GNOME desktop used in prior versions.[6] Key features of Pop!_OS include hybrid graphics support for NVIDIA and AMD GPUs, enabling easy switching between integrated and discrete graphics for optimal performance and power efficiency.[7] It offers built-in full-disk encryption during installation, automatic window tiling for enhanced productivity, and pre-configured tools for gaming such as Steam, Lutris, and Proton compatibility.[1] The distribution is optimized for System76's laptops, desktops, and workstations, ensuring out-of-the-box support for their hardware, while remaining fully compatible with a wide range of other PCs.[1] Pop!_OS emphasizes minimal bloat, intuitive customization options like adjustable docks and keyboard shortcuts, and strong privacy features to foster user freedom and discovery.[8]History and development
Origins and System76
Pop!_OS originated from System76, a United States-based computer hardware manufacturer founded in 2005 and headquartered in Denver, Colorado.[9] The company specializes in designing and producing Linux-optimized laptops, desktops, and workstations, with a strong emphasis on open-source software, user privacy, repairability, and freedom from proprietary restrictions.[9] System76's mission has centered on integrating high-performance hardware with free and open-source operating systems to empower creators and professionals, preinstalling distributions like Ubuntu on its devices since its inception.[10] The development of Pop!_OS was spurred by Canonical's announcement in 2017 to discontinue the Unity desktop environment in favor of GNOME for Ubuntu, a change that significantly impacted System76, as approximately 91% of its business relied on Unity-integrated systems.[11] In response, System76 initiated the project to create a customized Linux distribution that would maintain seamless compatibility with its hardware while addressing the transition's disruptions.[4] The first stable release, Pop!_OS 17.10, launched on October 19, 2017, based on Ubuntu 17.10 and incorporating initial customizations like a themed GNOME interface and hardware-specific drivers.[4] The initial goals of Pop!_OS focused on delivering an operating system optimized for System76's hardware ecosystem, prioritizing performance, stability, and workflow efficiency for targeted user groups.[12] It aimed to serve STEM professionals through built-in development tools and libraries, creative professionals with intuitive customization options, and gamers via enhanced graphics support, all while fostering an environment for discovery and innovation.[12] This hardware-centric approach sought to eliminate common Linux compatibility issues, ensuring out-of-the-box functionality for System76 devices without relying on extensive user configuration.[4] Early development was led by System76's in-house engineering team, including key figures like UX designer Cassidy James Blaede, who shaped the interface and user experience drawing from prior work on projects such as elementary OS.[13] The effort involved close collaboration with the broader open-source community, with contributions solicited through platforms like GitHub repositories and Pop!_Chat forums, enabling rapid iteration on features such as default application sets and keyboard shortcuts.[4] This community involvement helped refine the distribution from its alpha stages, establishing a foundation for ongoing upstream contributions to Ubuntu and GNOME.[13]Evolution and key milestones
Following its initial release in 2017, Pop!_OS underwent significant post-launch developments that enhanced its usability and hardware integration. The Pop!_Shop, a customized application store introduced with the initial release, streamlined software discovery and installation, replacing the default GNOME Software for a more intuitive experience tailored to creative and STEM workflows.[4] By 2020, the distribution added support for hybrid graphics modes in Pop!_OS 20.04, allowing seamless switching between integrated Intel/AMD and discrete NVIDIA GPUs directly from the system menu, accompanied by separate ISO images to simplify installation for NVIDIA users versus those with AMD or Intel hardware.[14] Enhancements to the recovery partition followed in 2021, including a dedicated OS & Recovery panel in Settings for managing upgrades to both the main system and the partition itself, which serves as a bootable backup of the installation media for troubleshooting and restores.[4] Strategic shifts in release cadence marked a focus on long-term stability and innovation. After Pop!_OS 22.04 LTS in 2022, System76 skipped interim releases like 22.10 and the entire 23.xx series to prioritize development resources, culminating in an annual LTS model with Pop!_OS 24.04 released in beta in September 2025 based on Ubuntu 24.04.[15] This approach emphasized quality over frequency, incorporating a shift toward Rust-based components for improved performance and reliability, particularly in core desktop elements.[16] The ecosystem expanded through community-driven growth and upstream contributions. Flatpak integration arrived with Flathub repository support in Pop!_OS 20.04, enabling broader access to sandboxed applications without conflicting with APT-managed packages.[14] Adoption extended beyond System76 hardware, with the freely downloadable ISOs attracting non-proprietary users for its out-of-box optimizations, while System76's hardware focus—such as pre-tuned laptops and desktops—complemented this versatility.[4] System76 actively contributed patches to upstream projects, including responsiveness fixes for GNOME panels and scheduler improvements shared with Ubuntu maintainers.[17] Key milestones underscored Pop!_OS's maturation. By 2022, it gained widespread recognition for hardware optimizations like the System76 Scheduler in 22.04 LTS, which dynamically adjusted CPU priorities for better multitasking on diverse systems.[4] In 2023, System76 announced the full development of the Rust-based COSMIC desktop environment, signaling a departure from GNOME customizations toward a from-scratch interface prioritizing user freedom and efficiency.[16]Desktop environment
GNOME-based customization
Pop!_OS employs a customized version of the GNOME Shell as its desktop environment in releases up to 22.04, integrating proprietary extensions developed by System76 to enhance window management and user interaction. The core customization revolves around the Pop Shell extension, which provides auto-tiling capabilities inspired by tiling window managers like i3, allowing windows to automatically resize and arrange upon placement while supporting keyboard-driven navigation for efficient multitasking.[18][19] This extension enables users to enter a tiling layout mode via Super + T, where windows snap to screen edges or quadrants, and supports floating windows with grid snapping for flexible positioning.[20] Key modifications to the standard GNOME experience include the Pop!_OS theme, which applies a semi-flat design with raised 3D motifs to icons and GTK elements for a cohesive, modern aesthetic tailored to System76's hardware. The Super key is configured to open the Activities overview directly, facilitating quick access to workspaces and applications, while the Cosmic Dock—a forked and customized version of Dash to Dock—allows users to position the dock at the bottom, left, or right of the screen and supports intelligent auto-hiding for a cleaner interface. Gesture support is enhanced with multi-touch inputs, such as three-finger swipes for app switching and four-finger swipes for navigating to workspaces or the applications menu, improving touchpad usability on laptops. Unlike its Ubuntu base, Pop!_OS removes Snap packages by default, favoring APT and Flatpak for software management to avoid the performance overhead associated with containerized applications.[21][22][20][23] The integration of GNOME extensions forms a cornerstone of these customizations, with Pop Shell introduced in version 20.04 as a built-in component for advanced workspace management, including seamless cycling between dynamic workspaces using Super + directional keys. Additional extensions like Cosmic Workspaces provide a vertical switcher for intuitive overview navigation, while improvements to the application launcher—accessed via Super—streamline searching and launching with integrated recents and favorites sections, reducing reliance on external tools. These extensions are managed through the pre-installed GNOME Extensions app or the optional Extension Manager, ensuring compatibility with GNOME 42 in Pop!_OS 22.04.[24][19][20] Performance optimizations in the GNOME customizations prioritize efficiency on System76 hardware, with theming adjustments that leverage hardware acceleration for smoother animations and reduced CPU usage during window manipulations. Pop Shell's lightweight implementation minimizes resource overhead compared to full tiling window managers, enabling lower latency in workspace transitions and tiling operations, particularly on integrated graphics setups common in System76 laptops. These tweaks contribute to a more responsive desktop experience without compromising GNOME's extensibility. In later releases starting with 24.04, Pop!_OS transitions from these GNOME-based customizations to the from-scratch COSMIC desktop environment.[21][18][25]COSMIC desktop environment
COSMIC is a desktop environment developed in-house by System76 for Pop!_OS, constructed from the ground up in the Rust programming language to prioritize stability, security, and memory safety.[26] Development commenced in 2023, marking a shift toward a custom, Wayland-native interface independent of existing desktops.[16] The first public beta arrived alongside the Pop!_OS 24.04 LTS beta on September 25, 2025, introducing early access to its modular components.[27] The stable release is set for December 11, 2025, integrating COSMIC as the default environment for the distribution.[28] At its core, COSMIC comprises the Cosmic Shell, a flexible window manager handling compositing and user interactions; the Cosmic Store, an application center supporting app organization via folders; and a theming system that enables customizable color palettes and visual elements for enhanced readability across interfaces.[26] Notable features include dynamic workspaces for seamless multitasking, with options to pin or rearrange them fluidly, alongside a centralized notification center for managing alerts and system events.[26] These elements support efficient navigation through keyboard shortcuts, tiling layouts, and a launcher, fostering a responsive workflow on diverse hardware.[29] COSMIC's design philosophy centers on modularity to allow composable user interfaces, accessibility through adjustable UI scaling and input options, and extensibility via open-source contributions that enable community-driven enhancements.[26] Drawing inspiration from GNOME's clean aesthetics while operating as a fully independent stack, it advances beyond prior GNOME customizations in Pop!_OS by incorporating superior touchpad gestures—such as four-finger swipes for workspace switching—and robust fractional scaling support, including per-monitor adjustments from 100% and finer increments like 125% or 130%.[30][31][29] This approach ensures compatibility with high-DPI displays and precise input handling without relying on external extensions.[32] Epoch 1 of COSMIC delivers the foundational UI framework, encompassing the shell, basic applets, and essential theming for a complete desktop experience in its initial stable form.[33] Subsequent epochs will expand this base with sophisticated tools, such as an integrated file manager (COSMIC Files) for efficient browsing and permissions management, and a dedicated settings application for granular configuration of displays, inputs, and power profiles.[34] These phased releases underscore System76's commitment to iterative refinement based on user feedback and testing across distributions like Fedora and Arch Linux.[33]Features
Hardware and graphics support
Pop!_OS offers optimized support for hybrid graphics systems, enabling automatic switching between integrated GPUs from Intel or AMD and discrete NVIDIA GPUs. The pre-installed system76-power tool facilitates this through configurable power profiles, including integrated mode for extended battery life, NVIDIA mode for high-performance tasks, and hybrid mode that defaults to the integrated GPU while offloading specific applications to NVIDIA via environment variables such as__NV_PRIME_RENDER_OFFLOAD=1 for Vulkan or OpenGL rendering. This functionality is available on supported System76 laptops like the Galago Pro, Gazelle, and Oryx Pro, requiring a reboot after mode changes via the GNOME system menu or command-line interface with sudo system76-power graphics [mode]. In the COSMIC desktop environment (Pop!_OS 24.04 LTS beta), hybrid graphics is the default mode, supporting dynamic on-the-fly GPU switching without reboots.[35][36][37]
For NVIDIA hardware, Pop!_OS provides a dedicated ISO variant pre-configured with proprietary drivers, streamlining setup for users with compatible GPUs such as those in the 16-series and newer. This out-of-the-box support for proprietary NVIDIA drivers has been a core feature since version 18.04, alongside options for open-source Nouveau drivers through standard repositories. Driver updates are managed via the Pop!_Shop or APT, ensuring compatibility with recent NVIDIA releases like the 580 series (as of 2025). Additionally, firmware updates for hardware components are handled through the integrated fwupd tool, accessible in Settings > Firmware, which supports devices from vendors like Intel, AMD, and System76 for security and performance enhancements.[38][39][40]
On System76 hardware, Pop!_OS includes tailored tools for enhanced integration, such as system76-power for battery optimization, which automatically reduces screen brightness, throttles CPU and GPU speeds, and disables keyboard backlighting in Battery Life mode to extend runtime. Keyboard backlighting is controlled via the system76-dkms and system76-acpi-dkms modules, allowing adjustments through function keys or the power profile settings on models like the Lemur Pro and Galago Pro. Suspend and resume functionality is natively supported on these laptops, with system76-power managing power states to ensure reliable wake-up, though occasional kernel-specific issues may require updates to the latest Pop!_OS kernel for resolution.[41][42][35]
While optimized for System76 devices, Pop!_OS maintains broad compatibility with non-System76 hardware, leveraging Ubuntu's extensive driver ecosystem for components like Wi-Fi adapters and touchpads. Users may encounter common issues, such as unrecognized Wi-Fi cards on certain laptops, which can be addressed by installing kernel modules or third-party drivers via APT, ensuring functionality on most modern PCs without proprietary hardware dependencies.[43][44]
User interface and workflow tools
Pop!_OS incorporates Pop Shell, a GNOME Shell extension used in GNOME-based releases, that enables keyboard-driven window management with auto-tiling capabilities, allowing windows to snap to a configurable grid for efficient screen space utilization. This feature implements an i3-like tiling system using a tree-based structure where nodes represent windows or stacks, and users can toggle tiling mode via the tilde (~) key while in window management. In the COSMIC desktop environment (Pop!_OS 24.04 LTS beta), tiling window management is built into the compositor, replacing Pop Shell. Multi-monitor support ensures that grid-based snapping operates independently on each display, facilitating seamless workflows across extended setups. Workspace management complements tiling by enabling dynamic navigation, with users accessing previews by clicking the workspaces icon in the dock, selecting "Workspaces" in the top-left corner, or pressing Super + D; windows can be dragged or moved between workspaces using Super + Shift + Up/Down arrows.[18][45][46][47] Customization in Pop!_OS emphasizes user control over the interface through GNOME Tweaks for theme switching and extension management, with options to adjust cursor, icons, shell, sound, and legacy application themes under the Appearance tab. The User Themes extension, pre-installed in versions like 22.04, allows application of custom GTK 4 themes from sources such as opendesktop.org, though System76 notes potential instability with untested customizations. For newer COSMIC desktop iterations, settings integrate similar theming controls directly within the desktop configuration panel. Do Not Disturb mode, provided via a dedicated GNOME Shell extension, suppresses notifications to minimize interruptions, activated through the GNOME Tweak Tool or extensions.gnome.org; while notification grouping is handled natively by GNOME, the extension focuses on toggling the mode without altering grouping behavior.[48][21][49] Workflow enhancements in Pop!_OS streamline daily tasks via the default Nautilus file manager, which includes Pop!_OS-specific integrations for quick access to system folders and search functionality, configurable through desktop settings for behaviors like showing hidden files. The built-in screenshot tool, inherited from GNOME and enhanced in COSMIC releases, supports capturing full screens, specific windows, or selections via Super + Print or the overview menu, with basic editing options available post-capture; for annotations, users can pair it with extensions like Screenshot Highlight or external tools such as GIMP for markup. Clipboard history is not native but readily enabled through recommended GNOME extensions like Clipboard Indicator or Pano, which monitor and display recent copies in a dock-accessible list, boosting productivity for text, images, and files.[20][6] Accessibility features in Pop!_OS leverage GNOME's Universal Access settings to support diverse users, including high-contrast themes toggled under the Seeing section for improved visibility on various displays. Screen reader integration is provided by Orca, an open-source tool for low-vision and blind users, enabled via the Screen Reader toggle or launched with Super + Alt + S, offering auditory feedback for interface elements and navigation. Scalable UI elements are adjustable through options like Large Text, Cursor Size selectors, and Zoom magnification, allowing users to customize text scaling and screen enlargement for readability without compromising functionality.[50][51]Software management and security
Pop!_OS utilizes the Advanced Package Tool (APT) for core system package management, inheriting this from its Ubuntu foundation, allowing users to install, update, and remove software via the command line with commands likesudo apt install and sudo apt update.[52] To complement APT, Pop!_OS supports Flatpak for sandboxed applications, enabling access to a broader ecosystem of software from sources like Flathub without relying on Snap packages.[52] The Pop! Shop serves as the graphical frontend for both APT and Flatpak, providing an intuitive interface for searching, installing, and updating applications; it was enhanced in version 19.10 to streamline these operations.[53] Repositories and Flatpak remotes can be managed through the integrated Repoman tool within Pop! Shop, ensuring curated and secure software sources.[52]
The application ecosystem in Pop!_OS centers on a curated selection of Debian (.deb) packages from official repositories and Flatpak apps distributed via Flathub, emphasizing stability and compatibility with System76 hardware.[52] For gaming, Pop!_OS facilitates seamless integration with Steam, available as a native .deb package through Pop! Shop, which supports the Proton compatibility layer to run Windows games on Linux without additional configuration.[54] This setup allows over 88% of the top 1,000 Steam games to achieve "Platinum," "Gold," or "Silver" ratings for playability, as reported by ProtonDB metrics.[55]
Security in Pop!_OS includes optional full-disk encryption using LUKS during installation, which protects data at rest by requiring a passphrase at boot to unlock the system partition.[56] The Uncomplicated Firewall (ufw) is pre-installed, providing a simple interface for configuring iptables rules to control incoming and outgoing network traffic, though it requires manual enabling via sudo ufw enable.[57] Automatic updates for the operating system, including security patches, can be configured through the Settings application under the OS Upgrades & Recovery panel, ensuring timely delivery of fixes from Ubuntu and System76 sources.[58] Additionally, a dedicated recovery partition contains a bootable copy of the live environment, allowing offline repairs, system refreshes, or reinstallations without external media.[59]
Pop!_OS prioritizes user privacy by not collecting or transmitting any telemetry data or error reports from the operating system itself.[60] The default web browser is Firefox, configured with enhanced tracking protection enabled to block known trackers and fingerprinting attempts by third parties. Secure Boot compatibility is supported post-installation on compatible hardware, though it must be disabled in the BIOS during the initial setup process to avoid boot issues.[56]
Installation and maintenance
System requirements and compatibility
Pop!_OS requires a 64-bit x86 processor or ARM architecture (such as Raspberry Pi 4) for installation, with a minimum of 4 GB RAM and 20 GB of storage space.[56] These specifications ensure basic functionality, though performance may vary based on hardware age and configuration. For optimal performance, System76 recommends at least 8 GB of RAM and the use of an SSD for storage, which significantly improves boot times and application responsiveness.[56] Graphics support in Pop!_OS includes Intel and AMD integrated graphics out of the box via the standard ISO, while NVIDIA discrete graphics cards require selecting the NVIDIA-specific ISO or manual driver installation post-installation.[56] The system supports UEFI firmware, but Secure Boot must be disabled in the BIOS/UEFI settings prior to installation to avoid boot issues.[38] Compatibility is optimized for System76 hardware, but it extends to general x86_64 systems; however, very old hardware from before 2010 may encounter driver or kernel compatibility challenges due to reliance on modern Linux kernel features.[56] ARM support includes official builds for Raspberry Pi 4, suitable for general use.[38] To verify hardware compatibility before committing to installation, users should boot into the live environment using a USB drive in "Try Demo Mode," which allows testing without altering the existing system.[56] This mode supports both BIOS (Legacy) and UEFI boot modes, though UEFI is preferred for full feature access, including potential recovery options.[56]Installation process
The installation of Pop!_OS begins with preparation of the installation media. Users must first download the appropriate ISO image from the official System76 website, selecting between the NVIDIA variant—which includes proprietary NVIDIA graphics drivers for systems with compatible GPUs—or the Intel/AMD variant for other hardware configurations.[61] The ISO files are hybrid, supporting both BIOS and UEFI boot modes without requiring separate formatting for the USB drive.[56] To verify the download, users can check the provided SHA256 checksum against the file using tools likesha256sum on Linux or third-party verifiers on other platforms.[61]
Creating a bootable USB drive requires at least an 8 GB flash drive, which will be erased during the process. On Windows, the recommended tool is Rufus: select the ISO file, choose the USB device, set the partition scheme to GPT for UEFI or MBR for BIOS, and click Start to write the image.[62] On Linux or macOS, use the dd command after identifying the USB device with lsblk or diskutil list—for example, sudo dd if=/path/to/pop-os.iso of=/dev/sdX bs=4M status=progress && sync, replacing /dev/sdX with the correct device (e.g., /dev/sdb).[62] Alternatively, cross-platform tools like balenaEtcher can be used by selecting the ISO, target USB, and flashing.[62] Pop!_OS meets basic system requirements of a 64-bit x86 processor, 4 GB RAM, and 20 GB storage for installation.[56]
To boot from the USB, enter the system's BIOS/UEFI settings (typically via keys like F2, F7, ESC, or Del during startup) and disable Secure Boot, as Pop!_OS does not support it during installation; failure to do so may prevent booting.[56] Set the boot order to prioritize the USB device or select it directly from the one-time boot menu. Upon booting, the live environment loads, allowing users to select "Install Pop!_OS" from the menu. The installer then prompts for language, locale (which sets timezone), and keyboard layout.[56]
The setup continues with partitioning and installation options. For a standard full installation, choose "Clean Install" to erase the target disk and use guided partitioning, which automatically allocates space for the root (/), home (/home), and optional recovery partitions; full disk encryption can be enabled here using either the user login password or a separate encryption passphrase for LUKS.[56] For advanced scenarios like dual-booting with Windows, select "Custom" to launch GParted for manual partitioning—first resize the Windows NTFS partition in Windows Disk Management to free space, then create new ext4 partitions for root and swap in the unallocated area, ensuring the EFI system partition is shared if present.[56] Network setup occurs during this phase if a wired connection is available or WiFi is configured via the installer's interface for downloading updates.[56] Finally, create a user account by entering the full name, username, and password; the installer then formats partitions, installs the system, and configures the bootloader (systemd-boot by default).[56]
Common issues during installation include boot failures from enabled Secure Boot, which must be disabled in BIOS/UEFI settings prior to proceeding.[56] For dual-booting, improper partition resizing can lead to data loss, so backing up Windows data and using tools like resize2fs cautiously in GParted is essential; additionally, ensure the installation targets the correct disk to avoid overwriting the existing OS.[56] Network connectivity problems may arise on WiFi-only systems if drivers are absent in the live environment, resolvable by connecting via Ethernet if possible or proceeding offline and configuring post-install.[56] Upon completion, reboot, remove the USB, and log in to the new system.
Upgrades and recovery
Pop!_OS provides straightforward methods for upgrading between versions, primarily through graphical and command-line interfaces integrated into the system. For long-term support (LTS) releases, such as upgrading from 20.04 to 22.04, users can employ the graphical tool in the Pop! Shop or system settings. After applying pending updates viasudo apt update && [sudo](/page/Sudo) apt full-upgrade, an upgrade notification appears, or users can navigate to Settings > OS Upgrade & Recovery to download and initiate the process, followed by a restart to complete the installation. This method ensures a seamless transition while preserving user data and configurations.[63]
For interim releases, sequential upgrades are required, and the command-line tool pop-upgrade handles the process. Users first update the system with [sudo](/page/Sudo) apt update && [sudo](/page/Sudo) apt full-upgrade, then execute pop-upgrade release upgrade to check for and apply the upgrade, responding to prompts as needed (e.g., confirming with 'Y'). This approach, distinct from Ubuntu's do-release-upgrade, is tailored for Pop!_OS and supports upgrades like from 21.10 to 22.04, though multi-release jumps increase risks such as package conflicts.[63]
Upgrading to beta versions, such as 24.04, carries additional risks due to its pre-release status, including potential boot issues, disabled PPAs leading to errors, and loss of dock favorites. System76 recommends backing up data beforehand using tools like Deja Dup and running pop-upgrade release upgrade -f from the terminal after reviewing release notes. Users should expect bugs and avoid using beta for mission-critical tasks.[6]
The recovery partition, introduced in Pop!_OS 20.04, is a 4 GB FAT32 partition containing a full copy of the installation media, enabling repairs without external tools. Accessible by holding the Spacebar or pressing F1-F12 during boot to enter the systemd-boot menu, it supports chroot environments for accessing the main filesystem to fix issues like broken packages via chroot /mnt commands. It also facilitates driver reinstalls by mounting the root partition and running update scripts, as well as OS resets: a refresh install preserves user data in the home directory while reinstalling the system, whereas a clean install erases everything and reformats the drive.[59]
Maintenance in Pop!_OS includes firmware updates managed through fwupd integration, particularly for System76 hardware. Via the GUI, users access Settings > Firmware to check for and apply updates, rebooting as prompted to flash the firmware; for CLI, install system76-firmware with sudo apt install system76-firmware and schedule via sudo system76-firmware-cli [schedule](/page/Schedule), followed by a reboot. Snapshot tools like Timeshift, installable via sudo apt install [timeshift](/page/TimeShift), allow creating incremental BTRFS or rsync-based system snapshots for rollback, configured to run automatically before upgrades or on a schedule to mitigate boot failures or configuration errors.[39][64]
Common troubleshooting, such as boot failures, leverages the recovery partition for repairs: boot into recovery, mount the root filesystem with sudo mount /dev/nvme0n1p3 /mnt (adjusting for device), chroot in, and resolve issues like GRUB errors with sudo update-grub or package fixes via apt. For encrypted setups, ensure LUKS keys are accessible during chroot to avoid decryption hangs. If upgrades fail, refresh via recovery or use a live USB as a fallback.[59]
Release history
Interim releases
Pop!_OS interim releases, spanning versions 17.10 through 21.10, served as platforms for introducing and testing short-term innovations, each receiving approximately nine months of support aligned with Ubuntu's non-LTS cycle.[5] These releases focused on rapid enhancements to user interface, software management, and hardware integration, often previewing features that would later mature in long-term support (LTS) editions. The inaugural release, Pop!_OS 17.10 in October 2017, marked the debut of System76's customized Ubuntu derivative, featuring basic GNOME modifications such as the Pop!_Theme for visual consistency, the Pop!_Shop for streamlined application discovery, and custom keyboard shortcuts like Super + T for the terminal.[4] It provided nine months of support, ending in July 2018.[5] Subsequent releases from 18.10 (October 2018) through 19.10 (October 2019) built on this foundation, each with nine-month support periods concluding between July 2019 and July 2020.[5] Pop!_OS 18.10 simplified NVIDIA CUDA and TensorFlow installations via single-command packages likesudo apt install tensorflow-cuda-latest, easing machine learning workflows.[4] Version 19.04 (April 2019) introduced a Refresh Install option to preserve user data during reinstalls and an official Dark Mode toggle in the Appearance settings.[4] By 19.10, graphical and offline upgrade capabilities were added through the Settings panel, alongside a Light-Dark theme switcher and the Tensorman tool for TensorFlow container management; Flatpak integration also became more prominent via Pop!_Shop updates during this era.[4][65]
From 20.10 (October 2020) to 21.10 (December 2021), innovations emphasized workflow efficiency and hardware optimization, with support extending until September 2021 for 20.10 and July 2022 for the later versions.[5][63] Pop!_OS 20.10 advanced tiling via Pop!_Shell extensions, including window stacking, auto-tiling exemptions for specific applications, and fractional scaling support for high-DPI displays.[4][66] Hybrid graphics handling saw refinements through the system76-power tool, enabling seamless switching between integrated and discrete GPUs for better battery life and performance.[35] Gaming received optimizations like pre-configured NVIDIA drivers and easier Proton/Steam setup, reducing setup friction for titles via the Pop!_Shop.[55] In 21.04 (June 2021), COSMIC customizations were introduced, including enhanced recovery partition management accessible via Settings for OS upgrades and repairs, alongside customizable dock positioning and trackpad gestures for three- and four-finger swipes.[67] Pop!_OS 21.10 introduced the Application Library as a searchable, compact overview replacing GNOME's full-screen app grid, further streamlining access.[4]
Following 21.10, System76 skipped the planned 22.10 interim release in October 2022 to prioritize development of the COSMIC desktop environment.[5]
Collectively, these interim releases acted as testing grounds for user-centric features like improved tiling and recovery tools, which were iteratively refined and backported to LTS versions, underscoring System76's emphasis on agile development cycles.[4]