A short guide on how I set up my development environment using Linux.
Either Fedora or Ubuntu have been my go-to choices.
sudo apt update; sudo apt upgrade
sudo apt install build-essential cmake curl gettext git htop iftop libbz2-dev libffi-dev libfontconfig1-dev libfreetype6-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev libxcb-xfixes0-dev libxkbcommon-dev libxml2-dev libxmlsec1-dev ninja-build pkg-config python3 ripgrep tk-dev tmux ubuntu-restricted-addons ubuntu-restricted-extras xz-utils zlib1g-dev zsh -y
sudo snap install bitwarden dbeaver-ce spotify
Install oh-my-zsh (from here)
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Install nvm (from here)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
Install pyenv (from here)
curl https://pyenv.run | bash
Install rust (from here)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
sudo snap install alacritty --classic
Build & install neovim (from here)
sudo apt-get install ninja-build gettext cmake unzip curl build-essential
git clone https://github.com/neovim/neovim
cd neovim
git checkout stable
make CMAKE_BUILD_TYPE=RelWithDebInfo
Instead of doing sudo make install
, I use the Debian way (which allows for easier cleanup when upgrading):
cd build && cpack -G DEB && sudo dpkg -i nvim-linux64.deb
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm