SSH Access and X11 Forwarding¶
If you need to use the development board in a “headless” configuration – without using either the LCD screen or an attached HDMI display – it is possible to run a shell and applications, displaying them on a workstation’s display over a network.
Once you have networking set up for the development board, you should be able
to log in using ssh
once the OpenSSH daemon has started. This may take
some time due to a lack of entropy (see linux-emcraft issue 2 for details).
Setting Up and Testing¶
Log in to the board using one of the network connections (Wi-Fi or Ethernet) as
the user purism
using the default password 123456
.
Install the xauth
package to enable X11 authorization. X11 forwarding is
already enabled by default in the sshd
configuration.
Log out and log in again using ssh -X
and check that the environment has
the DISPLAY
variable set.
To run a GNOME application, like gnome-chess, on the board while displaying
the output on a workstation running an X server, set the GDK_BACKEND
environment variable [1] when running the executable, like this:
GDK_BACKEND=x11 gnome-chess
The application should appear on the workstation’s screen.
[1] | Described in the Running GTK Applications GNOME developer document. |
Running Phosh in an X Window¶
One way to experiment with Phosh, the shell used for the Librem 5, is to run it in an X window using the Xephyr nested X server. On Debian-based systems, install the server on your workstation using the following command:
sudo apt install xserver-xephyr
Start a nested X session by running Xephyr like this:
Xephyr -screen 768x1024 +extension DPMS :1
This creates an X display that the development board can use, which it will access via SSH as in the previous section. However, we log in to the board with a command like the following:
DISPLAY=:1 ssh -XC purism@pureos-test
Replace pureos-test
with the address of the development board on your
network. Note the use of the option to enable compression; this may help speed
up redrawing of the display.
Once you have logged in, stop any existing Phosh session
systemctl stop phosh
Then simply run Phosh with this command:
phosh
The lock screen should appear in the Xephyr window. Unlock the screen by
clicking and dragging upwards or by pressing the space bar, then enter the
purism
user’s default password 123456
to access the shell, either by
clicking on the buttons or by pressing the number keys on the keyboard.
Note: If you have changed the password to contain characters other than digits then it will not be possible to log in. Change the password to contain only digits.