diff --git a/nongnu/packages/anydesk.scm b/nongnu/packages/anydesk.scm index 78e16f1b..49ec592e 100644 --- a/nongnu/packages/anydesk.scm +++ b/nongnu/packages/anydesk.scm @@ -11,41 +11,46 @@ #:use-module (gnu packages gl) #:use-module (gnu packages fontutils) #:use-module (gnu packages polkit) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages image) + #:use-module (gnu packages linux) + #:use-module (gnu packages libffi) + #:use-module (gnu packages pcre) #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg) + #:use-module (gnu packages xdisorg) #:use-module (guix download) #:use-module (guix packages) #:use-module (nonguix build-system binary) + #:use-module (nongnu packages anydesk) #:use-module (nonguix licenses)) (define-public anydesk (package (name "anydesk") - (version "6.3.2-1") - (source (origin - (method url-fetch) - (uri (string-append "https://download.anydesk.com/linux/anydesk_" - version "_amd64.deb")) - (sha256 - (base32 - "13b5ab4a889vz39d36f45mhv3mlaxb305wsh3plk3dbjcrkkkirb")))) + (version "7.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.anydesk.com/linux/anydesk-" + version "-amd64.tar.gz")) + (sha256 + (base32 + "0jmrhcic5kmhxlw7rxw0d37fp9lzzz10qs8ar0dqjgfhbynkskm8")))) (build-system binary-build-system) (arguments `(#:validate-runpath? #f - #:strip-binaries? #f ;; For some reason it breaks the program + #:strip-binaries? #f #:patchelf-plan - `(("usr/bin/anydesk" ("atk" + `(("anydesk" ("atk" "cairo" "fontconfig" "freetype" "gcc:lib" "gdk-pixbuf" "glib" - "glu" "gtk+" - "gtkglext" - "libice" - "libsm" "libx11" "libxcb" "libxdamage" @@ -53,62 +58,102 @@ "libxfixes" "libxi" "libxkbfile" - "libxmu" "libxrandr" "libxrender" - "libxsts" - "libxt" - "mesa" - "minizip" + "libxtst" + "libxcursor" + "libxcomposite" + "libxinerama" + "libxau" + "libxdmcp" "pango" - "pangox-compat" + "harfbuzz" + "libepoxy" + "pixman" + "libjpeg-turbo" + "libpng" + "libthai" + "graphite2" + "libdatrie" "polkit" - "polkit-gnome" - "pulseaudio"))) + "zlib" + "dbus" + "at-spi2-core" + "libxkbcommon" + "wayland" + "util-linux:lib" + "libffi" + "pcre2" + "elogind" + "bzip2" + "expat" + "libcap"))) #:install-plan - `(("usr/bin/anydesk" "/bin/") - ("usr/share/polkit-1/actions/com.anydesk.anydesk.policy" "/etc/polkit-1/actions/") - ("usr/share/icons" "/share/icons/")) + `(("anydesk" "/bin/") + ("polkit-1/com.anydesk.anydesk.policy" "/share/polkit-1/actions/") + ("icons" "/share/icons/") + ("anydesk.desktop" "/share/applications/") + ("copyright" "/share/licenses/anydesk/")) #:phases (modify-phases %standard-phases (replace 'binary-unpack (lambda* (#:key source #:allow-other-keys) (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 'install 'install-desktop-entry + (not (string=? (basename f) "environment-variables"))) + (find-files (getcwd)))) + (binary-file (car files))) + (when (= 1 (length files)) + (mkdir "binary") + (chdir "binary") + (invoke "tar" "xvf" binary-file) + (chdir (string-append "anydesk-" ,(package-version this-package))))))) + (add-after 'install 'fix-desktop-entry (lambda* (#:key outputs #:allow-other-keys) - (let* ((desktop-file "usr/share/applications/anydesk.desktop") - (out (assoc-ref outputs "out")) - (applications (string-append out "/share/applications"))) + (let* ((out (assoc-ref outputs "out")) + (desktop-file (string-append out "/share/applications/anydesk.desktop"))) (substitute* desktop-file - (("^Exec=.*") (string-append "Exec=" out "/bin/anydesk\n")) - (("^Icon=.*") "Icon=anydesk\n")) - (install-file desktop-file applications)) - #t))))) + (("^Exec=anydesk") (string-append "Exec=env GDK_BACKEND=x11 " out "/bin/anydesk")) + (("^Icon=anydesk") "Icon=anydesk")) + #t))) + (add-after 'install 'install-icon + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (icon-src "icons/hicolor/scalable/apps/anydesk.svg") + (icon-dest (string-append out "/share/pixmaps/anydesk.svg"))) + (when (file-exists? icon-src) + (install-file icon-src (dirname icon-dest))) + #t)))))) (inputs `(("atk" ,atk) ("cairo" ,cairo) ("fontconfig" ,fontconfig) ("freetype" ,freetype) - ("gcc:lib" ,gcc "lib") ("gdk-pixbuf" ,gdk-pixbuf) ("glib" ,glib) - ("glu" ,glu) - ("gtk+" ,gtk+-2) - ("gtkglext" ,gtkglext) - ("libice" ,libice) - ("libsm" ,libsm) + ("gtk+" ,gtk+) + ("pango" ,pango) + ("harfbuzz" ,harfbuzz) + ("libepoxy" ,libepoxy) + ("pixman" ,pixman) + ("libjpeg-turbo" ,libjpeg-turbo) + ("libpng" ,libpng) + ("libthai" ,libthai) + ("graphite2" ,graphite2) + ("libdatrie" ,libdatrie) + ("gcc:lib" ,gcc "lib") + ("polkit" ,polkit) + ("zlib" ,zlib) + ("dbus" ,dbus) + ("at-spi2-core" ,at-spi2-core) + ("libxkbcommon" ,libxkbcommon) + ("wayland" ,wayland) + ("util-linux:lib" ,util-linux "lib") + ("libffi" ,libffi) + ("pcre2" ,pcre2) + ("elogind" ,elogind) + ("bzip2" ,bzip2) + ("expat" ,expat) + ("libcap" ,libcap) ("libx11" ,libx11) ("libxcb" ,libxcb) ("libxdamage" ,libxdamage) @@ -116,19 +161,15 @@ ("libxfixes" ,libxfixes) ("libxi" ,libxi) ("libxkbfile" ,libxkbfile) - ("libxmu" ,libxmu) ("libxrandr" ,libxrandr) ("libxrender" ,libxrender) - ("libxsts" ,libxtst) - ("libxt" ,libxt) - ("mesa" ,mesa) - ("minizip" ,minizip) - ("pango" ,pango) - ("pangox-compat" ,pangox-compat) - ("polkit" ,polkit) - ("polkit-gnome" ,polkit-gnome) - ("pulseaudio" ,pulseaudio))) - (synopsis "Remote desktop software") + ("libxtst" ,libxtst) + ("libxcursor" ,libxcursor) + ("libxcomposite" ,libxcomposite) + ("libxinerama" ,libxinerama) + ("libxau" ,libxau) + ("libxdmcp" ,libxdmcp))) + (synopsis "Remote desktop software") (supported-systems '("x86_64-linux")) (description "Connect to a computer remotely, be it from the other end of the office or halfway around the world. AnyDesk ensures secure and reliable diff --git a/nongnu/packages/printers.scm b/nongnu/packages/printers.scm index 5ee6f210..65b4ea02 100644 --- a/nongnu/packages/printers.scm +++ b/nongnu/packages/printers.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2021 Kahka F ;;; Copyright © 2021, 2023 Jonathan Brielmaier + (define-module (nongnu packages printers) #:use-module (gnu packages) #:use-module (gnu packages cups) @@ -155,7 +156,7 @@ installed=1 eula=1 version=~A -" #$(package-version hplip)))) +" #$(package-version hplip (substitute* (string-append out "/etc/hp/hplip.conf") - (("/usr") out))))))))))) + (("/usr") out)))))))))))))))