<mark_weaver>here's a nice Edsger Dijkstra quote: "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
<davexunit>I remember thinking that I must be dumb because everyone uses C++ to do stuff and here I was banging my head into a wall staring at segfaults all the time.
<davexunit>then I tried Python and I started to see what how much better programming could be.
<mark_weaver>I don't even have the same excuse. I took a course that used Lisp in university, and I liked it right off the bat, but never really played with it after that. not until I discovered SICP.
<davexunit>college was all Java and C. they only taught dynamic languages in courses for non-CS majors.
<davexunit>as if dynamic languages aren't real programming.
<mark_weaver>when I was at university (and maybe still today), although I had one course with Lisp, it was overwhelmingly in the "object-oriented programming is the wave of the future, and must be used for *everything*" mentality
<Digit>i'm currently running nixos (as of early jan), and am wondering how smooth a transition to guix (on whatever distro) would be? is it largely like-for-like, or are there a whole load of nuances|quirks|differences|distinctions to learn new?
<ewemoa>Digit: not much help for you, but am interested too -- have finally succeeded in installing guix 0.8.1 after several failed attempts for 0.8 :)
<ewemoa>was thinking a pl-independent interface to the underlying system might encourage various pl folks to stop trying to reimplement various already nicely provided bits...
<Digit>talking purely functional, i'd already got /a little/ practice in with Haskell. i wonder if it ever got mentioned when early notions and plans were starting.
<ewemoa>Digit: no idea -- tried learning haskell years ago but am far too lazy to try to learn irregular syntax -- scheme/lisp is much easier on my aging brain :)
<Digit>i came to xmonad before i came to emacs (or anything else that would encourage lisp, like clfswm), hence my quirkyness. wanted to have more reasons to learn more lispness for a while. so the extent scheme is involvd is very welcome. :)
<ewemoa>Digit: seems like examining guix packages, modifying them, writing them, etc. would be a good opportunity for guile scheme learning :)
<rekado_>well, in transfer-and-offload it first runs register-gc-root (which creates the dir and expects the derivation to exist already), and *after that* runs send-files, which transfers missing dependencies.
<jgrant>Yeah, not sure why this won't connect to the tracker.
<rekado_>I don't get it. Bash's info page tells me that in non-interactive mode, for non-login sessions, $BASH_ENV is sourced if it exists. But how can I reliably set BASH_ENV to, say, ~/.bash_profile when no other startup file is read?
<rekado_>is there another way to tell Guile that /usr/local/share/guile/site/2.0/ is part of the load path? Without having to set environment vars?
<jgrant>The command I tried to generate a torrent to seed was """mktorrent -l 21 -a udp://open.demonii:1337/announce ~/Seeds/gsd-usb-install-0.8.1.x86_64-linux/ -o "gsd-usb-install-0.8.1.x86_64-linux.torrent" """
<jgrant>Generates without an issue, but I can't seem to seed it.
<civodul>rekado_: as a first test, try say "guix archive --export coreutils | ssh build-machine guix archive --import"
<rekado_>I wonder: does $prefix/libexec need to be in the PATH for this to work? The daemon fails with "error: executing `guix-authenticate': No such file or directory"
<fchmmr>davexunit, and libreboot's GRUB payload screen which is what you see when you boot up already shows a floating, meditating GNU playing a flute, as a background image. And it says "FREE AS IN FREEDOM" in big letters.
<rekado_>(I guess I just missed "make clean"; just trying to confirm for the sake of my sanity)
*DusXMT wishes there was a way to make "git" patches with diff... I guess I could write a script to simulate it, as the git way is jut way too clunky for me... I'm most probably doing it wrong.
<DusXMT>mark_weaver: sorry, but I have no idea how to do those things you suggested... and even if I did, I don't have write access to the wip-hurd branch (or any remote guix branch, for that matter), I'm just a tourist really
<mark_weaver>basically, you'll have to edit the files where the merge conflicts occurred. there will be "merge markers" in there. ("<<<<<<" "=======" and ">>>>>>")
<mark_weaver>in each place where it couldn't do the merge, it'll show you the relevant bit from master and the relevant bit from wip-hurd. make the edits to incorporate changes in both branches and remove the markers.
<mark_weaver>then "git add <files>" for the files you edited, and "git rebase --continue".
<Sleep_Walker>it does not but you can alter your package definition easily
<Sleep_Walker>but you'll get unique hash for all the packages in dependency subtree
<mark_weaver>Digit: the most flexible way to make local modifications is by having a private git branch and periodically rebasing your changes onto our upstream (or merging upstream into your branch if you prefer)
<yang_>btw. 201408 encoding is plying very slow on my XBMC, while 201402 encoding of the GuiX video plays much better, maybe you'd want to re-encode the stream -0
<mark_weaver>Digit: the main thing is that USE flags would vastly increase the number of pre-compiled binaries we'd have to produce, or else anyone who played with those would lose pre-compiled binaries.
<mark_weaver>also, I should say that 'git pull --rebase && make' is quite easy, and much more flexible that USE flags.
<mark_weaver>Guix, as a package manager, is capable of flexibility far more than USE flags. packages are first-class objects in Scheme, and you can make procedures that take packages as arguments, modify them, and return new package objects.
<civodul>re VMs, probably, but i'm not sure what the problems are
<mark_weaver>civodul: two people have reported kernel panics while trying to boot the installed system for the first time in the VM (although the installer worked). and another can't get networking to work, although maybe that's because they invoked qemu incorrectly.
<mark_weaver>I guess these are probably user error, but it seems that users want to do this and are having trouble.
<mark_weaver>and I can understand why they'd want a way to try guix conveniently, without having to build 'guix' from the tarball, and without installing GuixSD on bare metal.