diff --git a/pkgs/applications/misc/binance/default.nix b/pkgs/applications/misc/binance/default.nix new file mode 100644 index 000000000000..db287cb37e69 --- /dev/null +++ b/pkgs/applications/misc/binance/default.nix @@ -0,0 +1,58 @@ +{ lib, stdenv, fetchurl, dpkg, autoPatchelfHook, makeWrapper, electron_12, +alsa-lib, gtk3, libxshmfence, mesa, nss, popt }: + +let + electron = electron_12; + +in stdenv.mkDerivation rec { + pname = "binance"; + version = "1.25.0"; + + src = fetchurl { + url = "https://github.com/binance/desktop/releases/download/v${version}/${pname}-${version}-amd64-linux.deb"; + sha256 = "sha256-oXXzrRhdaWP8GcWI/Ugl8BrDWomZ+hsy5Om0+ME+zY0="; + }; + + nativeBuildInputs = [ + dpkg + autoPatchelfHook + makeWrapper + ]; + + buildInputs = [ alsa-lib gtk3 libxshmfence mesa nss popt ]; + + libPath = lib.makeLibraryPath buildInputs; + + dontBuild = true; + dontConfigure = true; + + unpackPhase = '' + dpkg-deb -x ${src} ./ + ''; + + installPhase = '' + runHook preInstall + + mv usr $out + mv opt $out + + runHook postInstall + ''; + + postFixup = '' + substituteInPlace $out/share/applications/binance.desktop --replace '/opt/Binance' $out/bin + + makeWrapper ${electron}/bin/electron \ + $out/bin/binance \ + --add-flags $out/opt/Binance/resources/app.asar \ + --prefix LD_LIBRARY_PATH : ${libPath} + ''; + + meta = with lib; { + description = "Binance Cryptoexchange Official Desktop Client"; + homepage = "https://www.binance.com/en/desktop-download"; + license = licenses.unfree; + maintainers = with maintainers; [ wolfangaukang ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2ab6a8ef6001..29b44acfc8a0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1453,6 +1453,8 @@ with pkgs; bic = callPackage ../development/interpreters/bic { }; + binance = callPackage ../applications/misc/binance { }; + bit = callPackage ../applications/version-management/git-and-tools/bit { }; bitwarden = callPackage ../tools/security/bitwarden { };