Argo OS

Argo OS

Argo OS is a custom Gentoo Linux distribution designed for workstation use, combining the power of source-based customization with modern conveniences like binary package distribution and automatic snapshots.

Philosophy

The core principle is compile once, deploy everywhere. A central build server compiles packages with optimized USE flags and distributes them as binaries to workstations, providing Gentoo’s customization benefits without the compile-time overhead on each machine.

Key Features

Binary Package Distribution

  • Packages compiled on dedicated build servers with -march=x86-64-v3 optimizations
  • Local binhost serves pre-compiled packages to all Argo OS machines
  • --getbinpkg flag enables transparent binary package fetching
  • Fallback to source compilation when binaries unavailable

Btrfs Snapshots with Snapper

  • Automatic pre/post-update snapshots for atomic rollback
  • Timeline-based cleanup prevents disk bloat
  • Boot menu integration for recovery from snapshots
  • Separate subvolumes: @, @home, @snapshots, @portage

OpenRC Init System

  • Lightweight, dependency-based init (no systemd)
  • Fast boot times with parallel service startup
  • Simple, readable service scripts
  • Full compatibility with Gentoo ecosystem

KDE Plasma 6 Desktop

  • Modern Qt6-based desktop environment
  • Wayland-native with X11 fallback
  • Custom theming with Nordic aesthetic
  • Integration with Btrfs snapshot tools

Nix Package Manager (User Apps)

  • Declarative user application management
  • Isolated from system package manager
  • Reproducible environments with flakes
  • Perfect for development toolchains

Architecture

┌─────────────────────────────────────────────────┐
│                  Argo OS Stack                  │
├─────────────────────────────────────────────────┤
│  User Space: Nix (dev tools), Flatpak (apps)   │
├─────────────────────────────────────────────────┤
│  System: Portage binpkgs from Build Server      │
├─────────────────────────────────────────────────┤
│  Filesystem: Btrfs with Snapper snapshots       │
├─────────────────────────────────────────────────┤
│  Init: OpenRC                                   │
├─────────────────────────────────────────────────┤
│  Kernel: Gentoo-sources (latest stable)         │
└─────────────────────────────────────────────────┘

Technical Details

  • Kernel: gentoo-sources with custom configuration for target hardware
  • Compiler Flags: -O2 -pipe -march=x86-64-v3 -mtune=native
  • USE Flags: Curated set for workstation use (no server bloat)
  • Profile: default/linux/amd64/23.0/desktop/plasma
  • Init: OpenRC with parallel startup enabled

Current Systems

SystemCPURoleCores
Canopus-Outposti7-4790KPrimary Workstation4/8

Additional systems receive binary packages from the Build Swarm — see the Build Swarm project for the full distributed compilation infrastructure.

Development Status

Argo OS is in active development with continuous improvements to the build infrastructure, package selection, and snapshot management. The project is documented extensively in the Engineering Journal.