4

I wish to inspect and edit the binary files in ~/.local/share/gvfs-metadata/. I would like to know what hidden information these binary files contain because they seem to divert my GTK applications (such as Evince) from default behavior. What tool can I use to inspect and edit these binary files?

By blind experimentation, I have discovered that if I simply delete all the contents of ~/.local/share/gvfs-metadata/, a GTK application like Evince will resume default behavior, which is nice; but, obviously, this is not the right way to do it. So, what is the right way?

I see lots of commands like gvfs-cat(1) and gvfs-mime(1), but cannot figure out what any of these commands have to do with inspecting or editing the aforementioned hidden information. Even if I could just get a human-readable dump (in XML, or whatever) of the binary files, I'd at least know what question to ask next; but the files just sit there, imperturbable.

Further information: my $XDG_DATA_DIRS seems to be set to /usr/share/xfce4:/usr/local/share/:/usr/share/:/usr/share. My OS distribution is probably not relevant, but if it is: I run Debian jessie 8.

2
  • I finally can comment! Did you try the given program?
    – WGRM
    Commented Mar 6, 2020 at 19:35
  • What I want to know is what the hell this data is doing in .local/share , which just like /usr/share and /usr/local/share is supposed to hold static data -- or mostly static at least. I have/had some scripts that track the contents of .local to record installs of software there, and the scripts get confused by changes beyond my control :( . Would anything bad happen if I just move the gvfs-metadata subdirectory and replace it with a symlink ?
    – q.undertow
    Commented Aug 3, 2023 at 0:13

1 Answer 1

2

I've been wondering the same question, ever since. So i gave it another try just yet and look at this, i found a source:

https://github.com/minime2k10/GVFS-Metadata

I didn't check it nor did i try it. This might be the chance for you, to report to me. :)

Anyway. If you just wanna know what it stored, you will have to call the specific command for a given file. Since all information are file related, you dont call for all entries in the db. You call for the attributes stored for a given file:

gio info --attributes=metadata:: /path/to/file

or if you want to edit them

gio set --type=string /path/to/file metadata::WHICH "Here a string value"

while you can get a list via

gio info --query-writable /path/to/file

Also have a look at "GVFS metadata: Shellbags for Linux" in duck.com or google.com.

I hope you have some ideas, now.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .