unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add openfwwf-firmware.
@ 2016-11-17  3:29 Eric Bavier
  2016-11-18 21:04 ` Leo Famulari
  2016-12-06 19:56 ` Danny Milosavljevic
  0 siblings, 2 replies; 7+ messages in thread
From: Eric Bavier @ 2016-11-17  3:29 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 240 bytes --]

Hello Guix,

We've had at least one person on IRC confirm that this firmware package
worked for them, allowing them to use their wireless hardware.

Would it be appropriate to add this to %base-firmware?  The output is
rather small.

`~Eric

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-openfwwf-firmware.patch --]
[-- Type: text/x-patch, Size: 5131 bytes --]

From c397f73d69326db24c211e4e2bda46e647d0e751 Mon Sep 17 00:00:00 2001
From: Eric Bavier <bavier@member.fsf.org>
Date: Thu, 12 May 2016 13:57:01 -0500
Subject: [PATCH] gnu: Add openfwwf-firmware.

* gnu/packages/firmware.scm (b43-tools, openfwwf-firmware): New
variables.
---
 gnu/packages/firmware.scm | 92 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 92 insertions(+)

diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 45b7bf7..790e11e 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 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)))
+         (filename (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"))) ;TODO: fwcutter
+           (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 Wirelss-Core Revision 5.  It is used by
+the b43-open driver of Linux-libre.")
+    (license gpl2)))
-- 
2.10.2


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-12-06 19:56 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-17  3:29 [PATCH] gnu: Add openfwwf-firmware Eric Bavier
2016-11-18 21:04 ` Leo Famulari
2016-11-19  3:14   ` Eric Bavier
2016-11-19  4:13     ` Leo Famulari
2016-11-21  9:05     ` Ludovic Courtès
2016-11-22 15:42       ` Eric Bavier
2016-12-06 19:56 ` Danny Milosavljevic

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).