{pkgs', ...}: let
  bashFktScript = import ./bash-fkt.nix {
    inherit pkgs';
  };
in
  pkgs'.writeShellScriptBin "build-cover-report" ''
    source ${pkgs'.common}/bin/common
    ${bashFktScript}

    echo_header "Building cover report"
    echo_hint "The command is executed in the current working directory and not in a nix derivation."
    cd_working_dir
    setup_go_env
    download_test_images

    if [ -z "''${out}" ];
    then
      echo_fail "No out directory specified"
      exit 1
    fi

    writableDir="''${out}/coverage"
    if ! ${pkgs'.coreutils}/bin/mkdir -p ''${writableDir} > /dev/null 2>&1
    then
      write_fail "Failed to create directory ''${writableDir}"
      exit 1
    fi

    echo_step "Running tests"

    echo_section "Building"
    ${pkgs'.go}/bin/go test -v -coverprofile=''${writableDir}/coverage.out ./...
    if [ $? -ne 0 ];
    then
      echo_fail "Failed to run tests"
      exit 1
    fi

    if ! ${pkgs'.go}/bin/go tool cover -html=''${writableDir}/coverage.out -o ''${writableDir}/coverage.html
    then
      echo_fail "Failed to generate coverage report"
      exit 1
    fi
    echo_ok "Coverage report stored at ''${writableDir}"

    if [ -f ''${writableDir}/coverage.html ];
    then
      echo_fail "Coverage report not found"
      exit 1
    fi

    echo_step "Opening coverage report in browser"
    if ! ${pkgs'.xdg-utils}/bin/xdg-open ''${writableDir}/coverage.html > /dev/null 2>&1
    then
      echo_fail "Failed to open coverage report in browser"
      exit 1
    fi

    echo_ok "Report opened in browser"
  ''