Installing a Graphical User Interface (GUI) on a Linux Server instance is a method to create a desktop environment on a cloud server.

Read the post Deploying Windows on Linode [Link] if you need a Windows desktop instead.


INSTALLING GUI

Install desktop environment :

sudo apt install tasksel

Choose the GUI:

  • ubuntu-desktop-minimal (GNOME – Recommended)
  • ubuntu-desktop (GNOME – Default)
  • kubuntu-desktop (KDE)
  • lubuntu-desktop (LXQt)
  • ubuntu-mate-desktop (MATE)
tasksel --list-tasks
sudo tasksel install ubuntu-desktop-minimal
sudo systemctl set-default graphical.target
sudo reboot

It is recommended to disable the animations to speed up Gnome if this is your choice.

gsettings set org.gnome.desktop.interface enable-animations false
gsettings set org.gnome.shell.extensions.dash-to-dock animate-show-apps false
sudo reboot

VNC REMOTE DESKTOP

For GNOME issue the following commands:

sudo apt install tigervnc-standalone-server -y 
su - user
vncpasswd
vncserver -localhost no 
vncserver -list 
vncserver -kill :1

For a lighter alternative use XFCE4:

sudo apt update
sudo apt install xfce4 xfce4-goodies tightvncserver
vncserver
vncserver -kill :1
echo "startxfce4" >> ~/.vnc/xstartup
vncserver

CONFIGURING AUTO LOGON

Edit /etc/gdm3/custom.conf and change accordingly:

AutomaticLoginEnable = true
AutomaticLogin = localUserName

For domain users, it does not work!