Luxel app icon — a deep violet X on a violet-to-magenta squircle

Control your LIFX lights and SmartLife plugs from the Linux desktop

Luxel is a native GNOME app that runs your LIFX smart bulbs and SmartLife/Tuya smart plugs right on your network — no phone, no cloud account. Group lights into rooms, save scenes, and dial in the perfect color or warm white.

View on GitHub
  • Open source · AGPLv3
  • No cloud account needed
  • Native GNOME · GTK4

Your whole house of lights, one calm panel

Everything you need to run your LIFX bulbs and SmartLife plugs from the desktop — fast, local, and without the bloat.

Luxel showing an All Lights master row and a Basement room of nine bulbs, each with a color chip, power switch, and details button The Basement room's inline color panel slid open, with the Colors/Whites toggle, hue wheel, hex entry, and brightness slider

Local control, no cloud

Bulbs are discovered directly on your Wi-Fi/LAN with the LIFX UDP protocol and controlled with millisecond latency. No account, no internet required.

Performant & clean

Built in Rust with GTK4 & libadwaita. Instant startup, buttery sliders, and an interface that feels right at home on GNOME.

Rooms

Bulbs are grouped into room sections automatically from their LIFX group — or assign any bulb to a different or brand-new room.

A real color wheel

A LIFX-style hue & saturation wheel — white at the center, colors toward the rim — plus an RGB hex entry for exact shades.

Warm whites, tuned

A color-temperature slider from candlelight to daylight (1500–9000 K), a typed kelvin entry, and the live LIFX shade name — Incandescent, Daylight, and friends.

Whole-house control

Every room header has its own color button, power switch, and brightness slider — and an “All Lights” row drives the entire house at once.

Scenes

Save the current state of your lights under a name and restore it with one click — choosing exactly which lights each scene includes. Stored locally, no cloud needed.

Live state polling

Changed a light from the LIFX app or a physical switch? Luxel notices and updates automatically — and bulbs gray out when they’re unreachable.

Per-bulb controls

Every bulb gets its own power switch, brightness slider, and a Colors / Whites mode toggle — simple things stay simple.

Isolated IoT networks

Bulbs and plugs on a separate subnet or VLAN? List their subnets in Settings and Luxel probes them with directed broadcast and a unicast sweep that routes across VLANs.

SmartLife smart plugs

Tuya-based plugs from the SmartLife app work right alongside your bulbs — controlled entirely over your LAN with an ON/OFF chip, rooms, scenes, and the All Lights switch included.

Guided plug setup

A built-in wizard walks through the one-time Tuya key setup, fetches your devices automatically, and finds them on your network — even across VLANs. After that, the cloud is never needed again.

Optional LIFX Cloud

Add a personal access token to list and control lights through the cloud — handy away from home. When a bulb is reachable both ways, local control always wins.

Keyboard friendly

Rescan with Ctrl+R, open Settings with Ctrl+,, quit with Ctrl+Q — plus full keyboard navigation and a shortcuts dialog, the GNOME way.

Local-first

Your lights. Your network. Nobody else’s.

Luxel talks straight to your bulbs and plugs over your own LAN. No account to create, no data harvested, nothing phoning home. Your home stays home.

  • Zero telemetry

    No analytics, no tracking, no “anonymous usage data.” None.

  • Works fully offline

    Discovery and control run over your LAN. Cloud use is strictly opt-in — a one-time key fetch sets up SmartLife plugs — and local control is always preferred.

  • Tightly sandboxed

    The Flatpak asks for network access and nothing else — no filesystem access, no devices, no surprises.

0 accounts, trackers & telemetry pings

Free & open source, forever

Luxel is released under the GNU AGPLv3.

Built with AI, shipped by a human

Most of Luxel's code is written with Anthropic's Claude — directed, reviewed and tested by a human maintainer who signs off on every release. The artwork is human-made. And the app itself contains no AI: no AI features, no requests to AI services — it talks only to your lights and smart plugs on your own network. Read the full AI notice →

Give Luxel a try

Install it, hit rescan, and your lights are on your desktop.

What you’ll need

  • 64-bit Linux (x86_64). No ARM or Apple Silicon build yet.
  • Flatpak, with Flathub enabled. Luxel installs from luxel.hyprlab.co, but it runs on the shared GNOME 50 runtime hosted on Flathub — so installing pulls that runtime the first time. Your distro version barely matters as a result; even older LTS releases work.
  • A Wayland or X11 session. Wayland-native, with an X11 fallback.
  • LIFX bulbs or SmartLife smart plugs on your network. LIFX uses the LAN protocol (UDP port 56700); SmartLife/Tuya plugs use TCP port 6668. If your devices live on a separate IoT VLAN, your router’s firewall must allow traffic from this machine to that network on those ports.

Recommended: working GPU drivers (OpenGL / Mesa), ~4 GB RAM, and a GNOME-style desktop — though it runs fine on KDE and others. Uses ~1.1 GB for the shared GNOME runtime (reused across your Flatpak apps) plus a few MB for Luxel itself. A LIFX Cloud personal access token is only needed if you opt into cloud control, and SmartLife plugs need a free Tuya developer account once during setup — the in-app wizard walks you through it.

Will it run on my distro?

100% compatible — works out of the box

Fedora, RHEL, and their relatives (Rocky, Alma, CentOS Stream, Nobara, Silverblue…) ship GNOME and Flatpak with Flathub already enabled. There’s nothing to set up. Just install Luxel:

flatpak install --from https://luxel.hyprlab.co/flatpak/io.github.hyprlab.Luxel.flatpakref

Found a bug or have a feature idea? The best way to reach the project is to open an issue on GitHub. Please search existing issues first, then include your Luxel version, your distro and desktop, and the steps to reproduce.

Luxel is free and open source. If it brightens your smart light experience, please consider supporting its development at the link below. Thank you!