34 lines
666 B
Plaintext
34 lines
666 B
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
function init_fish () {
|
||
|
cat <<EOF
|
||
|
|
||
|
# Overwrite the nix-shell command
|
||
|
function nix-shell
|
||
|
fish-nix-shell-wrapper \$argv
|
||
|
set -gx FISH_NIX_SHELL_EXIT_STATUS \$status
|
||
|
end
|
||
|
EOF
|
||
|
for arg in "$@"; do
|
||
|
case "$arg" in
|
||
|
--info-right)
|
||
|
cat <<EOF
|
||
|
|
||
|
# Print additional information inside a nix-shell environment
|
||
|
function fish_right_prompt
|
||
|
nix-shell-info
|
||
|
set -e FISH_NIX_SHELL_EXIT_STATUS
|
||
|
end
|
||
|
EOF
|
||
|
;;
|
||
|
*) exit 1;;
|
||
|
esac
|
||
|
done
|
||
|
}
|
||
|
|
||
|
cat <<EOF
|
||
|
# If you see this output, you probably forgot to pipe this output into 'source':
|
||
|
# fish-nix-shell $@ | source
|
||
|
EOF
|
||
|
|
||
|
init_fish "$@"
|