{"action":"created","issue":{"url":"https://api.github.com/repos/rebar/rebar3/issues/982","labels_url":"https://api.github.com/repos/rebar/rebar3/issues/982/labels{/name}","comments_url":"https://api.github.com/repos/rebar/rebar3/issues/982/comments","events_url":"https://api.github.com/repos/rebar/rebar3/issues/982/events","html_url":"https://github.com/rebar/rebar3/pull/982","id":122275867,"number":982,"title":"Allow bootstrap to pick up existing Hex cache and deps","user":{"login":"gleber","id":33185,"avatar_url":"https://avatars.githubusercontent.com/u/33185?v=3","gravatar_id":"","url":"https://api.github.com/users/gleber","html_url":"https://github.com/gleber","followers_url":"https://api.github.com/users/gleber/followers","following_url":"https://api.github.com/users/gleber/following{/other_user}","gists_url":"https://api.github.com/users/gleber/gists{/gist_id}","starred_url":"https://api.github.com/users/gleber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gleber/subscriptions","organizations_url":"https://api.github.com/users/gleber/orgs","repos_url":"https://api.github.com/users/gleber/repos","events_url":"https://api.github.com/users/gleber/events{/privacy}","received_events_url":"https://api.github.com/users/gleber/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-12-15T13:46:52Z","updated_at":"2016-01-06T00:20:12Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rebar/rebar3/pulls/982","html_url":"https://github.com/rebar/rebar3/pull/982","diff_url":"https://github.com/rebar/rebar3/pull/982.diff","patch_url":"https://github.com/rebar/rebar3/pull/982.patch"},"body":"This allows rebar to pick up existing assets, if present:\r\n- hex registry from .cache/rebar3/hex/default/registry\r\n- built deps from _build/default/lib/*\r\n\r\n@tsloughter, does this approach look good?\r\n\r\nRationale: this allows to build rebar3 in a build system, which requires it to be hermetic. This is the case for Debian (they are working on making their builds reproducible) and for Nix. I am working on Nix packaging for Erlang using rebar3 and hex.pm here:\r\nhttps://github.com/NixOS/nixpkgs/pull/11651\r\n\r\nCurrently I have to apply the following patch to make it hermetic:\r\nhttps://github.com/gleber/nixpkgs/blob/add-erlang-modules/pkgs/development/tools/build-managers/rebar3/hermetic-bootstrap.patch\r\n\r\nAnd in the build rules I am manually providing plugins to build process:\r\nhttps://github.com/NixOS/nixpkgs/pull/11651/files#diff-177ea02978ffc72f964033695c5e023eR93\r\n\r\nand provide a snapshot of registry:\r\nhttps://github.com/NixOS/nixpkgs/pull/11651/files#diff-177ea02978ffc72f964033695c5e023eR9"},"comment":{"url":"https://api.github.com/repos/rebar/rebar3/issues/comments/169176573","html_url":"https://github.com/rebar/rebar3/pull/982#issuecomment-169176573","issue_url":"https://api.github.com/repos/rebar/rebar3/issues/982","id":169176573,"user":{"login":"tsloughter","id":36227,"avatar_url":"https://avatars.githubusercontent.com/u/36227?v=3","gravatar_id":"","url":"https://api.github.com/users/tsloughter","html_url":"https://github.com/tsloughter","followers_url":"https://api.github.com/users/tsloughter/followers","following_url":"https://api.github.com/users/tsloughter/following{/other_user}","gists_url":"https://api.github.com/users/tsloughter/gists{/gist_id}","starred_url":"https://api.github.com/users/tsloughter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tsloughter/subscriptions","organizations_url":"https://api.github.com/users/tsloughter/orgs","repos_url":"https://api.github.com/users/tsloughter/repos","events_url":"https://api.github.com/users/tsloughter/events{/privacy}","received_events_url":"https://api.github.com/users/tsloughter/received_events","type":"User","site_admin":false},"created_at":"2016-01-06T00:20:12Z","updated_at":"2016-01-06T00:20:12Z","body":"Cool +1. @ferd you ok with this?"}}