Pijcie ze mną kompot, właśnie…

Pijcie ze mną kompot, właśnie udało mi się w tym pierdolonym #perl na #freebsd na #small (tańsza wersja #mydevil) dodac nowe moduly.

O co chodzi i czym się tak ekscytuje bo dodanie modułu to żadna filozofia?

No nie do końca żadna filozofia. Moduły instalujemy przez sudo i cpan. Nie mając dostępu do sudo możemy przecież wykorzystać local::lib… no nie do końca, bo na tym hostingu nie jest on zainstalowany (Drogie @MyDevil jeśli możecie – doinstalujcie i nie każcie ludziom muszącym korzystać z perla szargać sobie nerwów, sam perl to masochizm, a wy jeszcze utrudniacie).

Zawsze jest cpanm i instalacja local::lib przez cpanm
No nie zawsze, a przynajmniej nie tutaj. Fakt, cpanm da się pobrać, ale podczas instalacji cpanm i local::lib instalator utyka na testowaniu paczek i po jakimś czasie robi się timeout.

Rozwiązanie
Rozwiązanie wziąłem stąd, a dokładniej to z tej odpowiedzi.
Pobieramy gdziekowliek tara z cpanem i go rozpakowujemy (jak na złosć nie mogę znaleźć komendy, pamiętam jedynie ze był to wget z cpanmin.us),
Pobieramy tara local::lib: wget https://cpan.metacpan.org/authors/id/H/HA/HAARG/local-lib-2.000024.tar.gz
Rozpakowujemy go: tar xvf local-lib-2.000024.tar.gz
Przechodzimy do rozpakowanego folderu: cd local-lib-2.000024
I instalujemy go: perl Makefile.PL –bootstrap
I teraz małe ALE – na StackOverflow jest podana komenda make test && make install
Pomijamy make test, ponieważ paczka nie przechodzi testów, próbuje robić jakiegoś forka (nie mam pojecia o co chodzi) i utyka w tej pętli. Przechodzimy od razu do: make install
Paczka instaluje się bez problemu.
Teraz wklepujemy do terminala te 3 komendy:
eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
export PERL_CPANM_HOME=/tmp/cpanm_$USER
export MANPATH=$MANPATH:~/perl5/man
Powinno się to chyba wrzucić do .bashrc czy gdzieś, ja to po prostu wkleiłem bo i tak nie mam zamiaru się więcej tego tykać.
Teraz możemy korzystać z cpanm bez podawania pełnej ścieżki i (nareszcie) zainstalować wybrane moduły, np.: cpanm Syntax::Keyword::Try

Zostawiam dla potomnych. Może to było proste do ogarnięcia, może nie. Ja nad tym siedziałem ponad 10h przeszukując internety wzdłuż i wszerz aż w końcu się udało. Mam nadzieję że google zaindeksuje ten wpis i może kiedyś on się komuś przyda oszczędzając tym samym masę czasu.

#perl #programowanie #naukaprogramowania #komputery #informatyka #freebsd #mydevil #small #ct8 #hosting #linux #chwalesie #webdev