top of page

Customizing Your Terminal (Kali Linux)



Customizing Your Terminal


There are several layers to terminal customization — the terminal emulator itself, the shell, and the prompt. Here's a breakdown of the main areas you can tweak. Here's an article on customizing terminal!


Terminal Emulator Settings


This is the actual window/app you're using (Windows Terminal, iTerm2, GNOME Terminal, Alacritty, Kitty, etc.).


Fonts: Install a Nerd Font (like FiraCode Nerd Font, JetBrains Mono, or Meslo) if you want icons and glyphs in your prompt. Adjust font size and ligature settings in your terminal preferences.


Color Scheme: Most terminals come with built-in themes (Solarized, Dracula, One Dark, Gruvbox, etc.).

You can also import custom schemes or create your own. For consistent colors across tools, pick a scheme you like and apply it everywhere.


Background: Set transparency/opacity, background images, or blur effects.

Window Behavior: Configure startup size, position, scrollback buffer size, and keyboard shortcuts.


Shell Customization


Your shell's config file is where most of the magic happens. Common customizations:


Aliases:


bash

alias ll='ls -la'
alias gs='git status'
alias ..='cd ..'
alias update='sudo apt update && sudo apt upgrade'

Environment Variables:


bash

export EDITOR=nvim
export PATH="$HOME/.local/bin:$PATH"

Useful shell options (Zsh/Bash):


bash

# Case-insensitive tab completion
bind 'set completion-ignore-case on'   # bash
# or in .zshrc:
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'

Prompt Customization


Starship (Cross-Shell, Beginner-Friendly)


Install Starship and add one line to your .bashrc/.zshrc:


bash

curl -sS https://starship.rs/install.sh | sh
echo 'eval "$(starship init bash)"' >> ~/.bashrc

Then configure via ~/.config/starship.toml. It shows Git status, language versions, command duration, and more out of the box.


Oh My Posh


Similar to Starship but more visually oriented. Great if you want a flashy, segmented prompt.


bash

curl -s https://ohmyposh.dev/install.sh | bash

Powerlevel10k (Zsh Only)


Very popular, highly configurable Zsh theme. Run its wizard once and it guides you through everything:


bash

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git \
  ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

Then set ZSH_THEME="powerlevel10k/powerlevel10k" in .zshrc.


Oh My Zsh / Oh My Bash


Frameworks that bundle themes, plugins, and helpers. Oh My Zsh is especially popular:


bash

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Plugins like git, z, autosuggestions, and syntax-highlighting are game-changers.


Tools That Improve The Experience


Tool

Purpose

zoxide

Smarter cd — learns your most-used directories

fzf

Fuzzy finder for files, history, processes

bat

cat with syntax highlighting and line numbers

eza/lsd

Modern ls replacements with icons and colors

ripgrep (rg)

Blazing fast grep alternative

tmux

Terminal multiplexer — splits, tabs, session persistence

zsh-autosuggestions

Suggests commands as you type based on history

zsh-syntax-highlighting

Colors commands green/red as you type them


Bonus: Tmux Customization


If you use tmux, customize ~/.tmux.conf:


bash

# Enable mouse support
set -g mouse on

# Better split keybinds
bind | split-window -h
bind - split-window -v

# Increase scrollback
set -g history-limit 50000

Comments


bottom of page