What do you mean by 'plugins'? By the sound of it (.pm files) they should always be accessible via 'use' or 'require' as long as they exist relative to Foo.pm. In your answer to atcroft, I still see nothing that is not already accomplished by default in a normal module installation -- namely, relying on @INC to do the right thing with 'use' or 'require'.