Unverified Commit 9e1e6356 authored by Peder Bergebakken Sundt's avatar Peder Bergebakken Sundt Committed by GitHub
Browse files

hopper: 5.5.3 -> 5.18.0 (#396436)

parents 80da06a5 3471ba0e
Loading
Loading
Loading
Loading
+29 −33
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchurl,
  lib,
  autoPatchelfHook,
  wrapQtAppsHook,
  gnustep-libobjc,
@@ -10,14 +10,20 @@
  ncurses6,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "hopper";
  version = "5.5.3";
  version = "5.18.0";
  rev = "v4";

  src = fetchurl {
    url = "https://d2ap6ypl1xbe4k.cloudfront.net/Hopper-${rev}-${version}-Linux-demo.pkg.tar.xz";
    hash = "sha256-xq9ZVg1leHm/tq6LYyQLa8p5dDwBd64Jt92uMoE0z58=";
    url = "https://www.hopperapp.com/downloader/hopperv4/Hopper-${finalAttrs.rev}-${finalAttrs.version}-Linux-demo.pkg.tar.xz";
    curlOptsList = [
      "--user-agent"
      "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"
      "--referer"
      "https://www.hopperapp.com"
    ];
    hash = "sha256-Z/Y+il5DTdssa2T0RDkDyco098o4JHKeLuwFUpJjgZ0=";
  };

  sourceRoot = ".";
@@ -37,39 +43,29 @@ stdenv.mkDerivation rec {
  installPhase = ''
    runHook preInstall

    mkdir -p $out/bin
    mkdir -p $out/lib
    mkdir -p $out/share

    cp $sourceRoot/opt/hopper-${rev}/bin/Hopper $out/bin/hopper
    cp \
      --archive \
      $sourceRoot/opt/hopper-${rev}/lib/libBlocksRuntime.so* \
      $sourceRoot/opt/hopper-${rev}/lib/libdispatch.so* \
      $sourceRoot/opt/hopper-${rev}/lib/libgnustep-base.so* \
      $sourceRoot/opt/hopper-${rev}/lib/libHopperCore.so* \
      $sourceRoot/opt/hopper-${rev}/lib/libkqueue.so* \
      $sourceRoot/opt/hopper-${rev}/lib/libobjcxx.so* \
      $sourceRoot/opt/hopper-${rev}/lib/libpthread_workqueue.so* \
    mkdir -p $out/bin $out/lib
    install -Dm755 opt/hopper-${finalAttrs.rev}/bin/Hopper $out/bin/hopper
    cp --archive \
      opt/hopper-${finalAttrs.rev}/lib/libBlocksRuntime.so* \
      opt/hopper-${finalAttrs.rev}/lib/libdispatch.so* \
      opt/hopper-${finalAttrs.rev}/lib/libgnustep-base.so* \
      opt/hopper-${finalAttrs.rev}/lib/libHopperCore.so* \
      opt/hopper-${finalAttrs.rev}/lib/libkqueue.so* \
      opt/hopper-${finalAttrs.rev}/lib/libobjcxx.so* \
      opt/hopper-${finalAttrs.rev}/lib/libpthread_workqueue.so* \
      $out/lib

    cp -r $sourceRoot/usr/share $out
    cp -r usr/share $out/share
    substituteInPlace $out/share/applications/hopper-${finalAttrs.rev}.desktop \
      --replace-fail "Exec=/opt/hopper-${finalAttrs.rev}/bin/Hopper" "Exec=hopper"

    runHook postInstall
  '';

  postFixup = ''
    substituteInPlace "$out/share/applications/hopper-${rev}.desktop" \
      --replace "Exec=/opt/hopper-${rev}/bin/Hopper" "Exec=$out/bin/hopper"
  '';

  meta = with lib; {
  meta = {
    homepage = "https://www.hopperapp.com/index.html";
    description = "MacOS and Linux Disassembler";
    license = licenses.unfree;
    maintainers = with maintainers; [
      Enteee
    ];
    platforms = platforms.linux;
    license = lib.licenses.unfree;
    maintainers = with lib.maintainers; [ Enteee ];
    platforms = lib.platforms.linux;
  };
}
})