<tadni>mark_weaver: Yeah, I was extremely tired when I wrote that. I just took a nap, and ... hopefully I can explain better. Basically, I was trying to install Guix on my Old Compaq desktop and I got to the point where I did "guix system init /mnt/etc/config.scm" -- which I waited two hours with no visible progress besides it saying it accepted the connection. I tried to rewrite my usb install image and try again on the desktop and same
<tadni>problem... So, I tried to use the install image on the laptop that I had the GNU distro installed and nothing.
<tadni>I can run "guix system init /mnt/etc/config.scm /mnt --no-substitutes" and it will start to grab packages, but it crashes trying to build on both boxes.
<mark_weaver>commas do not separate elements in a list in scheme. instead they are part of so-called "quasiquotation", which is what the backquote ` is about.
<mark_weaver>`(...) means that everything inside is a literal data structure, but things prefixed with commas are evaluated as expressions and the results are spliced into the data structure
<mark_weaver>e.g. `(("gnutls" ,gnutls)) is a list containing one list of two elements: the string "gnutls", and the value of the variable 'gnutls', which is bound to a package object (imported from the (gnu packages gnutls) module)
<mark_weaver>there's a thread about it on the guix-devel mailing list.
<mark_weaver>search for "GNUnet binary ditribution roadmap" there
<mark_weaver>(spelled wrong, but that's what's actually in the subject line)
<xisiqomelir>I assume we will slowly build some sort of web of trust?
<xisiqomelir>that seems much more secure than a sole repository which provides a lone target to compromise
<mark_weaver>well, ultimately the plan is to arrange for builds to be completely reproducible, always generating exactly the same bits, so that anyone can do the builds on their own machine and compare with what other's provide.
<mark_weaver>also, you can run the guix-daemon with --no-substitutes, in which case everything other than the bootstrap binaries are built on your own machine from source code.
<xisiqomelir>yes I think that's what's making tadni's installs take 5 hours
<mark_weaver>but as for the details, I'm actually not sure what the plan is on gnunet. I was busy with other things during those discussions, and haven't yet caught up.
<mark_weaver>I run with --no-substitutes on my own machine, fwiw. and yes, it takes a very long time to build everything.
<xisiqomelir>on my thinkpad the gcc bootstrap is about an hour and a half
<mark_weaver>on my YeeLoong, it takes well over a week, but I've done it several times.
<mark_weaver>when we have bit-for-bit reproducible builds, and active independent verification of the binaries happening on a regular basis (build farms run by different people, digitally signing the binaries in a similar way to people signing each other's GPG keys), then I'll probably start using binary substitutes.
<xisiqomelir>Geiser is a collection of Emacs major and minor modes that conspire with one or more Scheme interpreters to keep the Lisp Machine Spirit alive. It draws inspiration (and a bit more) from environments such as Common Lisp's Slime, Factor's FUEL, Squeak or Emacs itself, and does its best to make Scheme hacking inside Emacs (even more) fun.
<xisiqomelir>So I install Emacs and geiser and then hacking guix becomes easier?
<mark_weaver>well, scheme hacking becomes easier, though I'm not sure it makes a noticable difference for writing guix recipes.
<mark_weaver>I confess that I'm unusual among Guile power users in that I don't use Geiser, but I do use 'paredit', which has a steep learning curve, but makes editing scheme code vastly easier and more efficient once you get the hang of it.
<mark_weaver>well, given that your gcj recipe succeeded up to the point of finding the cycle, I'm very confident that the same fix for gccgo would result in a working gcj.
<mark_weaver>regarding the disk: fwiw, a couple of years ago I had a similar bad disk corruption. in my case, I was using RAID, so I broke the RAID and kept one copy of the original corrupted filesystem. this turned out to be important, because some important files (like huge mail files) were missing, but I was able to recover them from the original filesystem.
<mark_weaver>I used 'debugfs' to recover some files that were missing.