Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-07-18 Thread Luke Gorrie
On 23 June 2017 at 18:58, Eliot Miranda wrote: > Workable? Yes. Fatal flaws? None. > There did seem to be a fatal flaw. Metacello doesn't seem to want to run without network access. Pre-populating the package cache with .mcz files doesn't seem to be sufficient. I'm

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-07-04 Thread Luke Gorrie
JFYI: My conclusion is that there is too much friction when building Pharo images under Nix. Nix and Pharo seem to make opposite trade-offs on the reproducibility-vs-convenience axis. Pharo hackers seem to expect a lot of freedom during builds, like unrestricted internet access, and that doesn't

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-30 Thread Luke Gorrie
I have done some work on packaging up pharo projects for Nix so that images can be created in the sandboxed build environment. I am a bit stuck though. I have a script that takes a project named and creates a specification of all the required mcz files, recursing into dependencies: Here is the

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-27 Thread Paul DeBruicker
Luke Gorrie wrote > Hi Paul, > > On 23 June 2017 at 22:11, Paul DeBruicker > pdebruic@ > wrote: > >> For those projects described with Metacello baselines or configurations >> you >> can issue a #fetch command to download all the Monticello packages needed >> to >> load the projects into

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-25 Thread Luke Gorrie
On 23 June 2017 at 18:56, Ben Coman wrote: > But btw note, IIUC the bootstrap hasn't got a far as programatically > creating an empty file and writing nil,true,false to it yet (if ever?). > You will always be starting with a minimal.image rather than an empty.image. >

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-25 Thread Luke Gorrie
Hi Paul, On 23 June 2017 at 22:11, Paul DeBruicker wrote: > For those projects described with Metacello baselines or configurations you > can issue a #fetch command to download all the Monticello packages needed > to > load the projects into your image > Thanks for this

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-25 Thread Luke Gorrie
On 23 June 2017 at 18:58, Eliot Miranda wrote: > Sane? Why introduce your own ftp directory? > Good question... Let me try a new iteration of the idea please. Here is what I _think_ I want: - For each package in the Catalog, the list of mcz files it requires to

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Stephan Eggermont
On 23/06/17 17:59, Luke Gorrie wrote: Hi again Ben, I have an idea for a hacky way to import all of the Pharo packages into my universe. Shooting holes in this idea would be welcome :). ... Sane? Workable? Fatal flaws? You might want to look at StephanEggermont/DeprecationFinder on sth

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Paul DeBruicker
For those projects described with Metacello baselines or configurations you can issue a #fetch command to download all the Monticello packages needed to load the projects into your image e.g. Metacello new configuration:'Seaside3'; repository:

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Ben Coman
On Sat, Jun 24, 2017 at 12:58 AM, Eliot Miranda wrote: > Hi Luke, > > On Fri, Jun 23, 2017 at 8:59 AM, Luke Gorrie wrote: > >> Hi again Ben, >> >> I have an idea for a hacky way to import all of the Pharo packages into >> my universe. Shooting holes in

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Eliot Miranda
Hi Luke, On Fri, Jun 23, 2017 at 8:59 AM, Luke Gorrie wrote: > Hi again Ben, > > I have an idea for a hacky way to import all of the Pharo packages into my > universe. Shooting holes in this idea would be welcome :). > > Suppose that for each package "P" in the catalog I want to

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Ben Coman
On Fri, Jun 23, 2017 at 11:59 PM, Luke Gorrie wrote: > Hi again Ben, > > I have an idea for a hacky way to import all of the Pharo packages into my > universe. Shooting holes in this idea would be welcome :). > > Suppose that for each package "P" in the catalog I want to make a

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Luke Gorrie
Hi again Ben, I have an idea for a hacky way to import all of the Pharo packages into my universe. Shooting holes in this idea would be welcome :). Suppose that for each package "P" in the catalog I want to make a list of the recursive dependencies (mcz files) and their sha256 hashes. I would do

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Luke Gorrie
Hi Ben, On 23 June 2017 at 15:20, Ben Coman wrote: > Typically Monticello mcz files are hosted on services shared via HTTP that > you can download with wget or curl, e.g > http://smalltalkhub.com/mc/Pharo/Pharo60/main > I guess if you pre-seed the package-cache, Pharo

Re: [Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Ben Coman
On Fri, Jun 23, 2017 at 4:20 PM, Luke Gorrie wrote: > Howdy! > > I want to build Pharo images using Nix . On the > one hand this should look basically like the Jenkins scripts, but on the > other hand the build must run inside a sandbox that is isolated

[Pharo-dev] Recursively downloading Pharo packages / Building images with Nix

2017-06-23 Thread Luke Gorrie
Howdy! I want to build Pharo images using Nix . On the one hand this should look basically like the Jenkins scripts, but on the other hand the build must run inside a sandbox that is isolated from the network. So I need to download all of the code that I need ahead of time