1 Ubuntu
Anri edited this page 2022-07-04 18:43:42 +02:00

Mon setup Linux avec Fish

Installation de Fish

sudo apt-add-repository ppa:fish-shell/release-3 -y
sudo apt update
sudo apt install fish -y

Définir en tant que Shell par défaut

sudo chsh -s /usr/bin/fish

Redémarre la session en fermant et en réouvrant WSL


Suppression du message de bienvenue

set -U fish_greeting

Installer la recherche dans l'historique des commandes ^R

curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher
fisher install jethrokuan/fzf
sudo apt install fzf -y

Pour changer l'affichage des lignes, ouvre le panneau de configuration du Shell (perso j'ai choisit Base16 Eighties pour les couleurs et Screen Savvy pour l'invite de commande)

fish_config

Si Screen Savvy n'est pas disponible dans votre version de Fish, vous pouvez écrire ceci dans le fichier $HOME/.config/fish/functions/fish_prompt.fish :

function fish_prompt --description 'Screen Savvy prompt'
    if test -z "$WINDOW"
        printf '%s%s@%s%s%s%s%s> ' (set_color yellow) $USER (set_color purple) (prompt_hostname) (set_color $fish_color_cwd) (prompt_pwd) (set_color normal)
    else
        printf '%s%s@%s%s%s(%s)%s%s%s> ' (set_color yellow) $USER (set_color purple) (prompt_hostname) (set_color white) (echo $WINDOW) (set_color $fish_color_cwd) (prompt_pwd) (set_color normal)
    end
end

Paramétrage des manuels

Utilisant Fish, la syntaxe que je montre ici correspond à celle de Fish.

Mise en français

sudo dpkg-reconfigure locales # select fr_FR.UTF-8 UTF-8 with [space]
set -x LANG fr_FR.UTF-8
sudo apt install manpages-fr-dev manpages-fr-extra manpages-fr -y

Attention sur Ubuntu faire ces commandes désinstalle l'environnement de bureau (donc au redémarrage tu ne pourras plus te reconnecter).

Pour le réinstaller lance cette commande :

→ Si tu veux la version complète : sudo apt install ubuntu-desktop
→ Si tu veux la version minimale : sudo apt install --no-install-recommends ubuntu-desktop

Coloration syntaxique

sudo apt install bat -y
echo "set -x MANPAGER \"sh -c 'col -bx | batcat -l man -p'\"" >> ~/.config/fish/config.fish

SSH

Pour ajouter automatiquement les clés SSH dans Fish, j'utilises fish_ssh_agent.

Installation

wget https://gitlab.com/kyb/fish_ssh_agent/raw/master/functions/fish_ssh_agent.fish -P ~/.config/fish/functions/
sudo apt install procps -y
echo "fish_ssh_agent" >> ~/.config/fish/config.fish
mkdir ~/.ssh && echo "AddKeysToAgent yes" >> ~/.ssh/config

La première ligne télécharge et installe fish_ssh_agent, la seconde installe un pré-requis pour la commande "fish_ssh_agent", la troisième lance automatiquement le programme au démarrage et la dernière ajoute automatiquement les nouvelles clés à ssh-agent