summary refs log tree commit diff
path: root/pkgs/os-specific
diff options
context:
space:
mode:
authorFrederik Rietdijk <freddyrietdijk@fridh.nl>2020-04-05 13:17:16 +0200
committerGitHub <noreply@github.com>2020-04-05 13:17:16 +0200
commit98cefdd37f7cf311e1116b27ca0aa466dd687687 (patch)
tree46f4b3c36f85ed6b516db4c3965fcc4d293de67b /pkgs/os-specific
parentaf1cb9f1b5c1ea8cb94f620fd347df33540b87ae (diff)
parent4fef426da6eae92a524ea5ca34c9a482dcf5985f (diff)
downloadnixpkgs-98cefdd37f7cf311e1116b27ca0aa466dd687687.tar
nixpkgs-98cefdd37f7cf311e1116b27ca0aa466dd687687.tar.gz
nixpkgs-98cefdd37f7cf311e1116b27ca0aa466dd687687.tar.bz2
nixpkgs-98cefdd37f7cf311e1116b27ca0aa466dd687687.tar.lz
nixpkgs-98cefdd37f7cf311e1116b27ca0aa466dd687687.tar.xz
nixpkgs-98cefdd37f7cf311e1116b27ca0aa466dd687687.tar.zst
nixpkgs-98cefdd37f7cf311e1116b27ca0aa466dd687687.zip
Merge pull request #83155 from roastiek/alsa-upgrade
alsa-lib: 1.1.9 -> 1.2.2 and new alsa conf packages
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r--pkgs/os-specific/linux/alsa-lib/default.nix16
-rw-r--r--pkgs/os-specific/linux/alsa-topology-conf/default.nix36
-rw-r--r--pkgs/os-specific/linux/alsa-ucm-conf/default.nix36
3 files changed, 81 insertions, 7 deletions
diff --git a/pkgs/os-specific/linux/alsa-lib/default.nix b/pkgs/os-specific/linux/alsa-lib/default.nix
index 8dcddf4baf9..e599ba1f3f1 100644
--- a/pkgs/os-specific/linux/alsa-lib/default.nix
+++ b/pkgs/os-specific/linux/alsa-lib/default.nix
@@ -1,25 +1,27 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, alsa-ucm-conf, alsa-topology-conf }:
 
 stdenv.mkDerivation rec {
-  name = "alsa-lib-1.1.9";
+  name = "alsa-lib-1.2.2";
 
   src = fetchurl {
     url = "mirror://alsa/lib/${name}.tar.bz2";
-    sha256 = "0jwr9g4yxg9gj6xx0sb2r6wrdl8amrjd19hilkrq4rirynp770s8";
+    sha256 = "1v5kb8jyvrpkvvq7dq8hfbmcj68lml97i4s0prxpfx2mh3c57s6q";
   };
 
   patches = [
     ./alsa-plugin-conf-multilib.patch
   ];
 
+  enableParallelBuilding = true;
+
   # Fix pcm.h file in order to prevent some compilation bugs
-  # 2: see http://stackoverflow.com/questions/3103400/how-to-overcome-u-int8-t-vs-uint8-t-issue-efficiently
   postPatch = ''
     sed -i -e 's|//int snd_pcm_mixer_element(snd_pcm_t \*pcm, snd_mixer_t \*mixer, snd_mixer_elem_t \*\*elem);|/\*int snd_pcm_mixer_element(snd_pcm_t \*pcm, snd_mixer_t \*mixer, snd_mixer_elem_t \*\*elem);\*/|' include/pcm.h
+  '';
 
-
-    sed -i -e '1i#include <stdint.h>' include/pcm.h
-    sed -i -e 's/u_int\([0-9]*\)_t/uint\1_t/g' include/pcm.h
+  postInstall = ''
+    ln -s ${alsa-ucm-conf}/share/alsa/{ucm,ucm2} $out/share/alsa
+    ln -s ${alsa-topology-conf}/share/alsa/topology $out/share/alsa
   '';
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/os-specific/linux/alsa-topology-conf/default.nix b/pkgs/os-specific/linux/alsa-topology-conf/default.nix
new file mode 100644
index 00000000000..26febf0daa7
--- /dev/null
+++ b/pkgs/os-specific/linux/alsa-topology-conf/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "alsa-topology-conf-${version}";
+  version = "1.2.2";
+
+  src = fetchurl {
+    url = "mirror://alsa/lib/${name}.tar.bz2";
+    sha256 = "09cls485ckdjsp4azhv3nw7chyg3r7zrqgald6yp70f7cysxcwml";
+  };
+
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/alsa
+    cp -r topology $out/share/alsa
+
+    runHook postInstall
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.alsa-project.org/;
+    description = "ALSA topology configuration files";
+
+    longDescription = ''
+      The Advanced Linux Sound Architecture (ALSA) provides audio and
+      MIDI functionality to the Linux-based operating system.
+    '';
+
+    license = licenses.bsd3;
+    maintainers = [ maintainers.roastiek ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/alsa-ucm-conf/default.nix b/pkgs/os-specific/linux/alsa-ucm-conf/default.nix
new file mode 100644
index 00000000000..6f2766ef9ff
--- /dev/null
+++ b/pkgs/os-specific/linux/alsa-ucm-conf/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "alsa-ucm-conf-${version}";
+  version = "1.2.2";
+
+  src = fetchurl {
+    url = "mirror://alsa/lib/${name}.tar.bz2";
+    sha256 = "0364fgzdm2qrsqvgqri25gzscbma7yqlv31wz8b1z9c5phlxkgvy";
+  };
+
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/alsa
+    cp -r ucm ucm2 $out/share/alsa
+
+    runHook postInstall
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.alsa-project.org/;
+    description = "ALSA Use Case Manager configuration";
+
+    longDescription = ''
+      The Advanced Linux Sound Architecture (ALSA) provides audio and
+      MIDI functionality to the Linux-based operating system.
+    '';
+
+    license = licenses.bsd3;
+    maintainers = [ maintainers.roastiek ];
+    platforms = platforms.linux;
+  };
+}