How to set up remote access for Hyprland desktop environment?

I’m getting into Wayland and tiling window managers lately. Need to keep the same remote workflow I have now.

Currently running a Linux dev VM on Proxmox. My setup has adaptive screen resolution that changes based on the remote client I’m using. This lets me connect from different devices like my main computer, laptop, or tablet without having to mess with tiny display settings. Sessions stay alive when I disconnect too. Sometimes I use Guacamole for browser-based access.

For Wayland remote access, would wayvnc be the right choice if I want web-based connections? Or should I look at NoMachine or RustDesk? I’ve heard about Sunshine/Moonlight but never tried them. People say the cursor handling makes them less ideal for regular work tasks.

When checking Hyprland headless configs, most examples use fixed resolutions instead of dynamic ones. Can Hyprland handle changing display resolution automatically?

I could just use SSH with tmux, but I need to see browser windows when running Playwright tests for debugging purposes.

I’ve been running Hyprland with remote access for 8 months and hit the same issues. For web access, wayvnc + noVNC works great once you get it dialed in. You’ll need to configure wayvnc with proper output scaling and bind it to your virtual display.

Hyprland supports dynamic resolution but won’t do it automatically. I wrote a script that watches VNC connections and adjusts wlr-randr output when someone connects. Set up virtual displays with wlr-output-management and have your script listen for connection events.

This works perfect for Playwright since browsers see the right viewport size right away. One thing that bit me - make sure the compositor recognizes the resolution change before launching apps. I added a small delay in my script and that fixed it.

NoMachine handles this stuff better if you don’t mind proprietary, but wayvnc gives you way more control.

wayvnc + guacamole’s your best option since you’re already set up. I got it working by creating multiple virtual outputs in my hyprland config, then switching between them with wlr-randr when clients connect. It’s not automatic but rock solid. The key is pre-binding each output to different resolutions so switching happens instantly. Way more stable than creating outputs on demand, which crashes half the time.

Been dealing with remote Wayland setups for years. The resolution switching problem drove me crazy until I automated it.

Hyprland handles dynamic resolution changes fine, but you need to trigger them programmatically. I built a system that detects the connecting client resolution and switches the display config automatically.

For your stack: wayvnc works well for VNC. NoMachine’s great but costs money for multiple connections. RustDesk’s decent but still rough.

Automating the workflow is what really matters. I monitor connection events, detect client capabilities, adjust Hyprland resolution, and launch specific apps based on what’s connecting.

For Playwright debugging, you want browser windows to resize and position correctly whether you’re on a tablet or desktop. Manual switching gets old fast.

Latenode can automate all this. Set up workflows for connection detection, resolution switching, and app launching. I use it for my entire remote desktop pipeline and it works great with Hyprland.

Yeah, Hyprland headless with remote access isn’t as simple as X11 but it’s totally doable. I’ve run Sunshine/Moonlight for 6 months now and the cursor problems everyone complains about? Not really an issue - works great for development and debugging browser automation. Sunshine’s different because it grabs compositor output directly instead of using VNC protocols. Performance is way better and resolution switching is smoother. Just set up virtual displays in your Hyprland config and Sunshine finds them automatically. For Playwright testing, Sunshine handles browser windows really well. Stream quality’s good enough to watch your tests run without the lag you’d get from regular VNC. One thing though - make sure your Proxmox VM has proper GPU passthrough or at least software encoding set up. Sunshine needs something to encode the stream or it’ll default to CPU encoding and tank your performance.