diff --git a/pkgs/by-name/go/gopeed/package.nix b/pkgs/by-name/go/gopeed/package.nix new file mode 100644 index 000000000000..1ef1682cd600 --- /dev/null +++ b/pkgs/by-name/go/gopeed/package.nix @@ -0,0 +1,65 @@ +{ + lib, + fetchurl, + stdenv, + autoPatchelfHook, + dpkg, + makeWrapper, + wrapGAppsHook3, + libayatana-appindicator, + libayatana-indicator, + libdbusmenu, + ayatana-ido, + zenity, +}: +stdenv.mkDerivation rec { + pname = "gopeed"; + version = "1.6.4"; + + src = fetchurl { + url = "https://github.com/GopeedLab/gopeed/releases/download/v${version}/Gopeed-v${version}-linux-amd64.deb"; + hash = "sha256-tfBeoUlZOMmGeeKNgm22X/QzYKOUozI8dt3H76TiqB4="; + }; + + nativeBuildInputs = [ + dpkg + autoPatchelfHook + wrapGAppsHook3 + makeWrapper + ]; + + buildInputs = [ + libayatana-appindicator + libayatana-indicator + libdbusmenu + ayatana-ido + ]; + + installPhase = '' + runHook preInstall + + mkdir $out + cp -r opt $out/app + cp -r usr/share $out/share + + runHook postInstall + ''; + + dontWrapGApps = true; + + preFixup = '' + makeWrapper $out/app/gopeed/gopeed $out/bin/gopeed \ + "''${gappsWrapperArgs[@]}" \ + --prefix PATH : ${lib.makeBinPath [ zenity ]} + ''; + + meta = { + homepage = "https://gopeed.com"; + description = "Modern download manager that supports all platforms. Built with Golang and Flutter"; + mainProgram = "gopeed"; + platforms = [ "x86_64-linux" ]; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + license = with lib.licenses; [ gpl3Plus ]; + maintainers = with lib.maintainers; [ aucub ]; + }; +}