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 <[email protected]> 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://[email protected]/johnmyleswhite/ASCIIPlots.jl.git
> <http://[email protected]/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 <[email protected]
> <mailto:[email protected]>> 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.
>