159e378cbb
GitOrigin-RevId: c04d5652cfa9742b1d519688f65d1bbccea9eb7e
74 lines
1.6 KiB
Nix
74 lines
1.6 KiB
Nix
{
|
|
lib,
|
|
python3Packages,
|
|
fetchFromGitHub,
|
|
gtk3,
|
|
cava,
|
|
gst_all_1,
|
|
gobject-introspection,
|
|
wrapGAppsHook3,
|
|
copyDesktopItems,
|
|
makeDesktopItem,
|
|
fetchurl,
|
|
}:
|
|
|
|
python3Packages.buildPythonApplication rec {
|
|
pname = "cavalcade";
|
|
version = "0.8";
|
|
pyproject = true;
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "worron";
|
|
repo = "cavalcade";
|
|
rev = "refs/tags/${version}";
|
|
hash = "sha256-VyWOPNidN0+pfuxsgPWq6lI5gXQsiRpmYjQYjZW6i9w=";
|
|
};
|
|
|
|
postPatch = ''
|
|
substituteInPlace cavalcade/cava.py \
|
|
--replace-fail '"cava"' '"${cava}/bin/cava"'
|
|
'';
|
|
|
|
build-system = [ python3Packages.setuptools ];
|
|
|
|
dependencies = with python3Packages; [
|
|
pygobject3
|
|
gst-python
|
|
pillow
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
wrapGAppsHook3
|
|
copyDesktopItems
|
|
gobject-introspection
|
|
gst_all_1.gstreamer
|
|
];
|
|
|
|
buildInputs = [ gtk3 ];
|
|
|
|
desktopItems = [
|
|
(makeDesktopItem {
|
|
name = "Cavalcade";
|
|
type = "Application";
|
|
exec = "cavalcade";
|
|
icon = fetchurl {
|
|
url = "https://raw.githubusercontent.com/worron/cavalcade/68ba5a2b2effd1c46b0568f4a27852689c2cdf32/desktop/cavalcade.svg";
|
|
hash = "sha256-GJR5kUmSnFG6dE+o2UWKaHmiKPZNDGZZqXCIP8o883M=";
|
|
};
|
|
comment = "CAVA GUI";
|
|
categories = [
|
|
"AudioVideo"
|
|
"Audio"
|
|
"GTK"
|
|
];
|
|
desktopName = "Cavalcade";
|
|
})
|
|
];
|
|
|
|
meta = {
|
|
description = "Python wrapper for C.A.V.A. utility with a GUI";
|
|
homepage = "https://github.com/worron/cavalcade";
|
|
license = lib.licenses.gpl3Only;
|
|
maintainers = with lib.maintainers; [ sigmanificient ];
|
|
};
|
|
}
|