From dcd2d3b01e6f829f7b4e3be90d8924230b256481 Mon Sep 17 00:00:00 2001 From: chasprowebdev Date: Thu, 9 Jul 2026 13:42:46 -0400 Subject: [PATCH] fix(device-agent): implement the installer-cleanup fix --- .../device-agent/assets/linux/after-remove.sh | 18 ++++++++++++++++++ .../device-agent/electron-builder.config.js | 2 ++ 2 files changed, 20 insertions(+) create mode 100644 packages/device-agent/assets/linux/after-remove.sh diff --git a/packages/device-agent/assets/linux/after-remove.sh b/packages/device-agent/assets/linux/after-remove.sh new file mode 100644 index 0000000000..1ca6d4f976 --- /dev/null +++ b/packages/device-agent/assets/linux/after-remove.sh @@ -0,0 +1,18 @@ +#!/bin/bash +# Remove per-user app data on uninstall (not on upgrade), so a stale device-linking +# auth token doesn't survive a reinstall and silently skip the sign-in screen. +ACTION="$1" + +case "$ACTION" in + remove|purge) + for home in /root /home/*; do + [ -d "$home" ] || continue + config_dir="$home/.config/comp-ai-device-agent" + if [ -d "$config_dir" ]; then + rm -rf "$config_dir" + fi + done + ;; +esac + +exit 0 diff --git a/packages/device-agent/electron-builder.config.js b/packages/device-agent/electron-builder.config.js index 200e142b5a..59d42ec39d 100644 --- a/packages/device-agent/electron-builder.config.js +++ b/packages/device-agent/electron-builder.config.js @@ -60,6 +60,7 @@ module.exports = { perMachine: true, allowToChangeInstallationDirectory: false, artifactName: 'CompAI-Device-Agent-${version}-setup.${ext}', + deleteAppDataOnUninstall: true, }, linux: { target: [ @@ -78,6 +79,7 @@ module.exports = { }, deb: { afterInstall: 'assets/linux/after-install.sh', + afterRemove: 'assets/linux/after-remove.sh', packageName: 'comp-ai-device-agent', compression: 'xz', },