Skip to content

Visitors Platform Shell OMZ License Version

zsh-opensuse-tumbleweed

Master hub for the openSUSE Tumbleweed zsh ecosystem — a hub-and-plugin architecture built for daily Tumbleweed administration.

This repository is the entry point. Each hub groups related plugins. Plugins are independent — install only what you need.

Deployed and validated on a live openSUSE Tumbleweed system.


Architecture

zsh-opensuse-tumbleweed          ← Master hub (this repo)
│
├── zsh-manager                  ← Hub Action + Maintenance (dispatcher + unified menu)
│   │
│   ├── [Action]
│   │   ├── zsh-snap-new         ✅ v2.3
│   │   ├── zsh-snap-list        ✅ v3.2
│   │   └── zsh-snap-rollback    ✅ v1.3
│   │
│   └── [Maintenance]
│       ├── zsh-snap-compare     🔜 planned
│       ├── zsh-btrfs-scrub      🔜 planned
│       ├── zsh-btrfs-balance    🔜 planned
│       └── zsh-btrfs-health     🔜 planned
│
├── zsh-tools                    ← Hub system tools (planned)
│   ├── Zypper-Package-History-Logs  ✅ v5.1
│   ├── zsh-virsh                🔜 planned
│   ├── zsh-unbound              🔜 planned
│   ├── zsh-squid                🔜 planned
│   └── zsh-caddy                🔜 planned
│
└── zsh-monitoring               🔜 community repo
                                    Prometheus + Grafana + Loki + Alloy

Hub: zsh-manager

zsh-manager — unified dispatcher with short aliases and interactive menu (migration in progress: ex zsh-snap-man).

Action plugins

Plugin Version Description Command
zsh-snap-new v2.3 Guided interactive Btrfs snapshot creation — 7-step menu, 14 scenarios, disk usage check, dry-run snap-new · snap-n
zsh-snap-list v3.2 Colorized snapper listing — interactive menu, multi-config, filters, summary line snap-list · snap-l
zsh-snap-rollback v1.3 Safe guided rollback — target summary, [y/N] confirmation, dry-run mode, reboot reminder snap-rollback · snap-r

Maintenance plugins (planned)

Plugin Description Status
zsh-snap-compare Diff between two snapshots — status + diff, interactive ID selection Planned
zsh-btrfs-scrub Scrub with live status display — start, status, cancel Planned
zsh-btrfs-balance Balance with configurable thresholds — start, status, cancel, pause, resume Planned
zsh-btrfs-health Full health report — usage, qgroups, scrub status, snapshots Planned

Hub: zsh-tools

Available

Plugin Version Description Commands
Zypper-Package-History-Logs v5.1 Audit /var/log/zypp/history — color output, filters, package search, statistics zypper-history · zyp-dup

Planned

Plugin Description
zsh-virsh libvirt / KVM VM management shortcuts
zsh-unbound Unbound DNS management shortcuts
zsh-squid Squid proxy administration helpers
zsh-caddy Caddy web server helpers

zsh-monitoring (community)

Planned community repository for monitoring stack integration: Prometheus · Grafana · Loki · Alloy

Open to external contributions.


This repository — tumbleweed.zsh

A configuration file to source from ~/.zshrc. Contains zsh settings specific to openSUSE Tumbleweed:

Setting Value Reason
HISTSIZE 500 Keep last 500 commands in memory per session
SAVEHIST 500 Persist last 500 commands to ~/.zsh_history

Installation

1. This hub (shared zsh settings)

git clone https://github.com/crisis1er/zsh-opensuse-tumbleweed \
  ${ZSH_CUSTOM:-/home/crisis/.oh-my-zsh/custom}/zsh-opensuse-tumbleweed

Add to ~/.zshrc after source $ZSH/oh-my-zsh.sh:

source "${ZSH_CUSTOM:-/home/crisis/.oh-my-zsh/custom}/zsh-opensuse-tumbleweed/tumbleweed.zsh"

2. Action plugins (Oh My Zsh)

# zsh-snap-new — guided snapshot creation
git clone https://github.com/crisis1er/zsh-snap-new \
  ${ZSH_CUSTOM:-/home/crisis/.oh-my-zsh/custom}/plugins/snap-new

# zsh-snap-list — colorized snapper listing
git clone https://github.com/crisis1er/zsh-snap-list \
  ${ZSH_CUSTOM:-/home/crisis/.oh-my-zsh/custom}/plugins/snap-list

# zsh-snap-rollback — safe guided rollback
git clone https://github.com/crisis1er/zsh-snap-rollback \
  ${ZSH_CUSTOM:-/home/crisis/.oh-my-zsh/custom}/plugins/snap-rollback

Add chosen plugins to plugins=() in ~/.zshrc:

plugins=(... snap-new snap-list snap-rollback)

3. Zypper tools

# zypper-history — audit tool
sudo curl -o /usr/local/bin/zypper-history \
  https://raw.githubusercontent.com/crisis1er/Zypper-Package-History-Logs/main/zypper-history
sudo chmod +x /usr/local/bin/zypper-history

# zyp-dup — safe zypper dup wrapper
sudo curl -o /usr/local/bin/zyp-dup \
  https://raw.githubusercontent.com/crisis1er/Zypper-Package-History-Logs/main/zyp-dup
sudo chmod +x /usr/local/bin/zyp-dup

Reload:

source /home/crisis/.zshrc

Short aliases (DEC-016)

Alias Command Description
snap-m snap-man Dispatcher — unified entry point
snap-n snap-new Create a snapshot
snap-l snap-list List snapshots
snap-r snap-rollback Rollback to a snapshot
snap-c snap-compare Compare two snapshots
snap-d snap-del Delete a snapshot

Design decisions

  • Hub-and-plugin architecture (DEC-018) — hubs dispatch to independent plugins; each hub has a man page, each plugin has man + help
  • One repo per plugin — independent install, independent contribution, independent versioning
  • This hub as master entry point — one place to discover the full ecosystem
  • Incremental — use only what you need; plugins do not depend on each other
  • Validated on a live system — every tool is tested on a real openSUSE Tumbleweed rolling release
  • GPL-3.0 — all repositories in this ecosystem are licensed under GPL-3.0

About

Central Oh My Zsh configuration hub for openSUSE Tumbleweed — zsh settings, history, and plugin ecosystem

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages