While it sounds like a lot of work - if thats your itch I suppose its a good test of the work that Stephane mentions. By redoing it in a different environment it might iron out any accidental environment dependencies.
Presumably its just the VM you need to bootstrap - as I would view the image as being like a Word or PDF document - and would be surprised that they would expect you to bootstrap those too? Good luck - and courage. Tim On Tue, 21 May 2024, at 9:47 AM, Nicolas Graves via Pharo-dev wrote: > On 2024-05-21 09:34, stephane ducasse wrote: > >> Hi >> >> Why can’t you use the latest Pharo vm and Pharo12? >> We worked like mad over the years to get a much better system. >> Now why do you need to bootstrap Pharo because you can just use a >> bootstrapped image >> and get pharo working and running? > > Guix is not using the FHS filesystem so it would be a mess to try and > bootstrap from binaries. On top of that, they focus on > reproducibility. The standard on this end is to try and not use any > binary code if it's possible to build if from source, and yes, it > requires working like mad over the years. The website is currently down, > but there's an article about how they get all 30k packages from only a > single tiny binary file. > > Some of the guys behind Guix are also involved in bootstrappable.org > > I understand and share that the current system is much better, it's just > that to comply with their standard, that's what I have to do. > > What I understand from there it that it's feasible: > https://x.com/estebanlm/status/1042719107307712514 > > I'll do the work if feasible, I just can't find the information where I > should start from, hence my email. > > Best, > Nicolas > >> >> S >> >>> On 21 May 2024, at 09:31, Nicolas Graves via Pharo-dev >>> <pharo-dev@lists.pharo.org> wrote: >>> >>> Hi Pharo community, >>> >>> I'm trying to package pharo in the GNU Guix linux distribution. Since >>> the distribution is focused on reproducibility and avoids using binary >>> code when possible, for that I need to reproduce the bootstrapping steps >>> that are embedded in Pharo. I understand from some developper online >>> comment that this is possible. >>> >>> I've started to work on this and it seems feasible, at least I get the >>> dependency loop, what I've some difficulty is to get precisely when it's >>> possible to get started. >>> >>> ------------------- >>> | v >>> pharo VM pharo >>> ∧ | >>> ------------------- >>> >>> If I'm correct, >>> - bootstrapping is very clear after version ~7.0.0, and with a proper >>> build, just follow the distribution numbers in wget's with a cmake >>> build-system. >>> - for earlier versions, there's the repository >>> https://github.com/pharo-project/PharoBootstrap >>> that seems (git history) to be able to go back to Pharo 30. >>> - I understand that at some point, Squeak and Pharo used to have the >>> same VM. I have access to a squeak-vm 4.10.2.2614 in Guix, and I've seen >>> this is in Pharo's ftp files, so I guess I can start there. >>> >>> What I need: >>> - Some indication about the first version of Pharo that I'm able to >>> build purely from squeak-vm, and where to find its source code >>> (git+version or commit if possible, I seem to only be able to find its >>> binaries currently in phero's ftp files). >>> - Any useful information for early bootstrap steps. >>> >>> Some useful information on my side: >>> - During the build process in Guix, we can't download data, so the >>> entire bootstrap chain has to be explicited at once, hence the need to >>> go back to the beginning in this case. >>> >>> Thanks in advance! >>> >>> -- >>> Best regards, >>> Nicolas Graves >> >> Stéphane Ducasse >> http://stephane.ducasse.free.fr >> 06 30 93 66 73 >> >> "If you knew today was your last day on earth, what would you do >> differently? ....ESPECIALLY if, by doing something different, today might >> not be your last day on earth.” Calvin & Hobbes >> >> >> >> >> > > -- > Best regards, > Nicolas Graves