SSH is text-only, but some COSMOS tools have a graphical interface — GNU Radio Companion, spectrum displays, Mininet, IDEs. This page covers the two supported ways to get a remote GUI onto your screen, and the per-OS setup for each.
Prerequisites: an approved reservation and SSH access to your domain console — see SSH and Remote Access.
| Method | Best for | Setup |
|---|---|---|
| X11 forwarding | one or a few graphical windows over an existing SSH session | this page |
| Chrome Remote Desktop | a full, persistent desktop (many windows, browser, file manager) | Chrome Remote Desktop |
| VNC over an SSH tunnel | advanced / custom | port tunnel on SSH Tunnels |
The rest of this page covers X11 forwarding. For the desktop option use the dedicated Chrome Remote Desktop page above.
A graphical Linux app on a node is an X11 client; it draws onto an X server running on your local machine. SSH forwards that traffic with the -X (or -Y on macOS) flag. Forward it on every hop: if you SSH to the console and then to a node, both ssh commands need the flag.
# your laptop -> console -> node, forwarding graphics the whole way
user@laptop:~$ ssh -X user@console.sb1.cosmos-lab.org
user@console:~$ ssh -X root@node1-1
root@node1-1:~$ gnuradio-companion # window opens on your local screen
You also need an X server running locally. Pick your OS:
Nothing to install — you are already running an X server. Just use -X (or -Y) on each ssh command as shown above.
Install XQuartz (not included by default), then log out and back in (or reboot) so the X server is available. Use -Y instead of -X on macOS:
user@mac:~$ ssh -Y user@console.sb1.cosmos-lab.org
Windows has no built-in X server — install one, plus an SSH client. Common free options:
MobaXterm (all-in-one, recommended): open a new SSH session to console.<domain>.cosmos-lab.org; X forwarding is on by default, so launching a graphical app just works. Add a second hop to the node inside that session.
PuTTY + VcXsrv (worked example → node1-1 on sb1):
console.sb1.cosmos-lab.org.localhost:0.ssh -X root@node1-1 and start your graphical app — it renders through VcXsrv on your Windows desktop.-X/-Y on every hop. On macOS use -Y. See also the FAQ and SSH Tips.