From d917f039c0e10c5ed21fdccc46e76f607bea9c93 Mon Sep 17 00:00:00 2001 From: Fmstrat Date: Tue, 10 Nov 2020 15:50:42 -0500 Subject: [PATCH] Added dynamic resolution and scaling for UHD --- README.md | 8 +++++++- bin/winapps | 8 +++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 9b9f893..9c1dc5c 100644 --- a/README.md +++ b/README.md @@ -54,9 +54,15 @@ RDP_USER="MyWindowsUser" RDP_PASS="MyWindowsPassword" #RDP_DOMAIN="MYDOMAIN" #RDP_IP="192.168.123.111" +#RDP_SCALE=100 #DEBUG="true" ``` -If you are using Option 2 below with a pre-existing non-KVM RDP server, you can use the `RDP_IP` to specify it's location. If you are running a VM in KVM with NAT enabled, leave `RDP_IP` commented out and WinApps will auto-detect the right local IP. Also, if you are using a domain user, you can uncomment and change `RDP_DOMAIN`. + +Options: +- When using Option 2 below with a pre-existing non-KVM RDP server, you can use the `RDP_IP` to specify it's location. +- If you are running a VM in KVM with NAT enabled, leave `RDP_IP` commented out and WinApps will auto-detect the right local IP. +- For domain users, you can uncomment and change `RDP_DOMAIN`. +- On high-resolution (UHD) displays, you can set `RDP_SCALE` to the scale you would like [100|140|160|180] If you enable `DEBUG`, a log will be created on each application start in `~/.local/share/winapps/winapps.log`. diff --git a/bin/winapps b/bin/winapps index fffb15a..da3ada5 100755 --- a/bin/winapps +++ b/bin/winapps @@ -12,6 +12,8 @@ if [ ! -d "${HOME}/.local/share/winapps" ]; then mkdir -p "${HOME}/.local/share/winapps" fi +RDP_SCALE=100 + if [ -f "${HOME}/.config/winapps/winapps.conf" ]; then . "${HOME}/.config/winapps/winapps.conf" else @@ -66,7 +68,7 @@ dprint "2:${2}" dprint "@:${@}" if [ "${1}" = "windows" ]; then - xfreerdp /d:"${RDP_DOMAIN}" /u:"${RDP_USER}" /p:"${RDP_PASS}" /v:${RDP_IP} /dynamic-resolution +auto-reconnect +home-drive /wm-class:"Microsoft Windows" 1> /dev/null 2>&1 & + xfreerdp /d:"${RDP_DOMAIN}" /u:"${RDP_USER}" /p:"${RDP_PASS}" /v:${RDP_IP} /scale:${RDP_SCALE} /dynamic-resolution +auto-reconnect +home-drive /wm-class:"Microsoft Windows" 1> /dev/null 2>&1 & elif [ "${1}" != "install" ]; then dprint "DIR:${DIR}" . "${DIR}/../apps/${1}/info" @@ -74,9 +76,9 @@ elif [ "${1}" != "install" ]; then dprint "HOME:${HOME}" FILE=$(echo "${2}" | sed 's|'"${HOME}"'|\\\\tsclient\\home|;s|/|\\|g;s|\\|\\\\|g') dprint "FILE:${HOME}" - xfreerdp /d:"${RDP_DOMAIN}" /u:"${RDP_USER}" /p:"${RDP_PASS}" /v:${RDP_IP} +auto-reconnect +home-drive -wallpaper /span /wm-class:"${FULL_NAME}" /app:"${WIN_EXECUTABLE}" /app-icon:"${DIR}/../apps/${1}/icon.svg" /app-cmd:"\"${FILE}\"" 1> /dev/null 2>&1 & + xfreerdp /d:"${RDP_DOMAIN}" /u:"${RDP_USER}" /p:"${RDP_PASS}" /v:${RDP_IP} +auto-reconnect +home-drive -wallpaper /scale:${RDP_SCALE} /dynamic-resolution /span /wm-class:"${FULL_NAME}" /app:"${WIN_EXECUTABLE}" /app-icon:"${DIR}/../apps/${1}/icon.svg" /app-cmd:"\"${FILE}\"" 1> /dev/null 2>&1 & else - xfreerdp /d:"${RDP_DOMAIN}" /u:"${RDP_USER}" /p:"${RDP_PASS}" /v:${RDP_IP} +auto-reconnect +home-drive -wallpaper /span /wm-class:"${FULL_NAME}" /app:"${WIN_EXECUTABLE}" /app-icon:"${DIR}/../apps/${1}/icon.svg" 1> /dev/null 2>&1 & + xfreerdp /d:"${RDP_DOMAIN}" /u:"${RDP_USER}" /p:"${RDP_PASS}" /v:${RDP_IP} +auto-reconnect +home-drive -wallpaper /scale:${RDP_SCALE} /dynamic-resolution /span /wm-class:"${FULL_NAME}" /app:"${WIN_EXECUTABLE}" /app-icon:"${DIR}/../apps/${1}/icon.svg" 1> /dev/null 2>&1 & fi fi