Custom OS Template (Linux)

Although DaDesktop maintains a number of popular Linux distros, occasionally you might need a specific distro that isn't available. DaDesktop is happy to help with this for most mainline Linux distros. Just let us know where to download the ISO file from, and which server you'd like to publish the Custom OS template on.

Important:

About Disk Partitioning
1. Customised templates only require one disk partition, or two: one EFI/Boot partition and another for the system and data.
2. LVM partitions aren't supported, so please avoid using LVM.
3. Using the wrong partition scheme will stop disk auto-resize and other functions from working.

Linux Template

Once we've downloaded the ISO file to the server, you'll see it under Admin Menu->OS IMAGES->ISO FILES in your account.

Then you can prepare the template under Admin Menu->OS IMAGES->CUSTOM OS TEMPLATES

Please follow this guide carefully and complete all the steps, otherwise full DaDesktop operation may not work properly.

  1. Install OS
  2. Set the default username to "student", and the password to "student"
  3. Configure the "student" account for automatic login
  4. Use DaDesktop or your own brand wallpaper
    DaDesktop or your own brand wallpaper
  5. Some distros now default to using Wayland as their display driver. While Wayland works with DaDesktop, we currently recommend switching back to X11.

    To disable Wayland:

    edit /etc/gdm/custom.conf, e.g.

    # Uncomment the line below to force the login screen to use Xorg
            WaylandEnable=false
            

    log out and log back in again

  6. Install spice-vdagent. Using your package manager is normally the best approach. Note: it might already be installed, depending on your distro
    • Once installed correctly, restart the machine, and you should see the two running processes: spice-vdagent and spice-vdagentd
    • Install spice-vdagent, using your package manager  in linux
  7. Install qemu-guest-agent; again, using your package manager is usually the best way
  8. Install X11VNC. Note: for some distros, you may need to add extra repos, such as the 'epel' repo for Red Hat-based distros like Oracle Linux or Rocky Linux
  9. Configure X11VNC
    • Make sure X11VNC is installed
    • Run sudo -i to open a root shell
    • Run the command below to allow X11VNC to start automatically on reboot:

      cat > /etc/xdg/autostart/x11vnc.desktop <<EOF
                      [Desktop Entry]
                      Type=Application
                      Exec=/usr/bin/x11vnc -N -no6 -rfbportv6 -1 -allow 10.0.3.1 -nopw -shared -alwaysshared -forever -repeat -nowireframe -noscr -nocursorshape -skip_lockkeys -cursor_drag -grab_buster -deferupdate 10 -speeds 6000,5000,20 -afteraccept announce-vnc-users.sh -gone announce-vnc-users.sh
                      Hidden=false
                      X-MATE-Autostart-enabled=true
                      X-MATE-AutoRestart=true
                      Name[en_US]=X11VNC
                      Name=X11VNC
                      Comment[en_US]=Share desktop over VNC
                      Comment=Share desktop over VNC
                      EOF
                      
  10. Create a desktop notify script by running the commands below:

    cat > /usr/local/bin/announce-vnc-users.sh <<EOF
            notify-send -a x11vnc "VNC users connected: $RFB_CLIENT_COUNT"
            EOF
            chmod +x /usr/local/bin/announce-vnc-users.sh
  11. Reboot
  12. Check your firewall settings; i.e., make sure TCP port 5900 is open, e.g.:

    ss -pntl

  13. Disable sudo password (recommended)
  14. Verify success:

    When you connect, if the URL changes to include a token query parameter, you're all good. This means X11VNC is working. The text box at the bottom left of the screen, used for copy/paste between your own desktop and the virtual desktop, should now be operational.

Please Note

To add optional extras like DDWebdav (which syncs the trainer's content folders to each participant's machine) or DDUpload (for easy file uploads within a DaDesktop machine), please contact DaDesktop Tech Support.