Caleb Gardner
7a22538623
Finishing touches?
2022-08-26 05:01:17 -05:00
Caleb Gardner
83dfa77b7d
Potential workaround for poor zstd performance
...
Performance is still not great, but better
2022-06-21 01:09:33 -05:00
Caleb Gardner
49595de3f2
Re-wrote metadata reader. Seems to work now.
...
Need to work on test now.
2022-06-18 14:31:17 -05:00
Caleb Gardner
9ac8fef3b2
Fixing issues
2022-06-18 06:30:04 -05:00
Caleb Gardner
cde6a265a1
Started work on proper tests.
...
STILL HAVING STUPID UNEXPLAINABLE NIL POINTERS.
2022-06-18 01:32:51 -05:00
Caleb Gardner
16ef5838c3
Move changes from exp2 to main
...
This is largely a move to simplify a lot of the readers
Also further breaks out functions.
2022-05-10 01:12:13 -05:00
stffabi
c988309edc
Support reading "." for fs.FS
2021-12-02 13:43:18 +01:00
Caleb Gardner
e8a8c531a9
Tweaks to make FromReader work
2021-09-27 01:27:58 -05:00
Caleb Gardner
0402b0a2ee
Bringing rawreader from expiremental branch.
...
Now allows creation of a squashfs.Reader from an io.Reader
2021-09-26 18:30:08 -05:00
Caleb Gardner
305f261d10
Add Lzo decompressor and Xz decompressor with filters
2021-09-12 05:26:47 -05:00
Caleb Gardner
7f5fa3ba1f
Some quick fixes for "correctness"
2021-04-03 01:17:09 -05:00
Caleb Gardner
d89153c3e2
Finished io/FS interface
2021-01-30 06:30:00 -06:00
Caleb Gardner
3f1b2a8d1e
Restructure for 1.16 io/fs interface
2021-01-29 12:55:57 -06:00
Caleb Gardner
dd08d3516d
Reader will now check BlockLog
2021-01-20 14:10:14 -06:00
Caleb Gardner
69f56d6951
Working on how to actually write the archive.
...
Made SuperblockFlags public so you can set options when writing
2021-01-16 15:42:55 -06:00
Caleb Gardner
4187598783
A couple of fixes.
...
GetChildrenRecursively is no longer threaded so it's more consistent
Fixed GetFileAtPath, specifically when getting the root dir
2021-01-15 10:57:03 -06:00
Caleb Gardner
9cf92c4916
Removed some shadowed values (thanks gopls)
2021-01-13 11:45:10 -06:00
Caleb Gardner
dcf59a4261
The root inode is now only initialized once.
...
Privated File.Reader because it really shouldn't be public.
2021-01-12 01:43:03 -06:00
Caleb Gardner
4b3d5d12f8
Setup for differnet types of compression for Writer
...
Added some TODOs
2021-01-08 14:35:32 -06:00
Caleb Gardner
9524a2c192
More work on Writer
2021-01-02 17:10:21 -06:00
Caleb Gardner
47c28baf87
Improved data structure for structs.
...
Thanks gopls with VS Code
2020-12-28 11:50:56 -06:00
Caleb Gardner
d63ba47818
Added Reader.ModTime
2020-12-11 01:39:08 -06:00
Caleb Gardner
6dfcb1cf80
Merge branch 'main' of https://github.com/CalebQ42/squashfs into main
2020-12-10 08:52:58 -06:00
Caleb Gardner
c7593eaff3
Added Reader.ExtractTo for ease of use
2020-12-10 08:52:49 -06:00
Caleb Gardner
5c3bf8d528
Implemented the rest of the compression types
...
Haven't implemented LZO due to limited libraries
2020-12-09 01:40:30 -06:00
Caleb Gardner
89b0a41ab9
Figured out it was the filters for XZ that was causing problems
...
Added lzma and xz decompression.
Renamed Zlib to Gzip
2020-12-04 05:36:58 -06:00
Caleb Gardner
a894e2efb9
Removed XZ compression.
...
When testing the archlinux, xz compression couldn't seem to extract ANY files.
Testing extraction with the appimage works though. So that's good.
2020-12-02 01:56:24 -06:00
Caleb Gardner
fef7bec20d
Extracting is mostly finished.
...
Fixed reading metadata and data blocks that are the exactly correct size
2020-12-02 01:05:31 -06:00
Caleb Gardner
28bb0f873a
Things just aren't working right now...
...
Had to re-write a seemingly fine for loop because it wouldn't increment
Extracting just isn't working right now.
I'm waaaay too tired for this right now, lol.
2020-12-01 15:29:25 -06:00
Caleb Gardner
e302d98665
Further work on extracting
...
Extracting files is threaded with goroutines.
Extracting also sets the proper UID and GUID
Made recursive children getting threaded with goroutines
Decided I will allow wildcards in paths. Hasn't been implemented though.
Fixed issues with ExtendedDirectory reading (I was using a uint16 instead of a uint32)
I couldn't test basically any of this. somehow a for loop isn't incrementing. For seemingly no reason.
2020-12-01 06:14:09 -06:00
Caleb Gardner
c5c6291643
Some more work on ExtractTo
...
Added Xz compression support
Started testing using a big squashfs fil (particularly the squashfs from an Arch Linux install img)
2020-11-30 03:53:57 -06:00
Caleb Gardner
c5f1962e72
Some documentation changes
2020-11-29 03:07:34 -06:00
Caleb Gardner
e20213c3f7
Reorganization.
2020-11-28 05:03:56 -06:00
Caleb Gardner
cea69188d4
Symlink file support
...
You can get the path that the symlink is pointing to, AND get the squashfs.File for it.
You can also now give a path FROM a given squashfs.File directory.
2020-11-28 02:22:48 -06:00
Caleb Gardner
23ec7ea6dd
First version of File interface.
...
This will allow you to easily find and extract files.
Extraction of whole folders coming next. (Maybe)
2020-11-27 00:36:21 -06:00
Caleb Gardner
8358cb2805
Added a couple ways to find a particular file.
2020-11-26 09:16:55 -06:00
Caleb Gardner
9471b93ead
Working on a better API to interact with squashfs
...
New API uses a File that can hold more information.
2020-11-26 03:47:44 -06:00
Caleb Gardner
426903a222
Renamed library to squashfs for ease of use
2020-11-25 10:51:59 -06:00
Caleb Gardner
afbc991f60
Made most functions private.
...
This will probably be the first version of the library.
2020-11-25 08:27:15 -06:00
Caleb Gardner
af36f9b9aa
Documentation!
...
Though may functions/structs will be made private, I still want things documented.
2020-11-25 01:15:54 -06:00
Caleb Gardner
5761ad59cf
Renamed BlockReader to MetadataReader (more correct)
...
SOME work on fragments (not working still...)
2020-11-23 16:50:00 -06:00
Caleb Gardner
ae2cc5ab54
Working on fragments
2020-11-23 06:44:39 -06:00
Caleb Gardner
fe0f4ef05f
Working on reading data.
...
Set up go modules
2020-11-20 03:59:38 -06:00
Caleb Gardner
7a2f9a87ba
Re-wrote a bunch to try to figure out why things weren't working.
...
Turned out I was reading if a block was compressed exactly opposite.
Started to work more on looking up dirs.
2020-11-16 14:56:19 -06:00
Caleb Gardner
dbf7e9465a
Directorty table info parsing.
...
Futher work on reading data.
2020-11-13 04:47:54 -06:00
Caleb Gardner
78c35cf720
Further work on Inode
2020-11-12 09:50:52 -06:00
Caleb Gardner
89b19b06f6
more work on decompression
2020-11-10 22:31:21 -06:00
Caleb Gardner
ac2b6da841
Got my reader done?
2020-11-10 13:23:00 -06:00
Caleb Gardner
1d641259b2
Somre more stuff for parsting
...
Working on metadata parsing
Runnning into some Reader issues so I might create my own.
2020-11-10 11:25:56 -06:00