🗜️ Squishy
A convenient wrapper around the backhand library for reading and extracting files from SquashFS filesystems. Provides both a library and CLI tool.
Features
- Read and extract files from SquashFS filesystems
- Traverse filesystem entries
- Handle symlinks with cycle detection
- Search for files using custom predicates
Usage
Add this to your Cargo.toml:
[]
= "0.2.1"
Example
use ;
use Path;
// Open a SquashFS file
let squashfs = from_path?;
// List all entries
for entry in squashfs.entries
// Optionally, parallel read with rayon
use ParallelIterator;
for entry in squashfs.par_entries
// Write file entries to disk
for entry in squashfs.entries
// Read a specific file
// Note: the whole file content will be loaded into memory
let contents = squashfs.read_file?;
License
This project is licensed under the [MIT] License - see the LICENSE file for details.