Make your LG webOS TV feel at home on your Linux desktop.
Download · User guide · Contribute
Use your LG webOS TV as a Linux PC display with less reaching for the remote.
- Start and stop with your PC. Turn the TV on at boot and wake, and off at shutdown and before system sleep.
- Give the panel a break. Blank it when you step away, restore it when you return, and power off after five more minutes without activity.
- Keep playing. Supported gamepad activity keeps the panel awake on GNOME and compatible native Wayland sessions.
- Get comfortable. Adjust brightness and sound from your desktop.
Move a slider to apply its value, or click the sound icon to toggle mute. Adjust brightness and sound → Screenshots use sample TV data.
| What you can do | GNOME | Compatible native Wayland | Wayland with swayidle |
Other Linux sessions |
|---|---|---|---|---|
| Turn the TV on and off with your PC | ✅ | ✅ | ✅ | ✅ |
| Blank the panel while away and restore it on return | ✅ | ✅ | ✅ | ❌ |
| Keep the panel awake while using a gamepad | ✅ | ✅ | ❌ | ❌ |
| Adjust brightness and sound in the desktop app | ✅ | ✅ | ✅ | ✅ |
| Control the TV, change settings, and update from a terminal | ✅ | ✅ | ✅ | ✅ |
Most modern Linux desktop environments are supported. Automatic desktop detection is the default; most users can leave it selected. If the TV does not blank or restore as expected, follow the screen behavior and troubleshooting guide.
LG Buddy manages one TV. Connect it to the same network as your PC and enable TV On With Mobile / Wake-on-LAN. A static IP address and Always Ready are strongly recommended so the saved address stays valid and the TV remains ready to respond.
Official bundles contain prebuilt binaries. They require GTK 4.14,
libadwaita 1.5, and glibc 2.39 or newer—the Ubuntu 24.04 runtime baseline.
The release installer also needs Python 3 with venv/pip support and Zenity
for its compatibility tools. Install the prerequisites for your distribution:
Dependency commands for Debian/Ubuntu, Fedora, and Arch
sudo apt install python3-venv python3-pip zenity libgtk-4-1 libadwaita-1-0sudo dnf install python3 python3-pip python3-virtualenv zenity gtk4 libadwaitasudo pacman -S python python-pip python-virtualenv zenity gtk4 libadwaitaThe installer can also offer to install missing GTK/libadwaita packages on
these distributions, with your confirmation. Older desktops that need the
deprecated swayidle integration must install swayidle separately.
The shell installer supports conventional Linux installations with writable system locations. First-class NixOS packaging is tracked in issue #24.
-
Download and extract the release archive for your platform.
-
Run the installer as your regular user (no sudo):
chmod +x ./install.sh ./install.sh
The installer requests elevated access when needed.
-
Follow the setup prompts for your TV's IP address, MAC address, HDMI input, and desktop behavior. Keep the TV on and approve its pairing request with the remote.
-
Open LG Buddy from your app launcher. Automatic power and screen behavior runs in the background after setup; the window is there when you want to adjust something.
- Adjust brightness and sound without using the TV remote.
- Choose when the screen blanks and the TV sleeps to suit your desk routine.
- Pair a TV if the app has no saved connection, or change its HDMI input after moving your PC's cable.
- Use terminal commands for shortcuts, scripts, or a desktop without the GUI.
To rerun setup or change installed service wiring, run ./configure.sh from
the extracted release archive.
Read what changed in the release notes on GitHub.
To install the next release while keeping your settings and pairing, run as your regular user:
lg-buddy updates installReview the offered version and confirm to proceed. For preview releases, automatic check preferences, or older installations, see Update LG Buddy.
To build LG Buddy or work on a change, start with the development guide and contribution guidelines. The architecture overview explains how the pieces fit together; the release process covers publishing a version.
- chros73 for
bscpylgtv - JPersson77 for LGTV Companion, the original inspiration
- Faceless3882 for the original shell script implementation
