KDE, GNOME, MATE and others

GNOME

GNOME is the most used session manager for workstations and desktop. It provides a good balance between performance and UI experience. GNOME with GDM (display manager) is also the most popular environment for DCV users, with excellent stability and compatibility with advanced 3d rendering applications.

RedHat and Ubuntu Linux based distributions

We recommend to use our script under our github. Click here to check.

The script is compatible with most used Linux versions based in RedHat or Ubuntu. You can check in our github the full list.

You can setup without GPU support, or with NVIDIA or AMD support:

bash DCV_Installer.sh --without-interaction --dcv_server_install=true
bash DCV_Installer.sh --without-interaction --dcv_server_install=true --dcv_server_gpu_nvidia=true
bash DCV_Installer.sh --without-interaction --dcv_server_install=true --dcv_server_gpu_amd=true

The installation will be automatic.

KDE

We have a lot of success cases using DCV over KDE Plasma environment.

RedHat stopped to officialy support KDE since EL8, but with third repositories we can achieve KDE environments under Rocky, Alma and Oracle Linux. As Ubuntu still offer KDE as a supported option, this is an excellent option when Ubuntu is possible.

Here we describe some tweaks to install (from scratch) and improve your KDE environment to get the best DCV experience.

Important notes:

  • Is possible to run GDM (display manager) and KDE, but as GNOME not officialy supports KDE, we strongly recommend to use SDDM, the usual display manager for KDE.
  • You need to use X11 instead of Wayland.

Ubuntu 24

Relevant notes:

  • This tutorial was made and tested for Ubuntu 24, but you can expect same or very similar configuration with other versions and Ubuntu based distros.
  • This tutorial was tested with DCV console and virtual types.
  • If you will not use GPU, avoid to setup dcv-gl packages.
  1. Setup Ubuntu server 24.04.
  2. sudo apt-get update
  3. sudo apt-get -y upgrade
  4. sudo apt-get -y install kubuntu-desktop
  5. Download DCV Server and install all packages: https://www.ni-sp.com/dcv-download/
    sudo apt-get install ./*.deb
    Use apt-get to setup the .deb files. If you have dependencies issues, execute the command below and install the .deb files again. Do not setup DCV GL packages if you will not use GPU.
    sudo apt --fix-broken install
  6. Edit, or create, the file /etc/sddm.conf and set:
    [General]
    DisplayServer=x11
    [X11]
    DisplayCommand=/usr/share/sddm/scripts/Xsetup
  7. sudo dpkg-reconfigure sddm
  8. sudo systemctl daemon-reload
  9. sudo systemctl enable --now sddm
  10. sudo systemctl enable --now dcvserver
  11. Create the directory:
    sudo mkdir -p /run/user/$(id -u sddm)
    sudo chown sddm:sddm /run/user/$(id -u sddm)
    sudo chmod 700 /run/user/$(id -u sddm)
  12. Edit the file /usr/share/sddm/scripts/Xsetup and add in the first lines:
    #!/usr/bin/sh
    # Xsetup - run as root before the login dialog appears

    # BEGIN-DCV
    if (! command -v dcvgladmin || ! dcvgladmin status) > /dev/null

    then
    dcvxgrantaccess +dcv
    else
    dcvxgrantaccess
    fi


    xhost +si:localuser:sddm
    killall -u sddm dcvagentlauncher
    XAUTHORITY="" XDG_RUNTIME_DIR=/run/user/$(id -u sddm) /sbin/runuser -u sddm /usr/lib/x86_64-linux-gnu/dcv/dcvxdgagentlauncher &
    # END-DCV
  13. sudo systemctl restart sddm dcvserver

Final notes:

  • If login is not working, make sure that users have home directory created.
  • You need to use x11 instead of Wayland.

Rocky 9

Relevant notes:

  • This tutorial was made and tested in Rocky 9, but you can expect same or very similar configuration with other versions (except 7) and other RedHat based distros (Oracle, Alma Linux etc).
  • This tutorial was tested with DCV console and virtual types.
  • If you will not use GPU, avoid to setup dcv-gl packages.
  1. Setup Rocky 9 or other EL9 environment
  2. sudo dnf -y update
  3. sudo dnf -y install epel-release
  4. sudo dnf config-manager --set-enabled crb
  5. sudo dnf --enablerepo=epel group -y install "KDE Plasma Workspaces" "base-x"
  6. Edit, or create, the file /etc/sddm.conf and set:
    [General]
    DisplayServer=x11
    [X11]
    SessionDir=/usr/share/xsessions
    DisplayCommand=/etc/sddm/Xsetup
  7. sudo systemctl set-default graphical
  8. sudo systemctl start graphical.target
  9. Download DCV Server and install all packages: https://www.ni-sp.com/dcv-download/
    Install the .rpm files using dnf. Do not setup DCV GL packages if you will not use GPU.
    dnf install ./*.rpm
  10. sudo systemctl enable --now sddm dcvserver
  11. Create the directory:
    sudo mkdir -p /run/user/$(id -u sddm)
    sudo chown sddm:sddm /run/user/$(id -u sddm)
    sudo chmod 700 /run/user/$(id -u sddm)
  12. Edit the file /etc/sddm/Xsetup and add (or complete the missing parts):
    #!/usr/bin/sh
    # Xsetup - run as root before the login dialog appears

    # BEGIN-DCV
    if (! command -v dcvgladmin || ! dcvgladmin status) > /dev/null

    then
    dcvxgrantaccess +dcv
    else
    dcvxgrantaccess
    fi


    xhost +si:localuser:sddm
    killall -u sddm dcvagentlauncher
    XAUTHORITY="" XDG_RUNTIME_DIR=/run/user/$(id -u sddm) /sbin/runuser -u sddm /usr/libexec/dcv/dcvxdgagentlauncher &

    export KWIN_COMPOSE=O2ES
    # END-DCV
  13. Create the file /usr/share/xsessions/plasma-dcv.desktop with the content:
    [Desktop Entry]
    Name=Plasma (DCV)
    Comment=DCV KDE Plasma
    Exec=/usr/bin/dbus-launch --exit-with-session /usr/bin/startplasma-x11
    TryExec=/usr/bin/startplasma-x11
    Type=XSession
    X-Flatpak=false
  14. Backup and move out any other .desktop from /usr/share/xsessions/ to avoid users selecting not compatible xsessions.
  15. sudo systemctl restart sddm dcvserver

MATE

Here are the steps to get a complete environment running MATE environment.

Rocky 9

  1. sudo dnf -y update
  2. sudo dnf config-manager --set-enabled crb
  3. sudo dnf install -y epel-release
  4. sudo dnf install -y NetworkManager-adsl NetworkManager-bluetooth NetworkManager-libreswan-gnome NetworkManager-openvpn-gnome NetworkManager-ovs NetworkManager-ppp NetworkManager-team NetworkManager-wifi NetworkManager-wwan adwaita-gtk2-theme alsa-plugins-pulseaudio atril atril-caja atril-thumbnailer caja caja-actions caja-image-converter caja-open-terminal caja-sendto caja-wallpaper caja-xattr-tags dconf-editor engrampa eom firewall-config gnome-disk-utility gnome-epub-thumbnailer gstreamer1-plugins-ugly-free gtk2-engines gucharmap gvfs-fuse gvfs-gphoto2 gvfs-mtp gvfs-smb initial-setup-gui libmatekbd libmatemixer libmateweather libsecret lm_sensors marco mate-applets mate-backgrounds mate-calc mate-control-center mate-desktop mate-dictionary mate-disk-usage-analyzer mate-icon-theme mate-media mate-menus mate-menus-preferences-category-menu mate-notification-daemon mate-panel mate-polkit mate-power-manager mate-screensaver mate-screenshot mate-search-tool mate-session-manager mate-settings-daemon mate-system-log mate-system-monitor mate-terminal mate-themes mate-user-admin mate-user-guide mozo network-manager-applet nm-connection-editor p7zip p7zip-plugins pluma seahorse seahorse-caja xdg-user-dirs-gtk mate-utils
  5. sudo dnf install -y xorg-x11-server-Xorg xorg-x11-drivers xorg-x11-utils xorg-x11-xinit plymouth
  6. sudo dnf install -y lightdm-settings lightdm
  7. sudo systemctl set-default graphical.target
  8. Download DCV Server and install all packages: https://www.ni-sp.com/dcv-download/
    Install the .rpm files using dnf. Do not setup DCV GL packages if you will not use GPU.
    dnf install ./*.rpm
  9. sudo systemctl enable --now dcvserver

CINNAMON

Rocky 8, Using Lightdm

  1. sudo dnf -y update
  2. sudo dnf install -y epel-release
  3. sudo dnf config-manager --set-enabled crb
  4. sudo dnf install -y lightdm lightdm-settings slick-greeter-cinnamon
  5. sudo dnf install -y cinnamon

Rocky 9, using GDM

  1. sudo dnf -y update
  2. sudo dnf install -y epel-release
  3. sudo dnf config-manager --set-enabled crb
  4. sudo dnf install -y cinnamon
  5. sudo dnf install -y gdm tar
  6. Download DCV Server and install all packages: https://www.ni-sp.com/dcv-download/
    Install the .rpm files using dnf. Do not setup DCV GL packages if you will not use GPU.
    dnf install ./*.rpm
  7. Create the file /etc/xdg/autostart/dcvagentlauncher.desktop with the content:
    [Desktop Entry]
    Version=2024.0.18131
    Name=DCV Agent Launcher
    Comment=Start the DCV Agent Launcher
    Exec=/usr/libexec/dcv/dcvxdgagentlauncher
    Terminal=false
    Type=Application
    Categories=
    GenericName=
    X-GNOME-Autostart-Phase=WindowManager
    X-KDE-autostart-phase=1
    NoDisplay=true
  8. Edit the file /etc/gdm/Init/Default and check if you have the code below. If not, add in the second line:
    ## BEGIN-DCV
    if (! command -v dcvgladmin || ! dcvgladmin status) > /dev/null
    then
    dcvxgrantaccess +dcv
    else
    dcvxgrantaccess
    fi
    ## END-DCV
  9. sudo systemctl enable --now gdm
  10. sudo systemctl set-default graphical.target
  11. Edit the file /etc/gdm/custom.conf and set:
    [daemon]
    WaylandEnable=false
    DefaultSession=cinnamon.desktop
  12. sudo -u gdm dbus-launch gsettings set org.gnome.desktop.session session-name "cinnamon"
  13. sudo systemctl enable --now dcvserver
  14. If you do not need to provide GNOME session environment, please baclup the files and remove:
    mv /usr/share/xsessions/gnome* /root/
    rm -f /usr/share/xsessions/gnome*
  15. Create the file /usr/share/gnome-session/sessions/cinnamon.session and add:
    [GNOME Session]
    Name=Cinnamon
    RequiredComponents=cinnamon;cinnamon-settings-daemon;
    FallbackSession=cinnamon2d
    DesktopName=X-Cinnamon
  16. sudo systemctl restart gdm

WINDOWMAKER

Here you can learn how to use WindowMaker with DCV.

Compiling WindowMaker

Rocky 9

sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y libXft-devel libXinerama-devel libXpm-devel libXrandr-devel libjpeg-devel giflib-devel
wget https://github.com/window-maker/wmaker/releases/download/wmaker-0.96.0/WindowMaker-0.96.0.tar.gz
tar -xzf WindowMaker-0.96.0.tar.gz
cd WindowMaker-0.96.0
./configure
make
sudo make install

Ubuntu 24

sudo apt-get update
sudo apt-get -y install build-essential autoconf automake libtool pkg-config
sudo apt-get -y install libxft-dev libxinerama-dev libxrandr-dev libxpm-dev libjpeg-dev libgif-dev libpng-dev libdbus-1-dev libfontconfig1-dev
wget https://github.com/window-maker/wmaker/releases/download/wmaker-0.96.0/WindowMaker-0.96.0.tar.gz
tar -xzf WindowMaker-0.96.0.tar.gz
cd WindowMaker-0.96.0
./configure
make
sudo make install

Configuring Ubuntu 24 with GDM

Install the packages:

sudo apt update
sudo apt -y install gdm3 wmaker
sudo dpkg-reconfigure gdm3

Download DCV Server and install all packages: https://www.ni-sp.com/dcv-download/
Install the .rpm files using dnf. Do not setup DCV GL packages if you will not use GPU.

dnf install ./*.rpm

You need to create a .desktop file that will provide WindowMaker as an option for GDM and then a script that will start the WindowMaker.

Create the file /usr/share/gnome-session/sessions/windowmaker.session with the content:

[GNOME Session]
Name=Window Maker
RequiredComponents=windowmaker;

Also create the file /usr/share/xsessions/windowmaker.desktop with the content:

[Desktop Entry]
Name=Window Maker
Comment=Window Maker window manager
Exec=/usr/bin/wmaker
Type=Application

Finally, restart GDM:

sudo systemctl restart gdm

Configuring Rocky 9 with GDM

Install the packages:


sudo dnf install -y gdm
sudo systemctl enable --now gdm
sudo systemctl set-default graphical.target

Create the file /usr/share/gnome-session/sessions/windowmaker.session with the content:

[GNOME Session]
Name=Window Maker
RequiredComponents=windowmaker;

Also create the file /usr/share/xsessions/windowmaker.desktop with the content:

[Desktop Entry]
Name=Window Maker
Comment=Window Maker window manager
Exec=/usr/local/bin/wmaker
Type=Application

Edit the /etc/gdm/custom.conf and set:

[daemon]
WaylandEnable=false

Finally, restart GDM:

sudo systemctl restart gdm

Download DCV Server and install all packages: https://www.ni-sp.com/dcv-download/
sudo apt-get install ./*.deb
Use apt-get to setup the .deb files. If you have dependencies issues, execute the command below and install the .deb files again. Do not setup DCV GL packages if you will not use GPU.
sudo apt --fix-broken install

Then start DCV server:

sudo systemctl enable --now dcvserver

Using custom script (any display manager)

If you want to start WindowMaker by a customized script, then you need to add this code before start WindowMaker:

# set dbus session if does not exist
if [ ! "$DBUS_SESSION_BUS_ADDRESS" ]
then
    exec dbus-run-session -- "$0" "$@"
fi

# launch the dcv agent launcher
/usr/libexec/dcv/dcvxdgagentlauncher &

# execute the windowmaker binary
/usr/local/bin/wmaker

Note: /usr/local/bin/wmaker is just an example of one possible binary path of WindowMaker.