This is a git problem on Windows only with nested directories resulting in long path names, not a problem of Pharo directly.  

 

Usually you should not have it since most projects should already be in Tonel format now (Tonel saves some space on the path length). Dont know if PharoJS and all dependencies are already in Tonel format.

 

I guess it is because your image already is in "c:/Users/Crypto/Documents/Pharo/images/PharoJS in 7.0.64-bit" and then the usual "pharo-local/iceberg/..." gets added when cloning through iceberg. Depending on project this leads to a long path for git.

 

Several options you could try to resolve this:

============================

 

a) Install Pharo Launcher on a short path like "c:\pharo" (instead of the long user directory default).

    When you then download for instance a Pharo 7 64 bit image using Pharo Launcher just use a short name

    for the image itself like "PJS7-64". This usually reduces the path size already.

 

 

I wanted to install the Launcher in Program Files and had a permissions problems I needed to fix.���� It was doable, but I did not want to continue the practice with each new install of Launcher.�� So I gave up and accepted the default in the user folder, which I do not want.

I don���t want my images and VMs in the usual ���user documents��� area.�� I want that on another drive (RAID).���� The installer and launcher seem rigid.�� Not to broaden the topic, but does anyone know how to install Launcher and then the new images anywhere without any problems? ����I think the main problem was Launcher and the default location for all Pharo git files. I prefer also to have my own separate collection of Git projects on another drive.���� I don���t want anything on the system drive but exes, dlls and related config files that I can be replaced with an installer. ����All else, my images and Git repos, are placed elsewhere, and the installer seems awkward if I use this pattern.�� If someone has a favorite scheme that supports this pattern, please do share.

 

 

b) If you have a local git client already (like the one from https://git-scm.com[https://git-scm.com/download/win]) then configure your local git like:

 

       git config --system core.longpaths true

 

The command worked.

 

However, I got the same walkback with the Monticello baseline load. ����Should this work?

 

Does one need always to load the baseline first?�� Why would the entire PharoJS repo not be enough?�� My default assumption would be to assume the PharoJS repo has all I need.

 

 

I have enough trouble with Iceberg (the GUI seem deeply wrong and confused like the designer can���t decided whether to mirror Git (repo menu item) or wrap and improve it [the rest of the GUI]) that I try to avoid using it.�� I use GitKraken to load the repo, then I point to it with Iceberg, but the options given for reconciling the cloned repo with what���s in the image don���t seem to work.��

 

 �� and clone the project from commandline on a short path:

 

������������ cd c:\pharo

��������   git clone https://github.com/bouraqadi/PharoJS.git

 

 �� You can then use Iceberg to connect to it via "Add" -> "Import from existing clone" and load the baseline from there.

 

I did this with the PharoJS repo I cloned earlier with GitKraken:�� I get proxiesForGlobals and state Not Loaded.��

 

 

c) Go to "Pharo" -> "Settings Browser", select "Tools" -> "Software Configuration Management" -> "Iceberg"

   and choose "Share repositories between images". Then set the "Location for shared repositories" to a

   short path name like "c:\pharo". Dont forget to hit enter. 

 

Okay, but I find the whole notion of sharing repos between images something that should just work and not be special like this.�� I just want to connect the one image to the one repo and have it work coherently.�� Why does Settings introduce the idea of sharing the repo between images.�� I���m trying to do the more basic thing and it doesn���t work.�� (There���s no file dialog for Default Code Subdirectory.)

 

   You can double check by inspecting:  

 

        IceLibgitRepository sharedRepositoriesLocationString inspect

 

It���s correct.

 

    in a Playground. Iceberg will use this directory to clone project - using a short path will shorten the

    overall path length for the cloned PharoJS project.

 

Some of this might help - if not use Ubuntu or OSX ;)

 

Same Not Loaded state results.

 

 

Thanks.

 

 

Shaping