diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index ffc5e9736e..b2f43bb1f7 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2559,7 +2559,7 @@ compliance.") (define-public wireless-regdb (package (name "wireless-regdb") - (version "2017.03.07") + (version "2019.06.03") (source (origin (method url-fetch) (uri (string-append @@ -2567,7 +2567,7 @@ compliance.") "wireless-regdb-" version ".tar.xz")) (sha256 (base32 - "1f9mcp78sdd4sci6v32vxfcl1rfjpv205jisz1p93kkfnaisy7ip")) + "1gslvh0aqdkv48jyr2ddq153mw28i7qz2ybrjj9qvkk3dgc7x4fd")) ;; We're building 'regulatory.bin' by ourselves. (snippet '(begin @@ -2575,13 +2575,25 @@ compliance.") #t)))) (build-system gnu-build-system) (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'gzip-determinism - (lambda _ - (substitute* "Makefile" - (("gzip") "gzip --no-name")) - #t)) - (delete 'configure)) + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'gzip-determinism + (lambda _ + (substitute* "Makefile" + (("gzip") "gzip --no-name")) + #t)) + (add-after 'unpack 'omit-signature + (lambda _ + (substitute* "Makefile" + ;; Signing requires a REGDB_PUBCERT and REGDB_PRIVKEY which we + ;; don't provide (see below). Disable it. + ((" regulatory\\.db\\.p7s") "") + ;; regulatory.db is built as a dependency of regulatory.db.p7s, + ;; but ‘make install’ depends only on the latter while installing + ;; both (and failing). Depend on it explicitly. + (("^install: " all) (string-append all "regulatory.db "))) + #t)) + (delete 'configure)) ; no configure script ;; The 'all' target of the makefile depends on $(REGDB_CHANGED), which ;; is computed and can be equal to 'maintainer-clean'; when that @@ -2589,19 +2601,22 @@ compliance.") ;; just built. Thus, build things sequentially. #:parallel-build? #f - #:tests? #f ;no tests - #:make-flags (let ((out (assoc-ref %outputs "out"))) - (list (string-append "PREFIX=" out) - (string-append "LSB_ID=Guix") - (string-append "DISTRO_PUBKEY=/dev/null") - (string-append "DISTRO_PRIVKEY=/dev/null") - (string-append "REGDB_PUBKEY=/dev/null") + #:tests? #f ; no tests + #:make-flags + (let ((out (assoc-ref %outputs "out"))) + (list (string-append "PREFIX=" out) + (string-append "FIRMWARE_PATH=$(PREFIX)/lib/firmware") - ;; Leave that empty so that db2bin.py doesn't try - ;; to sign 'regulatory.bin'. This allows us to - ;; avoid managing a key pair for the whole distro. - (string-append "REGDB_PRIVKEY="))))) - (native-inputs `(("python" ,python-2))) + ;; Leave this empty so that db2bin.py doesn't try to sign + ;; ‘regulatory.bin’. This allows us to avoid managing a key + ;; pair for the whole distribution. + (string-append "REGDB_PRIVKEY=") + ;; Don't generate a public key for the same reason. These are + ;; used as Makefile targets and can't be the empty string. + (string-append "REGDB_PUBCERT=/dev/null") + (string-append "REGDB_PUBKEY=/dev/null"))))) + (native-inputs + `(("python" ,python-wrapper))) (home-page "https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb") (synopsis "Wireless regulatory database")