Package Details: rustdesk-appimage 1.4.2-1

Git Clone URL: https://aur.archlinux.org/rustdesk-appimage.git (read-only, click to copy)
Package Base: rustdesk-appimage
Description: Yet another remote desktop software, written in Rust. Works out of the box, no configuration required.
Upstream URL: https://github.com/rustdesk/rustdesk
Licenses: AGPL-3.0-only
Conflicts: rustdesk
Provides: rustdesk
Submitter: taotieren
Maintainer: kuhtoxo (Zoddo)
Last Packager: Zoddo
Votes: 3
Popularity: 0.57
First Submitted: 2023-08-27 15:51 (UTC)
Last Updated: 2025-09-16 06:12 (UTC)

Dependencies (2)

Required by (2)

Sources (2)

Latest Comments

magnade commented on 2025-09-05 01:40 (UTC)

currently fails in prepare chmod: cannot access 'rustdesk-1.4.1-x86_64.AppImage': No such file or directory

fengch commented on 2025-09-01 06:26 (UTC) (edited on 2025-09-01 06:57 (UTC) by fengch)

diff --git a/.gitignore b/.gitignore
index 55bb72a..3b7a3a5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
 !.gitignore
 !.SRCINFO
 !PKGBUILD
+!rustdesk
\ No newline at end of file
diff --git a/PKGBUILD b/PKGBUILD
index ca7617f..ac0cc55 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,42 +3,50 @@
 # Contributor: taotieren <admin@taotieren.com>
 # Contributor: Leon Möller <jkhsjdhjs at totally dot rip>

-pkgbase=rustdesk-appimage
-pkgname=(rustdesk-appimage)
+_Pkgname=RustDesk
+_pkgname=rustdesk
+
+pkgname=${_pkgname}-appimage
 pkgver=1.4.1
 pkgrel=3
 pkgdesc="Yet another remote desktop software, written in Rust. Works out of the box, no configuration required."
 url="https://github.com/rustdesk/rustdesk"
 license=('AGPL-3.0-only')
 arch=('x86_64' 'aarch64')
-provides=("${pkgname%-appimage}")
-conflicts=("${pkgname%-appimage}")
+provides=("${_pkgname}")
+conflicts=("${_pkgname}")
 optdepends=(
     'libappindicator-gtk3: tray icon'
     'libayatana-appindicator: tray icon'
 )
-options=('!strip')
-source_x86_64=("${pkgbase%-appimage}-${pkgver}-${pkgrel}-x86_64.AppImage::${url}/releases/download/${pkgver}/${pkgbase%-appimage}-${pkgver}-x86_64.AppImage")
-source_aarch64=("${pkgbase%-appimage}-${pkgver}-${pkgrel}-aarch64.AppImage::${url}/releases/download/${pkgver}/${pkgbase%-appimage}-${pkgver}-aarch64.AppImage")
+options=(!strip !debug)
+source=("rustdesk")
+source_x86_64=("${_pkgname}-${pkgver}-x86_64.AppImage::${url}/releases/download/${pkgver}/${_pkgname}-${pkgver}-x86_64.AppImage")
+source_aarch64=("${_pkgname}-${pkgver}-aarch64.AppImage::${url}/releases/download/${pkgver}/${_pkgname}-${pkgver}-aarch64.AppImage")
+
+sha256sums=('270374928e61a096601753efa0144785583a58694f47619443d55d7bc9fad903')
 sha256sums_x86_64=('d00b68d5cd15d3a383677cd1f8f9b1abdc984859f21ec9976547a31b65887ca5')
 sha256sums_aarch64=('817ad39f7d1e0723fea71c15f1cd6381fae5f43936dbc45a0c39b1aa38c1d270')
-_install_path="/opt/appimages"

 prepare() {
     cd ${srcdir}
-    chmod a+x ${pkgbase%-appimage}-${pkgver}-${CARCH}.AppImage
-    "./${pkgbase%-appimage}-${pkgver}-${CARCH}.AppImage" --appimage-extract > /dev/null
-    sed 's|usr/lib/rustdesk/rustdesk|/opt/appimages/rustdesk.AppImage|g' -i "${srcdir}/squashfs-root/${pkgbase%-appimage}.desktop"
+    chmod a+x ${_pkgname}-${pkgver}-${CARCH}.AppImage
+    "./${_pkgname}-${pkgver}-${CARCH}.AppImage" --appimage-extract > /dev/null
+    sed "s|^Exec=.*|Exec=/usr/bin/${_pkgname}|g" -i "${srcdir}/squashfs-root/${_pkgname}.desktop"
 }

 package() {
-    install -Dm755 "${srcdir}"/${pkgbase%-appimage}-${pkgver}-${CARCH}.AppImage "${pkgdir}"/${_install_path}/${pkgbase%-appimage}.AppImage
+    install -dm755 "${pkgdir}/opt/${_pkgname}"
+    install -Dm755 "${srcdir}/${_pkgname}-${pkgver}-${CARCH}.AppImage" "${pkgdir}/opt/${_pkgname}/${_pkgname}.AppImage"
+
+    install -dm755 "${pkgdir}/usr/bin"
+    install -Dm755 "${srcdir}/rustdesk" "${pkgdir}/usr/bin/${_pkgname}"

     local _icon
     for _icon in 32 64 128 ; do
-        install -Dm0644 "${srcdir}/squashfs-root/usr/share/icons/hicolor/${_icon}x${_icon}/apps/${pkgbase%-appimage}.png" \
+        install -Dm0644 "${srcdir}/squashfs-root/usr/share/icons/hicolor/${_icon}x${_icon}/apps/${_pkgname}.png" \
                     -t  "${pkgdir}/usr/share/icons/hicolor/${_icon}x${_icon}/apps"
     done

-    install -Dm644 "${srcdir}/squashfs-root/${pkgbase%-appimage}.desktop" -t "${pkgdir}/usr/share/applications"
+    install -Dm644 "${srcdir}/squashfs-root/${_pkgname}.desktop" -t "${pkgdir}/usr/share/applications"
 }
diff --git a/rustdesk b/rustdesk
new file mode 100755
index 0000000..190f958
--- /dev/null
+++ b/rustdesk
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec /opt/rustdesk/rustdesk.AppImage $@

Asgatoril commented on 2025-08-08 11:49 (UTC)

Hi, during the installation I get a file not found error for "rustdesk-1.4.1-x86_64.AppImage".

chmod: Zugriff auf 'rustdesk-1.4.1-x86_64.AppImage' nicht möglich: Datei oder Verzeichnis nicht gefunden

It seems to me, that the package subversion (pkgrel) is being used as part of the filename during download (e.g. rustdesk-1.4.1-3-x86_64.AppImage) but is being omitted during the installation step.

I changed "${pkgver}" to "${pkgver}-${pkgrel}" in lines 29, 30 and 35 in a local copy of the PKGBUILD and was then able to successfully install rustdesk.

Would it be possible to change this?