Skip to content

Added support for voidtools everything DB#515

Merged
Miauwkeru merged 12 commits intofox-it:mainfrom
cobyge:feature/add-everything-plugin
Jul 14, 2025
Merged

Added support for voidtools everything DB#515
Miauwkeru merged 12 commits intofox-it:mainfrom
cobyge:feature/add-everything-plugin

Conversation

@cobyge
Copy link
Contributor

@cobyge cobyge commented Jan 26, 2024

Inspired by #505, I remembered I had some code lying around to parse the database of Voidtools Everything, very similar to mlocate/plocate, but for Windows.

I updated the code and added it to the codebase.
Because Everything is closed source, this is completely based off of reverse-engineering the code, and I haven't found any reference implementation on the internet to help (AFAIK this is the only parser), so this is all based off of my (not too great) reversing skills.
I've tested this on ~10 random database files I had lying around, from multiple computers, all of them have given exactly the same exact results as Everything itself (checked by exporting to CSV and comparing md5sums).
It should support any DB created since 2017, and if given a broken file, I'm willing to add support for earlier versions as well.

All comments are mine, written while reversing the code.

This is relatively slow code (takes 4.5 seconds for a DB with 126828 files),
I have a version written in Rust which is 22 times faster, and if that's something you are interested in, then I'm happy to try creating bindings with Py03.

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Added support for voidtools everything DB PR#515

6 participants