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 808d78d499d..094eaea56e6 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 1a04baef193..d0d481f72a4 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 1b70057d135..17b973474c9 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 00000000000..f5b6abdd9c7 --- /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 635f0125f2f..0f4534bbdc6 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 { };