[PATCH] gnu: Add edid-decode.

  • Done
  • quality assurance status badge
Details
2 participants
  • Brice Waegeneire
  • Mathieu Othacehe
Owner
unassigned
Submitted by
Brice Waegeneire
Severity
normal
B
B
Brice Waegeneire wrote on 27 Apr 2020 15:55
(address . guix-patches@gnu.org)
20200427135550.20640-1-brice@waegenei.re
* gnu/packages/hardware.scm (edid-decode): New variable.
---
gnu/packages/hardware.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 189c73ee3c..3284733095 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -89,6 +89,36 @@ calibrated, and restored when the calibration is applied.")
(license (list license:bsd-3 ; FindDDCUtil.cmake
license:gpl2+)))) ; everything else
+(define-public edid-decode
+ (let ((commit "74b64180d67bb009d8d9ea1b6f18ad41aaa16396") ; 2020-04-22
+ (revision "1"))
+ (package
+ (name "edid-decode")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (file-name (git-file-name name version))
+ (uri (git-reference
+ (url "git://linuxtv.org/edid-decode.git")
+ (commit commit)))
+ (sha256
+ (base32 "0nirp5bza08zj5d8bjgcm0p869hdg3qg3mwa7999pjdrzmn7s2ah"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; No test suite
+ #:make-flags
+ (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))
+ "bindir=/bin" "mandir=/share/man")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (home-page "https://git.linuxtv.org/edid-decode.git/")
+ (synopsis "Decode @dfn{EDID} data in human-readable format")
+ (description "edid-decode decodes @dfn{EDID} monitor description data in
+human-readable format and check if it conforms to the standards.")
+ (license license:expat))))
+
;; Distinct from memtest86, which is obsolete.
(define-public memtest86+
(package
--
2.26.0
M
M
Mathieu Othacehe wrote on 28 Apr 2020 09:46
(name . Brice Waegeneire)(address . brice@waegenei.re)(address . 40902@debbugs.gnu.org)
87k120uk69.fsf@gmail.com
Hello Brice,

You can add your copyright.

Toggle quote (7 lines)
> +(define-public edid-decode
> + (let ((commit "74b64180d67bb009d8d9ea1b6f18ad41aaa16396") ; 2020-04-22
> + (revision "1"))
> + (package
> + (name "edid-decode")
> + (version (git-version "0.0.0" revision commit))

The indentation of the block seems wrong.

Toggle quote (19 lines)
> + (source
> + (origin
> + (method git-fetch)
> + (file-name (git-file-name name version))
> + (uri (git-reference
> + (url "git://linuxtv.org/edid-decode.git")
> + (commit commit)))
> + (sha256
> + (base32 "0nirp5bza08zj5d8bjgcm0p869hdg3qg3mwa7999pjdrzmn7s2ah"))))
> + (build-system gnu-build-system)
> + (arguments
> + `(#:tests? #f ; No test suite
> + #:make-flags
> + (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))
> + "bindir=/bin" "mandir=/share/man")
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure))))

When cross-compiling, a native binary is produced. This is because CXX
is set to 'g++' I guess. You need to do something similar to what is
done in the 'maradns' package.

Thanks,

Mathieu
B
B
Brice Waegeneire wrote on 28 Apr 2020 11:53
[PATCH v2] gnu: Add edid-decode.
(address . 40902@debbugs.gnu.org)(address . m.othacehe@gmail.com)
20200428095323.4116-1-brice@waegenei.re
* gnu/packages/hardware.scm (edid-decode): New variable.
---

Fix identation. Add phase 'fix-cross-compilation'.

gnu/packages/hardware.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 189c73ee3c..0128832f28 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -89,6 +89,43 @@ calibrated, and restored when the calibration is applied.")
(license (list license:bsd-3 ; FindDDCUtil.cmake
license:gpl2+)))) ; everything else
+(define-public edid-decode
+ (let ((commit "74b64180d67bb009d8d9ea1b6f18ad41aaa16396") ; 2020-04-22
+ (revision "1"))
+ (package
+ (name "edid-decode")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (file-name (git-file-name name version))
+ (uri (git-reference
+ (url "git://linuxtv.org/edid-decode.git")
+ (commit commit)))
+ (sha256
+ (base32 "0nirp5bza08zj5d8bjgcm0p869hdg3qg3mwa7999pjdrzmn7s2ah"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; No test suite
+ #:make-flags
+ (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))
+ "bindir=/bin" "mandir=/share/man")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-cross-compilation
+ (lambda* (#:key native-inputs target #:allow-other-keys)
+ (when target
+ (substitute* "Makefile"
+ (("\\$\\(CXX\\)")
+ (string-append (assoc-ref native-inputs "gcc") "/bin/g++"))))
+ #t))
+ (delete 'configure))))
+ (home-page "https://git.linuxtv.org/edid-decode.git/")
+ (synopsis "Decode @dfn{EDID} data in human-readable format")
+ (description "edid-decode decodes @dfn{EDID} monitor description data in
+human-readable format and check if it conforms to the standards.")
+ (license license:expat))))
+
;; Distinct from memtest86, which is obsolete.
(define-public memtest86+
(package
--
2.26.0
B
B
Brice Waegeneire wrote on 28 Apr 2020 11:54
Re: [bug#40902] [PATCH] gnu: Add edid-decode.
(name . Mathieu Othacehe)(address . m.othacehe@gmail.com)(address . 40902@debbugs.gnu.org)
7de17236dbe22dcb942ef17c044de01d@waegenei.re
Hello Mathieu,

Thank you for taking the time to review this patch.

On 2020-04-28 07:46, Mathieu Othacehe wrote:
Toggle quote (4 lines)
> Hello Brice,
>
> You can add your copyright.

I already added it in #40607[0], an unmerged patch adding usbguard.

Toggle quote (10 lines)
>> +(define-public edid-decode
>> + (let ((commit "74b64180d67bb009d8d9ea1b6f18ad41aaa16396") ;
>> 2020-04-22
>> + (revision "1"))
>> + (package
>> + (name "edid-decode")
>> + (version (git-version "0.0.0" revision commit))
>
> The indentation of the block seems wrong.

You are correct, “guix lint” didn't mentioned it though. Fixed in v2.

Toggle quote (24 lines)
>> + (source
>> + (origin
>> + (method git-fetch)
>> + (file-name (git-file-name name version))
>> + (uri (git-reference
>> + (url "git://linuxtv.org/edid-decode.git")
>> + (commit commit)))
>> + (sha256
>> + (base32
>> "0nirp5bza08zj5d8bjgcm0p869hdg3qg3mwa7999pjdrzmn7s2ah"))))
>> + (build-system gnu-build-system)
>> + (arguments
>> + `(#:tests? #f ; No test suite
>> + #:make-flags
>> + (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))
>> + "bindir=/bin" "mandir=/share/man")
>> + #:phases
>> + (modify-phases %standard-phases
>> + (delete 'configure))))
>
> When cross-compiling, a native binary is produced. This is because CXX
> is set to 'g++' I guess. You need to do something similar to what is
> done in the 'maradns' package.

I never thought of testing that, I should start doing it. Fixed in v2.


- Brice
M
M
Mathieu Othacehe wrote on 29 Apr 2020 11:41
Re: [PATCH v2] gnu: Add edid-decode.
(name . Brice Waegeneire)(address . brice@waegenei.re)(address . 40902-done@debbugs.gnu.org)
878siey6h8.fsf@gmail.com
Hello Brice,

Toggle quote (5 lines)
> + (when target
> + (substitute* "Makefile"
> + (("\\$\\(CXX\\)")
> + (string-append (assoc-ref native-inputs "gcc") "/bin/g++"))))

Doing that you are still using the native compiler. I changed it to:

Toggle snippet (6 lines)
(when target
(substitute* "Makefile"
(("\\$\\(CXX\\)")
(string-append target "-g++"))))

and pushed!

Thanks,

Mathieu
Closed
?