2015-12-22 12 views
0

У меня есть свой личный пример perl, используя perlbrew и локальный экземпляр cpan. Я приложил немного усилий, чтобы заставить cpan работать для моей локальной установки. Я настроил код и протестировал его с помощью этого perl.Могу ли я безопасно клонировать perl lib в другое место на компьютере?

Теперь я хочу, чтобы кто-либо на компьютере мог использовать код Perl, который я написал, что означает, что модули cpan, которые я использовал, доступны всем, даже тем, которые не могут получить доступ к моему домашнему каталогу.

К сожалению, я не могу настроить и использовать cpan в качестве пользователя root. Есть несколько причин, по которым это было бы сложно, но самым большим является то, что я использую свой личный сертификат для аутентификации себя как часть подключения к репозиторию CPAN (необходимо из-за конфигурации системы). Я не хочу, чтобы мой сертификат был доступен каждому для подключения к CPAN.

Мне интересно, вместо того, чтобы исправить корневой экземпляр cpan и пытаться выследить все модули, которые я использую с помощью cpan, я могу просто скопировать модули, которые у меня уже есть. Я работаю с той же версией perl и той же архитектурой, поэтому модули в моем личном домашнем каталоге должны быть правильными.

Проблема заключается в том, что perllocal.pod, похоже, содержит жесткие коды относительно того, где мой инсталлятор был выполнен, поэтому просто скопировать копию недостаточно. Есть ли еще один простой способ, возможно, утилита perl, скопировать мои локальные модули CPAN и каталог perl lib в корневой каталог perl lib?

+0

Почему бы вам не сделать t дать им разрешение на ваш 'perlbrew'-установленный' perl'. Затем просто продолжайте использовать '#!/Home/ikegami/usr/perlbrew/perls/5.22.0t/bin/perl' или что-то еще. – ikegami

ответ

0

Возможно, но почему бы вам просто не дать им разрешение на ваш perlbrew -установленный perl. Затем просто продолжайте использовать #!/home/ikegami/usr/perlbrew/perls/5.22.0t/bin/perl или что угодно.

+0

Никто не может видеть мою локальную установку. Он установлен только для меня. даже root не может получить к нему доступ. – dsollen

0

Если вы не знаете точно, что вы установили, вы могли бы посмотреть на Dist::Surveyor

Если вы уже знаете, что все ваши DEPS, Вы можете перечислить их в cpanfile, а затем сделать снимок с Carton и использовать сгенерированный cpanfile.snapshot установить правильные версии в новом месте