50 lines
1.2 KiB
Bash
Executable File
50 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
if not_installed "fish"; then
|
|
echo "installing fish..."
|
|
add_ppa "fish-shell/release-3"
|
|
update
|
|
install fish
|
|
|
|
fi
|
|
echo "fish is installed"
|
|
|
|
# current_shell="$(getent passwd $USER | cut -d: -f7)"
|
|
# fish_path="$(which fish)"
|
|
# if [ "$current_shell" != "$fish_path" ]; then
|
|
# echo "setting fish as default, current shell was $current_shell"
|
|
# sudo chsh -s "$fish_path" "$USER"
|
|
# sudo usermod -s "$fish_path" "$USER"
|
|
# fi
|
|
# echo "fish is default login shell"
|
|
|
|
fish_source="$dotfiles_dir/fish"
|
|
fish_target="$XDG_CONFIG_HOME/fish"
|
|
link_folder "$fish_source" "$fish_target"
|
|
echo "fish dotfiles linked"
|
|
|
|
fish --version
|
|
|
|
fisher_location="$XDG_CONFIG_HOME/fish/functions/fisher.fish"
|
|
if ! [ -f "$fisher_location" ]; then
|
|
echo "Installing fisher..."
|
|
curl https://git.io/fisher --create-dirs -sLo "$fisher_location"
|
|
fi
|
|
echo "fisher is installed, updating..."
|
|
fish -c "fisher"
|
|
|
|
fish -c "fisher --version"
|
|
|
|
if not_installed "fishlogin"; then
|
|
echo "setting up fishlogin..."
|
|
mkdir -p ~/bin
|
|
target="$HOME/bin/fishlogin"
|
|
tee -a $target << END
|
|
#!/bin/bash -l
|
|
exec -l fish "\$@"
|
|
END
|
|
sudo chmod +x $target
|
|
echo $target | sudo tee -a /etc/shells
|
|
sudo usermod -s $target $USER
|
|
fi
|