nixpkgs/pkgs/by-name/re/resonance/package.nix
2024-02-02 11:18:58 +08:00

83 lines
1.6 KiB
Nix

{ lib
, cargo
, dbus
, desktop-file-utils
, fetchFromGitHub
, glib
, gst_all_1
, gtk4
, libadwaita
, libxml2
, meson
, ninja
, nix-update-script
, openssl
, pkg-config
, python3
, python3Packages
, rustPlatform
, rustc
, sqlite
, stdenv
, wrapGAppsHook4
}:
stdenv.mkDerivation (finalAttrs: {
pname = "resonance";
version = "0-unstable-2023-06-06";
src = fetchFromGitHub {
owner = "nate-xyz";
repo = "resonance";
rev = "97826093e22418c0efdb4e61cc75d981bb82c120";
hash = "sha256-DgNUjb8+2WTw91OGgFf97YL6lnODtkftYAP/c05RUPI=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
src = finalAttrs.src;
hash = "sha256-/v3OokClOk95GOzidBHRkUG7kjHQm35yPeC1n3PzcyM=";
};
nativeBuildInputs = [
cargo
desktop-file-utils
meson
ninja
pkg-config
python3
rustPlatform.cargoSetupHook
rustc
wrapGAppsHook4
];
buildInputs = [
dbus
glib
gtk4
libadwaita
libxml2
openssl
sqlite
] ++ (with gst_all_1; [
gst-libav
gst-plugins-bad
gst-plugins-base
gst-plugins-good
gst-plugins-ugly
gstreamer
]);
preFixup = ''
gappsWrapperArgs+=(--prefix PYTHONPATH : ${python3.pkgs.makePythonPath (with python3Packages; [ tqdm mutagen loguru ])})
'';
passthru.updateScript = nix-update-script { };
meta = with lib; {
description = "Intuitive GTK4/LibAdwaita music player";
homepage = "https://github.com/nate-xyz/resonance";
license = licenses.gpl3Plus;
mainProgram = "resonance";
maintainers = with maintainers; [ Guanran928 ];
platforms = platforms.linux;
};
})