diff --git a/pkgs/by-name/fo/fortran-fpm/package.nix b/pkgs/by-name/fo/fortran-fpm/package.nix index 7e80dd9a62a6..225684d8cd45 100644 --- a/pkgs/by-name/fo/fortran-fpm/package.nix +++ b/pkgs/by-name/fo/fortran-fpm/package.nix @@ -1,31 +1,33 @@ { lib, - fetchurl, - pkgs, stdenv, + fetchurl, + gfortran, + versionCheckHook, + nix-update-script, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "fortran-fpm"; version = "0.11.0"; src = fetchurl { - url = "https://github.com/fortran-lang/fpm/releases/download/v${version}/fpm-${version}.F90"; - sha256 = "sha256-mIozF+4kSO5yB9CilBDwinnIa92sMxSyoXWAGpz1jSc="; + url = "https://github.com/fortran-lang/fpm/releases/download/v${finalAttrs.version}/fpm-${finalAttrs.version}.F90"; + hash = "sha256-mIozF+4kSO5yB9CilBDwinnIa92sMxSyoXWAGpz1jSc="; }; dontUnpack = true; - nativeBuildInputs = with pkgs; [ gfortran ]; + nativeBuildInputs = [ gfortran ]; buildPath = "build/bootstrap"; buildPhase = '' runHook preBuild - mkdir -p ${buildPath} - gfortran -J ${buildPath} -o ${buildPath}/${pname} $src + mkdir -p ${finalAttrs.buildPath} + gfortran -J ${finalAttrs.buildPath} -o ${finalAttrs.buildPath}/fortran-fpm $src runHook postBuild ''; @@ -34,17 +36,27 @@ stdenv.mkDerivation rec { runHook preInstall mkdir -p $out/bin - cp ${buildPath}/${pname} $out/bin + cp ${finalAttrs.buildPath}/fortran-fpm $out/bin runHook postInstall ''; - meta = with lib; { + nativeInstallCheckInputs = [ + versionCheckHook + ]; + versionCheckProgramArg = "--version"; + doInstallCheck = true; + + passthru = { + updateScript = nix-update-script { }; + }; + + meta = { description = "Fortran Package Manager (fpm)"; homepage = "https://fpm.fortran-lang.org"; - maintainers = [ maintainers.proofconstruction ]; - license = licenses.mit; - platforms = platforms.all; + maintainers = [ lib.maintainers.proofconstruction ]; + license = lib.licenses.mit; + platforms = lib.platforms.all; mainProgram = "fortran-fpm"; }; -} +})