Updates manifest id/author, the QML moduleName/ipcTarget, and every doc reference to match. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MLfSWFEMyY85ZDWEYicdaF
3.6 KiB
hypr-rdp Control
Bar widget for hypr-rdp — start/stop it, keep its headless monitor from colliding with your normal workspaces, and manage its credentials, all from the Omarchy bar.
Requirements
- Omarchy on Hyprland
- hypr-rdp itself — the widget can
install it for you (see below), or you can install it first via
yay -S hypr-rdp-git/omarchy pkg aur add hypr-rdp-git
Install
- Copy (or clone) this repository into
~/.config/omarchy/plugins/dotjuice.hypr-rdp/ omarchy plugin enable dotjuice.hypr-rdp --section right(or any bar section you prefer)
The widget appears immediately; no restart of Hyprland or the shell needed.
Remove
omarchy plugin disable dotjuice.hypr-rdp
omarchy plugin remove dotjuice.hypr-rdp
Removing the plugin does not touch hypr-rdp itself, its
systemd --user service, or its config — it only removes the bar widget.
If you also want those gone:
systemctl --user disable --now hypr-rdp.service
rm ~/.config/systemd/user/hypr-rdp.service
rm -f ~/.local/state/omarchy/toggles/hypr/hypr-rdp-isolation.lua
hyprctl reload
omarchy pkg drop hypr-rdp-git # or hypr-rdp
What it does
- Install: if
hypr-rdpisn't onPATH, offers a button that opens a terminal runningomarchy pkg aur add hypr-rdp-git(kept interactive since AUR builds need asudo/makepkgprompt — this plugin never runs privileged commands itself). - Service: start/stop via a
systemd --userunit (~/.config/systemd/user/hypr-rdp.service). Created automatically on first start if it doesn't already exist; never overwritten after that. - Monitor isolation: toggling this creates or removes
~/.local/state/omarchy/toggles/hypr/hypr-rdp-isolation.lua(Omarchy's standard toggle-flag convention — the same oneomarchy toggle window-gapsuses), which pins an isolated workspace (default 11) to thehypr-rdpheadless output viahl.workspace_rule, then runshyprctl reload+hyprctl configerrors. On: Hyprland's normal workspace auto-assignment never reuses that workspace, so starting an RDP session can't silently steal one of your visible workspaces. Off: the headless output behaves like a normal display. Workspace-to-monitor binding is config-file-only in Hyprland (no livehyprctl keywordfor it), so a flip takes effect the next time hypr-rdp (re)starts, not mid-session. If you already have your ownhl.workspace_rulepinning a workspace to thehypr-rdpoutput inmonitors.luaor elsewhere, remove it first — a leftover static rule will keep isolation on regardless of what the widget's toggle shows. - Workspace view: read-only list of windows on the isolated workspace,
plus a Peek/Back button that temporarily swaps it onto whichever monitor
you're on (
hyprctl dispatch workspace <n>) and back. - Credentials: reads/writes
bind,username,passwordin~/.config/hypr-rdp/config.toml, leaving every other key and comment in that file untouched. hypr-rdp doesn't hot-reload its config, so a saved credential change needs a service restart to take effect.
Settings (poll interval, isolated workspace number) are in the plugin's
bar-widget settings panel, backed by manifest.json's schema.
Permissions / capabilities
This plugin never calls sudo or pkexec itself. The one privileged path
is the optional Install button, which opens a visible terminal running
omarchy pkg aur add hypr-rdp-git — you see and approve any password
prompt yourself, the same as running that command by hand.
License
MIT — see LICENSE.