Hi Juraj,

The version of Iceberg in Pharo 6.1 is just a preview and we have decided so far that we will not update it so far to avoid disrupting people using Pharo6.1 for business.
Also, iceberg development has moved forward a lot on Pharo7, I don't think that a "simple fix" could be just backported.

Maybe you can try instead to upgrade your pharo6.1 image with latest iceberg? Try using the script in iceberg's readme.

On Tue, Jul 17, 2018 at 2:58 AM Juraj Kubelka via Pharo-users <pharo-users@lists.pharo.org> wrote:
Hi,��

I am trying to build a project in ubuntu 16.04.3. To this:
- I downloaded Pharo 6.1 (60541) 64bit
- I open the Pharo image and execute:

Metacello new
   baseline: 'GToolkit';
   repository: 'github://feenkcom/gtoolkit/src';
   load.
I have the following issue:��LGit_GIT_ERROR: SSL error: error:140E0197:SSL routines:SSL_shutdown:shutdown while in init
The full stack is below.��
I can clone the repository from a terminal using: git clone��git@github.com:feenkcom/gtoolkit.git
I believe that my settings are correct (same that I use on macOS):��



Is Iceberg suppose to work on Ubuntu 16.04.3 64bit?
I have noticed that it works in Pharo 7 64bit (excluding the fact gtoolkit does not work in Pharo 7 yet).
I found this bug report that might be related:��https://github.com/libgit2/libgit2/issues/4644��

Thanks!
Juraj


Full stack:

LGitReturnCodeEnum>>handleLGitReturnCode
LGitRepository(LGitExternalObject)>>withReturnHandlerDo:
LGitRepository>>clone:options:to:
LGitRepository>>clone:options:
[ repo clone: url options: cloneOptions ] in [ | repo cloneOptions |
repo := LGitRepository on: self location.
cloneOptions := LGitCloneOptions
withCredentialsProvider: IceCredentialsProvider default.
cloneOptions checkoutOptions
checkoutStrategy: LGitCheckoutStrategyEnum git_checkout_none.
[ repo clone: url options: cloneOptions ]
on: LGit_GIT_ERROR
do: [ :e | e acceptError: IceLibgitErrorVisitor new ].
repo
checkout:
(aBranchName
ifNil:
[ self branch ifNotNil: [ :b | b name ] ifNil: [ 'master' ] ]).
(LGitRemote of: repo named: 'origin')
lookup;
setUrl: url ] in IceLibgitLocalRepository>>cloneRepositoryFrom:branch: in Block: [ repo clone: url options: cloneOptions ]
BlockClosure>>on:do:
[ | repo cloneOptions |
repo := LGitRepository on: self location.
cloneOptions := LGitCloneOptions
withCredentialsProvider: IceCredentialsProvider default.
cloneOptions checkoutOptions
checkoutStrategy: LGitCheckoutStrategyEnum git_checkout_none.
[ repo clone: url options: cloneOptions ]
on: LGit_GIT_ERROR
do: [ :e | e acceptError: IceLibgitErrorVisitor new ].
repo
checkout:
(aBranchName
ifNil:
[ self branch ifNotNil: [ :b | b name ] ifNil: [ 'master' ] ]).
(LGitRemote of: repo named: 'origin')
lookup;
setUrl: url ] in IceLibgitLocalRepository>>cloneRepositoryFrom:branch: in Block: [ | repo cloneOptions |...
[ self checkInitialized.
aBlock value ] in LGitGlobal class>>runSequence: in Block: [ self checkInitialized....
[ activeProcess psValueAt: index put: anObject.
aBlock value ] in LGitActionSequence(DynamicVariable)>>value:during: in Block: [ activeProcess psValueAt: index put: anObject....
BlockClosure>>ensure:
LGitActionSequence(DynamicVariable)>>value:during:
LGitActionSequence class(DynamicVariable class)>>value:during:
LGitGlobal class>>runSequence:
IceLibgitLocalRepository>>cloneRepositoryFrom:branch:
IceRepositoryCreator>>createRepository
[ (IceRepositoryCreator new
url: urlToUse;
subdirectory: repoPath;
branchName: self projectVersion;
createRepository) register ] in [ | urlToUse |
urlToUse := remote url.
[ (IceRepositoryCreator new
url: urlToUse;
subdirectory: repoPath;
branchName: self projectVersion;
createRepository) register ]
on: IceAuthenticationError
do: [ :e |��
self
crLog:
('I got an error while cloning: {1}. I will try to clone the HTTPS variant.'
format: {e messageText}).
urlToUse := remote httpsUrl.
e retry ] ] in MCGitHubRepository(MCGitBasedNetworkRepository)>>getOrCreateIcebergRepository in Block: [ (IceRepositoryCreator new...
BlockClosure>>on:do:
[ | urlToUse |
urlToUse := remote url.
[ (IceRepositoryCreator new
url: urlToUse;
subdirectory: repoPath;
branchName: self projectVersion;
createRepository) register ]
on: IceAuthenticationError
do: [ :e |��
self
crLog:
('I got an error while cloning: {1}. I will try to clone the HTTPS variant.'
format: {e messageText}).
urlToUse := remote httpsUrl.
e retry ] ] in MCGitHubRepository(MCGitBasedNetworkRepository)>>getOrCreateIcebergRepository in Block: [ | urlToUse |...
OrderedCollection(Collection)>>detect:ifFound:ifNone:
OrderedCollection(Collection)>>detect:ifNone:
MCGitHubRepository(MCGitBasedNetworkRepository)>>getOrCreateIcebergRepository
IceGithubRepositoryType>>mcRepository
Iceberg class>>mcRepositoryFor:
IceMetacelloPharoPlatform>>createRepository:
MetacelloMCBaselineProject(MetacelloMCProject)>>createRepository:
MetacelloRepositorySpec>>createRepository
[ aSpec createRepository ] in [ :aSpec |��
| description repo |
description := aSpec description.
(repo := repositories
detect: [ :rep | rep description = description ]
ifNone: [ aSpec createRepository ]) ~~ nil
ifTrue: [ repos add: repo ] ] in MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>repositoriesFrom:ignoreOverrides: in Block: [ aSpec createRepository ]
Array(Collection)>>detect:ifFound:ifNone:
Array(Collection)>>detect:ifNone:
[ :aSpec |��
| description repo |
description := aSpec description.
(repo := repositories
detect: [ :rep | rep description = description ]
ifNone: [ aSpec createRepository ]) ~~ nil
ifTrue: [ repos add: repo ] ] in MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>repositoriesFrom:ignoreOverrides: in Block: [ :aSpec | ...



--

������

Guille Polito

Research Engineer

Centre de Recherche en Informatique, Signal et Automatique de Lille

CRIStAL - UMR 9189

French National Center for Scientific Research - http://www.cnrs.fr


Web: http://guillep.github.io

Phone: +33 06 52 70 66 13