nongnu: anydesk: Update to 6.3.2-1.

* nongnu/packages/anydesk.scm (anydesk): Update to 6.3.2-1.
[source]: Update uri.
[arguments]: <#:patchelf-plan>: Adjust binary path.
<#:install-plan>: Adjust source file paths.
<#:phases>: Replace 'binary-unpack' phase with one that handles the source .deb file properly.
Adjust 'install-desktop-entry' phase to find source files.

Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
This commit is contained in:
Ada Stevenson 2024-07-20 14:26:40 +08:00 committed by Jonathan Brielmaier
parent a6d95345e0
commit 7a44d01a7f
No known key found for this signature in database
GPG Key ID: ECFC83988B4E4B9F

View File

@ -21,20 +21,20 @@
(define-public anydesk (define-public anydesk
(package (package
(name "anydesk") (name "anydesk")
(version "6.3.0") (version "6.3.2-1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.anydesk.com/linux/anydesk-" (uri (string-append "https://download.anydesk.com/linux/anydesk_"
version "-amd64.tar.gz")) version "_amd64.deb"))
(sha256 (sha256
(base32 (base32
"0lp4zvbdriwbzfnvblbbpzxsrs0l425rha9qjs9sy6ff6myk7qxi")))) "13b5ab4a889vz39d36f45mhv3mlaxb305wsh3plk3dbjcrkkkirb"))))
(build-system binary-build-system) (build-system binary-build-system)
(arguments (arguments
`(#:validate-runpath? #f `(#:validate-runpath? #f
#:strip-binaries? #f ;; For some reason it breaks the program #:strip-binaries? #f ;; For some reason it breaks the program
#:patchelf-plan #:patchelf-plan
`(("anydesk" ("atk" `(("usr/bin/anydesk" ("atk"
"cairo" "cairo"
"fontconfig" "fontconfig"
"freetype" "freetype"
@ -66,17 +66,29 @@
"polkit-gnome" "polkit-gnome"
"pulseaudio"))) "pulseaudio")))
#:install-plan #:install-plan
`(("anydesk" "/bin/") `(("usr/bin/anydesk" "/bin/")
("polkit-1/com.anydesk.anydesk.policy" "/etc/polkit-1/actions/") ("usr/share/polkit-1/actions/com.anydesk.anydesk.policy" "/etc/polkit-1/actions/")
("icons/" "/share/icons/")) ("usr/share/icons" "/share/icons/"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'unpack (replace 'binary-unpack
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key source #:allow-other-keys)
(invoke "tar" "-xvzf" (assoc-ref inputs "source") "--strip-components" "1"))) (let* ((files (filter (lambda (f)
(not (string=? (basename f) "environment-variables")))
(find-files (getcwd))))
(binary-file (car files)))
(when (= 1 (length files))
(mkdir "binary")
(chdir "binary")
(invoke "ar" "x" binary-file)
(invoke "tar" "xvf" "data.tar.gz")
(invoke "rm" "-rfv" "control.tar.gz"
"data.tar.gz"
binary-file
"debian-binary")))))
(add-after 'wrap-program 'install-desktop-entry (add-after 'wrap-program 'install-desktop-entry
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((desktop-file "anydesk.desktop") (let* ((desktop-file "usr/share/applications/anydesk.desktop")
(out (assoc-ref outputs "out")) (out (assoc-ref outputs "out"))
(applications (string-append out "/share/applications"))) (applications (string-append out "/share/applications")))
(substitute* desktop-file (substitute* desktop-file