This directory contains all the dotfiles for a supercharged development environment. It includes an easy way to make sure that all the necessary programs are installed using the setup.sh script.
NOTE: This setup only works on Arch Linux as it makes heavy use of the AUR.
Table of Contents
The setup adds the following modern unix tools and creates aliases for their GNU counterparts:
cat:bat- Acatclone with syntax highlighting and Git integration.grep:ripgrep- An extremely fast alternative togrepthat respects your gitignorels:exa- A modern replacement forlsdiff:delta- A viewer forgitanddiffoutput
The setup adds the following tools to terminal gui tools:
lazygit- A simple terminal UI for git commands, written in Go with the gocui library.fzf- A general purpose command-line fuzzy finder.powerlevel10k- A minimal, blazing-fast, and highly customizable prompt for any shellneovim- Vim-fork focused on extensibility and usability ---> An alternative to Vim
The setup installs zsh and sets it as the default shell. The following zsh extensions are also installed using zap:
- zsh-autosuggestions
- zsh-autopair
- zsh-you-should-use
- zsh-shift-select
- fast-syntax-highlighting
- zsh-autosuggestions
- zsh-completions
- fzf-tab
This setup also includes all the shortcuts for selecting text that you would use on a normal text editor such as:
ctrl + ->move one word rightctrl + <-move one word leftctrl + shift + ->select one word rightctrl + shift + <-select one word lefthomego to start of lineendgo to end of lineshift + homeselect to start of lineshift + endselect to end of linectrl + cduring selection copyctrl + xduring selection cutctrl + vpaste
- NerdFonts compatible font
To install the dotfiles you can run the following command in your terminal:
bash <(curl -s https://raw.githubusercontent.com/AH-Merii/SMS-Supercharge-My-Shell/refs/heads/main/install/install.sh)Run stow to symlink everything or just select what you want
stow */ -t ~ # creates a symlink for all config filesstow zsh # creates symlink for only zsh configsIn addition to managing your dotfiles, this setup allows you to manage custom systemd services. These services are stored in the services/systemd directory, and to activate them, you can simply copy them to /etc/systemd/system. A better approach is to create a dedicated directory like /etc/systemd/system/custom-services to keep track of which services are custom.
- Store your custom services under
services/systemd/.- Example structure:
services/systemd/nvidia-pm.service
- Example structure:
- Copy the services to
/etc/systemd/system/:sudo cp services/systemd/* /etc/systemd/system/custom-services/
After copying the service files, you'll need to reload systemd to recognize them:
sudo systemctl daemon-reloadYou can now enable and start the service:
sudo systemctl enable nvidia-pm.service
sudo systemctl start nvidia-pm.serviceThis way, you can easily keep track of all your custom services and only activate the ones you need.