top | item 40019677

(no title)

throwiforgtnlzy | 1 year ago

It depends. It's better than nothing that can be ^C'ed.

Here's a naive, partial implementation that runs in <500 ms so long as there's an existing dnf cache:

   command_not_found_handle() {
    local pkgs
    readarray pkgs < <(dnf rq --whatprovides "$1" -C --qf '%{name}\n' 2>/dev/null | sed '/^$/d' | sort -uVr)
    if (( ! "${#pkgs[@]}" )); then
      echo >&2 'Command not found and no package provides it according to the dnf cache'
      return
    fi
    echo >&2 'Command not found, but offered via the following command(s):'
    pkgs=("${pkgs[@]/#/    dnf install }")
    echo >&2 " ${pkgs[@]}"
  }

discuss

order

No comments yet.