<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">On 7/11/20 2:00 PM, Tristan Sloughter
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:3d327bcb-d650-4bdd-b04e-651d6e542232@www.fastmail.com">
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
<title></title>
<style type="text/css">p.MsoNormal,p.MsoNoSpacing{margin:0}</style>
<div>I'm sorry to say but I can guarantee you are going to have a
bad time.<br>
</div>
<div><br>
</div>
<div>Your questions mainly boil down to using rebar3 with
pre-built global OTP Applications (packages). This isn't really
possible. Rebar3 is meant as a development tool and not to be
used as part of distributing software.<br>
</div>
<div><br>
</div>
<div>You might find installing packages to the $OTP_ROOT/lib
directory or setting $ERL_LIBS while dropping deps from the
rebar.config starts moving you forward (similar to how using
_checkouts moved you forward) but you'll soon hit problems I'm
sure. One off the top of my head would be plugins not working,
so any package that depends on a plugin to compile would fail.<br>
</div>
</blockquote>
<br>
Do not install packages into the $OTP_ROOT/lib directory because you
get conflicting dependencies when you go down that path. You should
keep your Erlang applications separate, whether they are in a
release or separate from a release. Then using rebar3 with ERL_LIBS
or rebar2 with the <span class="pl-c1">lib_dirs configuration set
will pull in the dependencies. If you want a release to have
dependencies that may be reused from the local filesystem, then
use </span>{<span class="pl-c1">excl_archive_filters</span>, [<span
class="pl-s"><span class="pl-pds">"</span>.*<span class="pl-pds">"</span></span>]}
when building the release (if you are using reltool) to avoid stuff
getting zipped up together.<br>
<br>
Best Regards,<br>
Michael<br>
<br>
</body>
</html>