{ lib, stdenvNoCC, fetchurl, installShellFiles, versionCheckHook, }: let version = "3000.3.27"; 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-ytVqE6uiYFZ7Z+Wakm0jRWTcGmG536hU1ob6Ljw7lIs="; }; aarch64-linux = fetchurl { url = "https://static.devin.ai/cli/${version}/devin-${version}-aarch64-unknown-linux.tar.gz"; hash = "sha256-9QoNI9V55CKl+EJ+3dMQyWW3xz4w5Z3QxHZextsypFc="; }; aarch64-darwin = fetchurl { url = "https://static.devin.ai/cli/${version}/devin-${version}-aarch64-apple-darwin.tar.gz"; hash = "sha256-7AR+o5bVP8NwwcfG3iEWN1hc+ZpcXNXc2/fkx/KiBiY="; }; }; 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"; }; })