Repository navigation
Installation
- Download
VirtualDesktopIndicator-Setup-<version>.exefrom the Releases page. - Double-click it and follow the wizard.
- No .NET install required — the runtime is bundled (self-contained build).
-
No admin rights — installs per-user to
%LocalAppData%\Programs\Virtual Desktop Indicator. - During setup you can choose a desktop shortcut and Run at Windows startup (on by default).
- Uninstall from Settings → Apps → Installed apps, or the Start-menu entry "Uninstall Virtual Desktop Indicator". The autostart entry is cleaned up too.
The installed app checks GitHub Releases for a newer version on startup — see Updates.
The app can also be packaged as an MSIX for the Microsoft Store. In the Store build, updates are delivered by the Store (the GitHub self-update is disabled) and "Run at startup" uses the MSIX startup-task mechanism.
Maintainers: see Microsoft Store (MSIX) for how to build and submit.
A separate build under linux/
targets Linux/X11 with Avalonia UI — same overlay, hotkeys, tray, and settings, adapted to Linux:
-
Desktop detection/switching uses the EWMH X11 protocol
(
_NET_CURRENT_DESKTOP/_NET_NUMBER_OF_DESKTOPS/_NET_DESKTOP_NAMES). -
Global hotkeys use X11 key grabs (
XGrabKey); the "Windows" modifier maps to Super. -
Autostart writes a freedesktop entry to
~/.config/autostart. -
Config lives at
~/.config/VirtualDesktopIndicator/config.json. - Updates are not self-installed — the app notifies you and opens the release page.
Requirements: an X11 (Xorg) session (Wayland is not supported) and a system tray/AppIndicator (on GNOME, the "AppIndicator" extension).
Install from the tarball: extract VirtualDesktopIndicator-linux-x64-<version>.tar.gz
and run ./install.sh (per-user, no root).
⚠️ The Linux build compiles and publishes but has not yet been runtime-tested on a live X11 desktop. Reports from real GNOME/KDE/XFCE sessions are welcome.
Requires the .NET 9 SDK and Windows 10/11 (x64).
dotnet run -c Release # run
dotnet publish -c Release # framework-dependent exe (.NET runtime required)Linux:
dotnet publish linux/VirtualDesktopIndicator.Linux.csproj \
-c Release -r linux-x64 --self-contained true -p:PublishSingleFile=true -o publish-linux
./publish-linux/virtual-desktop-indicatorSee Building & Releasing for the installer and release workflow.