Pleroma Fails to Compile on OpenBSD 6.9
Environment
- Installation type: From Source
- Pleroma version: Stable Branch
- Elixir version: Elixir 1.11.4 (compiled with Erlang/OTP 21)
- Operating system: OpenBSD 6.9
- PostgreSQL version: psql (PostgreSQL) 13.2
Bug description
Following installation instructions on: https://docs.pleroma.social/backend/installation/openbsd_en/
Pleroma fails to compile with the following error:
!!! RUNNING IN LOCALHOST DEV MODE! !!!
FEDERATION WON'T WORK UNTIL YOU CONFIGURE A dev.secret.exs
Compiling 535 files (.ex)
!!! RUNNING IN LOCALHOST DEV MODE! !!!
FEDERATION WON'T WORK UNTIL YOU CONFIGURE A dev.secret.exs
warning: :crypt.crypt/2 is undefined (module :crypt is not available or is yet to be defined)
lib/pleroma/web/plugs/authentication_plug.ex:42: Pleroma.Web.Plugs.AuthenticationPlug.checkpw/2
03:54:08.779 [warn] The on_load function for module crypt returned:
{:error, {:load, 'Library load-call unsuccessful (1).'}}
Compilation failed due to warnings while using the --warnings-as-errors option
This is the output from running mix deps.clean crypt; mix deps.get crypt; mix deps.compile crypt
:
!!! RUNNING IN LOCALHOST DEV MODE! !!!
FEDERATION WON'T WORK UNTIL YOU CONFIGURE A dev.secret.exs
* Cleaning crypt
!!! RUNNING IN LOCALHOST DEV MODE! !!!
FEDERATION WON'T WORK UNTIL YOU CONFIGURE A dev.secret.exs
* Getting crypt (https://git.pleroma.social/pleroma/elixir-libraries/crypt.git - cf2aa3f11632e8b0634810a15b3e612c7526f6a3)
remote: Enumerating objects: 267, done.
remote: Counting objects: 0% (1/267)
[snipped]
remote: Counting objects: 100% (267/267), done.
remote: Compressing objects: 0% (1/132)
[snipped]
remote: Compressing objects: 100% (132/132), done.
remote: Total 267 (delta 112), reused 267 (delta 112), pack-reused 0
Resolving Hex dependencies...
Dependency resolution completed:
Unchanged:
accept 0.3.5
base62 1.2.1
bbcode_pleroma 0.2.0
bcrypt_elixir 2.2.0
benchee 1.0.1
bunt 0.2.0
cachex 3.2.0
calendar 1.0.0
castore 0.1.7
combine 0.10.0
comeonin 5.3.1
connection 1.1.0
cors_plug 2.0.2
cowboy 2.8.0
cowboy_telemetry 0.3.0
cowlib 2.9.1
credo 1.4.1
custom_base 0.2.1
db_connection 2.3.1
decimal 2.0.0
deep_merge 1.0.0
earmark 1.4.3
earmark_parser 1.4.10
ecto 3.4.6
ecto_enum 1.4.0
ecto_sql 3.4.5
elixir_make 0.6.2
esshd 0.1.1
eternal 1.2.1
ex_aws 2.1.6
ex_aws_s3 2.0.2
ex_const 0.2.4
ex_doc 0.22.2
ex_machina 2.4.0
ex_syslogger 1.5.2
excoveralls 0.12.3
fast_html 2.0.4
fast_sanitize 0.2.2
flake_id 0.1.0
floki 0.27.0
gen_smtp 0.15.0
gettext 0.18.0
html_entities 0.5.1
http_signatures 0.1.0
httpoison 1.6.2
inet_cidr 1.0.4
jason 1.2.2
joken 2.2.0
jose 1.10.1
jumper 1.0.1
linkify 0.5.0
makeup 1.0.3
makeup_elixir 0.14.1
meck 0.8.13
mime 1.4.0
mock 0.3.5
mogrify 0.7.4
mox 1.0.0
nimble_parsec 0.6.0
nimble_pool 0.1.0
oban 2.3.4
phoenix 1.5.6
phoenix_ecto 4.2.1
phoenix_html 2.14.2
phoenix_pubsub 2.0.0
phoenix_swoosh 0.3.2
plug 1.10.4
plug_cowboy 2.4.0
plug_crypto 1.2.0
plug_static_index_html 1.0.0
poison 3.1.0
poolboy 1.5.2
postgrex 0.15.7
pot 0.11.0
prometheus 4.6.0
prometheus_ecto 1.4.3
prometheus_phoenix 1.3.0
prometheus_plugs 1.1.5
quack 0.1.1
ranch 1.7.1
recon 2.5.1
sleeplocks 1.1.1
sweet_xml 0.6.6
swoosh 1.0.6
syslog 1.1.0
telemetry 0.4.2
tesla 1.4.0
[33m timex 3.6.2 RETIRED![0m
[33m (other) handling of non-olson timezones was broken[0m
trailing_format_plug 0.0.7
tzdata 1.0.4
ueberauth 0.6.3
unsafe 1.0.1
web_push_encryption 0.3.0
!!! RUNNING IN LOCALHOST DEV MODE! !!!
FEDERATION WON'T WORK UNTIL YOU CONFIGURE A dev.secret.exs
gmake: Entering directory '/home/_pleroma/pleroma/deps/crypt/c_src'
cc -fPIC -I /usr/local/lib/erlang21/erts-10.2/include/ -c -o /home/_pleroma/pleroma/deps/crypt/c_src/crypt.o /home/_pleroma/pleroma/deps/crypt/c_src/crypt.c
/home/_pleroma/pleroma/deps/crypt/c_src/crypt.c:53:9: warning: using crypt [-W#pragma-messages]
#pragma message "using crypt"
^
1 warning generated.
cc /home/_pleroma/pleroma/deps/crypt/c_src/crypt.o -shared -o /home/_pleroma/pleroma/deps/crypt/c_src/../priv/crypt.so
gmake: Leaving directory '/home/_pleroma/pleroma/deps/crypt/c_src'
===> Analyzing applications...
===> Compiling crypt