Eu acho que você quer usar o módulo xdg - na verdade, acho que isso é sugerido em pelo menos um dos workshops de showdown de aplicativos.
O módulo xdg fornece um meio para obter um caminho base para onde determinados arquivos devem ser armazenados.
Assim, para arquivos temporários, ~/.cache
parece uma boa aposta.
$ XDG_CACHE_HOME define o diretório base relativo ao qual os arquivos de dados não essenciais específicos do usuário devem ser armazenados. Se $ XDG_CACHE_HOME não estiver definido ou vazio, um padrão igual a $ HOME / .cache deverá ser usado.
Exemplo:
import xdg.BaseDirectory
import os
temp_path = os.path.join(xdg.BaseDirectory.xdg_cache_home, 'app_name', 'downloads')
print temp_path