# Copyright (C) 2008 Richard Hughes # # Licensed under the GNU General Public License Version 2 # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. command_not_found_handle () { local runcnf=1 local retval=127 # only search for the command if we're interactive [[ $- == *"i"* ]] || runcnf=0 # don't run if DBus isn't running [[ ! -S /run/dbus/system_bus_socket ]] && runcnf=0 # don't run if packagekitd doesn't exist in the _system_ root [[ ! -x '@LIBEXECDIR@/packagekitd' ]] && runcnf=0 # don't run if bash command completion is being run [[ -n ${COMP_CWORD-} ]] && runcnf=0 # don't run if we've been uninstalled since the shell was launched [[ ! -x '@LIBEXECDIR@/pk-command-not-found' ]] && runcnf=0 # run the command, or just print a warning if [ $runcnf -eq 1 ]; then '@LIBEXECDIR@/pk-command-not-found' "$@" retval=$? elif [[ -n "${BASH_VERSION-}" ]]; then printf >&2 'bash: %s%s\n' "${1:+$1: }" "$(gettext PackageKit 'command not found')" fi # return success or failure return $retval } if [[ -n "${ZSH_VERSION-}" ]]; then command_not_found_handler () { command_not_found_handle "$@" } fi