The Linux build of Signal does save all data to ~/.config (does it use $XDG_CONFIG_HOME?). With respect to the XDG Base Directory Specification, the config file directory should be used in the same way as /etc in the FHS standard. Instead, Signal also uses it to store data such as attachments (pictures, etc) or messages. With respect to the XDG Base Directory Specification this kind of data should be stored in $XDG_DATA_HOME(default: ~/.local/share) or $XDG_CACHE_HOME (default: ~/.cache), where $XDG_DATA_HOME seems to be the appropriate location to me, since the data cannot be restored from remote.
I have stumbled across this behaviour since the directory ~/.config in my backup was growing very fast and a deeper look revealed that Signal was using about 99% of the disk space in this folder.
Operating System:
Linux
Yes, I noticed this too recently, but I want to stress, that $XDG_CACHE_HOME would be the wrong place to put this data, as the cache is strictly for ephemeral data only, which Signal's data is most certainly not. The correct place to put this is under $XDG_DATA_HOME, which is ~/.local/share by default.
Most helpful comment
Yes, I noticed this too recently, but I want to stress, that
$XDG_CACHE_HOMEwould be the wrong place to put this data, as the cache is strictly for ephemeral data only, which Signal's data is most certainly not. The correct place to put this is under$XDG_DATA_HOME, which is~/.local/shareby default.