{ lib, stdenvNoCC, fetchurl, installShellFiles, versionCheckHook, }: let version = "3000.1.23"; throwSystem = throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}"; srcs = { x86_64-linux = fetchurl { url = "https://static.devin.ai/cli/${version}/devin-${version}-x86_64-unknown-linux.tar.gz"; hash = "sha256-m7DOI/PY0ldm4kRmAxeEQXTiH/R2oT3R8igmtXYA40g="; }; aarch64-linux = fetchurl { url = "https://static.devin.ai/cli/${version}/devin-${version}-aarch64-unknown-linux.tar.gz"; hash = "sha256-oOZjPyr3sgaH54KBWQhODFwxrEnuhkTW/rVPwXUAeUY="; }; aarch64-darwin = fetchurl { url = "https://static.devin.ai/cli/${version}/devin-${version}-aarch64-apple-darwin.tar.gz"; hash = "sha256-x+g7kILZuWG2JX4tc+GdIE7XqpHIzWt6+xPQU/gzyeA="; }; x86_64-darwin = fetchurl { url = "https://static.devin.ai/cli/${version}/devin-${version}-x86_64-apple-darwin.tar.gz"; hash = "sha256-LF1Mk53ds28Avvq+TtyvIu/BPYSHm9tBVjAlUXAyJVU="; }; }; in stdenvNoCC.mkDerivation (finalAttrs: { pname = "devin-cli"; inherit version; outputs = [ "out" "man" "doc" ]; strictDeps = true; __structuredAttrs = true; src = srcs.${stdenvNoCC.hostPlatform.system} or throwSystem; sourceRoot = "."; nativeBuildInputs = [ installShellFiles ]; dontConfigure = true; dontBuild = true; installPhase = '' runHook preInstall installBin ./bin/devin installManPage ./share/man/man1/*.1 mkdir -p $out/share/doc mv ./share/devin/docs/* $out/share/doc runHook postInstall ''; nativeInstallCheckInputs = [ versionCheckHook ]; doInstallCheck = true; passthru.updateScript = ./update.sh; meta = { description = "Cognition's Devin Agent CLI"; homepage = "https://devin.ai/cli"; license = lib.licenses.unfree; sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; maintainers = with lib.maintainers; [ ethancedwards8 nhshah15 ]; mainProgram = "devin"; }; })