From 30581ddae965ecd2d33734a617d064fa09db58f1 Mon Sep 17 00:00:00 2001 From: Yutaro-B18016 Date: Fri, 19 Feb 2021 19:08:23 +0900 Subject: [PATCH] Add ubuntu 20.04 (Work for 18.04 too) --- ubuntu/20.04/install.sh | 108 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 ubuntu/20.04/install.sh diff --git a/ubuntu/20.04/install.sh b/ubuntu/20.04/install.sh new file mode 100644 index 0000000..9b46992 --- /dev/null +++ b/ubuntu/20.04/install.sh @@ -0,0 +1,108 @@ +#!/bin/bash + +# +# This script is for Ubuntu 20.04 Focal Fossa to download and install XRDP+XORGXRDP via +# source. +# +# Major thanks to: http://c-nergy.be/blog/?p=11336 for the tips. +# + +############################################################################### +# Use HWE kernel packages +# +HWE="" +#HWE="-hwe-20.04" + +############################################################################### +# Update our machine to the latest code if we need to. +# + +if [ "$(id -u)" -ne 0 ]; then + echo 'This script must be run with root privileges' >&2 + exit 1 +fi + +apt update && apt upgrade -y + +if [ -f /var/run/reboot-required ]; then + echo "A reboot is required in order to proceed with the install." >&2 + echo "Please reboot and re-run this script to finish the install." >&2 + exit 1 +fi + +############################################################################### +# XRDP +# + +# Install hv_kvp utils +apt install -y linux-tools-virtual${HWE} +apt install -y linux-cloud-tools-virtual${HWE} + +# Install the xrdp service so we have the auto start behavior +apt install -y xrdp + +systemctl stop xrdp +systemctl stop xrdp-sesman + +# Configure the installed XRDP ini files. +# use vsock transport. +sed -i_orig -e 's/port=3389/port=vsock:\/\/-1:3389/g' /etc/xrdp/xrdp.ini +# use rdp security. +sed -i_orig -e 's/security_layer=negotiate/security_layer=rdp/g' /etc/xrdp/xrdp.ini +# remove encryption validation. +sed -i_orig -e 's/crypt_level=high/crypt_level=none/g' /etc/xrdp/xrdp.ini +# disable bitmap compression since its local its much faster +sed -i_orig -e 's/bitmap_compression=true/bitmap_compression=false/g' /etc/xrdp/xrdp.ini + +# Add script to setup the ubuntu session properly +if [ ! -e /etc/xrdp/startubuntu.sh ]; then +cat >> /etc/xrdp/startubuntu.sh << EOF +#!/bin/sh +export GNOME_SHELL_SESSION_MODE=ubuntu +export XDG_CURRENT_DESKTOP=ubuntu:GNOME +exec /etc/xrdp/startwm.sh +EOF +chmod a+x /etc/xrdp/startubuntu.sh +fi + +# use the script to setup the ubuntu session +sed -i_orig -e 's/startwm/startubuntu/g' /etc/xrdp/sesman.ini + +# rename the redirected drives to 'shared-drives' +sed -i -e 's/FuseMountName=thinclient_drives/FuseMountName=shared-drives/g' /etc/xrdp/sesman.ini + +# Changed the allowed_users +sed -i_orig -e 's/allowed_users=console/allowed_users=anybody/g' /etc/X11/Xwrapper.config + +# Blacklist the vmw module +if [ ! -e /etc/modprobe.d/blacklist_vmw_vsock_vmci_transport.conf ]; then +cat >> /etc/modprobe.d/blacklist_vmw_vsock_vmci_transport.conf < /etc/modules-load.d/hv_sock.conf +fi + +# Configure the policy xrdp session +cat > /etc/polkit-1/localauthority/50-local.d/45-allow-colord.pkla <