Morphball is a high-performance, first-principles drop-in replacement for standard archive managers like 7zip, winrar, and gzip. Written entirely in Rust, it provides secure, parallelized compression and extraction via a clean command-line interface (CLI) and an interactive terminal UI (TUI).
morphball-core: The underlying library handling parallel walking, archiving, and extraction.morphball: 7z-styled drop-in command-line tool with colorized progress indicators.morphball-tui: Dual-pane, interactive visual file explorer and archive utility.- Supported Formats:
.zip,.7z(LZMA), and.tar.gz/.tgz.
- Unix-Philosophic: Modular crates built with single-purpose functions capped under 250 lines.
- Multi-threaded Speed: Built-in work-stealing parallelism powered by
rayon. - Standard Compatibility: Supports 7z-style single-character flags (
a,x,l). - Built-in Security: Hardened against zip-slip and path-traversal attacks.
- Password Encryption: Cryptographic support for ZIP and 7z containers.
Add the official APT repository and install the packages:
# 1. Download the repository GPG keyring
sudo curl -fsSL https://ubermetroid.github.io/packages/apt/ubermetroid-keyring.gpg -o /etc/apt/trusted.gpg.d/ubermetroid.gpg
# 2. Download the sources list configuration
sudo curl -fsSL https://ubermetroid.github.io/packages/apt/ubermetroid.list -o /etc/apt/sources.list.d/ubermetroid.list
# 3. Refresh the package index and install
sudo apt update
sudo apt install morphballAdd the official DNF repository and install the packages:
# 1. Download the repository configuration
sudo curl -fsSL https://ubermetroid.github.io/packages/rpm/ubermetroid.repo -o /etc/yum.repos.d/ubermetroid.repo
# 2. Refresh the package database and install
sudo dnf check-update
sudo dnf install morphballcargo install --git https://github.com/UberMetroid/morphball.git --bin morphball
cargo install --git https://github.com/UberMetroid/morphball.git --bin morphball-tuiPack a file or folder into an archive:
morphball a <source_folder_or_file> <output_archive.7z>- With password encryption:
morphball a source.txt secure.zip -p mypassword
- Securely prompt for password:
morphball a source.txt secure.7z -P
Extract an archive into a destination folder:
morphball x <archive_file> [destination_folder](If no destination is specified, it extracts to the current directory).
- Extract password-protected archive:
morphball x secure.7z -p mypassword
View files and directories contained in an archive without extracting:
morphball l <archive_file>Launch the dual-pane terminal interface to browse folders and manage files visually:
morphball-tuiTab: Switch panes.Up / Down: Select items.C: Compress the selected folder/file.X: Extract the selected archive.Q/Esc: Quit.
Licensed under the Apache License, Version 2.0. Copyright 2026 UberMetroid.