Documentation / Compatibility
Compatibility
What Aphotic-Hypr actually requires to run, and what it doesn’t support.
Aphotic was previously known as Noctis-Hypr.
Operating System
Arch Linux / AUR-based only
Aphotic assumes an Arch/AUR base and leans on that assumption throughout the installer. Package resolution, the AUR helper detection, and the BlackArch integration for the exploit layer all depend on it. Two distros beyond plain Arch are tested and supported directly:
- Omarchy: a Hyprland-based Arch distro with its own competing desktop shell, pacman-update guard, and idle screensaver.
install.shdetects it (detect_omarchy()) and handles each of those. It works around Omarchy’s own update guard rather than fighting it, stops Omarchy’s own shell the same way Aphotic already replaces Waybar/Mako/Rofi on any install (see below), keeps Omarchy’s idle screensaver working through Aphotic’s ownhypridleconfig instead of dropping it, and leaves Omarchy’s own sddm login in place rather than switching to the Aphotic greeter. Verified on a fresh Omarchy ISO install, full out-of-box setup. - EndeavourOS, installed with Desktop Environment: None: architecturally identical to a minimal Arch/AUR install, with no competing DE to account for.
./install.sh, reboot, remove the install media.
Other Arch-based derivatives (Manjaro and similar) may happen to work if their package/AUR layout matches upstream Arch closely enough, but they aren’t tested or officially supported beyond the two above. Issues specific to an untested derivative are lower priority than issues on plain Arch, Omarchy, or EndeavourOS.
Not supported
- Debian/Ubuntu-based systems, Fedora/RHEL-based systems, or any non-AUR distribution
- Windows or macOS
- X11 sessions — Aphotic is Wayland-native throughout and requires Hyprland
Window Manager
Aphotic requires Hyprland. There’s no fallback compositor and no plan to add one — the Quickshell shell, keybinds, and window-management features are all built directly against Hyprland’s IPC and protocols.
The Stack
These are the main components Aphotic installs and configures:
| Layer | Choice |
|---|---|
| Window Manager | Hyprland |
| Shell (bar, launcher, notifications, OSD, lock, power menu, dashboard, screenshot picker) | Quickshell — hand-vendored, fully custom QML |
| Terminal | Kitty |
| File Manager | Thunar |
| Wallpaper Engine | awww |
| Colour generation | wallust, with matugen as a per-theme option |
| Login screen | The Aphotic greeter on greetd (sddm is kept as the fallback where it is installed, which the full profile does) |
| Terminal shell | ZSH with Oh My Zsh and Powerlevel10k (full profile), and an optional Starship prompt |
| Audio Visualizer | Cava |
Waybar, Mako, and Rofi are retired — the Quickshell shell (hand-vendored QML checked into the repo, not an installed dependency) replaces them natively: the bar, notifications, and the launcher (app search, clipboard history, emoji picker, window switcher, wallpaper picker — see Supported Features). Neither profile installs Waybar, Mako or Rofi, and nothing in the repo launches them. The lock screen is Aphotic’s own too: Super+L and idle locking use the Quickshell lock surface. swaylock-effects is still installed in both profiles, because the session menu’s Lock button runs swaylock and the Quickshell lock authenticates through swaylock’s PAM service.
On Omarchy specifically, this same replacement extends to Omarchy’s own bar, notifications, and lock screen: Aphotic’s shell fully replaces them. This loses no real functionality. Aphotic’s own hypridle-driven lock already covers what Omarchy’s shell-based lock provided, and everything else Omarchy-specific (fcitx5, tailscale, crash-watch, the omarchy CLI itself, the idle screensaver) is a separate systemd service or standalone binary that keeps working untouched.
Profiles
| Profile | What you get |
|---|---|
minimal |
Hyprland, Quickshell, Kitty, awww, wallust, the Aphotic greeter (greetd), plus every binary the always-loaded Quickshell shell runs (grim/slurp/swappy, brightnessctl, pamixer, swaylock-effects, NetworkManager, Blueman, Cava, fonts and icon themes). |
full |
Everything in minimal, plus apps (Firefox, Thunar with archive/GVFS/thumbnail support, VS Code, mpv, btop, pavucontrol), shell tooling (ZSH, Oh My Zsh, Powerlevel10k, Starship), Pywalfox, Bluetooth tools, and sddm as the fallback login screen. |
Layers (gaming, dev, ai, exploit and its sublayers) merge on top of either profile. See Profiles & Layers for the full breakdown.
AUR Helper
AUR-sourced packages go through an AUR helper, yay or paru. install.sh uses whichever one is on PATH, and builds yay from the AUR itself if neither is present. You don’t need to install one first.
GPU
No GPU vendor is required or excluded — Intel, AMD, and NVIDIA all work under Wayland/Hyprland. NVIDIA has a couple of install-time knobs worth knowing about:
install.sh --nvidia-driver <keep|reinstall>— only relevant if an NVIDIA driver is already installed.keepleaves it alone;reinstallreplaces it with Aphotic’s recommendednvidia-open-dkms. Non-interactive runs default tokeep.- The optional Aphotic Assistant (
install.sh --with-assistant, part of theailayer) is NVIDIA-only and is silently unavailable on other GPUs.
Network
- Installation needs internet access for package downloads (official Arch repos, AUR, and BlackArch if any
exploit-*layer requiring it is selected). - Runtime is offline-capable for the core shell. A few optional features reach the network on demand: the Dashboard’s weather card (Open-Meteo), community theme and plugin installs from the remote index, and Ollama/cloud AI providers if configured.
Firefox / VS Code theming caveats
- Firefox theming requires the Pywalfox extension — without it, Firefox won’t pick up the generated palette.
- VS Code theming uses the Wal Theme extension, which
install.shunpacks into~/.vscode/extensionswhenever it deploys Aphotic’s configs. VS Code itself is in thefullprofile. - GTK3 and GTK4/libadwaita apps take the active theme’s colours. See Theming.
Known Limitations
- Arch/AUR-only, as above — this is a design decision, not a temporary gap.
- Live per-monitor resolution/scale editing isn’t wired up in Settings → Displays; it’s blocked on a real Hyprland limitation (
hyprctl keyword monitordoesn’t reapply), not just unbuilt. - Dock, Minimal and Capsule bar styles don’t have the hover-popout system that Full and Taskbar have.
Reporting Compatibility Issues
Open an Issue with your distro/version, Hyprland version, GPU, the profile/layers you used, and steps to reproduce.