Thanks for the pointers! Having also struggled with private packages on 0.5 for a while now, I tried below steps (a few times). No such luck.
Also, using https: for a private package on 0.5 on my system hangs Pkg.update(). After ^C it states it’s updating TP but that is not the case. Could that have to do with: > If I neglect step 6, then the callback ("credentials_cb") gets called > indefinitely (noted via print debugging), so it seems that we are missing > some step to make ssh-agent unlock the key pair (which happens via system > prompt on OS X). Pkg.clone() works. Regards, Rob _ _ _ _(_)_ | A fresh approach to technical computing (_) | (_) (_) | Documentation: http://docs.julialang.org _ _ _| |_ __ _ | Type "?help" for help. | | | | | | |/ _` | | | | |_| | | | (_| | | Version 0.5.0-dev+3344 (2016-03-31 06:13 UTC) _/ |\__'_|_|_|\__'_| | master/c7f5926 (fork: 57 commits, 4 days) |__/ | x86_64-apple-darwin15.4.0 julia> Pkg.update() INFO: Updating METADATA... INFO: Updating Unitful master... INFO: Updating CSoM master... Username for 'https://github.com/goedman/TP.jl.git':goedman Password for 'goedman@https://github.com/goedman/TP.jl.git': ^CWARNING: fetch: InterruptException() INFO: Updating TP master... INFO: Updating Benchmarks master... INFO: Updating NMfE master... INFO: Updating Jags master... INFO: Updating ASCIIPlots master... INFO: Computing changes... INFO: No packages to install, update or remove > On Mar 30, 2016, at 06:54, Isaiah Norton <isaiah.nor...@gmail.com> wrote: > > I'm not sure if this is supposed to be officially supported yet, but I was > able to get ssh:// to work on OS X: > > 1. `brew install libssh2` > 2. from julia root dir: `cd deps && make configure-libgit2 VERBOSE=1` > 3. copy the cmake command printed by above, and re-run it manually. For some > reason PKG_CONFIG_MODULE didn't detect libgit2 the first time (discovered by > trial-and-error, verified by `make distclean-libgit2` and doing the process > again). > > it should look something like: > > `cmake {HOME}/git/jl71/deps/srccache/libgit2/ > -DCMAKE_INSTALL_PREFIX:PATH={HOME}/git/jl71/usr -DCMAKE_VERBOSE_MAKEFILE=ON > -DCMAKE_C_COMPILER="clang" -DCMAKE_C_COMPILER_ARG1="-m64 " > -DCMAKE_CXX_COMPILER="clang++" -DCMAKE_CXX_COMPILER_ARG1="-m64 " > -DTHREADSAFE=ON -DCMAKE_BUILD_TYPE=Release` > > > 4. in julia root directory: `make clean && make` > 5. start ssh-agent. in bash: "$ eval `ssh-agent`" > 6. run something that causes ssh-agent to unlock the key, for example regular > command line git clone'ing a repository via ssh. > > After those steps, the following works: > > julia> Pkg.clone("ssh://g...@github.com/johnmyleswhite/ASCIIPlots.jl.git > <http://usern...@github.com/johnmyleswhite/ASCIIPlots.jl.git>") > > If I neglect step 6, then the callback ("credentials_cb") gets called > indefinitely (noted via print debugging), so it seems that we are missing > some step to make ssh-agent unlock the key pair (which happens via system > prompt on OS X). > > So: it looks like this is almost-supported, but we need to fix build issues > and teach the libgit2 wrapper to set up ssh-agent credentials correctly on > its own (at least on OS X). Presumably the situation is the same or better on > Linux. On Windows, building against libssh2 is explicitly disabled by our > Makefile. > > > On Mon, Mar 28, 2016 at 4:01 PM, Blake Johnson <blakejohnso...@gmail.com > <mailto:blakejohnso...@gmail.com>> wrote: > Is there a way to still support git protocol (as opposed to https) packages > with the new libgit2 based package system? I have a fair number of private > packages on a local server, and it sure would be nice to be able to fetch > those with SSH key authentication. >