Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. httm

httm

MPL-2.0Rust0.50.2

Interactive CLI tool to browse, search, and restore file versions from ZFS/btrfs/nilfs2 snapshots, Time Machine, and Restic backups.

Visit WebsiteGitHubGitHub
1.7k stars35 forks0 contributors

What is httm?

httm is a command-line utility that provides Time Machine-like functionality for browsing and recovering files from various snapshot systems. It enables users to interactively explore, compare, and restore previous versions of files from ZFS, btrfs, nilfs2 snapshots, Time Machine backups, and Restic repositories. The tool makes snapshot management more intuitive by offering multiple interactive modes and supporting both local and remote snapshot sources.

Target Audience

System administrators, DevOps engineers, and advanced users who manage filesystems with snapshot capabilities (ZFS, btrfs, nilfs2) or use backup systems like Time Machine and Restic. It's particularly useful for those who need to recover deleted files or compare file versions across snapshots.

Value Proposition

Developers choose httm over alternatives because it provides a unified, interactive CLI interface for multiple snapshot systems, supports both local and remote snapshots, and offers advanced features like guarded restores, roll-forward operations, and flexible preview options. Its speed and ability to work with non-native filesystems (like ext4, XFS, NTFS via rsync) make it more versatile than filesystem-specific tools.

Overview

Interactive, file-level Time Machine-like tool for ZFS/btrfs/nilfs2 (and even Time Machine and Restic backups!)

Use Cases

Best For

  • Recovering deleted files from snapshot systems, even those hidden behind deleted directories
  • Interactively browsing and comparing file versions across ZFS, btrfs, nilfs2, Time Machine, and Restic snapshots
  • Managing snapshot-based file recovery with safety features like precautionary snapshots and roll-forward operations
  • Working with remote snapshot sources (like SMB shares) and locally replicated snapshots
  • Converting snapshot file versions into archives (tar, git) for backup or analysis
  • Automating snapshot creation and file version tracking with wrapper scripts like ounce and nicotine

Not Ideal For

  • Users who exclusively rely on graphical interfaces for file management and recovery tasks
  • Environments without any configured snapshot systems (ZFS, btrfs, etc.) or backup tools like Time Machine
  • Cross-platform teams requiring seamless Windows support, as Windows builds are not a priority
  • Simple, one-off file recovery where basic tools like cp or restore suffice without interactive features

Pros & Cons

Pros

Multi-Snapshot System Support

Works with ZFS, btrfs, nilfs2 snapshots, Time Machine backups, and Restic repositories, providing a unified CLI for diverse snapshot sources without filesystem lock-in.

Interactive Snapshot Browsing

Offers four native interactive modes (browse, select, prune, restore) for intuitive exploration and recovery, transforming snapshot management with fast, keyboard-driven workflows.

Deep Deleted File Recovery

Recursively lists deleted files, even those hidden behind deleted directories, enabling recovery from complex snapshot hierarchies that standard tools might miss.

Safety-Enhanced Operations

Includes guarded restores with precautionary snapshots and roll-forward options to avoid destroying interstitial snapshots, adding a layer of data protection during recovery.

Cons

Complex Installation Process

Installation often requires building from source or managing platform-specific packages, with caveats like needing musl on old libc systems and optional script dependencies for full functionality.

Limited Cross-Platform Support

Primarily tested on Unix-ish platforms (Linux, FreeBSD, MacOS); Windows support is not a priority, making it unsuitable for heterogeneous environments without workarounds.

Permission and Dependency Overhead

Requires sudo for operations on some snapshot systems and depends on optional scripts like bowie for preview features, adding setup and maintenance complexity.

Frequently Asked Questions

Quick Stats

Stars1,658
Forks35
Contributors0
Open Issues5
Last commit8 days ago
CreatedSince 2022

Tags

#restic#version-control#unix#unix-shell#command-line-tool#cli-tool#shell#snapshot-management#file-recovery#btrfs#interactive-cli#zfs#rust#backup-utility#unix-command#zsh

Built With

R
Rust

Links & Resources

Website

Included in

Rust56.6k
Auto-fetched 8 hours ago

Related Projects

BatBat

A cat(1) clone with wings.

Stars60,389
Forks1,643
Last commit3 days ago
fdfd

A simple, fast and user-friendly alternative to 'find'

Stars44,334
Forks1,130
Last commit19 hours ago
nushellnushell

A new type of shell

Stars40,442
Forks2,244
Last commit1 day ago
zoxidezoxide

A smarter cd command. Supports all major shells.

Stars39,238
Forks891
Last commit12 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub