Philosophy: Total User Freedom

Fanne Linux is built upon a single, uncompromising principle: the user must have absolute control over their machine. In an era where operating systems increasingly act as walled gardens—forcing background services, telemetry, and pre-determined graphical environments upon the user—Fanne Linux steps back. We provide the structural foundation; you build the house.

We do not dictate which init system you must use. We do not force a specific desktop environment. Fanne Linux assumes that the person installing the system is a competent administrator who knows exactly what their hardware needs. If a package is not explicitly requested by you, it will not exist on your drive.

The Agnostic Approach

Most modern distributions are heavily coupled to specific ecosystems. Fanne Linux breaks this dependency chain. By providing a pristine, un-opinionated base, you are free to bootstrap a system that uses systemd, OpenRC, runit, or s6. The choice of how PID 1 handles your services is your responsibility and your privilege.

This freedom extends to networking and audio. Whether you prefer NetworkManager or writing manual wpa_supplicant configurations, whether you use PipeWire, PulseAudio, or pure ALSA, Fanne Linux will not interfere. There are no automated scripts overriding your manual configurations.

The 520MB Foundation

The Fanne Linux core installation image is strictly maintained at roughly 520MB. This size is not a marketing gimmick to claim we are the smallest distribution; it is a carefully calculated mathematical boundary that contains exactly what is required to boot a POSIX-compliant environment and establish a network connection—and absolutely nothing else.

Within this 520MB footprint, you will find a compiled Linux kernel, the essential GNU core utilities (or equivalent lightweight alternatives depending on the build), a package manager capable of resolving basic dependency trees, and standard shell interfaces (like bash or ash). There are no pre-installed web browsers, no graphic display servers (X11/Wayland), and no superfluous libraries.

Why 520MB?

This size ensures that the base system can be loaded entirely into RAM on almost any machine manufactured in the last two decades. It provides a clean slate. When you run the `lsmod` or `htop` command on a fresh Fanne Linux installation, you will see a near-empty canvas. The memory footprint is negligible, meaning 99% of your hardware's resources are reserved strictly for the applications you choose to deploy.

User Space Control & Modularity

The boundary between kernel space and user space in Fanne Linux is treated with extreme respect. We believe that user space applications should never assume privileges or integrations that the system administrator has not explicitly granted. This modularity means that replacing core components is not a hack, but a supported feature.

  • Display Servers: You can install X.org for legacy support, transition to a modern Wayland compositor (like Sway or Hyprland), or run purely in a TTY environment for headless servers. Fanne Linux provides the binaries; you write the config files.
  • File Systems: While the base may boot using standard ext4, Fanne Linux fully supports transitioning your root to ZFS, Btrfs, or XFS. We provide the necessary hooks for initramfs generation without locking you into a specific layout.
  • Security Profiles: AppArmor and SELinux are supported at the kernel level, but neither is enforced by default. The administrator determines the threat model and implements the access controls accordingly.

This level of modularity requires reading manuals and understanding the underlying technologies. Fanne Linux does not hold your hand with GUI installers. The installation process itself is a learning experience, typically executed from a live environment using a series of root commands, partitioning tools, and chroot environments.

Kernel Architecture

The Fanne Linux kernel is compiled with a focus on stability, hardware compatibility, and low latency. However, true to our philosophy of freedom, the provided kernel is merely a starting point. We strongly encourage users to compile their own kernels tailored to their specific CPU architecture and peripheral requirements.

We provide the complete source tree and straightforward Makefile configurations within our repositories. Whether you want to patch the kernel for real-time (RT) processing, strip out drivers for hardware you don't own to reduce boot times to milliseconds, or experiment with experimental schedulers, Fanne Linux provides a frictionless environment for kernel development.

To compile your own kernel on Fanne Linux, you merely need to pull the source, configure your `make menuconfig`, and compile. The system will not attempt to overwrite your custom `vmlinuz` during standard system updates unless explicitly instructed to do so via your package manager configuration.

Repositories & Source Availability

Transparency is mandatory. The entirety of Fanne Linux—from the build scripts that generate the 520MB ISO to the package recipes—is hosted openly on our repositories. You can inspect every line of code, every patch, and every configuration file before it touches your hardware.

Our repositories are split into clear logical categories:

  • Core: The absolute essentials required for a booting system (Kernel, libc, coreutils, package manager).
  • Extra: Standard software that is commonly used but not strictly necessary for boot (Xorg, Wayland, Python, network managers).
  • Community: User-submitted build recipes and software packages, audited for security but maintained by the Fanne Linux community at large.

If you disagree with how a package is compiled in the official repositories, Fanne Linux provides a ports-like system, allowing you to fetch the source, modify the build flags (CFLAGS/CXXFLAGS), and compile the software locally optimized for your exact machine architecture.