PCDeck icon PCDeck

How to Control a Linux PC or Steam Deck From Your Phone

Whether you're running Ubuntu on a desktop, managing a headless Raspberry Pi home server, or using a Valve Steam Deck in desktop mode, PCDeck turns your phone into an offline wireless trackpad, keyboard, and screen viewer.

Updated 22 September 2026 · Ubuntu 24.04, Debian, Fedora, Arch Linux, SteamOS & Raspberry Pi · X11 & Wayland

Direct Answer

Yes. You can control any Linux PC or Valve Steam Deck from an Android phone or mobile web browser over local Wi-Fi. PCDeck runs on Linux via a single terminal install command, binding an input and streaming server on port 8000. It translates mobile touch gestures into native Linux pointer and keyboard events (via X11 / Wayland input subsystems) and streams audio and screen frames with zero cloud configuration.

Universal 1-Line Linux Install

Run this command in any Linux terminal to install and start PCDeck:

curl -sSL https://pcdeck.vercel.app/install.sh | bash

Inspect the script or read full technical documentation: Linux Installation & Security Docs →

📱

Reading on your phone? Run PCDeck on your Linux PC.

Email the 1-line curl command to yourself, or copy it to run in your PC terminal.

Supported Linux distributions and platforms

PCDeck is engineered to run seamlessly across major Linux distributions:

Steam Deck (SteamOS)

Desktop Mode Terminal

Power → Switch to Desktop → Konsole:

curl -sSL https://pcdeck.vercel.app/install.sh | bash
Ubuntu / Debian / Mint

APT & Firewall

Allow local LAN port 8000:

sudo ufw allow 8000/tcp
Fedora / RHEL

firewalld Configuration

Open firewall port 8000 permanently:

sudo firewall-cmd --add-port=8000/tcp --permanent && sudo firewall-cmd --reload
Arch Linux / Manjaro

Pacman / Dependencies

Native Python 3 environment:

sudo pacman -S python python-pip && curl -sSL https://pcdeck.vercel.app/install.sh | bash

Step-by-step setup on Linux

  1. Run the installer command in terminal

    Open your Linux terminal (or switch to Desktop Mode on Steam Deck and open Konsole) and run:

    curl -sSL https://pcdeck.vercel.app/install.sh | bash

    The installer verifies Python 3, sets up the local user environment, and starts the PCDeck server.

  2. Pair your phone via QR code or local IP

    The terminal displays a clean ASCII QR code and your Linux machine's local IP address (e.g. 192.168.1.100:8000). Scan the QR code with your phone camera or enter the URL into your browser.

    Scanning QR code to pair phone with Linux PC
    Figure 1: Scan the on-screen QR code or open http://[linux-ip]:8000 on your phone.
  3. Navigate and control Linux

    Your phone screen becomes an active multi-touch trackpad and keyboard. Move your finger to steer the mouse pointer in GNOME, KDE Plasma, XFCE, or i3.

    Phone acting as multi-touch trackpad for Linux desktop
    Figure 2: Touch trackpad surface steering the mouse pointer on Linux desktop.

⚡ Linux & Steam Deck Connection Checklist

  • Same Local Network: Connect your phone to the exact same Wi-Fi router or hotspot as your Linux PC or Steam Deck.
  • Firewall (UFW / firewalld): If connections time out, permit port 8000: sudo ufw allow 8000/tcp.
  • 100% Offline & Private: All input deltas stay strictly within your local subnet with zero cloud relay.

Steam Deck in Desktop Mode: The Ultimate Couch Companion

When you switch your Valve Steam Deck to Desktop Mode to install emulators with EmuDeck, configure ModOrganizer, or browse in Firefox, navigating with the built-in thumbsticks and tiny trackpads is cramped and slow. Plugging in physical mice and keyboards requires a bulky USB-C dock or Bluetooth pairing that often disconnects.

Running PCDeck gives you a full-sized multi-touch trackpad and responsive keyboard on your smartphone screen right from your couch. You can tap to left click, two-finger tap to right click, smoothly scroll long web pages, and paste terminal commands into Konsole with zero latency over local Wi-Fi. No hardware adapters, dongles, or docking stations needed.

Ubuntu 24.04 LTS & Modern Wayland Compositors

Ubuntu 24.04 LTS (Noble Numbat), Fedora 40+, and modern Arch Linux installations run Wayland by default under GNOME 46 or KDE Plasma 6. Legacy remote control tools rely on X11 xdotool or XTest, which fail or introduce severe input latency under Wayland security boundaries.

PCDeck avoids this limitation by interfacing directly with the Linux kernel's uinput subsystem (/dev/uinput). Touch events received from your phone browser generate kernel-level evdev mouse and keyboard events that Wayland compositors recognize natively without requiring root permissions or Xwayland emulation.

Headless Raspberry Pi & Linux Home Server (systemd Autostart)

If you run a headless home server, home lab, or media center on a Raspberry Pi 4/5 or Ubuntu Server, PCDeck acts as an instant emergency monitor viewer and touch mouse whenever you need to check on services without connecting an HDMI monitor.

To configure PCDeck to start automatically whenever your Linux machine boots, enable it as a lightweight systemd user service:

systemctl --user enable --now pcdeck

Once active, bookmark http://[server-ip]:8000 in your smartphone browser for instant local LAN access anytime.

Firewall Note for Linux Users

If you have ufw or firewalld enabled, ensure port 8000 is permitted for incoming local network connections: sudo ufw allow 8000/tcp.

Linux Remote Control FAQ

How do I control a Steam Deck in Desktop Mode from my phone?

Switch your Steam Deck to Desktop Mode (press Steam button → Power → Switch to Desktop). Open Konsole, paste curl -sSL https://pcdeck.vercel.app/install.sh | bash, and press Enter. A pairing QR code will appear on screen. Scan it with your phone's camera, and your phone will instantly become a wireless trackpad and keyboard for your Steam Deck with zero app installs.

Does PCDeck support both Wayland and X11 on Linux?

Yes. PCDeck detects whether your session is running under X11 or Wayland (GNOME 40+, KDE Plasma 6, Sway, Hyprland) and interfaces with Linux uinput and synthetic input layers so cursor motion, clicks, and typing work seamlessly on any modern desktop environment.

Does PCDeck work on Ubuntu 24.04 LTS with Wayland?

Yes. PCDeck interfaces directly with the Linux kernel uinput subsystem (/dev/uinput), generating virtual mouse and keyboard events recognized natively by GNOME 46 on Ubuntu 24.04 LTS, KDE Plasma 6, Sway, and Hyprland without Xwayland overhead.

Can I control Linux from an iPhone or iPad without installing an app?

Yes. PCDeck runs an instant HTTP Web Remote on port 8000. Open Safari on iPhone or iPad, scan the pairing QR code displayed in your Linux terminal, and control your mouse pointer, scrolling, and keyboard directly from the browser with zero App Store downloads via Web Remote.

How do I allow PCDeck through the Linux firewall?

If connections time out, open port 8000 for your local subnet: on Ubuntu/Debian use sudo ufw allow 8000/tcp; on Fedora/CentOS use sudo firewall-cmd --add-port=8000/tcp --permanent && sudo firewall-cmd --reload.

Can I control a headless Ubuntu or Raspberry Pi home server without a monitor?

Yes. Start PCDeck as a background service or systemd user service. As long as your Raspberry Pi or headless machine shares the same local network, open http://[server-ip]:8000 in your phone browser to send input or view screen frames.

Get PCDeck for Linux — Free Local Remote Control

Control Linux and Windows PCs from your smartphone or browser over local Wi-Fi with zero telemetry.

Ubuntu · Debian · Fedora · Arch · SteamOS · Raspberry Pi · 100% Offline LAN