This repository contains personal configuration for Dot Files including:
- CaskaydiaCove Nerd Font
- Homebrew
- NeoVim using the Plugin Manager: lazy.nvim
- Nushell
- Tmux
- Windows Terminal
- WSL
Clone this configuration by using the following command in your $HOME
directory:
git clone https://github.com/bryaneduarr/nvim-config.git .
This configuration was done using WSL with Ubuntu 24.04 LTS image.
The terminal used is Windows Terminal. With just basic configuration not included in this repo, mainly colors.
The font used across all this environment is: CaskaydiaCove Nerd Font. You can install this font if you are in the operating systems: MacOS/Linux Distribution by using Homebrew:
brew install --cask font-caskaydia-cove-nerd-font
Recommended to use Nushell as the default Shell (this step can be ignored if not wanted).
Install Nushell by running the following commands:
curl -fsSL https://apt.fury.io/nushell/gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/fury-nushell.gpg
echo "deb https://apt.fury.io/nushell/ /" | sudo tee /etc/apt/sources.list.d/fury.list
sudo apt update
sudo apt install nushell
To make the Nushell the default shell identify which is the path of Nushell by running the following command:
which nu
Add Nushell to the default shells path, you need to paste the path given by the previous command which nu
instead of the one given.
The following command will be a default command if the path is the same as in the environment tested:
sudo echo "/home/linuxbrew/.linuxbrew/bin/nu" | sudo tee -a /etc/shells
To change to Nushell as the default shell run the following command using the path that which nu
give you:
chsh -s /home/linuxbrew/.linuxbrew/bin/nu
The default installation can be found here.
RESTART YOUR TERMINAL AFTER CHANGING
This setup was made using WSL with Ubuntu 24.04 LTS image and it needs some dependencies to run some packages that are required in this configuration.
First ensure your system is up to date with the following using the following commands:
sudo apt update && sudo apt upgrade -y && sudo apt install build-essential -y
Install Python v.3.12-venv
sudo apt install python3.12-venv -y
For the installation of Homebrew we will follow the recommended installation from their installation instructions.
To install Homebrew use the following command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Once the installation is finished add the path to your Shell using the following command:
echo >> /home/user/.bashrc
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> /home/user/.bashrc
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
Update your packages after installation (OPTIONAL):
sudo apt update && sudo apt upgrade -y && sudo apt install build-essential -y
Or using Nushell:
sudo apt update ;sudo apt upgrade -y ; sudo apt install build-essential -y
For the installation all the packages needed for this configuration we will be using Homebrew to install them, you can just copy and paste the following command that includes all the dependencies:
brew install fd fzf git gcc luarocks nvim ripgrep tmux unzip
This configuration will be using NVM for managing Node.JS and NPM.
Install NVM by using the following command:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
RESTART YOUR TERMINAL AFTER INSTALLATION FINISHES
By using Tmux this configuration also includes some plugins managed by Tmux Plugin Manager. You can find the configuration for all Tmux related configuration in this repository here.
To install Tmux Plugin Manager use the following command:
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
Install the plugins by using PREFIX
(in this configuration CTRL+S
) + I. Follow the instructions from their repository here.
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
If you plan to use a spell check in Spanish please follow the following instructions:
- Create a new file in
~/.config/nvim/
namedspell
:
mkdir ~/.config/nvim/spell
- Enter the new file created:
cd ~/.config/nvim/spell
Install the packages for spell checkers with the following commands:
wget https://ftp.nluug.nl/pub/vim/runtime/spell/es.utf-8.spl
wget https://ftp.nluug.nl/pub/vim/runtime/spell/es.utf-8.sug
If you are planning in using epwalsh/obsidian.nvim you will need to create a new folder anywhere you want, for example:
mkdir ~/notes
Inside ~/.config/nvim/
you will need to add a .env
file that includes the path for where you decided to create your Obsidian Vault. You can do this by following this steps:
- Create a new
.env
file:
nvim ~/.config/nvim/.env
- Add this inside the
.env
file:
OBSIDIAN_NOTES=/path/to/your/vault
Another plugin that uses the .env
file is nvim-telescope/telescope it is used to ignore not necessary files when you use this plugin. You can customize it as you desire to ignore certain type of files in here.
Plugin | GitHub Link | Local Config |
---|---|---|
antosha417/nvim-lsp-file-operations | GitHub | Config File |
catppuccin/nvim | GitHub | Config File |
codeium.nvim | GitHub | Config File |
dgox15/oldworld.nvim | GitHub | Config File |
epwalsh/obsidian.nvim | GitHub | Config File |
folke/neodev.nvim | GitHub | Config File |
folke/which-key.nvim | GitHub | Config File |
hrsh7th/cmp-buffer | GitHub | Config File |
hrsh7th/cmp-nvim-lsp | GitHub | Config File |
hrsh7th/cmp-path | GitHub | Config File |
hrsh7th/nvim-cmp | GitHub | Config File |
j-hui/fidget.nvim | GitHub | Config File |
kylechui/nvim-surround | GitHub | Config File |
lewis6991/gitsigns.nvim | GitHub | Config File |
L3MON4D3/LuaSnip | GitHub | Config File |
lukas-reineke/indent-blankline.nvim | GitHub | Config File |
MeanderingProgrammer/render-markdown.nvim | GitHub | Config File |
mfussenegger/nvim-lint | GitHub | Config File |
Mofiqul/vscode.nvim | GitHub | Config File |
neovim/nvim-lspconfig | GitHub | Config File |
nvim-lua/plenary.nvim | GitHub | Config File |
nvim-telescope/telescope-fzf-native.nvim | GitHub | Config File |
nvim-telescope/telescope.nvim | GitHub | Config File |
nvim-tree/nvim-web-devicons | GitHub | Config File |
nvim-treesitter/nvim-treesitter | GitHub | Config File |
onsails/lspkind.nvim | GitHub | Config File |
rafamadriz/friendly-snippets | GitHub | Config File |
saadparwaiz1/cmp_luasnip | GitHub | Config File |
saghen/blink.cmp | GitHub | Config File |
stevearc/conform.nvim | GitHub | Config File |
stevearc/oil.nvim | GitHub | Config File |
tpope/vim-fugitive | GitHub | Config File |
WhoIsSethDaniel/mason-tool-installer.nvim | GitHub | Config File |
williamboman/mason-lspconfig.nvim | GitHub | Config File |
williamboman/mason.nvim | GitHub | Config File |
windwp/nvim-autopairs | GitHub | Config File |
windwp/nvim-ts-autotag | GitHub | Config File |