Updated configuration file template and git clone command in README + Added checks for new Windows backend introduced in #204

This commit is contained in:
Rohan Barar 2024-08-09 08:41:44 +10:00
parent f7d1cb77ed
commit 45584c8200
2 changed files with 27 additions and 24 deletions

View File

@ -277,7 +277,7 @@ If you already have a Windows VM or server you wish to use with WinApps, you wil
### Step 2: Clone WinApps Repository and Dependencies
1. Clone the WinApps GitHub repository.
```bash
git clone https://github.com/winapps-org/winapps.git && cd winapps
git clone --recurse-submodules --remote-submodules https://github.com/winapps-org/winapps.git && cd winapps
```
2. Install the required dependencies.
@ -387,7 +387,7 @@ DEBUG="true"
# [AUTOMATICALLY PAUSE WINDOWS]
# NOTES:
# - This is currently INCOMPATIBLE with 'docker'.
# - This is currently INCOMPATIBLE with 'docker' and 'manual'.
# - See https://github.com/dockur/windows/issues/674
# DEFAULT VALUE: 'off'
# VALID VALUES:

View File

@ -626,29 +626,32 @@ function waCheckIdle() {
local TIME_ELAPSED=0
local SUSPEND_WINDOWS=0
# Check if there are no WinApps-related FreeRDP processes running.
if ! ls "$APPDATA_PATH"/FreeRDP_Process_*.cproc &>/dev/null; then
SUSPEND_WINDOWS=1
while (( TIME_ELAPSED < AUTOPAUSE_TIME )); do
if ls "$APPDATA_PATH"/FreeRDP_Process_*.cproc &>/dev/null; then
SUSPEND_WINDOWS=0
break
fi
sleep $TIME_INTERVAL
TIME_ELAPSED=$((TIME_ELAPSED + TIME_INTERVAL))
done
fi
# Prevent 'autopause' functionality with unsupported Windows backends.
if [ "$WAFLAVOR" != "manual" ] && [ "$WAFLAVOR" != "docker" ]; then
# Check if there are no WinApps-related FreeRDP processes running.
if ! ls "$APPDATA_PATH"/FreeRDP_Process_*.cproc &>/dev/null; then
SUSPEND_WINDOWS=1
while (( TIME_ELAPSED < AUTOPAUSE_TIME )); do
if ls "$APPDATA_PATH"/FreeRDP_Process_*.cproc &>/dev/null; then
SUSPEND_WINDOWS=0
break
fi
sleep $TIME_INTERVAL
TIME_ELAPSED=$((TIME_ELAPSED + TIME_INTERVAL))
done
fi
# Hibernate/Pause Windows.
if [ "$SUSPEND_WINDOWS" -eq 1 ]; then
dprint "IDLE FOR ${AUTOPAUSE_TIME} SECONDS. SUSPENDING WINDOWS."
notify-send --expire-time=8000 --icon="info" --app-name="WinApps" --urgency="low" "WinApps" "Pausing Windows due to inactivity."
if [ "$WAFLAVOR" = "docker" ]; then
docker compose --file "$COMPOSE_PATH" pause &>/dev/null
elif [ "$WAFLAVOR" = "podman" ]; then
podman-compose --file "$COMPOSE_PATH" pause &>/dev/null
elif [ "$WAFLAVOR" = "libvirt" ]; then
virsh suspend "$VM_NAME" &>/dev/null
# Hibernate/Pause Windows.
if [ "$SUSPEND_WINDOWS" -eq 1 ]; then
dprint "IDLE FOR ${AUTOPAUSE_TIME} SECONDS. SUSPENDING WINDOWS."
notify-send --expire-time=8000 --icon="info" --app-name="WinApps" --urgency="low" "WinApps" "Pausing Windows due to inactivity."
if [ "$WAFLAVOR" = "docker" ]; then
docker compose --file "$COMPOSE_PATH" pause &>/dev/null
elif [ "$WAFLAVOR" = "podman" ]; then
podman-compose --file "$COMPOSE_PATH" pause &>/dev/null
elif [ "$WAFLAVOR" = "libvirt" ]; then
virsh suspend "$VM_NAME" &>/dev/null
fi
fi
fi
}