<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 18 April 2017 at 18:59, Ben Coman <span dir="ltr"><<a href="mailto:btc@openinworld.com" target="_blank">btc@openinworld.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div>This worked fine for me on 32bit Debian 8 Jessie, resulting in...</div></div></div></blockquote><div><br></div><div>Cool! Thanks for testing that.</div><div><br></div><div>The reason you see some "Jan 1 1970" timestamps is that nix resets file modification times back to the epoch to make the build more reproducible.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div>Being able to try a compiler upgrade and then cleanly rollback is a great feature.  I gather that under the covers, so switching between two environments is just a quick link change? </div></div></div></div></div></div></blockquote><div><br></div><div>Yep.</div><div><br></div><div>You can also skip the symlinks and construct the software environment you want with a custom $PATH. Here is a command to start a sub-shell with exactly the build environment used for compiling the vm:</div></div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div class="gmail_extra"><div class="gmail_quote"><div><p class="gmail-p1"><span class="gmail-s1"><font face="monospace, monospace">$ nix-shell <a href="https://github.com/lukego/nixpkgs/archive/pharo6.tar.gz">https://github.com/lukego/nixpkgs/archive/pharo6.tar.gz</a> -A pkgs.pharo-vm</font></span></p></div></div></div></blockquote><div class="gmail_extra"><div class="gmail_quote"><div>This will start a shell with $PATH including exactly the expected versions of bash, gcc, autoconf, libtool, etc, that the build would use. Good for trouble shooting.</div><div><br></div><div>The binaries that you build will also remember exactly which shared objects they are supposed to link with (e.g. which build of glibc):</div><div><br></div></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div class="gmail_extra"><div class="gmail_quote"><font face="monospace, monospace">$ ldd $(which ls)</font></div></div><div class="gmail_extra"><div class="gmail_quote"><span style="font-family:monospace,monospace">        linux-gate.so.1 (0xf7767000)</span><br></div></div><div class="gmail_extra"><div class="gmail_quote"><span style="font-family:monospace,monospace">        librt.so.1 => /nix/store/djclawhih7363vlvsbrgfi1fr8l3glix-glibc-2.25/lib/librt.so.1 (0xf7759000)</span><br></div></div><div class="gmail_extra"><div class="gmail_quote"><span style="font-family:monospace,monospace">        libacl.so.1 => /nix/store/v480rw5maz01wh5ysrma8mhl6qy1kvjd-acl-2.2.52/lib/libacl.so.1 (0xf774f000)</span><br></div></div><div class="gmail_extra"><div class="gmail_quote"><span style="font-family:monospace,monospace">        libattr.so.1 => /nix/store/h6k7bwddlfzv1sbwxbnl795h0317wrwp-attr-2.4.47/lib/libattr.so.1 (0xf7749000)</span><br></div></div><div class="gmail_extra"><div class="gmail_quote"><span style="font-family:monospace,monospace">        libpthread.so.0 => /nix/store/djclawhih7363vlvsbrgfi1fr8l3glix-glibc-2.25/lib/libpthread.so.0 (0xf772b000)</span><br></div></div><div class="gmail_extra"><div class="gmail_quote"><span style="font-family:monospace,monospace">        libc.so.6 => /nix/store/djclawhih7363vlvsbrgfi1fr8l3glix-glibc-2.25/lib/libc.so.6 (0xf7573000)</span><br></div></div><div class="gmail_extra"><div class="gmail_quote"><font face="monospace, monospace"><br></font></div></div><div class="gmail_extra"><div class="gmail_quote"><font face="monospace, monospace">        /nix/store/djclawhih7363vlvsbrgfi1fr8l3glix-glibc-2.25/lib/ld-linux.so.2 (0xf7769000)</font></div></div></blockquote><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>More nice tricks here: <a href="https://gist.github.com/travisbhartwell/f972aab227306edfcfea">https://gist.github.com/travisbhartwell/f972aab227306edfcfea</a></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div>Now would any of the other dialects like to add to this? </div><div>At a minimum, perhaps just adding sources filesto...</div><div><a href="https://github.com/lukego/nixpkgs/blob/pharo6/pkgs/development/pharo/vm/share.nix" target="_blank">https://github.com/lukego/<wbr>nixpkgs/blob/pharo6/pkgs/<wbr>development/pharo/vm/share.nix</a><wbr>  </div></div></div></div></div></blockquote><div><br></div><div>That would be neat!</div><div><br></div><div><br></div></div></div></div>