diff options
author | Alyssa Ross <hi@alyssa.is> | 2022-12-06 19:57:55 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-02-08 13:48:30 +0000 |
commit | bf3aadfdd39aa197e18bade671fab6726349ffa4 (patch) | |
tree | 698567af766ed441d757b57a7b21e68d4a342a2b /nixpkgs/pkgs/os-specific/linux/firmware | |
parent | f4afc5a01d9539ce09e47494e679c51f80723d07 (diff) | |
parent | 99665eb45f58d959d2cb9e49ddb960c79d596f33 (diff) | |
download | nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.gz nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.bz2 nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.lz nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.xz nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.zst nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.zip |
Merge commit '99665eb45f58d959d2cb9e49ddb960c79d596f33'
Diffstat (limited to 'nixpkgs/pkgs/os-specific/linux/firmware')
26 files changed, 262 insertions, 199 deletions
diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware-cutter/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware-cutter/default.nix index 389078db0af5..fe7a3e9ae406 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware-cutter/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware-cutter/default.nix @@ -11,7 +11,10 @@ stdenv.mkDerivation rec { patches = [ ./no-root-install.patch ]; - makeFlags = [ "PREFIX=$(out)" ]; + makeFlags = [ + "PREFIX=$(out)" + "CC=${stdenv.cc.targetPrefix}cc" + ]; meta = { description = "Firmware extractor for cards supported by the b43 kernel module"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/5.1.138.nix b/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/5.1.138.nix index 3f810fd93a1c..a5683a1ce535 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/5.1.138.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/5.1.138.nix @@ -1,8 +1,8 @@ -{ lib, stdenv, fetchurl, b43FirmwareCutter }: +{ lib, stdenvNoCC, fetchurl, b43FirmwareCutter }: let version = "5.100.138"; in -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { pname = "b43-firmware"; inherit version; @@ -11,7 +11,7 @@ stdenv.mkDerivation { sha256 = "0vz4ka8gycf72gmnaq61k8rh8y17j1wm2k3fidxvcqjvmix0drzi"; }; - buildInputs = [ b43FirmwareCutter ]; + nativeBuildInputs = [ b43FirmwareCutter ]; installPhase = '' mkdir -p $out/lib/firmware @@ -24,4 +24,3 @@ stdenv.mkDerivation { license = lib.licenses.unfree; }; } - diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/6.30.163.46.nix b/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/6.30.163.46.nix index 1116d96a637f..e117db45b182 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/6.30.163.46.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/b43-firmware/6.30.163.46.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchurl, b43FirmwareCutter }: +{ lib, stdenvNoCC, fetchurl, b43FirmwareCutter }: -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "b43-firmware"; version = "6.30.163.46"; @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { sha256 = "0baw6gcnrhxbb447msv34xg6rmlcj0gm3ahxwvdwfcvq4xmknz50"; }; - buildInputs = [ b43FirmwareCutter ]; + nativeBuildInputs = [ b43FirmwareCutter ]; sourceRoot = "."; installPhase = '' - mkdir $out - b43-fwcutter -w $out *.wl_apsta.o + mkdir -p $out/lib/firmware + b43-fwcutter -w $out/lib/firmware *.wl_apsta.o ''; meta = with lib; { diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/broadcom-bt-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/broadcom-bt-firmware/default.nix index a0985cad0dbe..073d443bee41 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/broadcom-bt-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/broadcom-bt-firmware/default.nix @@ -1,9 +1,6 @@ -{ lib, stdenv, fetchurl, cabextract, bt-fw-converter }: +{ lib, stdenvNoCC, fetchurl, cabextract, bt-fw-converter }: -# Kernels between 4.2 and 4.7 will not work with -# this packages as they expect the firmware to be named "BCM.hcd" -# see: https://github.com/NixOS/nixpkgs/pull/25478#issuecomment-299034865 -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "broadcom-bt-firmware"; version = "12.0.1.1012"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/facetimehd-calibration/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/facetimehd-calibration/default.nix new file mode 100644 index 000000000000..ca6782688728 --- /dev/null +++ b/nixpkgs/pkgs/os-specific/linux/firmware/facetimehd-calibration/default.nix @@ -0,0 +1,62 @@ +{ lib, stdenvNoCC, fetchurl, unrar-wrapper, pkgs }: + +let + + version = "5.1.5769"; + + + # Described on https://github.com/patjak/facetimehd/wiki/Extracting-the-sensor-calibration-files + + # From the wiki page, range extracted with binwalk: + zipUrl = "https://download.info.apple.com/Mac_OS_X/031-30890-20150812-ea191174-4130-11e5-a125-930911ba098f/bootcamp${version}.zip"; + zipRange = "2338085-3492508"; # the whole download is 518MB, this deflate stream is 1.2MB + + # CRC and length from the ZIP entry header (not strictly necessary, but makes it extract cleanly): + gzFooter = ''\x51\x1f\x86\x78\xcf\x5b\x12\x00''; + + # Also from the wiki page: + calibrationFiles = [ + { file = "1771_01XX.dat"; offset = "1644880"; size = "19040"; } + { file = "1871_01XX.dat"; offset = "1606800"; size = "19040"; } + { file = "1874_01XX.dat"; offset = "1625840"; size = "19040"; } + { file = "9112_01XX.dat"; offset = "1663920"; size = "33060"; } + ]; + +in + +stdenvNoCC.mkDerivation { + + pname = "facetimehd-calibration"; + inherit version; + src = fetchurl { + url = zipUrl; + sha256 = "1dzyv457fp6d8ly29sivqn6llwj5ydygx7p8kzvdnsp11zvid2xi"; + curlOpts = "-r ${zipRange}"; + }; + + dontUnpack = true; + dontInstall = true; + + buildInputs = [ unrar-wrapper ]; + + buildPhase = '' + { printf '\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x00' + cat $src + printf '${gzFooter}' + } | zcat > AppleCamera64.exe + unrar x AppleCamera64.exe AppleCamera.sys + + mkdir -p $out/lib/firmware/facetimehd + '' + lib.concatMapStrings ({file, offset, size}: '' + dd bs=1 skip=${offset} count=${size} if=AppleCamera.sys of=$out/lib/firmware/facetimehd/${file} + '') calibrationFiles; + + meta = with lib; { + description = "facetimehd calibration"; + homepage = "https://support.apple.com/kb/DL1837"; + license = licenses.unfree; + maintainers = with maintainers; [ alexshpilkin womfoo grahamc ]; + platforms = [ "i686-linux" "x86_64-linux" ]; + }; + +} diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/facetimehd-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/facetimehd-firmware/default.nix index 1c3d8fbbaf7d..6679f1f19e75 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/facetimehd-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/facetimehd-firmware/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, cpio, xz, pkgs }: +{ lib, stdenvNoCC, fetchurl, cpio, xz, pkgs }: let @@ -33,7 +33,7 @@ let in -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { pname = "facetimehd-firmware"; inherit version; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/firmware-updater/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/firmware-updater/default.nix index 02b549dd9ea1..fb9d3a9a36c4 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/firmware-updater/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/firmware-updater/default.nix @@ -7,7 +7,7 @@ flutter.mkFlutterApp { pname = "firmware-updater"; version = "unstable"; - vendorHash = "sha256-L8am4vTx4KlMHUdIhrUsCxGc27vkolawS/9DyFCPOJQ="; + vendorHash = "sha256-3wVA9BLCnMijC0gOmskz+Hv7NQIGu/jhBDbWjmoq1Tc="; src = fetchFromGitHub { owner = "canonical"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix index bd9f0d2474e4..56001cb225aa 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { pname = "fwupd-efi"; - version = "1.2"; + version = "1.3"; src = fetchurl { url = "https://people.freedesktop.org/~hughsient/releases/${pname}-${version}.tar.xz"; - sha256 = "sha256-aRx38RwhAQSNjauvY8bQ/iLPrQ5dQyIEHJurzrr86z8="; + sha256 = "sha256-1Ys04TwhWYZ8ORJgr04kGO6/lI1I36sC6kcrVoP/r1k="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/add-option-for-installation-sysconfdir.patch b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/add-option-for-installation-sysconfdir.patch index bdb2fc34728a..c136f935e03e 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/add-option-for-installation-sysconfdir.patch +++ b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/add-option-for-installation-sysconfdir.patch @@ -1,66 +1,66 @@ diff --git a/data/meson.build b/data/meson.build -index 2ae29ce5..342cac92 100644 +index d8494020d..7c896fa0d 100644 --- a/data/meson.build +++ b/data/meson.build @@ -26,7 +26,7 @@ endif if build_standalone install_data(['daemon.conf'], -- install_dir : join_paths(sysconfdir, 'fwupd') -+ install_dir : join_paths(sysconfdir_install, 'fwupd') +- install_dir: join_paths(sysconfdir, 'fwupd') ++ install_dir: join_paths(sysconfdir_install, 'fwupd') ) - install_data(['power.quirk', 'cfi.quirk'], - install_dir: join_paths(datadir, 'fwupd', 'quirks.d')) + plugin_quirks += join_paths(meson.current_source_dir(), 'power.quirk') + plugin_quirks += join_paths(meson.current_source_dir(), 'cfi.quirk') diff --git a/data/pki/meson.build b/data/pki/meson.build -index 2a7d0f24..091981f7 100644 +index 3649fecea..c3462744b 100644 --- a/data/pki/meson.build +++ b/data/pki/meson.build @@ -12,13 +12,13 @@ install_data([ 'GPG-KEY-Linux-Foundation-Firmware', 'GPG-KEY-Linux-Vendor-Firmware-Service', ], -- install_dir : join_paths(sysconfdir, 'pki', 'fwupd') -+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd') +- install_dir: join_paths(sysconfdir, 'pki', 'fwupd') ++ install_dir: join_paths(sysconfdir_install, 'pki', 'fwupd') ) install_data([ 'GPG-KEY-Linux-Foundation-Metadata', 'GPG-KEY-Linux-Vendor-Firmware-Service', ], -- install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata') -+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd-metadata') +- install_dir: join_paths(sysconfdir, 'pki', 'fwupd-metadata') ++ install_dir: join_paths(sysconfdir_install, 'pki', 'fwupd-metadata') ) endif -@@ -26,11 +26,11 @@ if supported_pkcs7 == '1' +@@ -26,11 +26,11 @@ if supported_pkcs7 install_data([ 'LVFS-CA.pem', ], -- install_dir : join_paths(sysconfdir, 'pki', 'fwupd') -+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd') +- install_dir: join_paths(sysconfdir, 'pki', 'fwupd') ++ install_dir: join_paths(sysconfdir_install, 'pki', 'fwupd') ) install_data([ 'LVFS-CA.pem', ], -- install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata') -+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd-metadata') +- install_dir: join_paths(sysconfdir, 'pki', 'fwupd-metadata') ++ install_dir: join_paths(sysconfdir_install, 'pki', 'fwupd-metadata') ) endif diff --git a/data/remotes.d/meson.build b/data/remotes.d/meson.build -index 02d8777b..2c89d593 100644 +index 1d1698a7e..5469d00a6 100644 --- a/data/remotes.d/meson.build +++ b/data/remotes.d/meson.build @@ -2,7 +2,7 @@ if build_standalone and get_option('lvfs') != 'false' install_data([ 'lvfs-testing.conf', ], -- install_dir : join_paths(sysconfdir, 'fwupd', 'remotes.d') -+ install_dir : join_paths(sysconfdir_install, 'fwupd', 'remotes.d') +- install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d') ++ install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d') ) con3 = configuration_data() if get_option('lvfs') == 'disabled' @@ -15,7 +15,7 @@ if build_standalone and get_option('lvfs') != 'false' - output : 'lvfs.conf', - configuration : con3, + output: 'lvfs.conf', + configuration: con3, install: true, - install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'), + install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'), @@ -68,25 +68,25 @@ index 02d8777b..2c89d593 100644 i18n.merge_file( input: 'lvfs.metainfo.xml', @@ -49,12 +49,12 @@ configure_file( - output : 'vendor.conf', - configuration : con2, + output: 'vendor.conf', + configuration: con2, install: true, - install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'), + install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'), ) configure_file( - input : 'vendor-directory.conf', - output : 'vendor-directory.conf', - configuration : con2, + input: 'vendor-directory.conf', + output: 'vendor-directory.conf', + configuration: con2, install: true, - install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'), + install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'), ) diff --git a/meson.build b/meson.build -index 394f40fa..7b602c73 100644 +index e6b717078..f8a7a7455 100644 --- a/meson.build +++ b/meson.build -@@ -187,6 +187,12 @@ endif +@@ -195,6 +195,12 @@ endif mandir = join_paths(prefix, get_option('mandir')) localedir = join_paths(prefix, get_option('localedir')) @@ -97,87 +97,87 @@ index 394f40fa..7b602c73 100644 +endif + diffcmd = find_program('diff') - gio = dependency('gio-2.0', version : '>= 2.45.8') - giounix = dependency('gio-unix-2.0', version : '>= 2.45.8', required: false) + gio = dependency('gio-2.0', version: '>= 2.45.8') + giounix = dependency('gio-unix-2.0', version: '>= 2.45.8', required: false) diff --git a/meson_options.txt b/meson_options.txt -index c1b483cb..047dbdd8 100644 +index 06d242371..d9e517fc0 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -1,3 +1,4 @@ +option('sysconfdir_install', type: 'string', value: '', description: 'sysconfdir to use during installation') option('build', type : 'combo', choices : ['all', 'standalone', 'library'], value : 'all', description : 'build type') - option('consolekit', type : 'boolean', value : true, description : 'enable ConsoleKit support') + option('consolekit', type : 'feature', description : 'ConsoleKit support', deprecated: {'true': 'enabled', 'false': 'disabled'}) option('static_analysis', type : 'boolean', value : false, description : 'enable GCC static analysis support') diff --git a/plugins/dell-esrt/meson.build b/plugins/dell-esrt/meson.build -index e9f12879..a0126dbb 100644 +index 67bd3b9d9..ad04a91b6 100644 --- a/plugins/dell-esrt/meson.build +++ b/plugins/dell-esrt/meson.build @@ -38,6 +38,6 @@ configure_file( - output : 'dell-esrt.conf', - configuration : con2, + output: 'dell-esrt.conf', + configuration: con2, install: true, - install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'), + install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'), ) endif diff --git a/plugins/msr/meson.build b/plugins/msr/meson.build -index 3ea47456..40dbd116 100644 +index 13f03ccd4..9235ebe33 100644 --- a/plugins/msr/meson.build +++ b/plugins/msr/meson.build -@@ -12,7 +12,7 @@ install_data(['fwupd-msr.conf'], +@@ -10,7 +10,7 @@ install_data(['fwupd-msr.conf'], endif install_data(['msr.conf'], -- install_dir: join_paths(sysconfdir, 'fwupd') -+ install_dir: join_paths(sysconfdir_install, 'fwupd') +- install_dir: join_paths(sysconfdir, 'fwupd') ++ install_dir: join_paths(sysconfdir_install, 'fwupd') ) shared_module('fu_plugin_msr', fu_hash, diff --git a/plugins/redfish/meson.build b/plugins/redfish/meson.build -index 4a0a8664..7d9ba77d 100644 +index 95606e478..e5355e520 100644 --- a/plugins/redfish/meson.build +++ b/plugins/redfish/meson.build -@@ -53,7 +53,7 @@ shared_module('fu_plugin_redfish', +@@ -43,7 +43,7 @@ shared_module('fu_plugin_redfish', ) install_data(['redfish.conf'], -- install_dir: join_paths(sysconfdir, 'fwupd'), -+ install_dir: join_paths(sysconfdir_install, 'fwupd'), +- install_dir: join_paths(sysconfdir, 'fwupd'), ++ install_dir: join_paths(sysconfdir_install, 'fwupd'), ) if get_option('tests') diff --git a/plugins/thunderbolt/meson.build b/plugins/thunderbolt/meson.build -index 1ba9562f..c074f770 100644 +index 5f8ffbf90..9ba323e75 100644 --- a/plugins/thunderbolt/meson.build +++ b/plugins/thunderbolt/meson.build -@@ -37,7 +37,7 @@ fu_plugin_thunderbolt = shared_module('fu_plugin_thunderbolt', +@@ -32,7 +32,7 @@ fu_plugin_thunderbolt = shared_module('fu_plugin_thunderbolt', ) install_data(['thunderbolt.conf'], -- install_dir: join_paths(sysconfdir, 'fwupd') -+ install_dir: join_paths(sysconfdir_install, 'fwupd') +- install_dir: join_paths(sysconfdir, 'fwupd') ++ install_dir: join_paths(sysconfdir_install, 'fwupd') ) # we use functions from 2.52 in the tests - if get_option('tests') and umockdev.found() and gio.version().version_compare('>= 2.52') + if get_option('tests') and run_sanitize_unsafe_tests and umockdev.found() and gio.version().version_compare('>= 2.52') diff --git a/plugins/uefi-capsule/meson.build b/plugins/uefi-capsule/meson.build -index 04cbd51a..9a8c43de 100644 +index ef38dc03e..78ff65e1d 100644 --- a/plugins/uefi-capsule/meson.build +++ b/plugins/uefi-capsule/meson.build -@@ -21,7 +21,7 @@ if host_machine.system() == 'linux' - output : '35_fwupd', - configuration : con2, +@@ -20,7 +20,7 @@ if host_machine.system() == 'linux' + output: '35_fwupd', + configuration: con2, install: true, - install_dir: join_paths(sysconfdir, 'grub.d') + install_dir: join_paths(sysconfdir_install, 'grub.d') ) elif host_machine.system() == 'freebsd' backend_srcs += 'fu-uefi-backend-freebsd.c' -@@ -114,7 +114,7 @@ if get_option('compat_cli') and get_option('man') +@@ -110,7 +110,7 @@ if get_option('compat_cli') and get_option('man') endif install_data(['uefi_capsule.conf'], -- install_dir: join_paths(sysconfdir, 'fwupd') -+ install_dir: join_paths(sysconfdir_install, 'fwupd') +- install_dir: join_paths(sysconfdir, 'fwupd') ++ install_dir: join_paths(sysconfdir_install, 'fwupd') ) # add all the .po files as inputs to watch diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/default.nix index 272bd6dbe8fc..541bef93a8a3 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/default.nix @@ -3,9 +3,8 @@ { stdenv , lib , fetchurl -, fetchpatch , fetchFromGitHub -, gtk-doc +, gi-docgen , pkg-config , gobject-introspection , gettext @@ -18,7 +17,6 @@ , libarchive , curl , libjcat -, libxslt , elfutils , libsmbios , efivar @@ -26,14 +24,12 @@ , meson , libuuid , colord -, docbook_xml_dtd_43 -, docbook-xsl-nons , ninja , gcab , gnutls , protobufc , python3 -, wrapGAppsHook +, wrapGAppsNoGuiHook , json-glib , bash-completion , shared-mime-info @@ -54,6 +50,8 @@ , modemmanager , libqmi , libmbim +, libcbor +, xz }: let @@ -116,7 +114,7 @@ let self = stdenv.mkDerivation rec { pname = "fwupd"; - version = "1.7.6"; + version = "1.8.3"; # libfwupd goes to lib # daemon, plug-ins and libfwupdplugin go to out @@ -125,7 +123,7 @@ let src = fetchurl { url = "https://people.freedesktop.org/~hughsient/releases/fwupd-${version}.tar.xz"; - sha256 = "sha256-fr4VFKy2iNJknOzDktuSkJTaPwPPyYqcD6zKuwhJEvo="; + sha256 = "sha256-ciIpd86KhmJRH/o8CIFWb2xFjsjWHSUNlGYRfWEiOOw="; }; patches = [ @@ -140,32 +138,18 @@ let # they are not really part of the library. ./install-fwupdplugin-to-out.patch - # Fix detection of installed tests - # https://github.com/fwupd/fwupd/issues/3880 - (fetchpatch { - url = "https://github.com/fwupd/fwupd/commit/5bc546221331feae9cedc1892219a25d8837955f.patch"; - sha256 = "XcLhcDrB2/MFCXjKAyhftQgvJG4BBkp07geM9eK3q1g="; - }) - # Installed tests are installed to different output # we also cannot have fwupd-tests.conf in $out/etc since it would form a cycle. ./installed-tests-path.patch # EFI capsule is located in fwupd-efi now. ./efi-app-path.patch - - # Drop hard-coded FHS path - # https://github.com/fwupd/fwupd/issues/4360 - (fetchpatch { - url = "https://github.com/fwupd/fwupd/commit/14cc2e7ee471b66ee2ef54741f4bec1f92204620.patch"; - sha256 = "47682oqE66Y6QKPtN2mYpnb2+TIJFqBgsgx60LmC3FM="; - }) ]; nativeBuildInputs = [ meson ninja - gtk-doc + gi-docgen pkg-config gobject-introspection gettext @@ -173,12 +157,9 @@ let valgrind gcab gnutls - docbook_xml_dtd_43 - docbook-xsl-nons - libxslt protobufc # for protoc python - wrapGAppsHook + wrapGAppsNoGuiHook vala ]; @@ -204,16 +185,20 @@ let protobufc modemmanager libmbim + libcbor libqmi + xz # for liblzma. ] ++ lib.optionals haveDell [ libsmbios + ] ++ lib.optionals haveFlashrom [ + flashrom ]; mesonFlags = [ - "-Ddocs=gtkdoc" + "-Ddocs=enabled" "-Dplugin_dummy=true" # We are building the official releases. - "-Dsupported_build=true" + "-Dsupported_build=enabled" # Would dlopen libsoup to preserve compatibility with clients linking against older fwupd. # https://github.com/fwupd/fwupd/commit/173d389fa59d8db152a5b9da7cc1171586639c97 "-Dsoup_session_compat=false" @@ -224,7 +209,9 @@ let "--sysconfdir=/etc" "-Dsysconfdir_install=${placeholder "out"}/etc" "-Defi_os_dir=nixos" - "-Dplugin_modem_manager=true" + "-Dplugin_modem_manager=enabled" + # Requires Meson 0.63 + "-Dgresource_quirks=disabled" # We do not want to place the daemon into lib (cyclic reference) "--libexecdir=${placeholder "out"}/libexec" @@ -232,14 +219,14 @@ let # against libfwupdplugin which is in $out/lib. "-Dc_link_args=-Wl,-rpath,${placeholder "out"}/lib" ] ++ lib.optionals (!haveDell) [ - "-Dplugin_dell=false" - "-Dplugin_synaptics_mst=false" + "-Dplugin_dell=disabled" + "-Dplugin_synaptics_mst=disabled" ] ++ lib.optionals (!haveRedfish) [ - "-Dplugin_redfish=false" - ] ++ lib.optionals haveFlashrom [ - "-Dplugin_flashrom=true" + "-Dplugin_redfish=disabled" + ] ++ lib.optionals (!haveFlashrom) [ + "-Dplugin_flashrom=disabled" ] ++ lib.optionals (!haveMSR) [ - "-Dplugin_msr=false" + "-Dplugin_msr=disabled" ]; # TODO: wrapGAppsHook wraps efi capsule even though it is not ELF @@ -270,10 +257,20 @@ let meson_post_install.sh \ po/test-deps + # This checks a version of a dependency of gi-docgen but gi-docgen is self-contained in Nixpkgs. + echo "Clearing docs/test-deps.py" + test -f docs/test-deps.py + echo > docs/test-deps.py + substituteInPlace data/installed-tests/fwupdmgr-p2p.sh \ --replace "gdbus" ${glib.bin}/bin/gdbus ''; + preBuild = '' + # jcat-tool at buildtime requires a home directory + export HOME="$(mktemp -d)" + ''; + preCheck = '' addToSearchPath XDG_DATA_DIRS "${shared-mime-info}/share" ''; @@ -298,7 +295,7 @@ let efibootmgr bubblewrap tpm2-tools - ] ++ lib.optional haveFlashrom flashrom; + ]; in '' gappsWrapperArgs+=( --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" @@ -307,8 +304,8 @@ let ) ''; - # Since we had to disable wrapGAppsHook, we need to wrap the executables manually. postFixup = '' + # Since we had to disable wrapGAppsHook, we need to wrap the executables manually. find -L "$out/bin" "$out/libexec" -type f -executable -print0 \ | while IFS= read -r -d ''' file; do if [[ "$file" != *.efi ]]; then @@ -316,6 +313,9 @@ let wrapGApp "$file" fi done + + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; separateDebugInfo = true; @@ -323,7 +323,6 @@ let passthru = { filesInstalledToEtc = [ "fwupd/daemon.conf" - "fwupd/msr.conf" "fwupd/remotes.d/lvfs-testing.conf" "fwupd/remotes.d/lvfs.conf" "fwupd/remotes.d/vendor.conf" @@ -341,6 +340,8 @@ let "fwupd/remotes.d/dell-esrt.conf" ] ++ lib.optionals haveRedfish [ "fwupd/redfish.conf" + ] ++ lib.optionals haveMSR [ + "fwupd/msr.conf" ]; # DisabledPlugins key in fwupd/daemon.conf diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/efi-app-path.patch b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/efi-app-path.patch index c2502502a40c..afee6d9f61ea 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/efi-app-path.patch +++ b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/efi-app-path.patch @@ -1,10 +1,10 @@ diff --git a/meson.build b/meson.build -index 4330512e..e53b70ab 100644 +index b91dd037..01d70a61 100644 --- a/meson.build +++ b/meson.build -@@ -403,7 +403,7 @@ endif - if build_standalone and get_option('plugin_uefi_capsule') - efiboot = dependency('efiboot') +@@ -413,7 +413,7 @@ if build_standalone and efiboot.found() and efivar.found() + conf.set('HAVE_EFI_TIME_T', '1') + endif - efi_app_location = join_paths(libexecdir, 'fwupd', 'efi') + efi_app_location = join_paths(dependency('fwupd-efi').get_pkgconfig_variable('prefix'), 'libexec', 'fwupd', 'efi') diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/install-fwupdplugin-to-out.patch b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/install-fwupdplugin-to-out.patch index 6667156e831c..f3369b6e1333 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/install-fwupdplugin-to-out.patch +++ b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/install-fwupdplugin-to-out.patch @@ -1,32 +1,32 @@ diff --git a/libfwupdplugin/meson.build b/libfwupdplugin/meson.build -index d6a2ed68..12c82a95 100644 +index 1afa28e1..3da81d30 100644 --- a/libfwupdplugin/meson.build +++ b/libfwupdplugin/meson.build -@@ -216,7 +216,8 @@ fwupdplugin = library( +@@ -220,7 +220,8 @@ fwupdplugin = library( ], - link_args : vflag, - link_depends : fwupdplugin_mapfile, -- install : true -+ install : true, -+ install_dir : bindir / '..' / 'lib', + link_args: cc.get_supported_link_arguments([vflag]), + link_depends: fwupdplugin_mapfile, +- install: true ++ install: true, ++ install_dir: bindir / '..' / 'lib', ) fwupdplugin_pkgg = import('pkgconfig') -@@ -276,7 +277,8 @@ if get_option('introspection') +@@ -280,7 +281,8 @@ if introspection.allowed() girtargets, fwupd_gir[0], ], -- install : true -+ install : true, -+ install_dir_typelib : bindir / '..' / 'lib' / 'girepository-1.0', +- install: true ++ install: true, ++ install_dir_typelib: bindir / '..' / 'lib' / 'girepository-1.0', ) # Verify the map file is correct -- note we can't actually use the generated diff --git a/meson.build b/meson.build -index 38aa36b0..3fb7e579 100644 +index b91dd037..f97b4c26 100644 --- a/meson.build +++ b/meson.build -@@ -521,7 +521,7 @@ if build_standalone +@@ -504,7 +504,7 @@ if build_standalone if host_machine.system() == 'windows' plugin_dir = 'fwupd-plugins-@0@'.format(libfwupdplugin_lt_current) else diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/installed-tests-path.patch b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/installed-tests-path.patch index ea50d88dfed6..49bca65d9c60 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/installed-tests-path.patch +++ b/nixpkgs/pkgs/os-specific/linux/firmware/fwupd/installed-tests-path.patch @@ -1,5 +1,5 @@ diff --git a/data/installed-tests/meson.build b/data/installed-tests/meson.build -index b8ec916f0..38209b363 100644 +index b8ec916f..38209b36 100644 --- a/data/installed-tests/meson.build +++ b/data/installed-tests/meson.build @@ -83,5 +83,5 @@ configure_file( @@ -10,10 +10,10 @@ index b8ec916f0..38209b363 100644 + install_dir: join_paths(get_option('installed_test_prefix'), 'etc', 'fwupd', 'remotes.d'), ) diff --git a/meson.build b/meson.build -index 32fe6e408..b35d741e0 100644 +index b91dd037..d7e20b18 100644 --- a/meson.build +++ b/meson.build -@@ -183,8 +183,8 @@ else +@@ -188,8 +188,8 @@ else datadir = join_paths(prefix, get_option('datadir')) sysconfdir = join_paths(prefix, get_option('sysconfdir')) localstatedir = join_paths(prefix, get_option('localstatedir')) @@ -21,10 +21,10 @@ index 32fe6e408..b35d741e0 100644 - installed_test_datadir = join_paths(datadir, 'installed-tests', meson.project_name()) + installed_test_bindir = join_paths(get_option('installed_test_prefix'), 'libexec', 'installed-tests', meson.project_name()) + installed_test_datadir = join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', meson.project_name()) + daemon_dir = join_paths(libexecdir, 'fwupd') endif mandir = join_paths(prefix, get_option('mandir')) - localedir = join_paths(prefix, get_option('localedir')) -@@ -484,6 +484,7 @@ gnome = import('gnome') +@@ -492,6 +492,7 @@ gnome = import('gnome') i18n = import('i18n') conf.set_quoted('FWUPD_PREFIX', prefix) @@ -33,19 +33,19 @@ index 32fe6e408..b35d741e0 100644 conf.set_quoted('FWUPD_LIBDIR', libdir) conf.set_quoted('FWUPD_LIBEXECDIR', libexecdir) diff --git a/meson_options.txt b/meson_options.txt -index 0a0e2853..5f68d78b 100644 +index d00038db..be1c45b4 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -25,6 +26,7 @@ option('plugin_coreboot', type : 'boolean', value : true, description : 'enable - option('systemd', type : 'boolean', value : true, description : 'enable systemd support') +@@ -56,6 +56,7 @@ option('systemd', type : 'feature', description : 'systemd support', deprecated: + option('systemd_unit_user', type : 'string', description : 'User account to use for fwupd-refresh.service (empty for DynamicUser)') option('systemd_root_prefix', type: 'string', value: '', description: 'Directory to base systemd’s installation directories on') - option('elogind', type : 'boolean', value : false, description : 'enable elogind support') + option('elogind', type : 'feature', description : 'elogind support', deprecated: {'true': 'enabled', 'false': 'disabled'}) +option('installed_test_prefix', type: 'string', description: 'Prefix for installed tests') option('tests', type : 'boolean', value : true, description : 'enable tests') - option('tpm', type : 'boolean', value : true, description : 'enable TPM support') - option('udevdir', type: 'string', value: '', description: 'Directory for udev rules') + option('soup_session_compat', type : 'boolean', value : true, description : 'enable SoupSession runtime compatibility support') + option('curl', type : 'feature', description : 'libcurl support', deprecated: {'true': 'enabled', 'false': 'disabled'}) diff --git a/plugins/redfish/fu-self-test.c b/plugins/redfish/fu-self-test.c -index c507fabc8..0cddc3248 100644 +index 4d19e560..91cfaa61 100644 --- a/plugins/redfish/fu-self-test.c +++ b/plugins/redfish/fu-self-test.c @@ -27,7 +27,7 @@ fu_test_is_installed_test(void) diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix index 7c195cd2d7ca..716c5e4d8288 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix @@ -1,8 +1,8 @@ -{ stdenv +{ stdenvNoCC , lib , fetchurl }: -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "intel2200BGFirmware"; version = "3.1"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/libreelec-dvb-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/libreelec-dvb-firmware/default.nix index 2103012d3ed9..9579ff11c739 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/libreelec-dvb-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/libreelec-dvb-firmware/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchFromGitHub, lib}: +{ stdenvNoCC, fetchFromGitHub, lib}: -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "libreelec-dvb-firmware"; version = "1.4.2"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/linux-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/linux-firmware/default.nix index 22dc930d293d..20058e7bc821 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/linux-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/linux-firmware/default.nix @@ -1,13 +1,12 @@ -{ stdenvNoCC, fetchgit, lib }: +{ stdenvNoCC, fetchzip, lib }: stdenvNoCC.mkDerivation rec { pname = "linux-firmware"; - version = "20220310"; + version = "20220815"; - src = fetchgit { - url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"; - rev = "refs/tags/${version}"; - sha256 = "sha256-U5XZHzriZaPlgiAcrZnAA7K8PKnIGy58Pi6JziVFTR8="; + src = fetchzip { + url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/snapshot/linux-firmware-${version}.tar.gz"; + sha256 = "sha256-StPlnwn4KOvOf4fRblDzJQqyI8iIz8e9fo/BsTyCKjI="; }; installFlags = [ "DESTDIR=$(out)" ]; @@ -17,7 +16,7 @@ stdenvNoCC.mkDerivation rec { outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "sha256-CAYJssH36aKhzvl0q60HyxgDXeAluspfnLLmawmWIQw="; + outputHash = "sha256-VTRrOOkdWepUCKAkziO/0egb3oaQEOJCtsuDEgs/W78="; meta = with lib; { description = "Binary firmware collection packaged by kernel.org"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix index 4ade35845ecb..730e839bd457 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix @@ -1,8 +1,8 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenvNoCC, fetchFromGitHub }: -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { pname = "raspberrypi-wireless-firmware"; - version = "2021-11-02"; + version = "2021-12-06"; srcs = [ (fetchFromGitHub { @@ -10,14 +10,14 @@ stdenv.mkDerivation { owner = "RPi-Distro"; repo = "bluez-firmware"; rev = "e7fd166981ab4bb9a36c2d1500205a078a35714d"; - sha256 = "1dkg8mzn7n4afi50ibrda2s33nw2qj52jjjdv9w560q601gms47b"; + hash = "sha256-6xBdXwAGA1N42k1KKYrEgtsxtFAtrwhKdIrYY39Fb7Y="; }) (fetchFromGitHub { name = "firmware-nonfree"; owner = "RPi-Distro"; repo = "firmware-nonfree"; - rev = "54ffdd6e2ea6055d46656b78e148fe7def3ec9d8"; - sha256 = "4WTrs/tUyOugufRrrh0qsEmhPclQD64ypYysxsnOyS8="; + rev = "99d5c588e95ec9c9b86d7e88d3cf85b4f729d2bc"; + hash = "sha256-xg6fYQvg7t2ikyLI8/XfpiNaNTf7CNFQlAzpTldTz10="; }) ]; @@ -32,20 +32,19 @@ stdenv.mkDerivation { mkdir -p "$out/lib/firmware/brcm" # Wifi firmware - shopt -s extglob - for filename in firmware-nonfree/brcm/brcmfmac434??{,s}-sdio.*; do - cp "$filename" "$out/lib/firmware/brcm" - done + cp -rv "$NIX_BUILD_TOP/firmware-nonfree/debian/config/brcm80211/." "$out/lib/firmware/" # Bluetooth firmware - cp bluez-firmware/broadcom/*.hcd "$out/lib/firmware/brcm" + cp -rv "$NIX_BUILD_TOP/bluez-firmware/broadcom/." "$out/lib/firmware/brcm" + + # CM4 symlink must be added since it's missing from upstream + pushd $out/lib/firmware/brcm &>/dev/null + ln -s "./brcmfmac43455-sdio.txt" "$out/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-compute-module.txt" + popd &>/dev/null + runHook postInstall ''; - outputHashMode = "recursive"; - outputHashAlgo = "sha256"; - outputHash = "l+7VOq7CV5QA8/FWjMBGDcxq8Qe7NFf6E2Y42htZEgE="; - meta = with lib; { description = "Firmware for builtin Wifi/Bluetooth devices in the Raspberry Pi 3+ and Zero W"; homepage = "https://github.com/RPi-Distro/firmware-nonfree"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi/default.nix index 7f0eef05dc4e..9181a94dcb66 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/raspberrypi/default.nix @@ -1,17 +1,17 @@ -{ lib, stdenvNoCC, fetchurl, unzip }: +{ lib, stdenvNoCC, fetchFromGitHub }: stdenvNoCC.mkDerivation rec { # NOTE: this should be updated with linux_rpi pname = "raspberrypi-firmware"; - version = "1.20220118"; + version = "1.20220331"; - src = fetchurl { - url = "https://github.com/raspberrypi/firmware/archive/${version}.zip"; - sha256 = "sha256-98rbwKIuB7vb4MWbFCr7TYsvJB0HzPdH8Tw0+bktK/M="; + src = fetchFromGitHub { + owner = "raspberrypi"; + repo = "firmware"; + rev = version; + hash = "sha256-TxlpHPEJAtVJTtDghuJpx2mLjEPiKkcAr7S9Cd/cocE="; }; - nativeBuildInputs = [ unzip ]; - installPhase = '' mkdir -p $out/share/raspberrypi/ mv boot "$out/share/raspberrypi/" @@ -26,5 +26,6 @@ stdenvNoCC.mkDerivation rec { homepage = "https://github.com/raspberrypi/firmware"; license = licenses.unfreeRedistributableFirmware; # See https://github.com/raspberrypi/firmware/blob/master/boot/LICENCE.broadcom maintainers = with maintainers; [ dezgeg ]; + broken = stdenvNoCC.isDarwin; # Hash mismatch on source, mystery. }; } diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix index f21d34bbe533..47e0068cc348 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenvNoCC, fetchFromGitHub }: -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { name = "rt5677-firmware"; src = fetchFromGitHub { diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix index 3363140ad569..53f32ac31f9d 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenvNoCC, fetchFromGitHub }: with lib; -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { pname = "rtl8192su"; version = "unstable-2016-10-05"; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/rtl8723bs-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/rtl8723bs-firmware/default.nix index f3ea80348b3b..8e486e1c4b2c 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/rtl8723bs-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/rtl8723bs-firmware/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, linuxPackages }: +{ lib, stdenvNoCC, linuxPackages }: with lib; -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { pname = "rtl8723bs-firmware"; version = linuxPackages.rtl8723bs.version; inherit (linuxPackages.rtl8723bs) src; diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/rtl8761b-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/rtl8761b-firmware/default.nix index 925521696da9..c3fbe79537c4 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/rtl8761b-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/rtl8761b-firmware/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenvNoCC, fetchFromGitHub }: -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { name = "rtl8761b-firmware"; src = fetchFromGitHub { diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/sof-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/sof-firmware/default.nix index 841e73cfc8ba..b15f4c4949de 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/sof-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/sof-firmware/default.nix @@ -5,13 +5,13 @@ stdenvNoCC.mkDerivation rec { pname = "sof-firmware"; - version = "2.0"; + version = "2.2"; src = fetchFromGitHub { owner = "thesofproject"; repo = "sof-bin"; rev = "v${version}"; - sha256 = "sha256-pDxNcDe/l1foFYuHB0w3YZidKIeH6h0IuwRmMzeMteE="; + sha256 = "sha256-/gjGTDOXJ0vz/MH2hlistS3X3Euqf8T6TLnD1A2SBYo="; }; dontFixup = true; # binaries must not be stripped or patchelfed diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/system76-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/system76-firmware/default.nix index 5ec2bd70fdb6..a019a6f79321 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/system76-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/system76-firmware/default.nix @@ -2,13 +2,13 @@ rustPlatform.buildRustPackage rec { pname = "system76-firmware"; # Check Makefile when updating, make sure postInstall matches make install - version = "1.0.32"; + version = "1.0.39"; src = fetchFromGitHub { owner = "pop-os"; repo = pname; rev = version; - sha256 = "sha256-EV7byqfoz0sAIkf/hgZh+m7D2+54DEnE4td4CTX6c4s="; + sha256 = "sha256-nPHBL73hmvW9z5SQjmfu+ozMXxUEajNQxNtE/V9QwZ0="; }; nativeBuildInputs = [ pkg-config makeWrapper ]; @@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec { cargoBuildFlags = [ "--workspace" ]; - cargoSha256 = "sha256-/bf5JQgyFN8TH7o2TWHX5sv/NkxBLJ495iVW8c9Vqis="; + cargoSha256 = "sha256-BrzicLj7FbUqRG1BgQIRqh801tRQpRZkHSiX3ekAYqc="; # Purposefully don't install systemd unit file, that's for NixOS postInstall = '' diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix index 0375eb0eead8..824615a4baf2 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/xow_dongle-firmware/default.nix @@ -1,11 +1,11 @@ -{ stdenv, lib, fetchurl, cabextract }: +{ stdenvNoCC, lib, fetchurl, cabextract }: -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "xow_dongle-firmware"; version = "2017-07"; - dontUnpack = true; - dontInstall = true; + dontConfigure = true; + dontBuild = true; src = fetchurl { url = "http://download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/07/1cd6a87c-623f-4407-a52d-c31be49e925c_e19f60808bdcbfbd3c3df6be3e71ffc52e43261e.cab"; @@ -14,10 +14,14 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cabextract ]; - buildPhase = '' + sourceRoot = "./."; + + unpackCmd = '' cabextract -F FW_ACC_00U.bin ${src} - mkdir -p $out/lib/firmware - cp -a FW_ACC_00U.bin $out/lib/firmware/xow_dongle.bin + ''; + + installPhase = '' + install -Dm644 FW_ACC_00U.bin ${placeholder "out"}/lib/firmware/xow_dongle.bin ''; meta = with lib; { @@ -28,5 +32,3 @@ stdenv.mkDerivation rec { platforms = platforms.linux; }; } - - diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/zd1211/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/zd1211/default.nix index 075e46a5de55..6b86277ebc6e 100644 --- a/nixpkgs/pkgs/os-specific/linux/firmware/zd1211/default.nix +++ b/nixpkgs/pkgs/os-specific/linux/firmware/zd1211/default.nix @@ -1,9 +1,9 @@ -{ stdenv +{ stdenvNoCC , lib , fetchurl }: -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "zd1211-firmware"; version = "1.5"; |