A related hint from me (which should get a more prominent place in the docs):
- Hugo uses a /tmp dir for the cache if cace dir is not set (in config.toml or environment)
- Go downloads the modules and write protects all directories
- On MacOS I have experienced some occasional issues which I guess relates to MacOS trying to clean out these directories, but only partly succeeds.
- Setting HUGO_CACHEDIR os env variable to something outside /tmp is the solution to the above. It’s also in general a good thing.