summary refs log tree commit diff
path: root/pkgs/applications/audio/mpg123/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/audio/mpg123/default.nix')
-rw-r--r--pkgs/applications/audio/mpg123/default.nix48
1 files changed, 36 insertions, 12 deletions
diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix
index 5260cb85a27..44788467d8f 100644
--- a/pkgs/applications/audio/mpg123/default.nix
+++ b/pkgs/applications/audio/mpg123/default.nix
@@ -1,26 +1,50 @@
-{ stdenv
-, fetchurl, alsaLib
+{ lib, stdenv
+, fetchurl
+, makeWrapper
+, alsa-lib
+, perl
+, withConplay ? !stdenv.targetPlatform.isWindows
 }:
 
 stdenv.mkDerivation rec {
-  name = "mpg123-1.26.2";
+  pname = "mpg123";
+  version = "1.26.5";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mpg123/${name}.tar.bz2";
-    sha256 = "1wrgds46wj6xsnqa6bi8kkh3wd29i2nxclbps34w5kjglrzbzxq0";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
+    sha256 = "sha256-UCqX4Nk1vn432YczgCHY8wG641wohPKoPVnEtSRm7wY=";
   };
 
-  buildInputs = stdenv.lib.optional (!stdenv.isDarwin) alsaLib;
+  outputs = [ "out" ] ++ lib.optionals withConplay [ "conplay" ];
 
-  configureFlags = stdenv.lib.optional
+  nativeBuildInputs = lib.optionals withConplay [ makeWrapper ];
+
+  buildInputs = lib.optionals withConplay [ perl ]
+    ++ lib.optionals (!stdenv.isDarwin && !stdenv.targetPlatform.isWindows) [ alsa-lib ];
+
+  configureFlags = lib.optional
     (stdenv.hostPlatform ? mpg123)
     "--with-cpu=${stdenv.hostPlatform.mpg123.cpu}";
 
-  meta = {
+  postInstall = lib.optionalString withConplay ''
+    mkdir -p $conplay/bin
+    mv scripts/conplay $conplay/bin/
+  '';
+
+  preFixup = lib.optionalString withConplay ''
+    patchShebangs $conplay/bin/conplay
+  '';
+
+  postFixup = lib.optionalString withConplay ''
+    wrapProgram $conplay/bin/conplay \
+      --prefix PATH : $out/bin
+  '';
+
+  meta = with lib; {
     description = "Fast console MPEG Audio Player and decoder library";
-    homepage = "http://mpg123.org";
-    license = stdenv.lib.licenses.lgpl21;
-    maintainers = [ stdenv.lib.maintainers.ftrvxmtrx ];
-    platforms = stdenv.lib.platforms.unix;
+    homepage = "https://mpg123.org";
+    license = licenses.lgpl21;
+    maintainers = [ maintainers.ftrvxmtrx ];
+    platforms = platforms.all;
   };
 }