TeX/LaTeX Input Paths
If you want to use tex/latex packages that are not installed system-wide on your machine, you can install them into any directory that is part of the TeX/LaTeX input path to which you have write access or you can add new directory to your input path.
Adding a package into your TeX/LaTeX input path
You can check your TeX input path with kpsepath tex which will probably contain $HOME/texmf, add your package to directory there and then run texhash to rebuild the index:
cp newpackage ~/texmf/tex/ texhash
Adding a directory to your Tex/LaTeX input path
This is just like adding to any other PATH-like environment variable. You might want this approach if you, for example, mount an NFS share or access an AFS shared directory that contains your desired packages. If the directory containing the Tex packages is /share/tex/packages:
export TEXINPUTS=.:/share/tex/packages