$ sudo apt-file update
[sudo] password for purism:
Get:1 https://repo.pureos.net/pureos byzantium InRelease [5,851 B]
Get:2 https://repo.pureos.net/pureos byzantium-updates InRelease [4,580 B]
Get:3 https://repo.pureos.net/pureos byzantium-security InRelease [4,581 B]
Fetched 15.0 kB in 8s (1,938 B/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
$ sudo apt-file search gnome-extensions
Finding relevant cache files to search ...E: The cache is empty. You need to run "apt-file update" first.
$
I think apt-file has never worked in PureOS, unfortunately, I think it is due to packages being stored in a different way than what apt-file expects. Same thing with the command-not-found package, for the same reason, I think. At least that’s what it seemed like to me when I tried to look into it a long time ago, I could be wrong.
Perhaps it would be better to remove the package from the PureOS repo, no point in having it available to install when it does not work.
Edit: the workaround for me is to run apt-file on another Debian-based OS where it works. The results (like what package provides a certain command) are usually applicable in PureOS.