On Fri, Sep 11, 2026 at 1:30 AM plat via 9fans <[email protected]> wrote:
> Complex remote graphics are complex. Thankfully, offices and households have
> an advantage - they can use a really long video cable to connect their
> monitor to a powerful server in a faraway room. Now a terminal just has to
> send inputs and here 9P becomes useful and relevant. However, after just a
> bit of tinkering and a bit more searching, I wasn't able to find any way to
> do this via 9P. It seems that the server always either sends a video stream
> or doesn't launch any graphics - nothing in between. VNC works if you
> break/modify it to not send any video, but 9P is much cleaner. I assume it is
> possible somehow, so I wanted to ask for advise
>
> The result that I want to see is that I modify the namespace enough and
> possibly reboot, then switch monitor inputs, and then the HID devices are
> passed through the terminal while the server renders rio at some video port.
> If anyone knows how to do it, I would appreciate the help
To recap: you'd like to run a local terminal and export it's keyboard
and mouse (and maybe audio? unclear) devices to a remote CPU server
that is, itself, connected to a monitor via a very long video cable;
presumably the server also has some graphics adapter that is driving
the monitor over that cable.
The question is then, is it possible to run `rio` (or any graphical
application, I suppose) in a namespace where the HID devices are
coming from the terminal, but video is going to the server's physical
display? The idea would be that your slower speed HID devices are
being accessed remotely via 9P, while the high-bandwidth, fast video
signals are using their native electrical or optical path via whatever
signaling protocol (HDMI, DP; whatever the kids are into these days),
correct?
I don't see why not, modulo questions about device access vis host
ownership and so forth. Assuming you have some mechanism to run a few
commands from your terminal, you could `cpu` into the server machine,
and then `bind /mnt/term/dev/kbdin /dev/kbdin; bind
/mnt/term/dev/mouse /dev/mouse; bind -b '#i' /dev` (possibly others; I
may have forgot something) and then invoke `rio`; perhaps `aux/vga` as
well.
It does beg the question, though: why not also just run a long USB (or
whatever) cable to the server and use it as a terminal?
- Dan C.
------------------------------------------
9fans: 9fans
Permalink:
https://9fans.topicbox.com/groups/9fans/T248f62cc83f47b6d-Ma193796a6ad6868bf66fa98f
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription