// overlay for linux
Crosshair
A borderless, permanent, click-through crosshair for your screen.
Draws a crosshair - from an SVG file, or an auto-generated default one - exactly
centered on your primary monitor. It stays on top of every other window and never
intercepts mouse input: clicks pass straight through to whatever is underneath. Built
with plain Xlib + Cairo + librsvg + yaml-cpp - no Qt, no GTK.
// 01
Features
A static overlay and nothing else - no aim assistance, no ESP, no game-state awareness. Just a crosshair that is always exactly where your monitor's center is.
override_redirect window with _NET_WM_STATE_ABOVE
that periodically re-asserts its stacking order, so fullscreen apps and window
managers can't push it behind.
crosshair.svg next to the binary and it's rendered at its
exact pixel size. None there? A compact default is generated automatically on first
run.
some anti-cheat systems flag or prohibit any third-party overlay drawn on top of the game window, purely because it exists - regardless of what it does. Crosshair provides no gameplay advantage, but check that game's terms of service first.
// 02
Install
A pre-built AppImage for Linux on x86_64, or build it yourself - a C++17 compiler and a handful of development packages is all it needs.
Pre-built AppImage (easiest)
No compiler, no dependencies - a single, self-contained file:
$ curl -LO https://github.com/dlehmann/crosshair/releases/latest/download/crosshair-x86_64.AppImage $ chmod +x crosshair-x86_64.AppImage $ ./crosshair-x86_64.AppImage
Arch · CachyOS · Manjaro
Install the build dependencies, then build and install for your user:
$ sudo pacman -S --needed base-devel cmake pkgconf libx11 libxext libxrandr cairo librsvg yaml-cpp $ git clone https://github.com/dlehmann/crosshair.git && cd crosshair $ ./install.sh
Debian · Ubuntu · KDE neon
Install the build dependencies, then build and install for your user:
$ sudo apt install build-essential cmake pkg-config libx11-dev libxext-dev libxrandr-dev libcairo2-dev librsvg2-dev libyaml-cpp-dev $ git clone https://github.com/dlehmann/crosshair.git && cd crosshair $ ./install.sh
Fedora
Install the build dependencies, then build and install for your user:
$ sudo dnf install gcc-c++ cmake pkgconf-pkg-config libX11-devel libXext-devel libXrandr-devel cairo-devel librsvg2-devel yaml-cpp-devel $ git clone https://github.com/dlehmann/crosshair.git && cd crosshair $ ./install.sh
install.sh installs into your user's XDG directories - no root privileges
needed - and adds "Crosshair" to your application launcher. See the
README for a build-only
option, uninstalling, and packaging your own AppImage.
// 03
About
Runs on any X11 desktop, and transparently through XWayland on Wayland compositors like KDE Plasma and GNOME - as long as compositing is enabled, so the transparent background actually renders as transparent.
flock() - no daemon, no socket - released
automatically by the kernel even if the process crashes.
crosshair.yml next to the binary - edit
them for any language, no rebuild required.