From 9dab2d689b06c9b389e3c511ff32bb514c6cfab5 Mon Sep 17 00:00:00 2001 From: tdjisdj <125038375+tdjisdj@users.noreply.github.com> Date: Fri, 7 Jul 2023 16:23:58 +0800 Subject: [PATCH] Update package build (#691) --- libs/package_appimage.sh | 17 ++++++++++------- libs/package_debian.sh | 31 +++++++++++++++++++++++++------ 2 files changed, 35 insertions(+), 13 deletions(-) diff --git a/libs/package_appimage.sh b/libs/package_appimage.sh index b785b8a..79b3cad 100644 --- a/libs/package_appimage.sh +++ b/libs/package_appimage.sh @@ -6,19 +6,22 @@ cp -r linux64 nekoray.AppDir # The file for Appimage -cat >nekoray.AppDir/nekoray.desktop<<-EOF +rm nekoray.AppDir/launcher + +cat >nekoray.AppDir/nekoray.desktop <<-EOF [Desktop Entry] Name=nekoray -Exec=/launcher -- -appdata +Exec=echo "NekoRay started" Icon=nekoray Type=Application Categories=Network EOF -cat >nekoray.AppDir/AppRun<<-EOF +cat >nekoray.AppDir/AppRun <<-EOF #!/bin/bash -HERE="\$(dirname "\$(readlink -f "\${0}")")" -\${HERE}/launcher -- -appdata +echo "PATH: \${PATH}" +echo "NekoRay runing on: \$APPDIR" +LD_LIBRARY_PATH=\${APPDIR}/usr/lib QT_PLUGIN_PATH=\${APPDIR}/usr/plugins \${APPDIR}/nekoray -appdata "\$@" EOF chmod +x nekoray.AppDir/AppRun @@ -29,7 +32,7 @@ curl -fLSO https://github.com/AppImage/AppImageKit/releases/latest/download/appi chmod +x appimagetool-x86_64.AppImage ./appimagetool-x86_64.AppImage nekoray.AppDir -# remove +# clean rm appimagetool-x86_64.AppImage -rm -rf nekoray.AppDir \ No newline at end of file +rm -rf nekoray.AppDir diff --git a/libs/package_debian.sh b/libs/package_debian.sh index af5112b..84bb7ef 100644 --- a/libs/package_debian.sh +++ b/libs/package_debian.sh @@ -19,27 +19,46 @@ Depends: libxcb-xinerama0, libqt5core5a, libqt5gui5, libqt5network5, libqt5widge Description: Qt based cross-platform GUI proxy configuration manager (backend: v2ray / sing-box) EOF +# Start VPN mode without password +cat >nekoray/opt/nekoray/pkexec <<-EOF +#!/bin/sh + +if [ \$1 = --help ]; then + echo "This is not real pkexec." + exit 0 +fi + +TO_EXEC="\$@" + +if [ \$1 = --keep-cwd ]; then + TO_EXEC="\${@:2}" +fi + +\$TO_EXEC +EOF + cat >nekoray/DEBIAN/postinst <<-EOF if [ ! -s /usr/share/applications/nekoray.desktop ]; then cat >/usr/share/applications/nekoray.desktop<<-END [Desktop Entry] Name=nekoray -Version=$version -Comment=Qt based cross-platform GUI proxy configuration manager (backend: v2ray / sing-box) -Exec=/opt/nekoray/nekoray -appdata +Comment=Qt based cross-platform GUI proxy configuration manager (backend: Xray / sing-box) +Exec=sh -c "PATH=/opt/nekoray:\$PATH /opt/nekoray/nekoray -flag_linux_run_core_as_admin -appdata" Icon=/opt/nekoray/nekoray.png Terminal=false Type=Application Categories=Network;Application; END -else - sed -i "s/^Version=.*/Version=$version/" /usr/share/applications/nekoray.desktop fi +setcap cap_net_admin=ep /opt/nekoray/nekobox_core +chmod +x /opt/nekoray/pkexec +chmod 0755 /opt/nekoray/pkexec + update-desktop-database EOF -sudo chmod 755 nekoray/DEBIAN/postinst +sudo chmod 0755 nekoray/DEBIAN/postinst # desktop && PATH