Fix Bug 390830 = Prevent indexing of Plasma vaults and other fuse filesystems
Open, HighPublic

michaelh created this task.Feb 23 2018, 7:31 PM
michaelh triaged this task as High priority.
michaelh moved this task from Backlog to Bugs on the Baloo board.Mar 2 2018, 4:40 PM

How does tracker handle file systems?

General strategy:

  1. Have a config with black- or white-listed filesystems (fuse.*)
  2. Connect to Solid to receive a signal when /etc/mtab changes
  3. On mounts add mountpoint to baloo's excludedFolders cache
  4. On unmounts do nothing

Status quo:

  • Failing unit test: Done (create a temporary vault and mount it)
  • Implementation: Lacking (Cannot receive appropiate signal yet)
michaelh renamed this task from Fix BUG:390830 to Fix Bug 390830 = Prevent indexing of Plasma vaults and other fuse filesystems.Mar 16 2018, 9:53 PM
michaelh claimed this task.
bruns added a subscriber: bruns.Mar 31 2018, 12:57 AM

What's wrong with a .balooignore file in the root of the vault? Tracker uses .trackerignore.

If you want a manual workaround, just add the vault path to excludeFolders.
If you want a proper fix, handle encfs etc. properly in baloo.

The default path for vaults to be mounted to is ~/Vaults; a naive solution would be to ship Baloo with an exclude rule for ~/Vaults. A slightly smarter approach would be for Plasma Vaults itself to add such a rule for whatever mountpoint is chosen during new vault creation.

bruns added a comment.Sep 26 2018, 1:23 PM

As a stopgap measure blacklisting ~/Vaults is probably ok.
Long term, blacklisting *all* encrypted file systems IMHO is the way to go, as this is an information leakage.
Of course, if the complete home is encrypted, i.e. content and index reside in the same encrypted volume, home should still be indexed.

In T8066#161715, @bruns wrote:

As a stopgap measure blacklisting ~/Vaults is probably ok.
Long term, blacklisting *all* encrypted file systems IMHO is the way to go, as this is an information leakage.
Of course, if the complete home is encrypted, i.e. content and index reside in the same encrypted volume, home should still be indexed.

+1, this all sounds sane to me.

@smithjd, since I know you expressed interest in interested in fixing this issue, would you like to become the assignee of this task and implement the following:

  • Short-term: by default, ship an exclude entry for ~/Vaults
  • Long-term: don't index anything in an encrypted volume that doesn't have the index located in it
  • Super long term: split the index so that it can live in multiple locations, and store an encrypted disk's index inside that disk, then allow the contents to be indexed again

Does this sound sane?

A slightly smarter approach would be for Plasma Vaults itself to add such a rule for whatever mountpoint is chosen during new vault creation.

What about exposing these config options on dbus? ("includeFolders"),("excludeFolders")

That would make for 4 new entries (add/remove for each) on the org.kde.baloo.main interface.

A slightly smarter approach would be for Plasma Vaults itself to add such a rule for whatever mountpoint is chosen during new vault creation.

What about exposing these config options on dbus? ("includeFolders"),("excludeFolders")

That would make for 4 new entries (add/remove for each) on the org.kde.baloo.main interface.

I'm not technically knowledgeable to offer an opinion on that, so I will defer to @bruns.