Just noticed this old bug report. In my opinion it's a bug in the kpathsea library (which is linked statically in bibtex and is not included in the kpathsea package, but in the kpathsea package source).
You can verify this behaviour by using kpsewhich (included in package kpathsea): ernie:~$ touch /tmp/foo.bst ernie:~$ KPATHSEA_DEBUG=8 TEXMFCNF=. TEXINPUTS=/tmp kpsewhich foo.bst kdebug:Search path for .cnf files (from TEXMFCNF environment variable) [...] kdebug:Search path for .bst files (from compile-time paths.h) kdebug: = .:/bibtex/bst:/usr/lib/texmf/bibtex/bst kdebug: before expansion = .:$texmfloc/bibtex/bst:/usr/lib/texmf/bibtex/bst kdebug: font override var applies = 0 kdebug: application config file path = (none) kdebug: texmf.cnf path = (none) kdebug: compile-time path = .:$texmfloc/bibtex/bst:/usr/lib/texmf/bibtex/bst kdebug: suffix = .bst kdebug: search only with suffix = 0 kdebug: runtime generation program = (none) kdebug: extra program args = (none) BSTINPUTS gets used correctly: ernie:~$ KPATHSEA_DEBUG=8 TEXMFCNF=. BSTINPUTS=/tmp kpsewhich foo.bst kdebug:Search path for .cnf files (from TEXMFCNF environment variable) [...] kdebug:Search path for .bst files (from BSTINPUTS environment variable) kdebug: = /tmp kdebug: before expansion = /tmp kdebug: font override var applies = 0 kdebug: application config file path = (none) kdebug: texmf.cnf path = (none) kdebug: compile-time path = .:$texmfloc/bibtex/bst:/usr/lib/texmf/bibtex/bst kdebug: suffix = .bst kdebug: search only with suffix = 0 kdebug: runtime generation program = (none) kdebug: extra program args = (none) ernie:~$ dpkg -l kpathsea Desired=Unknown/Install/Remove/Purge | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-===============-==============-============================================ ii kpathsea 2.6-2 Path searching for TeX & friends Regards Herbert.