OTP installation on Arch Linux claims `--rpc-eval : RPC failed with reason :nodedown`
This issue may be related to #1181 (closed).
- Issue summary
I tried to install a new pleroma instance on Arch Linux using OTP releases. With following the installation document I executed the config generator command, but the error occurred and no configuration file was generated.
# su pleroma -s $SHELL -lc "./bin/pleroma_ctl instance gen --output /etc/pleroma/config.exs --output-psql /tmp/setup_db.psql"
/opt/pleroma/erts-10.3.5.2/bin/beam.smp: /usr/lib/libtinfo.so.5: no version information available (required by /opt/pleroma/erts-10.3.5.2/bin/beam.smp)
--rpc-eval : RPC failed with reason :nodedown
This Stack Overflow Q&A is also related?: What does the "no version information available" error from linux dynamic linker mean? - Stack Overflow
- Full story
First, at Detecting flavour
step, no matches found: /lib/libc.musl*
errors appeared, but GNU libc was installed on Arch and the command output showed the proper architecture. So I thought this error could be ignored and went to the next step.
# arch="$(uname -m)";if [ "$arch" = "x86_64" ];then arch="amd64";elif [ "$arch" = "armv7l" ];then arch="arm";elif [ "$arch" = "aarch64" ];then arch="arm64";else echo "Unsupported arch: $arch">&2;fi;if getconf GNU_LIBC_VERSION>/dev/null;then libc_postfix="";elif [ "$(ldd 2>&1|head -c 9)" = "musl libc" ];then libc_postfix="-musl";elif [ "$(find /lib/libc.musl*|wc -l)" ];then libc_postfix="-musl";else echo "Unsupported libc">&2;fi;echo "$arch$libc_postfix"
preexec:1: no matches found: /lib/libc.musl*
preexec:2: no matches found: /lib/libc.musl*
amd64
Second, installed the required packages by reference to the document, and skipped optional PostgreSQL configuration steps.
# pacman -S curl unzip ncurses postgresql nginx certbot
Next, created pleroma
user, downloaded and unzipped the release build, made some directories required by pleroma. Arch uses useradd
command to create a new user instead of adduser
, command options were slightly changed.
# useradd --system --shell /bin/false -m --home-dir /opt/pleroma pleroma
# export FLAVOUR="amd64"
(downloaded the release build, made directories, etc... there was no error.)
# mkdir -p /etc/pleroma
# chown -R pleroma /etc/pleroma
And at the configuration files generation step, the error said there was no libtinfo.so.5
library at first. So I installed ncurses5-compat-libs
from aur repository.
# su pleroma -s $SHELL -lc "./bin/pleroma_ctl instance gen --output /etc/pleroma/config.exs --output-psql /tmp/setup_db.psql"
/opt/pleroma/erts-10.3.5.2/bin/beam.smp: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
% ls /usr/lib|grep libtinfo
libtinfo.so
libtinfo.so.6@
% yay -S ncurses5-compat-libs
% ls /usr/lib|grep libtinfo
libtinfo.so
libtinfo.so.5@
libtinfo.so.6@
I executed the config generation command again, however, the new error happened and I've not found any solutions so far.
# su pleroma -s $SHELL -lc "./bin/pleroma_ctl instance gen --output /etc/pleroma/config.exs --output-psql /tmp/setup_db.psql"
/opt/pleroma/erts-10.3.5.2/bin/beam.smp: /usr/lib/libtinfo.so.5: no version information available (required by /opt/pleroma/erts-10.3.5.2/bin/beam.smp)
--rpc-eval : RPC failed with reason :nodedown