Scripts to automatically install and configure shells for a pretty sweet Developer Experience 🧁
dx-scripts.mp4
bash -c "$(curl -fsSL https://raw.github.com/nerdyman/dx-scripts/main/install.sh)"
If you're using Ubuntu on WSL, it's recommended that you upgrade your distro and packages:
sudo apt-get update && \
sudo apt-get upgrade -y && \
sudo apt-get dist-upgrade -y && \
bash -c "$(curl -fsSL https://raw.github.com/nerdyman/dx-scripts/main/install.sh)"
- Install useful distro packages
- Install and configure Zsh
- Set the default shell to Zsh
- Install Oh My Zsh
- Enable Oh My Zsh plugins
- Enable Zsh Syntax Highlighting
- Install and configure Starship Cross-Shell Prompt
- Install and configure Node Version Manager (nvm)
- Enable Zsh hook to automatically load Node.js version from an
.nvmrc
config
- Enable Zsh hook to automatically load Node.js version from an
- Install and configure Generic Colouriser (grc)
- Configure Zsh settings for better
ls
colours
- Configure Zsh settings for better
- Install and configure fzf (fuzzy finder)
- Configure fzf for Zsh
- Install and configure SSH
- Configure SSH for Zsh
Aliases are set in ~/.config/aliases
.
~p
is aliased to ~/Documents/projects
, you can use it like:
~p/my-cool-project/hello-world.sh
The following paths are also sourced in .zshrc
if they exist:
~/.config/aliases.private
~/.config/env.private
The agnostic script should work on any Unix/Linux OS. Ubuntu is currently the only distro with its own script to auto-install dependencies for the agnostic script.
agnostic.sh
*- Install and configure Oh My Zsh
- Install and configure nvm
- Install and configure Starship Cross-Shell Prompt
- Configure default shell (Zsh)
- Configure fzf for Zsh (fzf install is handled in distro script)
- Configure grc for Zsh (grc install is handled in distro script)
- Configure SSH for Zsh (SSH client install is handled in distro script)
ubuntu.sh
- Install and configure Ubuntu packages
* Only tested on Ubuntu.