Linux Onboarding Guide
This document provides step-by-step instructions for setting up a Linux workstation with essential developer tools and customizations, tailored for both Debian-based and Fedora-based systems.
System Update
Always start with a full system update.
sudo apt update && sudo apt upgrade -y
sudo dnf update -y
Install Homebrew (Linuxbrew)
Homebrew is a popular package manager. It's optional but very useful.
Install dependencies:
build-essential
– Installs compilers and tools for building software (likegcc
,make
).procps
– Provides system utilities likeps
,top
,kill
, etc.curl
– Transfers data from or to a server using URL syntax (HTTP
,FTP
, etc).file
– Detects file types based on content, not extension.git
– Distributed version control system for tracking code changes.
sudo apt install build-essential procps curl file git -y
sudo dnf groupinstall "Development Tools" -y && sudo dnf install procps-ng curl file git -y
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.profile
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
brew doctor
Install Zsh
Zsh is a more powerful alternative to bash.
sudo apt install zsh -y
sudo dnf install zsh -y
Then change your default shell:
chsh -s $(which zsh)
Log out and back in to use Zsh.
Install Oh My Zsh
A framework for managing your Zsh configuration.
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Install Powerlevel10k Theme
Powerlevel10k is a fast, stylish Zsh theme.
- Clone the theme:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
- Set the theme in your
~/.zshrc
:ZSH_THEME="powerlevel10k/powerlevel10k"
- Then reload Zsh:
source ~/.zshrc
- When prompted, go through the Powerlevel10k configuration wizard.
Optional Nice-to-Haves
Here are some other useful tools and utilities you might want:
bat
– Acat
clone with syntax highlighting and Git integration.exa
– A modern replacement forls
with more features and colors.fzf
– A fast fuzzy finder for searching files, history, etc.ripgrep
– A super-fast recursive search tool, likegrep
but better.neovim
– A modern, extensible version of the Vim text editor.
sudo apt install bat exa fzf ripgrep neovim -y
sudo dnf install bat exa fzf ripgrep neovim -y
- works the same on both distros
brew install bat exa fzf ripgrep neovim
Reboot (optional)
Some changes (like default shell) take effect cleanly after a reboot:
sudo reboot
You're now set up with a modern, powerful Linux terminal environment!