use caches.getwritablepath