From e0090f93e941bf915f5af832a478f101f41e2ade Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 26 Nov 2020 01:16:31 +0100 Subject: [PATCH] opustags: Fix some build failures on darwin, enable tests --- pkgs/applications/audio/opustags/default.nix | 31 ++++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/audio/opustags/default.nix b/pkgs/applications/audio/opustags/default.nix index 630f7b171e8..65836582feb 100644 --- a/pkgs/applications/audio/opustags/default.nix +++ b/pkgs/applications/audio/opustags/default.nix @@ -1,4 +1,6 @@ -{ stdenv, lib, cmake, pkgconfig, libogg, fetchFromGitHub, libiconv }: +{ stdenv, fetchFromGitHub, fetchpatch, cmake, pkg-config, libiconv, libogg +, ffmpeg, glibcLocales, perl, perlPackages }: + stdenv.mkDerivation rec { pname = "opustags"; version = "1.5.1"; @@ -10,14 +12,37 @@ stdenv.mkDerivation rec { sha256 = "1dicv4s395b9gb4jpr0rnxdq9azr45pid62q3x08lb7cvyq3yxbh"; }; + patches = [ + # Fix building on darwin + (fetchpatch { + url = "https://github.com/fmang/opustags/commit/64fc6f8f6d20e034892e89abff0236c85cae98dc.patch"; + sha256 = "1djifzqhf1w51gbpqbndsh3gnl9iizp6hppxx8x2a92i9ns22zpg"; + }) + (fetchpatch { + url = "https://github.com/fmang/opustags/commit/f98208c1a1d10c15f98b127bbfdf88a7b15b08dc.patch"; + sha256 = "1h3v0r336fca0y8zq1vl2wr8gaqs3vvrrckx7pvji4k1jpiqvp38"; + }) + ]; + buildInputs = [ libogg ]; - nativeBuildInputs = [ cmake pkgconfig ] ++ lib.optional stdenv.isDarwin libiconv; + nativeBuildInputs = [ cmake pkg-config ] ++ stdenv.lib.optional stdenv.isDarwin libiconv; - meta = with lib; { + doCheck = true; + + checkInputs = [ ffmpeg glibcLocales perl ] ++ (with perlPackages; [ ListMoreUtils ]); + + checkPhase = '' + export LANG="en_US.UTF-8" + export LC_ALL="en_US.UTF-8" + make check + ''; + + meta = with stdenv.lib; { homepage = "https://github.com/fmang/opustags"; description = "Ogg Opus tags editor"; platforms = platforms.all; + broken = stdenv.isDarwin; maintainers = [ maintainers.kmein ]; license = licenses.bsd3; };