From c677f51524ac65eadf107229957ea96cb5707ca3 Mon Sep 17 00:00:00 2001 From: laMudri Date: Sun, 30 Apr 2017 21:19:57 +0100 Subject: [PATCH 1/2] abcde: specify perl runtime dependencies for abcde-musicbrainz-tool --- pkgs/applications/audio/abcde/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/audio/abcde/default.nix b/pkgs/applications/audio/abcde/default.nix index a729d5cd4efc..ae67ddab0e7a 100644 --- a/pkgs/applications/audio/abcde/default.nix +++ b/pkgs/applications/audio/abcde/default.nix @@ -39,6 +39,8 @@ in buildInputs = [ makeWrapper ]; + propagatedBuildInputs = [ perl DigestSHA MusicBrainz MusicBrainzDiscID ]; + installFlags = [ "sysconfdir=$(out)/etc" ]; postInstall = '' From d2bd8c4482679543743301271914155cea31e10d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Mon, 1 May 2017 18:25:20 +0200 Subject: [PATCH 2/2] abcde: simplify wrapper code --- pkgs/applications/audio/abcde/default.nix | 37 ++++++----------------- 1 file changed, 10 insertions(+), 27 deletions(-) diff --git a/pkgs/applications/audio/abcde/default.nix b/pkgs/applications/audio/abcde/default.nix index ae67ddab0e7a..6cb1ae6de719 100644 --- a/pkgs/applications/audio/abcde/default.nix +++ b/pkgs/applications/audio/abcde/default.nix @@ -19,48 +19,31 @@ in configurePhase = '' sed -i "s|^[[:blank:]]*prefix *=.*$|prefix = $out|g ; s|^[[:blank:]]*etcdir *=.*$|etcdir = $out/etc|g ; - s|^[[:blank:]]*INSTALL *=.*$|INSTALL = install -c|g" \ - "Makefile"; + s|^[[:blank:]]*INSTALL *=.*$|INSTALL = install -c|g" \ + "Makefile"; # We use `cd-paranoia' from GNU libcdio, which contains a hyphen # in its name, unlike Xiph's cdparanoia. sed -i "s|^[[:blank:]]*CDPARANOIA=.*$|CDPARANOIA=cd-paranoia|g ; s|^[[:blank:]]*DEFAULT_CDROMREADERS=.*$|DEFAULT_CDROMREADERS=\"cd-paranoia cdda2wav\"|g" \ - "abcde" + "abcde" - substituteInPlace "abcde" \ - --replace "/etc/abcde.conf" "$out/etc/abcde.conf" + substituteInPlace "abcde" \ + --replace "/etc/abcde.conf" "$out/etc/abcde.conf" ''; - # no ELFs in this package, only scripts - dontStrip = true; - dontPatchELF = true; - buildInputs = [ makeWrapper ]; propagatedBuildInputs = [ perl DigestSHA MusicBrainz MusicBrainzDiscID ]; installFlags = [ "sysconfdir=$(out)/etc" ]; - postInstall = '' - # substituteInPlace "$out/bin/cddb-tool" \ - # --replace '#!/bin/sh' '#!${bash}/bin/sh' - # substituteInPlace "$out/bin/abcde" \ - # --replace '#!/bin/bash' '#!${bash}/bin/bash' - - # generic fixup script should be doing this, but it ignores this file for some reason - substituteInPlace "$out/bin/abcde-musicbrainz-tool" \ - --replace '#!/usr/bin/perl' '#!${perl}/bin/perl' - - wrapProgram "$out/bin/abcde" --prefix PATH ":" \ - ${stdenv.lib.makeBinPath [ "$out" which libcdio cddiscid wget vorbis-tools id3v2 eyeD3 lame flac glyr ]} - - wrapProgram "$out/bin/cddb-tool" --prefix PATH ":" \ - "${wget}/bin" - - wrapProgram "$out/bin/abcde-musicbrainz-tool" --prefix PATH ":" \ - "${wget}/bin" + postFixup = '' + for cmd in abcde cddb-tool abcde-musicbrainz-tool; do + wrapProgram "$out/bin/$cmd" --prefix PATH ":" \ + ${stdenv.lib.makeBinPath [ "$out" which libcdio cddiscid wget vorbis-tools id3v2 eyeD3 lame flac glyr ]} + done ''; meta = {