My configuration for the fish shell.
This repository contains the configuration files for fish. This file is synchronized using this Git repository. The following instructions detail how to use and sync this repository.
My fish configuration relies on several other utilities: carapace-bin for completions, GCR for the SSH agent, and Starship for the prompt configuration. These utilities must be installed before utilizing the configuration.
-
Add the
rsteube
user’s RPM repository to your system which provides thecarapace-bin
package./etc/yum.repos.d/rsteube-fury.repo[fury] name=Gemfury Private Repo baseurl=https://yum.fury.io/rsteube/ enabled=1 gpgcheck=0
-
Add the
starship
COPR repository to your system.curl --location https://copr.fedorainfracloud.org/coprs/atim/starship/repo/fedora/atim-starship-fedora.repo \ | sudo tee /etc/yum.repos.d/atim-starship-fedora.repo
-
Install the packages.
sudo rpm-ostree install carapace-bin fish gcr starship
-
Reboot for the changes to take effect.
sudo systemctl reboot
-
Enable the GCR SSH agent socket for the user.
systemctl --user enable --now gcr-ssh-agent.socket
Install these settings with the following instructions.
-
Clone this repository.
git -C ~/Projects clone [email protected]:jwillikers/fish-config.git
-
Create the ~/.config/fish/conf.d directory.
mkdir --parents ~/.config/fish/conf.d
-
Symlink the configuration files in the
fish/conf.d
directory to the fish configuration directory.ln --relative --symbolic --force ~/Projects/fish-config/fish/conf.d/*.fish ~/.config/fish/conf.d/
-
Set the
SSH_AUTH_SOCK
environment variable to the GCR SSH agent socket.set --universal --export SSH_AUTH_SOCK $XDG_RUNTIME_DIR/gcr/ssh
-
Follow the install instructions in the Starship config repository to configure the prompt.
-
Open a new shell to complete the installation.
Please refer to the project’s Code of Conduct.