From 9e7e957f4f55e46fa843c12f5bafb7e1ccbce5ed Mon Sep 17 00:00:00 2001
From: shenmo <jifengshenmo@outlook.com>
Date: Tue, 24 Sep 2024 11:27:53 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=87=AA=E6=8F=90=E6=9D=83?=
 =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 debian/changelog                                          | 6 ++++++
 debian/spark-store.postinst                               | 3 +--
 debian/spark-store.prerm                                  | 3 +--
 ...worker.policy => store.spark-app.ss-do-upgrade.policy} | 8 ++++----
 .../polkit-1/actions}/store.spark-app.ssinstall.policy    | 0
 tool/update-upgrade/ss-do-upgrade.sh                      | 4 ++++
 6 files changed, 16 insertions(+), 8 deletions(-)
 rename pkg/usr/share/polkit-1/actions/{store.spark-app.ss-do-upgrade-worker.policy => store.spark-app.ss-do-upgrade.policy} (70%)
 rename {tool/auto-install-policy => pkg/usr/share/polkit-1/actions}/store.spark-app.ssinstall.policy (100%)

diff --git a/debian/changelog b/debian/changelog
index f901f2e..9ebd906 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+spark-store (4.3.1) UNRELEASED; urgency=medium
+
+  * 修复自提权更新问题
+
+ -- shenmo <shenmo@spark-app.store>  Tue, 24 Sep 2024 11:27:08 +0800
+
 spark-store (4.3.0-fix5) stable; urgency=medium
 
 * 支持GXDE,重启空链接清理
diff --git a/debian/spark-store.postinst b/debian/spark-store.postinst
index 9298834..879a976 100755
--- a/debian/spark-store.postinst
+++ b/debian/spark-store.postinst
@@ -42,8 +42,7 @@ case "$1" in
 
 		ln -s -f /opt/durapps/spark-store/bin/aptss /usr/bin/aptss
 
-		# Create symbol links for SSINSTALL 
-		ln -s -f  /opt/durapps/spark-store/bin/auto-install-policy/store.spark-app.ssinstall.policy /usr/share/polkit-1/actions/store.spark-app.ssinstall.policy
+
 
 		# Install key
 		mkdir -p /tmp/spark-store-install/
diff --git a/debian/spark-store.prerm b/debian/spark-store.prerm
index f266bb6..1adb1a5 100755
--- a/debian/spark-store.prerm
+++ b/debian/spark-store.prerm
@@ -47,8 +47,7 @@ for username in `ls /home`
 	# Stop update detect service
 	systemctl disable spark-update-notifier
 
-	# Clean the auto install polkit file if exist
-	rm -f /usr/share/polkit-1/actions/store.spark-app.ssinstall.policy
+
 
 	# Remove gpg key file
 	rm -f /etc/apt/trusted.gpg.d/spark-store.gpg
diff --git a/pkg/usr/share/polkit-1/actions/store.spark-app.ss-do-upgrade-worker.policy b/pkg/usr/share/polkit-1/actions/store.spark-app.ss-do-upgrade.policy
similarity index 70%
rename from pkg/usr/share/polkit-1/actions/store.spark-app.ss-do-upgrade-worker.policy
rename to pkg/usr/share/polkit-1/actions/store.spark-app.ss-do-upgrade.policy
index 49c5000..d82d670 100644
--- a/pkg/usr/share/polkit-1/actions/store.spark-app.ss-do-upgrade-worker.policy
+++ b/pkg/usr/share/polkit-1/actions/store.spark-app.ss-do-upgrade.policy
@@ -4,15 +4,15 @@
 <policyconfig>
     <vendor>Spark Store</vendor>
     <icon_name>x-package-repository</icon_name>
-    <action id="store.spark-app.ss-do-upgrade-worker">
-        <description>运行ss-do-upgrade-worker需要权限</description>
-        <message>要使用ss-do-upgrade-worker需要权限</message>
+    <action id="store.spark-app.ss-do-upgrade">
+        <description>运行ss-do-upgrade需要权限</description>
+        <message>要使用ss-do-upgrade需要权限</message>
         <defaults>
             <allow_any>yes</allow_any>
             <allow_inactive>yes</allow_inactive>
             <allow_active>yes</allow_active>
         </defaults>
-        <annotate key="org.freedesktop.policykit.exec.path">/opt/durapps/spark-store/bin/update-upgrade/ss-do-upgrade-worker.sh</annotate>
+        <annotate key="org.freedesktop.policykit.exec.path">/opt/durapps/spark-store/bin/update-upgrade/ss-do-upgrade.sh</annotate>
         <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
     </action>
 </policyconfig>
diff --git a/tool/auto-install-policy/store.spark-app.ssinstall.policy b/pkg/usr/share/polkit-1/actions/store.spark-app.ssinstall.policy
similarity index 100%
rename from tool/auto-install-policy/store.spark-app.ssinstall.policy
rename to pkg/usr/share/polkit-1/actions/store.spark-app.ssinstall.policy
diff --git a/tool/update-upgrade/ss-do-upgrade.sh b/tool/update-upgrade/ss-do-upgrade.sh
index 2f3c99b..2b72ba4 100755
--- a/tool/update-upgrade/ss-do-upgrade.sh
+++ b/tool/update-upgrade/ss-do-upgrade.sh
@@ -1,4 +1,8 @@
 #!/bin/bash
+if [ "$(id -u)" != "0" ] ; then
+	pkexec "$0" "$@"
+	exit
+fi
 trap "rm -f  /tmp/spark-store/upgradeStatus.txt" EXIT
 source /opt/durapps/spark-store/bin/bashimport/transhell.amber
 load_transhell_debug