IRC channel logs
2013-10-16.log
back to list of logs
<civodul>bavier: i just let your messages to guix-devel go through <civodul>something's broken with the moderation these days <civodul>normally it just takes a few hours and i don't have to do anything <Steap>How does one install the debug packages ? <Steap>I'd need to run gdb on a program installed through guix <civodul>but that package has to have a "debug" output <mark_weaver>is there a way to unpack the source tree with all the relevant patches and substitutions, such that it matches what was compiled? <civodul>mark_weaver: for patches yes, that was the purpose of the recent change <mark_weaver>one more question: after I finish building new bootstrap tarballs, what is the right way to start a rebuild based on the new tarballs? will it happen automatically? <bavier>ugh, so sorry about the spam on guix-devel <Steap>bavier: took a quick look, you got the Copyright line wrong :) <mark_weaver>or do I need to erase /nix/store and the DB and start from scratch? <civodul>Steap: yeah, just replied to that one <civodul>mark_weaver: it will happen automatically <civodul>unless they are bit-for-bit identical, of course <bavier>Steap: ouch, ok, I'll look at it <mark_weaver>how does that work? every time I builds something it tries to fetch bootstrap tarballs from the server? <mark_weaver>well, I guess the binaries in gnu/packages/bootstrap/*/ will be different, so I guess that's enough. <civodul>mark_weaver: no; bootstrap.scm tells where the bootstrap tarballs are, and what their hash is <mark_weaver>so I guess I could keep a 'guix' build directory around with the old bootstrap tarballs, while waiting for the new one to build. <mark_weaver>one thing I don't understand though: how can we upgrade the x86_64 bootstrap tarballs without making breaking guix 0.4 ? <civodul>so we'd keep x86_64-linux/20130105, and add x86_64-linux/20131011 <gzg>On my Debian Stable box, will I be missing anything big -- if I don't go Guile 2.0.9, in terms of Guix's feature-set? <gzg>Can I get something I build via the pre-inst-env in my actual guix profile? <gzg>Guix pull still isn't working on my install and the git repo might be more ideal anyway, until a solid live-image is released, :^P <gzg>civodul: You actually caught me right before I was about to take a nap -- fyi though, later I plan on posting about kbd.scm to the guix-devel list... since the other didn't ever get to bug-guix. :^P <civodul>it's only the first post that takes time normally <gzg>civodul: Cool, thanks; I'll look more into it when I'm a bit more awake. :^) <gzg>Okay, I'll be back later today/tonight. Peace people o/; AFK. <a_e>civodul: Hydra has more problems... <a_e>hydra-evaluator was not running, so I started it. <a_e>Now, there are evaluation errors again. <civodul>what makes you think it wasn't running? <a_e>ps -ef|grep hydra-e did not find anything. <a_e>In glib, there is a test "network-address" that fails now. <a_e>Yes, in i686 and x86_64. It does not fail on my own machine, though. <a_e>Could there be a problem with outgoing network traffic? <a_e>The "evaluation error" message is related to not being able to update the git repository, I think. <Steap>a_e: took a look at evince, it segfaults/sigtraps on my machine <Steap>I've been debugging this a bit, will write an email about that tonight <a_e>Now there is a very strange error on the harfbuzz build. <Steap>but yeah, it's too bad that after packaging all these GNOME packages, we can't use applications, that's a bit frustratring <civodul>oh, we have GNU Make 4 with Guile support in core-updates :-) <Steap>(I got the same kind of errors with eog) <civodul>actually pavucontrol and geeqie work fine :-) <civodul>mark_weaver: did you find out anything more about GLib's 'network-address' test failure? <mark_weaver>I didn't investigate any further, since reporting some partial findings here on #guix. <mark_weaver>I switched gears and started building native bootstrap tarballs. <mark_weaver>gmp 5.1.3. apparently 5.1.2 generates "garbage" results with low probability :) <mark_weaver>it's great that icecat has finally been updated, though. <zacts>mark_weaver: hey, I'm about to re-checkout my git tree now <ArneBab_>USE flags for functional package management: like having a list of globally set keyword arguments. If a package has that keyword argument, it gets set to the global value. <ArneBab_>I do not have time to discuss this, but I had to et it out of my mind - and the best way to do that is to pass it on to people to whom it can be useful <alip2890>I made a few changes on a separate branch and didn't pull master since then. how is the usual procedure? pulling into master, merging the branch, and then formatting the patch? <Steap>alip2890: I usually git checkout master && git pull origin master && git checkout mybranch && git rebase master && git format-patch <mark_weaver>from your branch, you can just do: git merge origin/master <a_e>Rather: Pulling in master, and do a "git rebase master" in your new branch. <a_e>"rebase" puts your own commits on top of those found in master. <a_e>I think "merge" created a new commit with the merge. <a_e>Yes. But in my own branches there are usually just a few commits (like one for a new package) that I wish to put on top of master. <mark_weaver>I don't think that switching back and forth between the branches is optimal, though. <a_e>We merge between core-updates and master, which looks reasonable. <mark_weaver>I think perhaps "git rebase origin/master" is a simpler and more efficient way to do what a_e is talking about. <mark_weaver>it's possible that a "git fetch" might be needed somewhere, I'm not sure. <a_e>mark_weaver: Probably so. I suppose one could also work more on branches without checking them out. <mark_weaver>I use the "git-new-workdir" script (which comes with git) extensively, which allows me to have multiple working directories, each on a different branch, but sharing the same underlying git repo. <zacts>make failure with the latest git pull <mark_weaver>For my guile repo, I have a whole bunch of working directories created that way: guile-stable-2.0, guile-master, guile-my-foo-branch, etc.. <a_e>There has been a commit today that forces you to do a "make clean; make". <a_e>mark_weaver: Sounds interesting! <a_e>So this means you do not need to stash all these changes to different working directories? <mark_weaver>right. the big win is that it minimizes the amount of needless rebuilding. <mark_weaver>I can have my private branch in one workdir, and then if I realize I want to make a change to stable-2.0, I can do that in a separate directory without disturbing my private work-in-progress. <Steap>a_e: having to run "make clean" is a bit annoying :/ <mark_weaver>a_e: the git-new-workdir script is in git-*/contrib/workdir/ <Steap>zacts: I told myself that once, I still don't get it. <zacts>I have those advanced git o'reilly videos <zacts>a_e: after make clean ; make I'm still getting the same error <mark_weaver>I can reproduce that 'parse-date' from (web http) does not like the string "Sun, 13 Jan 2013 23:27:39 UTC" <zacts>I wonder if you can git bisect this bug <zacts>mark_weaver: I may be, I'm on my college's wifi. <zacts>is there a command I can issue to find out? <mark_weaver>alpha.gnu.org does *not* send UTC in the date header. instead, it sends: Date: Wed, 16 Oct 2013 18:53:31 GMT <mark_weaver>I think that there's some web proxy between you and alpha.gnu.org that's changing the headers <zacts>Date: Wed, 16 Oct 2013 18:55:41 GMT <mark_weaver>do you have the 'http_proxy' environment variable set? <mark_weaver>well, that's bizarre. I don't know where the UTC came from. <mark_weaver>I wonder if it's in violation of the relevant RFCs, or if we need to improve our http date header parser. <mark_weaver>well, I just checked RFC 2616, and indeed "UTC" is a violation of that RFC. it must either be "GMT" or a 4-digit number. <mark_weaver>zacts: maybe try again? perhaps it was some kind of fluke? <zacts>I'm doing: git checkout master; git branch zacts; git checkout zacts; ./bootstrap; ./configure; make. <zacts>I'm still getting the same error <zacts>if that works, then maybe I can bisect it. <zacts>otherwise I guess I could ssh forward my connection through my box at home <zacts>which for sure is not behind a proxy <mark_weaver>zacts: in the 'wget' output, I should have asked you to look at the "Last-Modified" header. what do you see there? <mark_weaver>I see "Last-Modified: Sun, 13 Jan 2013 23:27:39 GMT", which is identical to the string in your error message, except with "UTC" instead of "GMT". <zacts> Last-Modified: Sun, 13 Jan 2013 23:27:39 UTC <mark_weaver>ah, so I guess you must be behind a proxy that's violating RFC 2616 :-( <mark_weaver>it's not going to help to try a different version of guix. <zacts>all I need to do is figure out how to forward my web traffic through ssh <zacts>I forgot how to do it, it's been so long <mark_weaver>for now, it might be easier to just modify Guile's web/http.scm to accept UTC. <zacts>mark_weaver: I don't think I have to set up a proxy server on my home box <mark_weaver>but if you get it working, let me know how you did it. <mark_weaver>when I need to do this, I set up an ssh tunnel to 'polipo', a lightweight proxy, on my server. <mark_weaver>and then set 'http_proxy' to point to localhost:PORTNUM <mark_weaver>keep in mind that it won't be enough to hack the download for this one file. the guix downloader is unlikely to work at all from behind that broken proxy server. <alip2890>aah, I can see Torvalds laughing at the horizon, for he invented a real git <mark_weaver>ah, I didn't know about ssh -D. However, I don't think that SOCKS is supported by guile's web client. I think it only supports standard http proxy servers. <mark_weaver>actually, iirc, I think I didn't add proxy support to guile until after 2.0.9 was released. <zacts>mark_weaver: what ports would guile use for proxy? <mark_weaver>recent guile looks at the 'http_proxy' environment variable. <mark_weaver>zacts: sorry, I can see that support for HTTP proxies wasn't added until after 2.0.9 was released, and it's not in guix either. <mark_weaver>zacts: well, here's your best shot for now: you can manually download the files that guix needs, and then insert them into the store using: guix download file:PATHNAME <civodul>not sure if we could have a quick workaround for Guile <= 2.0.9 <mark_weaver>civodul: I'm not sure if you read the beginning of this discussion, but zacts' college has a transparent web proxy that munges the "Last-Modified" headers to end with "UTC" instead of "GMT", in violation of RFC 2616. <mark_weaver>I'm tempted to make guile's web client permissive in this case, and accept "UTC". <mark_weaver>but of course that won't help zacts until guile 2.0.10 is released. <zacts>there are also openssh virtual private networks <zacts>but I don't want to fiddle with it right now. just a sec. I may have some internet on my cellphone. <civodul>mark_weaver: ah yes, i'd make Guile's client more permissive <civodul>a_e, mark_weaver: i just emailed my findings about GLib's test failure <zacts>unfortunately, I don't have internet on my phone right now <zacts>it sucks to have to work around bugs <mark_weaver>civodul: ah, good. thanks for including your test code; it's quite useful for teaching us how to debug similar problems :) <civodul>well i was pretty clueless, so i used brute force :-) <mark_weaver>I'm surprised that the build environment doesn't have 'lo'. in fact, I thought I remember seeing in the strace output that is *does* have 'lo <civodul>i wouldn't be surprised if this changes between kernel versions... <mark_weaver>civodul: nix/libstore/build.cc line 2075 tries to set up "lo". <mark_weaver>IMO, the build environment *should* have lo, for testing purposes. <civodul>that if_indextoname succeeds clearly leads to the assertion failure in network-address.c <mark_weaver>or at least I strongly suspect that it should. I'd like to know why it doesn't. <mark_weaver>maybe there's something wrong in build.cc, such that "lo" is not getting set up properly. or perhaps it's a kernel bug. <mark_weaver>of course, I'm not necessarily opposed to working around the problem for now by disabling the test, but I suspect the real problem is either in build.cc or the kernel. <zacts>well I guess I will work on guix when I get home. for now I'm going to do the little schemer <zacts>let's see if I can complete the whole book today <civodul>mark_weaver: or could it be that it has a weird index? <zacts>mark_weaver: I own all three books <zacts>but I've never read them yet <zacts>*but I haven't read them yet <zacts>have you read the third one? <mark_weaver>the third one is quite different from the other two. it's not so much about "normal" scheme programming, but about a logic programming system called "mini kanren" that can be very easily built on top of scheme. <zacts>oh cool, yeah it looks really interesting. I can't wait to finish them. how long did it take you to finish all three? <civodul>i'm a bit frustrated because i never found an occasion to use minikanren in the real world <mark_weaver>I don't do much logic programming, I confess, but when I do, I want to use kanren for it. <mark_weaver>I don't remember, it was so long ago. and I was probably doing many other things is parallel with working through them. <a_e>civodul: How could it be build.cc if the tests succeed on pur own machines and not hydra? The kernel sounds more likely then. <zacts>well, ttyl - /me has some reading to do <zacts>and mind pretzels to navigate through <a_e>mark_weaver: But your machine is weird ;-) <a_e>Logically, it needs to be something that varies across machines, and build.cc does not. <mark_weaver>well, it's possible that build.cc uses an unreliable method to set up "lo".