-
Install Dependencies:
- Terminal emulator
- windows terminal
- iterm2
- Kanagawa theme - check out extras/ for themes for terminal
- nerd font (operator mono)
- Terminal emulator
-
Ubuntu setup:
sudo apt install fzf libfuse2 exa gcc bat
sudo apt-get install -y make build-essential fd-find ripgrep libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev liblzma-dev
curl https://pyenv.run | bash
pyenv install 3.12
pyenv virtualenv nvim
pyenv activate nvim
pip install -r .config/nvim/requrements.txt
- neovim
wget https://github.com/neovim/neovim/releases/download/v0.9.5/nvim.appimage
chmod u+x nvim.appimage
sudo mv nvim.appimage /usr/local/bin/nvim
- nvm (check version)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
- Shell:
- Install fish
- Make default shell
grep "fish" /etc/shells
chsh -s ${which fish}
- fisher fish package manager
fisher update
(installs from .config/fish/fish_plugins)
- Make default shell
- OR Install zsh
sudo apt install zsh
- Make default shell
chsh -s ${which zsh}
- ohmyzsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
- Replace default .zshrc
rm .zshrc
ln -s dev_config/.zshrc .
- plugins
- p10k (replace with repo's p10k config)
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-history-substring-search ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-history-substring-search
git clone https://github.com/joshskidmore/zsh-fzf-history-search ${ZSH_CUSTOM:=~/.oh-my-zsh/custom}/plugins/zsh-fzf-history-search
- p10k (replace with repo's p10k config)
- Make default shell
- Install tmux
- tmuxp for session management
- set up tmux plugins (tpm)
mkdir -p ~/.tmux/plugins
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
- Language dependencies:
- python
- create nvim virtualenv:
python3 -m venv ~/python_envs/nvim
- activate and install requirements
source ~/python_envs/nvim/bin/activate.fish && pip install -r .config/nvim/requirements.txt
- create nvim virtualenv:
- node via nvm
nvm install latest
npm i -g neovim
- Rust
- Rust tools
- fd-find better
find
- symlink the binary which is called something else
ln -s $(which fdfind) ~/.local/bin/fd
- symlink the binary which is called something else
- ripgrep better
grep
- bat better
cat
- exa better
ls
- zoxide better
cd
- rip better
rm
- watchexec - Executes commands in response to file modifications
cargo install watchexec-cli
- gitui - Blazing terminal-ui for git written in rust
- procs - A modern replacement for ps written in Rust
- bottom - Yet another cross-platform graphical process/system monitor.
- bandwhich - Terminal bandwidth utilization tool
- dust - A more intuitive version of du
- grex - A command-line tool and Rust library for generating regular expressions from user-provided test cases
- git-cliff - A highly customizable Changelog Generator that follows Conventional Commit specifications ⛰️
- just - Just a command runner
- gitoxide - An idiomatic, lean, fast & safe pure Rust implementation of Git
- delta - A syntax-highlighting pager for git, diff, grep, and blame output
- fd-find better
- Rust tools
- python
- Other shell tools
- fzf fuzzy finder for shell and integrates with other tools
- helix editor nice multi-cursor editing; useful inside neovim
- lazygit TUI for git interaction
- zoxide -
curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash
- Desktop:
- Obsidian
- Syncthing (for Obsidian)
- SyncTrayzor (Windows system tray)
- If the latest version of syncthing is desired, just copy the .exe to
%APPDATA%/SyncTrayzor/
- If the latest version of syncthing is desired, just copy the .exe to
- SyncTrayzor (Windows system tray)
- Syncthing (for Obsidian)