Add .asar support #323

Open
opened 2026-01-29 22:10:08 +00:00 by claunia · 4 comments
Owner

Originally created by @lanzorg on GitHub (Sep 8, 2018).

It would be great if sharpcompress could handle .asar archives.

Originally created by @lanzorg on GitHub (Sep 8, 2018). It would be great if sharpcompress could handle .asar archives.
claunia added the enhancementup for grabs labels 2026-01-29 22:10:09 +00:00
Author
Owner

@adamhathcock commented on GitHub (Sep 9, 2018):

It’s for electron? https://github.com/electron/asar/

I’ll look into it. Looks simple enough, unlike Tar :)

@adamhathcock commented on GitHub (Sep 9, 2018): It’s for electron? https://github.com/electron/asar/ I’ll look into it. Looks simple enough, unlike Tar :)
Author
Owner

@lanzorg commented on GitHub (Sep 9, 2018):

Yes, it is.
Glad to know this would be "easily" possible. :)

@lanzorg commented on GitHub (Sep 9, 2018): Yes, it is. Glad to know this would be "easily" possible. :)
Author
Owner

@adamhathcock commented on GitHub (Sep 11, 2018):

The hard part is that someone would need to port Pickle to C#
https://github.com/electron-archive/node-chromium-pickle

The essentially has a Pickled JSON dictionary at the header then a series of bytes afterward. The dictionary contains all the offsets for the files in the archive.

@adamhathcock commented on GitHub (Sep 11, 2018): The hard part is that someone would need to port Pickle to C# https://github.com/electron-archive/node-chromium-pickle The essentially has a Pickled JSON dictionary at the header then a series of bytes afterward. The dictionary contains all the offsets for the files in the archive.
Author
Owner

@roy-tate commented on GitHub (Nov 13, 2018):

I haven't personally tested this, but Razorvine.Pyrolite implements Pickle for a limited mapping of Python objects. It is on GitHub, MIT licensed, targets .Net Standard 2.0, and the documentation explicitly says that the pickle and un-pickle (Protocol 2) can be used stand-alone (Razorvine.Pyrolite/Pickle)

@roy-tate commented on GitHub (Nov 13, 2018): I haven't personally tested this, but **Razorvine.Pyrolite** implements Pickle for a limited mapping of Python objects. It is on GitHub, MIT licensed, targets .Net Standard 2.0, and the documentation explicitly says that the pickle and un-pickle (Protocol 2) can be used stand-alone ([Razorvine.Pyrolite/Pickle](https://github.com/irmen/Pyrolite/tree/master/dotnet/Razorvine.Pyrolite/Pyrolite/Pickle))
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/sharpcompress#323