Need to use your Linux laptop, desktop PC, or mobile screen as a second monitor for another Linux device? Here’s an application that can do the job easily.
As you may know, GNOME since v41 added support Remote Desktop (RDP) protocol support with ability to create virtual monitors. And, I’ve written about how to manually create virtual monitor in Ubuntu to share with others.
To make life easier, Mirror Hall, a free open-source Python app was born allowing to do the job just by a single mouse click.
It promotes itself as “low-latency virtual display app“, which uses GNOME’s built-in feature to create virtual monitors. And, it uses UDP port (open the port if firewall enabled) for video streaming based on gstreamer
and mutter
screen sharing API.
The app support hardware accelerated encoding for modern Intel/AMD CPUs through VA-API and Qualcomm CPUs via v4l2. For un-supprted CPU/GPU, it will fallback to software rendering at the expense of some performance and CPU load.
As you screen in screenshot above, in the app window just click “Turn Into Mirror” will turn the device’s screen as virtual monitor. On another machine with the app installed, just click on that devices under nearby mirror list will connect and use it as an extended display.
By going to Display setting panel in GCC (Gnome Control Center), you may configure to mirror display, set the display as primary, or configure more just as it’s physically connected.
Besides that, it supports creating virtual screen over RTSP, e.g., for use with VLC, and connect by manually inputting remote IP and port number.
How to Install Mirror Hall
Mirror Hall is NOT usable at production level, as this GNOME feature is experimental! And, the video stream is not encrypted!
The app requires GNOME 41 or higher. Though, in my case it works partly in Linux Mint 22 Cinnamon, it can create virtual monitor (may fallback to RTSP) but can NOT connect.
For Fedora Workstation with 3rd party repository enabled, the app can be installed from GNOME Software.
While Debian, Ubuntu, and other Linux with GNOME may run the commands below one by one to install:
- First, open terminal (Ctrl+Alt+T) and run command to install Flatpak daemon:
sudo apt install flatpak
For other Linux, follow this setup guide instead to enable Flatpak support.
- Then, install the app package by running command:
flatpak install https://dl.flathub.org/repo/appstream/eu.nokun.MirrorHall.flatpakref
After installed the app, either search for and launch from GNOME Overview (log out and back in if app icon no visible), or run the command below to start from terminal which is useful for debugging purpose.
flatpak run eu.nokun.MirrorHall
Uninstall:
To uninstall Mirror Hall virtual display app, open terminal and run command:
flatpak uninstall --delete-data eu.nokun.MirrorHall
Optionally run flatpak uninstall --unused
to remove useless runtime libraries.