gnu: phoronix-test-suite: Address FSDG problems.

Fixes <https://issues.guix.gnu.org/56900>.

* gnu/packages/benchmark.scm (phoronix-test-suite) [source]: Add a snippet to
mark mis-licensed test profiles as non-free.
This commit is contained in:
Maxim Cournoyer 2022-09-02 08:50:48 -04:00
parent 3e866e24f0
commit 448deee2b7
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -281,6 +281,53 @@ (define-public phoronix-test-suite
(method url-fetch)
(uri (string-append "https://phoronix-test-suite.com/releases/"
name "-" version ".tar.gz"))
(modules '((guix build utils)
(ice-9 ftw)
(ice-9 regex)
(srfi srfi-26)))
(snippet
'(begin
;; Many test profiles have their license identified as "Free",
;; while they are in fact non-free (see:
;; https://github.com/phoronix-test-suite/phoronix-test-suite/issues/667).
(define problems ;see:
'("bioshock-infinite-1" ;mis-licensed as free
"firefox" ;not FSDG-compliant
"dirt-rally" ;mis-licensed as free
"dirt-showdown" ;mis-licensed as free
"dota2" ;mis-licensed as free
"dow3" ;mis-licensed as free
"etqw-demo" ;mis-licensed as free
"f12015" ;mis-licensed as free
"f12017" ;mis-licensed as free
"geexlab" ;mis-licensed as free
"gfxbench" ;mis-licensed as free
"gnupg" ;downloads ubuntu image
"hitman-1" ;mis-licensed as free
"hl2lostcoast" ;mis-licensed as free
"linux" ;contains blobs
"madmax" ;mis-licensed as free
"metro" ;mis-licensed as free
"minion" ;mis-licensed as free
"sam2017" ;mis-licensed as free
"talos-principle" ;mis-licensed as free
"tomb-raider" ;mis-licensed as free
"tf2" ;mis-licensed as free
"ue4" ;mis-licensed as free
"unigine" ;mis-licensed as free
"ut2004")) ;mis-licensed as free
(define rx (format #f "(~a)" (string-join problems "|")))
(define (mark-as-non-free directory)
(format #t "Marking ~s as non-free...~%" directory)
(substitute* (find-files directory "^(test|suite)-definition.xml$")
(("Free")
"Non-free")))
(with-directory-excursion "ob-cache/test-profiles/pts"
(for-each (cut mark-as-non-free <>)
(scandir "." (cut string-match rx <>))))))
(sha256
(base32
"105shk78jy46nwj6vnlmgp3y3lv9klar3dmcgasy4bslm4l2wx2b"))