Dev In The Mountain Header
A Developer In The mountains having fun

Linux System Installation

Essential applications and setup for Linux development environments.

Package Manager Setup

Most Linux distributions use one of these package managers:

  • Debian/Ubuntu: apt or apt-get
  • Fedora/RHEL: dnf or yum
  • Arch: pacman

Core Development Tools

Essential Packages

# Debian/Ubuntu
sudo apt update
sudo apt install build-essential git curl wget vim neovim tmux

# Fedora
sudo dnf install @development-tools git curl wget vim neovim tmux

# Arch
sudo pacman -S base-devel git curl wget vim neovim tmux

Modern CLI Tools

# Using cargo (Rust package manager)
cargo install ripgrep fd-find bat exa zoxide

# Or using package manager
sudo apt install ripgrep fd-find bat  # Debian/Ubuntu

Programming Languages

Node.js

# Using nvm (recommended)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install --lts

Python

sudo apt install python3 python3-pip python3-venv

Go

# Download from golang.org or use package manager
sudo apt install golang-go

Terminal Setup

Zsh + Oh My Zsh

sudo apt install zsh
chsh -s $(which zsh)
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Tmux Configuration

See the Tmux guide for configuration details.

File Managers

Additional Resources

More places to find me
Mental Health
follow me on Mastodon