Message ID | CAHHeYzJZdxVMDhb7Y5VHozvppcuV3tGdkqL5NMEKbbZyJmqZXw@mail.gmail.com |
---|---|
State | New |
Headers | show |
Series | [bug#58341] Add x11vnc recipe | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git-branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
(Apologies for the quoted reply, I've now learned how to disable that)
Hi Mehmet, Mehmet Tekman <mtekman89@gmail.com> writes: > Hello, thank you for the review! Thanks for the prompt reply, and sorry for the delays on my part! > I've put the recipe into vnc.scm and built to a newer commit that > makes the patches redundant (thanks for the tip, I was basing my > recipe off one from another distro). > > I've fixed the commit message and linted and styled the vnc.scm file. > > I created a new branch and put my changes there, so please disregard > the above changes. > > I attach here the patch file, as I don't quite trust myself to paste > the changes into this email. That's fine. It looks very good! I've made the following cosmetic/nitpicking changes: --8<---------------cut here---------------start------------->8--- modified gnu/packages/vnc.scm @@ -568,11 +568,10 @@ (define-public x11vnc ;; The release version of 0.9.16 requires patches to work, so we pin to the ;; latest working commit (let ((commit "3e4dc8ef2985a6e670e1d9649fe55395c2b31039") - (version "0.9.16") - (revision "1")) + (revision "0")) (package (name "x11vnc") - (version (git-version version revision commit)) + (version (git-version "0.9.16" revision commit)) (source (origin (method git-fetch) (uri (git-reference @@ -584,14 +583,15 @@ (define-public x11vnc "0a120gv9h3whiznlddl0j3nz3400jjgl97znaincm5i2m5pnjifs")))) (build-system gnu-build-system) (arguments - '(#:phases (modify-phases %standard-phases - (add-before 'bootstrap 'delete-premature-configure - (lambda _ - (substitute* "./autogen.sh" - ((".*/configure") - ""))))))) + (list #:phases #~(modify-phases %standard-phases + (add-before 'bootstrap 'delete-premature-configure + (lambda _ + (substitute* "./autogen.sh" + ((".*/configure") + ""))))))) (native-inputs (list autoconf automake autobuild pkg-config)) (inputs (list avahi + libjpeg-turbo libvnc libx11 libxcomposite @@ -604,9 +604,8 @@ (define-public x11vnc libxtst openssl xdpyinfo - zlib - libjpeg-turbo - xf86-video-dummy)) + xf86-video-dummy + zlib)) (synopsis "VNC server for real X displays") (home-page "https://github.com/LibVNC/x11vnc") (description @@ -615,7 +614,6 @@ (define-public x11vnc mouse) with any VNC viewer.") (license license:gpl2)))) - (define-public libvnc (package (name "libvnc") --8<---------------cut here---------------end--------------->8--- 1. Do not bind a "version" variable in let; it's bound by the version field of the package record at definition (see: define-record-type* from (guix records)). 2. Used a plain list with a gexp for the phases, which is more forward-looking. 3. Sorted the inputs. 4. Removed an extra newline at the end (we use only one newline between definitions). Before pushing, I've also double checked the license and found that it should be gpl2+, as the COPYING file contains the "any later version" text. x11vnc.h also has in the license notice: x11vnc is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. I made these changes and pushed to master! Thanks again, Maxim
Thanks for the edits!
From 379c152a559f7538cb5ec868dc58a03daf592f05 Mon Sep 17 00:00:00 2001 From: Mehmet Tekman <mtekman89@gmail.com> Date: Mon, 10 Oct 2022 17:54:21 +0200 Subject: [PATCH] gnu: Add x11vnc. * gnu/packages/vnc.scm (x11vnc): New variable. --- gnu/packages/vnc.scm | 55 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/gnu/packages/vnc.scm b/gnu/packages/vnc.scm index 84c84aec76..017ac6b343 100644 --- a/gnu/packages/vnc.scm +++ b/gnu/packages/vnc.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2021, 2022 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2022 Mehmet Tekman <mtekman89@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,10 +25,12 @@ (define-module (gnu packages vnc) #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) #:use-module (guix download) #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix gexp) + #:use-module (guix git-download) #:use-module (guix packages) #:use-module (guix utils) #:use-module (gnu packages) @@ -511,6 +514,58 @@ (define openjdk #$(this-package-input "openjdk")) ratpoison.") (license license:gpl2+))) +(define-public x11vnc + ;; The release version of 0.9.16 requires patches to work, so we pin to the + ;; latest working commit + (let ((commit "3e4dc8ef2985a6e670e1d9649fe55395c2b31039") + (version "0.9.16") + (revision "1")) + (package + (name "x11vnc") + (version (git-version version revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/LibVNC/x11vnc") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0a120gv9h3whiznlddl0j3nz3400jjgl97znaincm5i2m5pnjifs")))) + (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'bootstrap 'delete-premature-configure + (lambda _ + (substitute* "./autogen.sh" + ((".*/configure") + ""))))))) + (native-inputs (list autoconf automake autobuild pkg-config)) + (inputs (list avahi + libvnc + libx11 + libxcomposite + libxdamage + libxext + libxfixes + libxi + libxinerama + libxrandr + libxtst + openssl + xdpyinfo + zlib + libjpeg-turbo + xf86-video-dummy)) + (synopsis "VNC server for real X displays") + (home-page "https://github.com/LibVNC/x11vnc") + (description + "x11vnc allows one to view remotely and interact with real X +displays (i.e. a display corresponding to a physical monitor, keyboard, and +mouse) with any VNC viewer.") + (license license:gpl2)))) + + (define-public libvnc (package (name "libvnc") -- 2.38.0