aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2016-05-12 13:57:01 -0500
committerEric Bavier <bavier@member.fsf.org>2016-11-22 09:38:36 -0600
commite36a67c91a2a48c6a534afae767bf0758b949644 (patch)
tree3e57ac423d28c21bfa5e0973b415f35025162a46
parent4a5ec78d5f66ba693328a171bc69392ac0f86151 (diff)
downloadguix-e36a67c91a2a48c6a534afae767bf0758b949644.tar
guix-e36a67c91a2a48c6a534afae767bf0758b949644.tar.gz
gnu: Add openfwwf-firmware.
* gnu/packages/firmware.scm (b43-tools, openfwwf-firmware): New variables.
-rw-r--r--gnu/packages/firmware.scm92
1 files changed, 92 insertions, 0 deletions
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 484896f592..443c38e944 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,11 +20,14 @@
(define-module (gnu packages firmware)
#:use-module (guix licenses)
#:use-module (guix packages)
+ #:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages cmake)
#:use-module (gnu packages cross-base)
+ #:use-module (gnu packages flex)
#:use-module (gnu packages perl))
(define-public ath9k-htc-firmware
@@ -82,3 +86,91 @@
802.11n NICs (aka Wi-Fi USB dongles). It is used by the ath9k driver of
Linux-libre.")
(license (non-copyleft "http://directory.fsf.org/wiki/License:ClearBSD"))))
+
+(define-public b43-tools
+ (let ((commit "8dce53297966b31b6c70a7a03c2433978dd9f288")
+ (rev "1"))
+ (package
+ (name "b43-tools")
+ (version (string-append "20140625-" rev "." (string-take commit 7)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://git.bues.ch/git/b43-tools.git")
+ (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "08k7sdr9jagm43r2zv4h03j86klhkblpk73p12444a3vzg1gy1lv"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("flex" ,flex)
+ ("bison" ,bison)))
+ (arguments
+ `(#:modules ((srfi srfi-1)
+ (guix build gnu-build-system)
+ (guix build utils))
+ #:tests? #f ;no tests
+ #:phases
+ (let ((subdirs '("assembler" "disassembler")))
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'patch-/bin/true
+ (lambda _
+ (substitute* (find-files "." "Makefile")
+ (("/bin/true") ":"))
+ #t))
+ (replace 'build
+ (lambda _
+ (every (lambda (dir)
+ (zero? (system* "make" "-C" dir "CC=gcc")))
+ subdirs)))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p (string-append out "/bin"))
+ (every (lambda (dir)
+ (zero?
+ (system* "make" "-C" dir
+ (string-append "PREFIX=" out)
+ "install")))
+ subdirs))))))))
+ (home-page
+ "http://bues.ch/cms/hacking/misc.html#linux_b43_driver_firmware_tools")
+ (synopsis "Collection of tools for the b43 wireless driver")
+ (description
+ "The b43 firmware tools is a collection of firmware extractor,
+assembler, disassembler, and debugging tools for the Linux kernel b43 wireless
+driver.")
+ (license gpl2))))
+
+(define-public openfwwf-firmware
+ (package
+ (name "openfwwf-firmware")
+ (version "5.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://netweb.ing.unibs.it/~openfwwf/firmware/"
+ "openfwwf-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1p60gdi7w88s7qw82d3g9v7mk887mhvidf4l5q5hh09j10h37q4x"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("b43-tools" ,b43-tools)))
+ (arguments
+ `(#:make-flags (list (string-append "PREFIX="
+ (assoc-ref %outputs "out")
+ "/lib/firmware/b43-open"))
+ #:tests? #f ;no tests
+ #:phases (modify-phases %standard-phases
+ (delete 'configure))))
+ (home-page "http://netweb.ing.unibs.it/~openfwwf/")
+ (synopsis "Firmware for BCM43xx devices")
+ (description
+ "This is firmware from Open FirmWare for WiFi networks (OpenFWWF) for the
+Broadcom/AirForce chipset BCM43xx with Wireless-Core Revision 5. It is used
+by the b43-open driver of Linux-libre.")
+ (license gpl2)))