DOKK / manpages / debian 12 / tmperamental / tmperamental.1.en
TMPERAMENTAL(1) User Commands TMPERAMENTAL(1)

tmperamental - avoid writing to /tmp

tmperamental cmd arg1 arg2 ...

tmperamental uses a preloaded library that intercepts filesystem writes, and causes loud failures when writes are attempted on /tmp/*

The idea here is by setting TMPDIR and friends, it catches programs in the act of not respecting such env-vars.

Prefix the command you want to run with tmperamental and it should cause it to abort if it ever tries to write anywhere within /tmp. This is pretty brutal, so you probably only want to use it for testing.

If TMPDIR is unset, tmperamental will set it automatically to $HOME/tmp.

tmperamental uses LD_PRELOAD to load a custom library libtmperamental.so that intercepts library calls.

tmperamental only catches writes to /tmp at shared object library calls using the standard libc interface. A statically-compiled program that makes system calls directly will be able to write to /tmp without being intercepted.

March 2020 tmperamental 1.2