squishy

Crates.iosquishy
lib.rssquishy
version
sourcesrc
created_at2024-11-08 02:43:47.700457
updated_at2024-11-10 13:07:15.587849
descriptionA convenient high level library for reading SquashFS files
homepage
repositoryhttps://github.com/pkgforge/squishy-rs
max_upload_size
id1440751
Cargo.toml error:TOML parse error at line 18, column 1 | 18 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
Rabindra Dhakal (QaidVoid)

documentation

README

🗜️ Squishy

License: MIT

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:

[dependencies]
squishy = "0.1.0"

Example

use squishy::SquashFS;
use std::path::Path;

// Open a SquashFS file
let squashfs = SquashFS::from_path(&Path::new("example.squashfs"))?;

// List all entries
for entry in squashfs.entries() {
    println!("{}", entry.path.display());
}

// Read a specific file
let contents = squashfs.read_file("path/to/file.txt")?;

// Extract a file
squashfs.write_file("source/path.txt", "destination/path.txt")?;

License

This project is licensed under the [MIT] License - see the LICENSE file for details.

Commit count: 9

cargo fmt