2026-03-25 15:19:54 +01:00
2026-03-25 15:19:34 +01:00
2026-03-25 15:19:34 +01:00
2026-03-25 15:19:34 +01:00
2026-03-25 15:19:34 +01:00
2026-03-25 15:19:54 +01:00
2026-03-25 15:19:54 +01:00
2026-03-25 15:19:54 +01:00

StianNOR-ZSHkit 🚀

A clean, powerful Zsh setup for Linux — featuring Powerlevel10k, Oh My Zsh, Hack Nerd Font, colorls, fastfetch, and a full-featured update dashboard with health checks, tool suggestions and interactive install mode.

Tip

Having issues? Please open an issue: https://github.com/StianNOR/StianNOR-ZSHkit/issues Join the community on Discord: https://discord.gg/eHEHCzGCAE


What's Included

  • Zsh with Oh My Zsh and Powerlevel10k prompt
  • Hack Nerd Font installed system-wide with automatic terminal/DE configuration
  • colorls for beautiful directory listings
  • fastfetch for a system info splash on terminal open
  • zsh-autosuggestions, zsh-syntax-highlighting, zsh-completions plugins
  • Update Dashboard (up.sh) — a full system update + health check tool with interactive tool browser
  • ZSHrc Merge Script (update_zshrc.sh) — safely merges new features into your existing ~/.zshrc without overwriting personal config

Supported Package Managers

Package Manager Distros
APT Debian, Ubuntu, Linux Mint, Pop!_OS, etc
DNF Fedora, CentOS 8+, RHEL 8+, Rocky Linux, etc
Pacman Arch Linux, Manjaro, EndeavourOS, etc
Zypper openSUSE, SUSE Linux Enterprise, etc
APK Alpine Linux

Installation

cd ~
git clone https://github.com/StianNOR/StianNOR-ZSHkit.git ZSHkit
cd ZSHkit
chmod +x *.sh
./setup_zsh.sh

After installation, log out and back in (or reboot) for the shell change and font to take effect.

Then run p10k configure to set up your prompt style.


Update Dashboard 🚀

The update dashboard keeps your system up to date and healthy with a single command.

up        # update everything: packages, flatpak, gems, Oh My Zsh, docker
upc       # first-run config: full update + interactive tool install/suppress mode
uph       # health check only
ups       # tool suggestions and interactive info browser
uphelp    # show all commands

What up does

  • Updates system packages (pacman/yay, apt, dnf, zypper, or apk)
  • Updates Flatpak apps
  • Updates Ruby gems (colorls etc.)
  • Updates Oh My Zsh and all custom plugins
  • Prunes Docker images and volumes
  • Cleans journals, thumbnail cache and /tmp
  • Rotates logs automatically (keeps last 10)
  • Shows a health summary with GOOD/BAD verdict

Tool Suggestions & Info Mode 📖

After running upc (or pressing i after ups), an interactive tool browser opens:

Category Tools
🔒 Security UFW, fail2ban, rkhunter, lynis, ClamAV, auditd, AppArmor
Optimization earlyoom, irqbalance, thermald, zram, preload
📡 Monitoring btop, smartmontools, ncdu, gdu, duf, nethogs, logwatch, nvtop
🛠 Terminal bat, fzf, rsync, restic, tldr
🌐 Network & Extras nmap, mtr, timeshift, yay (Arch), nala (Debian)

Controls:

Key Action
/ Navigate tools
/ Next / previous page
i Queue tool for install
s Suppress tool (hide from suggestions permanently)
q Save and exit

Keeping Your Config Up To Date

If you already have a customised ~/.zshrc and don't want it overwritten, use the merge script instead of copying:

cd ~/ZSHkit
git pull
zup            # merges new ZSHkit sections into your existing ~/.zshrc
fresh          # reload

The merge script only updates the managed sections (aliases, autosuggestions config) and leaves everything else untouched.

zup --dry-run  # preview changes without writing anything
zup --status   # check which sections are present in your ~/.zshrc

Helpful Aliases

Alias Description
up Run system updates
upc First-run config + tool browser
uph Health check
ups Suggestions + info mode
uphelp Show all up commands
zup Merge new ZSHkit config into local ~/.zshrc
fresh Reload ~/.zshrc
ali Show all active aliases
rsy rsync with progress display
p10 Launch Powerlevel10k configurator
ls / ll / la / sls colorls variants

Uninstall

./uninstall_zsh_setup.sh

Screenshots

Before After
Before After

Author

StianNOR


Disclaimer ⚠️

Provided as-is for supported Linux distributions. Always back up important data before running scripts. The author accepts no responsibility for data loss or damage. Test in a VM if unsure.

Description
No description provided
Readme 203 KiB
Languages
Shell 100%