Well this is kind of embarrassing... presenting PyarrFS!

A while ago I presented PyarrFS - a RAR reading file system, which allows the user to transparently read RAR files as if they were normal directories and files. The embarrassing part is that it was hardly functional thanks to non-existent support for the seek() call. The tests I did back then only tried reading the first few bytes of a file and if that succeeded all was good. Since the OS reads 4096 byte or so by the first read() call, no seeking was ever performed and I never noticed my fatal flaw until actually trying it out in real life...


A typical PyarrFS user exposing her satisfaction with said file system! (image courtesy of cafepress.com)

Most files are probably larger than 4096 bytes and so I quickly learnt that seek() wasn't working. I've known this since the day that first version was released but never had the time to fix it... until now. It now relies on a patched version of rarfile, which you can also find in the SpriteLink git repository. The plan is probably to test the rarfile patch some more and then possible submit it to the upstream rarfile repo. I'm not sure whether it will be accepted (it is currently not that pretty), but I hope so.

Comments, suggestions and patches are always welcome.

You'll find PyarrFS here!

Comments