I currently use iTerm2 under macOS with the Fish shell. My colour theme is Kanagawa and my font is a patched JetBrains Nerd font.
- Tmux is my terminal multiplexer
- Neovim is my editor of choice
- Newsboat for staying updated on my RSS feeds, podcasts, YouTube subscriptions
- ncmpcpp and mpd for my music
- Yazi as my file manager
- w3m when browsing the internet from the terminal
- Weechat for IRC
- MPV for watching videos
This repository uses GNU Stow to handle the dotfiles.
See more information here: https://www.gnu.org/software/stow/
A setup script is included to handle all the essential setup under macOS:
./setup.sh
Alternatively, use the below instructions to set up the dotfiles manually.
Under macOS, install stow
with Homebrew:
brew install stow
To clone the repository on a new machine:
git clone [email protected]:vascomfnunes/dotfiles.git .dotfiles
Then just stow the packages like so:
cd .dotfiles
stow <package>
Where <package>
is the directory name.
Add the fish shell to /etc/shells
:
sudo sh -c 'echo /opt/homebrew/bin/fish >> /etc/shells'
Restart the terminal and make fish the default shell for the current user:
chsh -s /opt/homebrew/bin/fish
Logout and login again to make sure you're using the new fish shell.
This configuration requires Neovim 0.10.x and uses Lazy
as the
package manager of choice.
The leader key is set to the spacebar
key.
It will clone the Lazy
repo on the first run and install all the plugins.
After that, all defined TreeSitter definitions will be installed automatically.
LSP clients/Linters/Debuggers are installed automatically and handled by Mason.
If you got some error just restart Neovim
to load the new plugins and
configuration.
After launching Tmux for the first time, install the plugins with <C-a>I
. Some
plugins require rust
and cargo support to be installed.
If you're curious, I use a couple of Tmux's status line plugins I wrote:
- Clima A local weather status, fetching data from OpenWeather
- Ludanta A 'what's playing' on a local MPD server
- Kripto To watch the prices of cryptocurrencies falling :)
To secure the password for the IRC servers:
/secure passphrase <pass>
/secure set libera <pass>