fluffychat: 1.22.1 -> 1.23.0 (#364091)
[NixPkgs.git] / pkgs / by-name / vi / viper4linux / package.nix
blob4beaf47ef7b63999e1c23388841b6f76e04aa71d
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   gst_all_1,
6   libviperfx,
7   makeWrapper,
8 }:
9 let
10   gstPluginPath = lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" (
11     with gst_all_1;
12     [
13       gstreamer
14       gst-plugins-viperfx
15       gst-plugins-base
16       gst-plugins-good
17     ]
18   );
20 stdenv.mkDerivation rec {
21   pname = "viper4linux";
22   version = "unstable-2022-03-13";
24   src = fetchFromGitHub {
25     owner = "Audio4Linux";
26     repo = "Viper4Linux";
27     rev = "5da25644824f88cf0db24378d2c84770ba4f6816";
28     sha256 = "sha256-CJNVr/1ehJzX45mxunXcRAypBBGEBdswOzAVG2H+ayg=";
29   };
31   nativeBuildInputs = [ makeWrapper ];
33   buildInputs = [
34     gst_all_1.gstreamer
35     gst_all_1.gst-plugins-base
36     gst_all_1.gst-plugins-good
37     gst_all_1.gst-plugins-viperfx
38     libviperfx
39   ];
41   dontBuild = true;
43   postPatch = ''
44     substituteInPlace viper --replace "/etc/viper4linux" "$out/etc/viper4linux"
45   '';
47   installPhase = ''
48     runHook preInstall
49     install -D viper -t $out/bin
50     mkdir -p $out/etc/viper4linux
51     cp -r viper4linux/* $out/etc/viper4linux
52     runHook postInstall
53   '';
55   postFixup = ''
56     wrapProgram "$out/bin/viper" \
57       --prefix PATH : $out/bin:${lib.makeBinPath [ gst_all_1.gstreamer ]} \
58       --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : ${gstPluginPath} \
59       --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libviperfx ]}
60   '';
62   meta = with lib; {
63     description = "Adaptive Digital Sound Processor";
64     homepage = "https://github.com/Audio4Linux/Viper4Linux";
65     license = licenses.gpl3Plus;
66     platforms = [ "x86_64-linux" ];
67     maintainers = with maintainers; [ rewine ];
68   };