Unverified Commit 107b787d authored by Doron Behar's avatar Doron Behar Committed by GitHub
Browse files

muse-sounds-manager: init at 1.1.0.587 (#341856)

parents 8fbe3495 026662eb
Loading
Loading
Loading
Loading
+78 −0
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchurl,
  autoPatchelfHook,
  dpkg,
  fontconfig,
  zlib,
  icu,
  libX11,
  libXext,
  libXi,
  libXrandr,
  libICE,
  libSM,
  openssl,
}:

stdenv.mkDerivation rec {
  pname = "muse-sounds-manager";
  version = "1.1.0.587";

  # Use web.archive.org since upstream does not provide a stable (versioned) URL.
  # To see if there are new versions on the Web Archive, visit
  # http://web.archive.org/cdx/search/cdx?url=https://muse-cdn.com/Muse_Sounds_Manager_Beta.deb
  # then replace the date in the URL below with date when the SHA1
  # changes (currently A3NX3WHFZWXCHZVME2ABUL2VRENTWOD5) and replace
  # the version above with the version in the .deb metadata (or in the
  # settings of muse-sounds-manager).
  src = fetchurl {
    url = "https://web.archive.org/web/20240826143936/https://muse-cdn.com/Muse_Sounds_Manager_Beta.deb";
    hash = "sha256-wzZAIjme1cv8+jMLiKT7kUQvCb+UhsvOnLDV4hCL3hw=";
  };

  nativeBuildInputs = [
    autoPatchelfHook
    dpkg
  ];

  buildInputs = [
    fontconfig
    stdenv.cc.cc
    zlib
  ] ++ runtimeDependencies;

  runtimeDependencies = map lib.getLib [
    icu
    libX11
    libXext
    libXi
    libXrandr
    libICE
    libSM
    openssl
  ];

  unpackPhase = "dpkg -x $src .";

  installPhase = ''
    runHook preInstall

    mkdir -p $out
    mv usr/* opt $out/
    substituteInPlace $out/bin/muse-sounds-manager --replace-fail /opt/ $out/opt/

    runHook postInstall
  '';

  meta = {
    description = "Manage Muse Sounds (Muse Hub) libraries for MuseScore";
    homepage = "https://musescore.org/";
    license = lib.licenses.unfree;
    mainProgram = "muse-sounds-manager";
    maintainers = with lib.maintainers; [ orivej ];
    platforms = [ "x86_64-linux" ];
    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
  };
}