anchor.diff:  
   %% custom hooks are not rendered, they should
   %% be copied by the release overlays
  -render_hook(custom, _) -> ok;
  -render_hook(TemplateName, Script) ->
  -    rebar_api:debug("rendering ~p hook to ~p",
  -        [TemplateName, Script]),
  +render_hook(custom, _, _) -> ok;
  +render_hook(TemplateName, Script, State) ->
  +    ec_cmd_log:info(
  +        rlx_state:log(State),
  +        "rendering ~p hook to ~p~n",
  +        [TemplateName, Script]
  +    ),
  +
       Template = render(TemplateName),
       ok = filelib:ensure_dir(Script),
       _ = ec_file:remove(Script),
  
positive.code:                         include_nodetool(BinDir),
                          Hooks = expand_hooks(BinDir,
                                               rlx_state:get(State,
                                                             extended_start_script_hooks, [])),
                          extended_bin_file_contents(OsFamily, RelName, RelVsn,
                                                     rlx_release:erts(Release), ErlOpts,
                                                     Hooks)
  
negative.code:             E
      end.
  
  expand_hooks(_Bindir, [], _State) -> [];
  expand_hooks(BinDir, Hooks, _State) ->
      expand_hooks(BinDir, Hooks, [], _State).
  
  expand_hooks(_BinDir, [], Acc, _State) -> Acc;
  expand_hooks(BinDir, [{Phase, Hooks0} | Rest], Acc, State) ->
      %% filter and expand hooks to their respective shell scripts
      Hooks =
          lists:foldl(
  