How to specify path for additional packages in the LaTeX file itself?
For graphics, you use \graphicspath{{a}{b}}, and then \includegraphics{file} finds b/file.pdf. EDIT: it should be \graphicspath{{a/}{b/}}, with slashes at the end.
For \input, you use \def\input@path{{a}{b}}, and then \input{file} finds b/file.tex. EDIT: \def\input@path{{a/}{b/}} is the answer, with slashes at the end.
Can I use a similar construction for \usepackage, so that \usepackage{mystuff} would find b/mystuff.sty?
I know I can mess up with system configuration or environment variables, but I prefer to specify this in the file itself, so that my files could be compiled on another computer.
I know that I can simply use \usepackage{b/mystuff}, but it generates a warning You have requested b/mystaff but the package provides mystuff, and it is less portable -- for example, it requires knowing in which specific folder mystuff.sty is.