1{ lib, stdenv, fetchFromGitHub, cmake, fftw, ncurses5, libpulseaudio, makeWrapper }:
2
3stdenv.mkDerivation rec {
4 version = "1.8";
5 pname = "cli-visualizer";
6
7 src = fetchFromGitHub {
8 owner = "dpayne";
9 repo = "cli-visualizer";
10 rev = "v${version}";
11 sha256 = "003mbbwsz43mg3d7llphpypqa9g7rs1p1cdbqi1mbc2bfrc1gcq2";
12 };
13
14 postPatch = ''
15 sed '1i#include <cmath>' -i src/Transformer/SpectrumCircleTransformer.cpp
16 '';
17
18 nativeBuildInputs = [ cmake makeWrapper ];
19
20 buildInputs = [ fftw ncurses5 libpulseaudio ];
21
22 buildFlags = [ "ENABLE_PULSE=1" ];
23
24 postInstall = ''
25 # See https://github.com/dpayne/cli-visualizer/issues/62#issuecomment-330738075
26 wrapProgram $out/bin/vis --set TERM rxvt-256color
27 '';
28
29 meta = {
30 homepage = "https://github.com/dpayne/cli-visualizer";
31 description = "CLI based audio visualizer";
32 license = lib.licenses.mit;
33 maintainers = [ lib.maintainers.matthiasbeyer ];
34 platforms = with lib.platforms; linux;
35 mainProgram = "vis";
36 };
37}