Adam Hughes 2230a449ec fix: use fs interfaces in type assertions
Previous code would panic due to invalid type assertions (presumably due
to change of type returned by func Sub). Switching to relevant fs
interface types fixes the issue and should work going forward, even if
the type is changed.

Signed-off-by: Adam Hughes <9903835+tri-adam@users.noreply.github.com>
2022-08-26 15:10:51 +00:00
2021-12-31 00:35:04 -06:00
2020-11-08 11:41:05 -06:00
2022-08-26 05:01:17 -05:00
2022-08-26 05:01:17 -05:00
2020-11-08 11:06:38 -06:00
2022-06-18 06:30:04 -05:00
2022-06-19 00:32:33 -05:00
2022-06-21 01:25:00 -05:00
2022-06-18 01:32:51 -05:00

squashfs (WIP)

PkgGoDev Go Report Card

A PURE Go library to read and write squashfs.

Currently has support for reading squashfs files and extracting files and folders.

Special thanks to https://dr-emann.github.io/squashfs/ for some VERY important information in an easy to understand format. Thanks also to distri's squashfs library as I referenced it to figure some things out (and double check others).

TODO

Limitations

  • No Xattr parsing. This is simply because I haven't done any research on it and how to apply these in a pure go way.

Performance

This library, decompressing the Firefox AppImage and using go tests, takes about twice as long as unsquashfs on my quad core laptop. (~1 second with the library and about half a second with unsquashfs).

My recents tests have shown the Firefox AppImage might be an outlier and this library might be considerably slower (4x ~ 6x time slower then unsquashfs)

S
Description
A Go library to read squashfs archives.
Readme MIT 15 MiB
2026-03-08 06:11:15 -05:00
Languages
Go 100%