depot/third_party/nixpkgs/pkgs/by-name/pa/pamix/package.nix

58 lines
1.3 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
pkg-config,
cmake,
libpulseaudio,
ncurses,
}:
stdenv.mkDerivation rec {
pname = "pamix";
version = "1.6";
src = fetchFromGitHub {
owner = "patroclos";
repo = "pamix";
rev = version;
sha256 = "1d44ggnwkf2gff62959pj45v3a2k091q8v154wc5pmzamam458wp";
};
patches = [
# ncurses-6.3 support, included in next release
(fetchpatch {
name = "ncurses-6.3-p1.patch";
url = "https://github.com/patroclos/PAmix/commit/3400b9c048706c572373e4617b4d5fcdb8dd2505.patch";
sha256 = "0rw56a844pz876ad9p8hfvn2fkd5rh29gpp47h55g08spf0vwb2z";
})
(fetchpatch {
name = "ncurses-6.3-p2.patch";
url = "https://github.com/patroclos/PAmix/commit/5ef67fc5ef6fc0dc0b48ff07ba48093881561d9c.patch";
sha256 = "0f8shpdv2swxdz04bkqgmkvl6c17r5mn4slzr7xd6pvw8hh51p4h";
})
];
preConfigure = ''
substituteInPlace CMakeLists.txt --replace "/etc" "$out/etc/xdg"
'';
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
libpulseaudio
ncurses
];
meta = with lib; {
description = "Pulseaudio terminal mixer";
homepage = "https://github.com/patroclos/PAmix";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ ericsagnes ];
mainProgram = "pamix";
};
}