diff --git a/pkgs/os-specific/linux/alsa-firmware/default.nix b/pkgs/os-specific/linux/alsa-firmware/default.nix new file mode 100644 index 00000000000..d636e55f337 --- /dev/null +++ b/pkgs/os-specific/linux/alsa-firmware/default.nix @@ -0,0 +1,37 @@ +{stdenv, fetchurl}: + +stdenv.mkDerivation rec { + name = "alsa-firmware-1.0.29"; + + src = fetchurl { + urls = [ + "ftp://ftp.alsa-project.org/pub/firmware/${name}.tar.bz2" + "http://alsa.cybermirror.org/firmware/${name}.tar.bz2" + ]; + sha256 = "0gfcyj5anckjn030wcxx5v2xk2s219nyf99s9m833275b5wz2piw"; + }; + + configureFlags = '' + --with-hotplug-dir=$(out)/lib/firmware + ''; + + dontStrip = true; + + postInstall = '' + # These are lifted from the Arch PKGBUILD + # remove files which conflicts with linux-firmware + rm -rf $out/lib/firmware/{ct{efx,speq}.bin,ess,korg,sb16,yamaha} + # remove broken symlinks (broken upstream) + rm -rf $out/lib/firmware/turtlebeach + # remove empty dir + rm -rf $out/bin + ''; + + meta = { + homepage = http://www.alsa-project.org/main/index.php/Main_Page; + longDescription = " + Soundcard firmwares from the alsa project. + "; + license = stdenv.lib.licenses.gpl2Plus; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 393bb2ef68f..e13fa1e0871 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8551,6 +8551,8 @@ let alienfx = callPackage ../os-specific/linux/alienfx { }; + alsaFirmware = callPackage ../os-specific/linux/alsa-firmware { }; + alsaLib = callPackage ../os-specific/linux/alsa-lib { }; alsaPlugins = callPackage ../os-specific/linux/alsa-plugins {