Common Configurations for Linux
Install Common Packages
For Red Hat based systems:
sudo dnf install -y git gcc gcc-c++ llvm clang lldb make cmake tmux htop btop zsh neovim curl
For Arch based systems:
sudo pacman -Syu git gcc llvm clang lldb make cmake tmux htop btop zsh neovim curl
For Debian based systems:
sudo apt update
sudo apt install -y git gcc g++ llvm clang lldb make cmake tmux htop btop zsh neovim curl
Set Up ZSH
sh -c "$(curl -fsSL https://install.ohmyz.sh/)"
This command will automatically install oh-my-zsh and set zsh
as the default shell.
After these are done, you will get into a zsh session.
Then install the zsh-autosuggestions
and zsh-syntax-highlighting
plugins:
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-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
Next, edit the ~/.zshrc
file:
plugins=(
git
zsh-autosuggestions
zsh-syntax-highlighting
)
On my own opinion, I will also change the theme to candy
and then set the HYPHEN_INSENSITIVE
option to true
:
ZSH_THEME="candy"
HYPHEN_INSENSITIVE="true"
I like the most simple locale settings, so I will also change locale to C.UTF-8
. If this is my own device. If this machine is not mine, I will set this in my ~/.zshrc
:
export LC_ALL=C.UTF-8
If this is my own physical device, I will add my GPG keys, and using GPG keys to sign, authenticate and encrypt needs passwords.
So I will set the GPG_TTY
environment to allow pinentry
to work properly with tmux
and zsh
in the terminal, so that GPG can prompt for the password in the terminal.
Add this line to my ~/.zshrc
to set the GPG_TTY
environment variable:
export GPG_TTY=$(tty)
TMUX Configuration
You can see the TMUX help document by pressing Ctrl + B
(abbrev. C-b
) and then ?
.
By default, TMUX have no mouse support. You can enable it temporarily by pressing C-b
and then :
to enter the command mode, then type set -g mouse on
and press Enter.
If you want to enable mouse support permanently, you can add the following line to your ~/.tmux.conf
:
set -g mouse on