Hi Pierre, I tried the wip-filesearch branch. Nice work! :-) persist-all-local-packages takes around 350 seconds on my machine (slow machine with spinning disk) and the database is 50 MB. Some other comments follow. - Maybe, we shouldn't index hidden files, particularly all the .xxx-real files created by our wrap phases. - You should use SQL prepared statements with sqlite-prepare, sqlite-bind, etc. That would correctly handle escaping special characters in the search string. Currently, searching for "transmission-gtk", "libm.so", etc. errors out. - Searching for "git perl5" works as expected, but searching for "git perl" returns no results. I think this is due to the tokenizer used by the full text search indexer. The tokenizer sees the word "perl5" as one indivisible token and does not realize that "perl" is a prefix of "perl5". Unfortunately, I think this is a fundamental problem with FTS -- one that can only be fixed by using simple LIKE patterns. FTS is meant for natural language search where this kind of thing would be normal. - I guess you are only indexing local packages now, but will include all packages later by some means. Cheers!