XoL: Running X-Plane on Linux
This documentation covers setup and optimization of X-Plane 12 (Laminar Research) under Linux. It is aimed at experienced Linux users — a working installation is assumed. The examples are based on Debian but transfer to other distributions with minor adjustments.
Where to Start
- Why Linux? Introduction explains what makes X-Plane on Linux different.
- New to X-Plane on Linux? Getting Started covers system requirements, installation, and first launch.
- X-Plane already running? Performance explains the three load dimensions (CPU, I/O, network) before diving into System Tuning.
About This Documentation
The core focus is on Linux system tuning — kernel parameters, CPU governor, GPU drivers, display server selection, and filesystem optimization — complemented by performance analysis using both X-Plane's built-in tools and Linux monitoring utilities. Additional sections cover scenery management with orthophoto streaming, flight operations including ATC procedures, and a reference catalog of Linux-compatible addons and plugins. The guides are modular — individual topics can be implemented independently or combined as needed.
Contributing
This documentation is an open project. Improvements or additions can be contributed via GitHub:
- Create issues for bugs or suggestions
- Submit pull requests for changes
- Share experiences in the discussions in the footer of this website (e.g., via the Discord link)
Featured Video: X-Plane 12 Performance
Recent Changes
2026-08-27
- The section overview pages now carry real orientation text instead of a one-liner — what the section covers, for whom, and in which order to read: Fundamentals, Utilities, Structure & Sources, Orthophotography, Autogen, Scripting, ToLiss Mods, Sounds, Tools, Traffic & Ground Ops, Scenery Plugins, Via KVM, Weather, Online and Videos. Along the way a few summaries were corrected against their detail pages — XRoads hides road polygons on ortho tiles rather than adding traffic, XOrganizer is Windows-only, and on X-Plane 12 openSAM v5 replaces standalone AutoDGS
- Easy Freighter now explains how the cargo door is switched per livery and lists the setup steps
- The Videos pages describe each video with duration and upload date in machine-readable form, so search engines can show them as video results
- The sidebar shows only the active section, which cuts page weight by roughly 40 %; the retired airport blog posts were removed
2026-08-21
- The X-Plane WINCTRL Plugin page was reworked. The vendor now trades as WINCTRL, so "Winwing" is gone from the documentation; WINCTRL means the hardware, the software is the X-Plane WINCTRL plugin. The udev section now recommends Debian's
uaccesstag overMODE="0666"— including the trap that the rule file must be named70-winctrl.rules, because99-*sorts after73-seat-late.rulesand the tag then does nothing. The vendor ID4098is a hexadecimal string (0x4098); the previous note claiming otherwise was wrong. New: custom FMC display fonts as.xpwwffiles, and the rule that buttons assigned in X-Plane take precedence over the plugin. Supported hardware and the SimAppPro comparison were corrected - X-Plane Configuration: new table separating the two device classes — joysticks, yokes and throttle quadrants are handled by the kernel and configured entirely inside X-Plane, while cockpit panels expose a root-only raw HID node and need a udev rule plus a plugin
2026-08-17
- AviTab: new tip on using Little Navmap as a moving map in the AviTab Browser — Little Navmap's built-in web server delivers the map with the live aircraft position to the cockpit tablet, with a working
config.iniexample for Linux; the Little XpConnect page links to it