sudo steamos-readonly disable
systemctl --user enable v2ray systemctl --user start v2ray
mkdir -p ~/.config/systemd/user nano ~/.config/systemd/user/v2ray.service Paste:
sudo pacman-key --init sudo pacman-key --populate archlinux sudo pacman -S v2ray
[Unit] Description=V2Ray Service After=network.target [Service] Type=simple ExecStart=/usr/bin/v2ray run -config %h/.config/v2ray/config.json Restart=on-failure RestartSec=5
mkdir -p ~/.config/v2ray nano ~/.config/v2ray/config.json Paste your V2Ray client config (VMess, VLESS, etc. from your provider). Save ( Ctrl+X , Y , Enter ).
The most reliable approach for Steam Deck is command-line V2Ray core with a systemd user service . It runs quietly in the background, works in both Desktop and Game modes, and survives system updates (reinstall only if Pacman packages are wiped). Avoid GUI clients – they add unnecessary overhead on the Deck’s constrained resources.
[Install] WantedBy=default.target
"protocol": "socks", "port": 10808, "settings": "auth": "no", "udp": true , "tag": "socks-in" ,
"protocol": "http", "port": 10809, "settings": "auth": "no" , "tag": "http-in"
v2ray run -config ~/.config/v2ray/config.json Press Ctrl+C to stop after confirming no errors.