mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-15 01:48:34 -07:00
fix(command-not-found): show error in Ubuntu when no package is found (#9418)
This commit is contained in:
parent
4f8964d8ff
commit
fa1911f89e
@ -2,7 +2,22 @@
|
||||
# as seen in https://www.porcheron.info/command-not-found-for-zsh/
|
||||
# this is installed in Ubuntu
|
||||
|
||||
[[ -e /etc/zsh_command_not_found ]] && source /etc/zsh_command_not_found
|
||||
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then
|
||||
function command_not_found_handler {
|
||||
# check because c-n-f could've been removed in the meantime
|
||||
if [ -x /usr/lib/command-not-found ]; then
|
||||
/usr/lib/command-not-found -- "$1"
|
||||
return $?
|
||||
elif [ -x /usr/share/command-not-found/command-not-found ]; then
|
||||
/usr/share/command-not-found/command-not-found -- "$1"
|
||||
return $?
|
||||
else
|
||||
printf "zsh: command not found: %s\n" "$1" >&2
|
||||
return 127
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
fi
|
||||
|
||||
# Arch Linux command-not-found support, you must have package pkgfile installed
|
||||
# https://wiki.archlinux.org/index.php/Pkgfile#.22Command_not_found.22_hook
|
||||
@ -10,13 +25,12 @@
|
||||
|
||||
# Fedora command-not-found support
|
||||
if [ -f /usr/libexec/pk-command-not-found ]; then
|
||||
command_not_found_handler () {
|
||||
command_not_found_handler() {
|
||||
runcnf=1
|
||||
retval=127
|
||||
[ ! -S /var/run/dbus/system_bus_socket ] && runcnf=0
|
||||
[ ! -x /usr/libexec/packagekitd ] && runcnf=0
|
||||
if [ $runcnf -eq 1 ]
|
||||
then
|
||||
if [ $runcnf -eq 1 ]; then
|
||||
/usr/libexec/pk-command-not-found $@
|
||||
retval=$?
|
||||
fi
|
||||
@ -32,7 +46,7 @@ fi
|
||||
|
||||
# NixOS command-not-found support
|
||||
if [ -x /run/current-system/sw/bin/command-not-found ]; then
|
||||
command_not_found_handler () {
|
||||
command_not_found_handler() {
|
||||
/run/current-system/sw/bin/command-not-found $@
|
||||
}
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user