main
 1{
 2  lib,
 3  stdenvNoCC,
 4  fetchurl,
 5  autoPatchelfHook,
 6  makeWrapper,
 7  dpkg,
 8  wrapGAppsHook3,
 9  mpv-unwrapped,
10  xdg-utils,
11  zenity,
12}:
13stdenvNoCC.mkDerivation rec {
14  pname = "harmonoid";
15  version = "0.3.22";
16
17  src =
18    if stdenvNoCC.isAarch64
19    then
20      fetchurl {
21        url = "https://github.com/alexmercerind2/harmonoid-releases/releases/download/v${version}/harmonoid-linux-aarch64.tar.gz";
22        hash = "sha256-jXN5i+LudsODNZUzb5SXClqgQxYzanrbZCqB8X0pJRQ=";
23      }
24    else
25      fetchurl {
26        url = "https://github.com/alexmercerind2/harmonoid-releases/releases/download/v${version}/harmonoid-linux-x86_64.tar.gz";
27        hash = "sha256-+fEx30uu0rZiORrtE00xG2piJzpFbfxSZw3OjrhLJyg=";
28      };
29
30  dontStrip = true;
31
32  nativeBuildInputs = [
33    makeWrapper
34    autoPatchelfHook
35    dpkg
36    wrapGAppsHook3
37  ];
38
39  buildInputs = [
40    mpv-unwrapped
41    xdg-utils
42    zenity
43  ];
44
45  sourceRoot = ".";
46
47  installPhase = ''
48    runHook preInstall
49    mkdir -p $out
50
51      cp -r usr/* $out/
52
53    runHook postInstall
54  '';
55
56  postFixup = ''
57    wrapProgram $out/bin/harmonoid \
58      --prefix PATH : ${lib.makeBinPath buildInputs} \
59      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [mpv-unwrapped]}:$out/share/harmonoid/lib"
60  '';
61
62  meta = {
63    description = "Plays & manages your music library. Looks beautiful & juicy.";
64    homepage = "https://harmonoid.com/";
65    license = lib.licenses.unfree;
66    platforms = ["x86_64-linux" "aarch64-linux"];
67  };
68}