mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-29 13:16:51 +08:00
6710fd588a
* fix(autojump): fix autojump sourcing in nix (-darwin) This plugin expects to source an sh/zsh file which sets up autojump, but that is not done when running Nix on macos using nix-darwin. Looking at the old value (/etc/profiles/per-user/$USER/bin/autojump), it points to a binary file instead of the setup script. * Use zsh file instead of sh
38 lines
1.5 KiB
Bash
38 lines
1.5 KiB
Bash
declare -a autojump_paths
|
|
autojump_paths=(
|
|
$HOME/.autojump/etc/profile.d/autojump.zsh # manual installation
|
|
$HOME/.autojump/share/autojump/autojump.zsh # manual installation
|
|
$HOME/.nix-profile/etc/profile.d/autojump.sh # NixOS installation
|
|
/run/current-system/sw/share/autojump/autojump.zsh # NixOS installation
|
|
/usr/share/autojump/autojump.zsh # Debian and Ubuntu package
|
|
/etc/profile.d/autojump.zsh # manual installation
|
|
/etc/profile.d/autojump.sh # Gentoo installation
|
|
/usr/local/share/autojump/autojump.zsh # FreeBSD installation
|
|
/usr/pkg/share/autojump/autojump.zsh # NetBSD installation
|
|
/opt/local/etc/profile.d/autojump.sh # macOS with MacPorts
|
|
/usr/local/etc/profile.d/autojump.sh # macOS with Homebrew (default)
|
|
/opt/homebrew/etc/profile.d/autojump.sh # macOS with Homebrew (default on M1 macs)
|
|
/etc/profiles/per-user/$USER/etc/profile.d/autojump.zsh # macOS Nix, Home Manager and flakes
|
|
)
|
|
|
|
for file in $autojump_paths; do
|
|
if [[ -f "$file" ]]; then
|
|
source "$file"
|
|
found=1
|
|
break
|
|
fi
|
|
done
|
|
|
|
# if no path found, try Homebrew
|
|
if (( ! found && $+commands[brew] )); then
|
|
file=$(brew --prefix)/etc/profile.d/autojump.sh
|
|
if [[ -f "$file" ]]; then
|
|
source "$file"
|
|
found=1
|
|
fi
|
|
fi
|
|
|
|
(( ! found )) && echo '[oh-my-zsh] autojump not found. Please install it first.'
|
|
|
|
unset autojump_paths file found
|