From c3f4ce9d1789c62fead2f4ea1383829574d809f5 Mon Sep 17 00:00:00 2001
From: whychw <858544502@qq.com>
Date: 星期四, 19 三月 2026 16:34:28 +0800
Subject: [PATCH] UA 脚本优化

---
 setup_service.sh             |   29 +++++++++++++++++++++++------
 dependent_linux/install.sh   |   17 ++++++++++++++++-
 dependent_linux/fgv2.service |    0 
 main.js                      |    9 ++++++---
 4 files changed, 45 insertions(+), 10 deletions(-)

diff --git a/fgv2.service b/dependent_linux/fgv2.service
similarity index 100%
rename from fgv2.service
rename to dependent_linux/fgv2.service
diff --git a/dependent_linux/create_desktop.sh b/dependent_linux/install.sh
similarity index 63%
rename from dependent_linux/create_desktop.sh
rename to dependent_linux/install.sh
index f1d983d..72f9715 100644
--- a/dependent_linux/create_desktop.sh
+++ b/dependent_linux/install.sh
@@ -19,11 +19,26 @@
 chown root:root $SH_DIR/chrome-sandbox
 chmod 4755 $SH_DIR/chrome-sandbox
 
+# 瀹夎jdk
+mkdir -p $USER_HOME/jdk8/ && cp $SH_DIR/jdk-8u271-linux-x64.tar.gz $USER_HOME/jdk8/
+tar -zxvf $USER_HOME/jdk8/jdk-8u271-linux-x64.tar.gz -C $USER_HOME/jdk8/
+
+mkdir -p $USER_HOME/.config/electron-fg/ && cp $SH_DIR/fg_v2.0-1.0.jar $USER_HOME/.config/electron-fg/fgv2.jar
+
+mkdir -p $USER_HOME/.config/systemd/user/ && cp $SH_DIR/fgv2.service $USER_HOME/.config/systemd/user/fgv2.service
+
+systemctl --user daemon-reload
+systemctl --user enable fgv2.service
+systemctl --user start fgv2.service
+
+
+
 # 閰嶇疆鍙傛暟锛堢敤鎴峰彲鏍规嵁闇�瑕佷慨鏀癸級
 APP_NAME="electron-fg"
 EXEC_PATH="$SH_DIR/$APP_NAME"      # 鍙墽琛岀▼搴忚矾寰�
 ICON_PATH="$SH_DIR/resources/build/icons/icon.png"   # 鍥炬爣璺緞
-DESKTOP_FILE="$USER_HOME/.local/share/applications/$APP_NAME.desktop"
+# DESKTOP_FILE="$USER_HOME/.local/share/applications/$APP_NAME.desktop"
+DESKTOP_FILE="$USER_HOME/Desktop/$APP_NAME.desktop"
  
 # 鐢熸垚 .desktop 鏂囦欢
 cat << EOF > "$DESKTOP_FILE"
diff --git a/main.js b/main.js
index 17618f9..deefe8a 100644
--- a/main.js
+++ b/main.js
@@ -155,7 +155,10 @@
 
 // 缁堟java杩涚▼ 骞堕噸鍚湇鍔� linux骞冲彴
 function stopForLinux() {
-  let dir = path.join(process.cwd(), './stop.sh');
+  // 鑾峰彇搴旂敤鐨勭湡瀹炴牴鐩綍锛圓SAR 鍖呭鐨勮矾寰勶級
+  const appPath = app.getAppPath();
+  log.info(`appPath: ====${appPath}====`);
+  let dir = path.join(appPath, '../../stop.sh');
   let stop = child_process.spawn('bash', [dir]);
 
   // 鐩戝惉鑴氭湰鎵ц
@@ -178,7 +181,7 @@
       log.info(stde);
       if (err) {
         log.error('閲嶅惎鏈嶅姟澶辫触锛�' + err);
-        let dir = path.join(process.cwd(), './setup_service.sh');
+        let dir = path.join(appPath, '../../setup_service.sh');
         child_process.exec(`bash "${dir}"`, (error, stdout, stderr) => {
           if (error) {
             log.error('鎵ц澶辫触锛�' + error);
@@ -192,7 +195,7 @@
       }
       if (stde) {
         log.error(`閲嶅惎鏈嶅姟閿欒锛� ${stde}`);
-        let dir = path.join(process.cwd(), './setup_service.sh');
+        let dir = path.join(appPath, '../../setup_service.sh');
         child_process.exec(`bash "${dir}"`, (error, stdout, stderr) => {
           // log.info('0000000');
           if (error) {
diff --git a/setup_service.sh b/setup_service.sh
index eff4aad..529d813 100644
--- a/setup_service.sh
+++ b/setup_service.sh
@@ -1,13 +1,30 @@
 #!/bin/bash
 
-#mkdir -p /opt/electron-fg/ && cp ./dependent/fg_v2.0-1.0.jar /opt/electron-ft/fgv2.jar
-mkdir -p ~/jdk8/ && cp ./jdk-8u271-linux-x64.tar.gz ~/jdk8/
-tar -zxvf ~/jdk8/jdk-8u271-linux-x64.tar.gz -C ~/jdk8/
+# 瀹氫箟鍑芥暟 鑾峰彇鐢ㄦ埛瀹剁洰褰� 鏀寔sudo 鎵ц
+get_home_dir() {
+    if [ -n "$SUDO_USER" ]; then
+        #  echo "$(eval echo ~"$SUDO_USER")"
+        USER_HOME=$(getent passwd "$SUDO_USER" | cut -d: -f6)
+    else
+        # echo "$(eval echo ~"$USER")"
+        USER_HOME="$HOME"
+    fi
+    echo "$USER_HOME"
+}
 
-mkdir -p ~/.config/electron-fg/ && cp ../../fg_v2.0-1.0.jar ~/.config/electron-fg/fgv2.jar
+USER_HOME=$(get_home_dir)
 
-mkdir -p ~/.config/systemd/user/ && cp ./fgv2.service ~/.config/systemd/user/fgv2.service
+SH_DIR=$(cd "$(dirname "$0")" && pwd)
+
+
+# 瀹夎jdk
+mkdir -p $USER_HOME/jdk8/ && cp $SH_DIR/jdk-8u271-linux-x64.tar.gz $USER_HOME/jdk8/
+tar -zxvf $USER_HOME/jdk8/jdk-8u271-linux-x64.tar.gz -C $USER_HOME/jdk8/
+
+mkdir -p $USER_HOME/.config/electron-fg/ && cp $SH_DIR/fg_v2.0-1.0.jar $USER_HOME/.config/electron-fg/fgv2.jar
+
+mkdir -p $USER_HOME/.config/systemd/user/ && cp $SH_DIR/fgv2.service $USER_HOME/.config/systemd/user/fgv2.service
 
 systemctl --user daemon-reload
 systemctl --user enable fgv2.service
-systemctl --user start fgv2.service
\ No newline at end of file
+systemctl --user start fgv2.service

--
Gitblit v1.9.1