From 0b72e7e2472e381b0168345f2158dfe76afc2ab0 Mon Sep 17 00:00:00 2001 From: lukasepple Date: Sun, 14 Feb 2016 16:34:30 +0100 Subject: [PATCH] intel2200BGFirmware: init at 3.1 This commit adds the firmware for the Intel 2200BG wireless cards for the ipw2200 kernel module. Also it changes the networking.enableIntel2200BGFirmware option to set it as hardware.firmware since firmware-linux-nonfree does not contain the appropiate firmware anymore. Also hardware.enableAllFirmware does enable the intel2200BGFirmware now. --- lib/maintainers.nix | 1 + nixos/modules/hardware/all-firmware.nix | 2 +- .../modules/hardware/network/intel-2200bg.nix | 2 +- .../firmware/intel2200BGFirmware/default.nix | 34 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 5 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 808d78d499de..094eaea56e68 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -184,6 +184,7 @@ lowfatcomputing = "Andreas Wagner "; lsix = "Lancelot SIX "; ludo = "Ludovic Courtès "; + lukasepple = "Lukas Epple "; lukego = "Luke Gorrie "; luispedro = "Luis Pedro Coelho "; lw = "Sergey Sofeychuk "; diff --git a/nixos/modules/hardware/all-firmware.nix b/nixos/modules/hardware/all-firmware.nix index 1a04baef1930..d0d481f72a40 100644 --- a/nixos/modules/hardware/all-firmware.nix +++ b/nixos/modules/hardware/all-firmware.nix @@ -22,7 +22,7 @@ with lib; ###### implementation config = mkIf config.hardware.enableAllFirmware { - hardware.firmware = [ pkgs.firmwareLinuxNonfree ]; + hardware.firmware = [ pkgs.firmwareLinuxNonfree pkgs.intel2200BGFirmware ]; }; } diff --git a/nixos/modules/hardware/network/intel-2200bg.nix b/nixos/modules/hardware/network/intel-2200bg.nix index 1b70057d135b..17b973474c93 100644 --- a/nixos/modules/hardware/network/intel-2200bg.nix +++ b/nixos/modules/hardware/network/intel-2200bg.nix @@ -23,7 +23,7 @@ config = lib.mkIf config.networking.enableIntel2200BGFirmware { - hardware.enableAllFirmware = true; + hardware.firmware = [ pkgs.intel2200BGFirmware ]; }; diff --git a/pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix b/pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix new file mode 100644 index 000000000000..f5b6abdd9c7e --- /dev/null +++ b/pkgs/os-specific/linux/firmware/intel2200BGFirmware/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl }: + +let version = "3.1"; in + +stdenv.mkDerivation { + name = "intel2200BGFirmware-${version}"; + + src = fetchurl { + url = "http://pkgs.fedoraproject.org/repo/pkgs/ipw2200-firmware/ipw2200-fw-${version}.tgz/eaba788643c7cc7483dd67ace70f6e99/ipw2200-fw-${version}.tgz"; + sha256 = "c6818c11c18cc030d55ff83f64b2bad8feef485e7742f84f94a61d811a6258bd"; + }; + + phases = [ "unpackPhase" "installPhase" ]; + + installPhase = '' + mkdir -p $out/lib/firmware + for fw in \ + ipw2200-bss.fw \ + ipw2200-ibss.fw \ + ipw2200-sniffer.fw + do + cp -f $fw $out/lib/firmware/$fw + done + mkdir -p $out/share/doc/intel2200BGFirmware + cp -f LICENSE.ipw2200-fw $out/share/doc/intel2200BGFirmware/LICENSE + ''; + + meta = with stdenv.lib; { + description = "Firmware for Intel 2200BG cards"; + homepage = http://ipw2200.sourceforge.net/firmware.php; + license = stdenv.lib.licenses.unfreeRedistributableFirmware; + maintainers = with maintainers; [ lukasepple ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 635f0125f2f2..0f4534bbdc64 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10073,6 +10073,8 @@ let ima-evm-utils = callPackage ../os-specific/linux/ima-evm-utils { }; + intel2200BGFirmware = callPackage ../os-specific/linux/firmware/intel2200BGFirmware { }; + iomelt = callPackage ../os-specific/linux/iomelt { }; iotop = callPackage ../os-specific/linux/iotop { };