I wave my fist at the sky every time I have to laboriously type
needsPackage("PkgName", FileName => ".../PkgName.m2")
I mean, the whole /PkgName.m2 part is unnecessary (not to mention FileName ...)
Solution: add option Prefix that accepts a directory and deprecate FileName (i.e. still accept it but maybe don't mention it in the documentation).