summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO20
-rw-r--r--PKGBUILD30
-rw-r--r--escrcpy.sh14
3 files changed, 64 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..a376c7342ad8
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = escrcpy
+ pkgdesc = 使用图形化的 Scrcpy 显示和控制您的 Android 设备,由 Electron 驱动
+ pkgver = 1.6.10
+ pkgrel = 1
+ url = https://github.com/viarotel-org/escrcpy
+ arch = any
+ license = MIT
+ makedepends = gendesk
+ makedepends = npm>=9.8.1
+ makedepends = nodejs>=18.18.0
+ depends = bash
+ depends = electron26
+ depends = scrcpy
+ conflicts = escrcpy
+ source = escrcpy-1.6.10.zip::https://github.com/viarotel-org/escrcpy/archive/refs/tags/v1.6.10.zip
+ source = escrcpy.sh
+ sha256sums = 235a4c02940ec458a926902ad50c4c397da74343b28f3f2f3143de396be16c8f
+ sha256sums = 56ec78aeb841bb4c6d5c40893aff43a8a034bc4371684bc6a58404e6c8f45368
+
+pkgname = escrcpy
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..ac8dcb0f7021
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,30 @@
+# Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
+pkgname=escrcpy
+pkgver=1.6.10
+pkgrel=1
+pkgdesc="使用图形化的 Scrcpy 显示和控制您的 Android 设备,由 Electron 驱动"
+arch=('any')
+url="https://github.com/viarotel-org/escrcpy"
+license=('MIT')
+conflicts=("${pkgname}")
+depends=('bash' 'electron26' 'scrcpy')
+makedepends=('gendesk' 'npm>=9.8.1' 'nodejs>=18.18.0')
+source=("${pkgname}-${pkgver}.zip::${url}/archive/refs/tags/v${pkgver}.zip"
+ "${pkgname}.sh")
+sha256sums=('235a4c02940ec458a926902ad50c4c397da74343b28f3f2f3143de396be16c8f'
+ '56ec78aeb841bb4c6d5c40893aff43a8a034bc4371684bc6a58404e6c8f45368')
+build() {
+ gendesk -q -f -n --categories "Utility" --name "${pkgname}" --exec "${pkgname}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ npm install
+ npm run build:linux
+}
+package() {
+ install -Dm755 "${srcdir}/${pkgname}.sh" "${pkgdir}/usr/bin/${pkgname}"
+ install -Dm644 "${srcdir}/${pkgname}-${pkgver}/dist-release/linux-unpacked/resources/app.asar" -t "${pkgdir}/opt/${pkgname}/resources"
+ install -Dm644 "${srcdir}/${pkgname}-${pkgver}/dist-release/linux-unpacked/resources/extra/core/"* \
+ -t "${pkgdir}/opt/${pkgname}/resources/extra/core"
+ install -Dm644 "${srcdir}/${pkgname}.desktop" -t "${pkgdir}/usr/share/applications"
+ install -Dm644 "${srcdir}/${pkgname}-${pkgver}/dist-release/linux-unpacked/resources/extra/core/icon.png" "${pkgdir}/usr/share/pixmaps/${pkgname}.png"
+ install -Dm644 "${srcdir}/${pkgname}-${pkgver}/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
+}
diff --git a/escrcpy.sh b/escrcpy.sh
new file mode 100644
index 000000000000..fc9e648f7cc6
--- /dev/null
+++ b/escrcpy.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+_ELECTRON=/usr/bin/electron26
+APPDIR="/opt/escrcpy"
+export PATH="${APPDIR}:${APPDIR}/usr/sbin:${PATH}"
+export XDG_DATA_DIRS="./share/:/usr/share/gnome:/usr/local/share/:/usr/share/:${XDG_DATA_DIRS}"
+export LD_LIBRARY_PATH="${APPDIR}/usr/lib:${LD_LIBRARY_PATH}"
+export XDG_DATA_DIRS="${APPDIR}"/usr/share/:"${XDG_DATA_DIRS}":/usr/share/gnome/:/usr/local/share/:/usr/share/
+export GSETTINGS_SCHEMA_DIR="${APPDIR}/usr/share/glib-2.0/schemas:${GSETTINGS_SCHEMA_DIR}"
+_ASAR="${APPDIR}/resources/app.asar"
+if [[ $EUID -ne 0 ]] || [[ $ELECTRON_RUN_AS_NODE ]]; then
+ exec ${_ELECTRON} ${_ASAR} "$@"
+else
+ exec ${_ELECTRON} ${_ASAR} --no-sandbox "$@"
+fi \ No newline at end of file