diff options
Diffstat (limited to 'nongnu/packages/firmware.scm')
-rw-r--r-- | nongnu/packages/firmware.scm | 178 |
1 files changed, 178 insertions, 0 deletions
diff --git a/nongnu/packages/firmware.scm b/nongnu/packages/firmware.scm new file mode 100644 index 0000000..a71104c --- /dev/null +++ b/nongnu/packages/firmware.scm @@ -0,0 +1,178 @@ +;;; SPDX-License-Identifier: GPL-3.0-or-later +;;; Copyright © 2022-2023 Jonathan Brielmaier <jonathan.brielmaier@web.de> +;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com> + +(define-module (nongnu packages firmware) + #:use-module (gnu packages efi) + #:use-module (gnu packages firmware) + #:use-module (guix build-system copy) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module (guix gexp) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix guix-license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (nonguix licenses)) + +;; fwupd with LVFS nonfree repositories enabled +(define-public fwupd-nonfree + (package + (inherit fwupd) + (name "fwupd-nonfree") + (arguments + (substitute-keyword-arguments (package-arguments fwupd) + ((#:configure-flags _ + #~'()) + #~(list "--wrap-mode=nofallback" + "-Dsystemd=false" + (string-append "-Defi_os_dir=" + #$gnu-efi "/lib") + "-Defi_binary=false" + (string-append "-Dudevdir=" + #$output "/lib/udev") + "--localstatedir=/var" + (string-append "--libexecdir=" + #$output "/libexec") + "-Dsupported_build=true")))))) + +(define-public ov5640-firmware + (let ((commit "6e8e591e17e207644dfe747e51026967bb1edab5") + (revision "1")) + (package + (name "ov5640-firmware") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://megous.com/git/linux-firmware") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19xmkdvlkczc6zgigy8jdbgnp37i6pc03m2cm3gilvzg8m7v18ad")))) + (build-system copy-build-system) + (arguments + `(#:substitutable? #f + #:install-plan '(("ov5640_af.bin" "lib/firmware/")))) + (synopsis "Firmware for the OV5640 sensor in the PinePhone") + (description "This package provides binary firmware for the 0V5640 sensor +in the PinePhone.") + (home-page "https://megous.com/git/linux-firmware") + (license (nonfree (string-append "unknown")))))) + +(define-public rtl8723bt-firmware + (let ((commit "6e8e591e17e207644dfe747e51026967bb1edab5") + (revision "1")) + (package + (name "rtl8723bt-firmware") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://megous.com/git/linux-firmware") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19xmkdvlkczc6zgigy8jdbgnp37i6pc03m2cm3gilvzg8m7v18ad")))) + (build-system copy-build-system) + (arguments + `(#:substitutable? #f + #:install-plan '(("rtl_bt/rtl8723cs_xx_fw.bin" "lib/firmware/")))) + (synopsis "Firmware for the RTL8723BS/CS") + (description "This package provides binary firmware for the RTL8723BS/CS +WiFi/Bluetooth chip in the PinePhone.") + (home-page "https://megous.com/git/linux-firmware") + (license (nonfree (string-append "unknown")))))) + +(define-public anx7688-firmware + (let ((commit "6e8e591e17e207644dfe747e51026967bb1edab5") + (revision "1")) + (package + (name "anx7688-firmware") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://megous.com/git/linux-firmware") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19xmkdvlkczc6zgigy8jdbgnp37i6pc03m2cm3gilvzg8m7v18ad")))) + (build-system copy-build-system) + (arguments + `(#:substitutable? #f + #:install-plan '(("anx7688-fw.bin" "lib/firmware/")))) + (synopsis "Firmware for the ANX7688") + (description "This package provides binary firmware for the ANX7688 +HDMI to USB Type-C Bridge in the PinePhone.") + (home-page "https://megous.com/git/linux-firmware") + (license (nonfree (string-append "unknown")))))) + +(define-public ap6256-firmware + (let ((commit "056d5f6776e515f90bbbbead1be06857aaef17d0") + (revision "1")) + (package + (name "ap6256-firmware") + (version (git-version "2020.02" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url + "https://gitlab.manjaro.org/manjaro-arm/packages/community/ap6256-firmware") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1s52rpikw0gysph5lq7vr6b3nsxczg4ikgil9zdgmcknjnxk9kbv")))) + (build-system copy-build-system) + (arguments + `(#:substitutable? #f + #:install-plan '( ;Bluetooth firmware + ("BCM4345C5.hcd" "usr/lib/firmware/brcm/") + ;; WiFi firmware + ("fw_bcm43456c5_ag.bin" "usr/lib/firmware/brcm/") + ("brcmfmac43456-sdio.clm_blob" + "usr/lib/firmware/brcm/") + ("brcmfmac43456-sdio.AP6256.txt" + "usr/lib/firmware/brcm/") + ("brcmfmac43456-sdio.AP6256.txt" + "usr/lib/firmware/brcm/brcmfmac43456-sdio.pine64,pinebook-pro.txt")))) + (synopsis "Firmware for the wifi/bt module AP6256") + (description + "This package provides Firmware for the wifi/bt module AP6256, +found in Pinebook Pro.") + (home-page "https://gitlab.manjaro.org/manjaro-arm/packages/community/ap6256-firmware") + (license (nonfree (string-append "unknown")))))) + +(define-public bluez-firmware + (package + (name "bluez-firmware") + (version "1.2") + (source (origin + (method url-fetch) + (uri (string-append "http://bluez.sf.net/download/" name "-" + version ".tar.gz")) + (sha256 + (base32 + "1v4yv6gvlvvwslpb0lj1nsp4r900zxpvxz2ab0sbvimbiw8rw4dn")))) + (build-system gnu-build-system) + (arguments + (list #:phases #~(modify-phases %standard-phases + (add-after 'install-license-files 'relocate-copyright + (lambda* _ + (install-file (string-append #$output + "/lib/firmware/BCM-LEGAL.txt") + (string-append #$output + "/share/doc/bluez-firmware-" + #$(package-version bluez-firmware) + "/BCM-LEGAL.txt"))))))) + (synopsis "Firmware for Broadcom BCM203x and STLC2300 Bluetooth chips") + (description "This package provides firmware for Broadcom BCM203x +and STLC2300 Bluetooth chips.") + (home-page "https://github.com/RPi-Distro/bluez-firmware") + (license (list guix-license:gpl2+ + (nonfree + "file:///share/doc/bluez-firmware-1.2/BCM-LEGAL.txt"))))) |