So this is interesting, this directory inside the snap is actually a bind mount from the host system, so what I would be curious to see is if you make this directory temporarily empty and then re-run things if it works. We have talked about getting rid of or otherwise disabling this mounting code in snapd because most snaps now shouldn’t need it since they will be using their own snap-private font caches, so perhaps we need to do that.
Can you try the following and see what happens:
snap disable chromium
sudo mount -t tmpfs tmpfs /var/cache/fontconfig
snap enable chromium
snap run --shell chromium -c 'ls -lah /var/cache/fontconfig' # this should be an empty dir
snap run chromium # check if fonts work
# trigger a snapd refresh
snap refresh snapd --edge # or some other channel than what you are currently following
snap run chromium # check if fonts work now
# if fonts don't work, then try this:
sudo snap run --shell chromium -c 'FONTCONFIG_FILE="${SNAP_COMMON}/fontconfig/fonts.conf" "${SNAP_DESKTOP_RUNTIME}/usr/bin/fc-cache" --force --system-only --verbose'
snap run chromium # check fonts again
to undo the empty /var/cache/fontconfig above, do this:
sudo umount /var/cache/fontconfig