IRC channel logs

2014-04-07.log

back to list of logs

<davexunit>I still have a bit of work to do on man-db, the program is there, but it doesn't display man pages properly yet.
<davexunit>man-db apparently can work with a web brower. should I configure it to do so? perhaps with w3m?
<mark_weaver>hmm, that's strange
<davexunit>debian uses the www-browser virtual package in their recipe
<mark_weaver>I think by default we should configure it the way that people generally expect
<mark_weaver>but if you disagree, maybe post to guix-devel asking for opinions?
<davexunit>I agree.
<davexunit>I expect the less pager to be used.
<mark_weaver>or whatever PAGER is set to, right.
<davexunit>okay, man works now when I have the $PAGER environment variable set.
<davexunit>but it tries to use a web browser when it is not set.
<davexunit>this is not the behavior that I see on debian. I have no $PAGER variable and yet it uses less by default.
<mark_weaver>interesting. well, I wouldn't worry about it. we Guixers are accustomed to setting lots of environment variables to get things working properly :)
<civodul>Hello Guix!
<mark_weaver>hi civodul!
<mark_weaver>the python 3 ctypes module seems to be broken on MIPS. I tried upgrading to 3.3.5, to no avail :-(
<phant0mas>civodul: good morning
<phant0mas>the thing with the debian patches is that they are more like glue code
<phant0mas>they were created just to have a working distro
<phant0mas>going for a lesson
<civodul>mark_weaver: ouch
<civodul>darn, xorg borked
<civodul>have to reboot
<civodul>mark_weaver: can you post the details regarding ctypes?
<mark_weaver>I did
<mark_weaver>I have an idea what the problem is, or at least the start of an idea.
<civodul>ah ok
<mark_weaver>in Python-3.3.5/Modules/_ctypes/libffi/fficonfig.py.in, there's an 'ffi_platforms' variable that seems to consider n32 a possibility on IRIX, but not on LINUX.
<mark_weaver>(it seems to assume that on LINUX it will be o32)
<civodul>ahah
<mark_weaver>civodul: while we're messing with python, is there any reason not to upgrade it to 3.3.5 ?
<civodul>well, we could introduce new problems :-)
<civodul>we can try and see
<civodul>it tends to piss me off when i see software that hard-codes things like LINUX, IRIX, etc.
<civodul>mark_weaver: do you think we could s/IRIX/LINUX/ when we're on mips64el-linux?
<civodul>would that solve the problem?
<mark_weaver>I don't know, still investigating
<mark_weaver>I suspect it's looking for irix-specific preprocessor defines to determine the ABI.
<civodul>ok
<mark_weaver>grump. digging this deeply into python is not fun :-(
<mark_weaver>definitely lots of assumptions that N32 can only be used on irix
***tschwing_ is now known as tschwinge
<mark_weaver>wow, there's actually a libffi.diff file packaged with python, which patches libffi's configure script to change TARGET=MIPS to TARGET=MIPS_IRIX even in the cases where the target is mips*-*-linux* or mips*-*-openbsd*
<mark_weaver>what a mess
<civodul>argh
<civodul>but libffi does work with n32 on GNU/Linux nowadays, doesn't it?
<mark_weaver>yes, it works perfectly
<mark_weaver>well, at least I think it does
<mark_weaver>I suppose it's possible that python's test suite is testing things more thoroughly than libffi's tests or guile's tests.
<mark_weaver>hmm, I just noticed that we're still carrying a patch for libffi on MIPS n32, and that should be applied to the bundled copy of libffi in python.
<mark_weaver>although I doubt that's the problem in this particular case.
<mark_weaver>hmm, did I report this upstream?
*mark_weaver looks
<mark_weaver>ah yes, they already applied by patch as-is, but there hasn't been a release since then.
<mark_weaver>s/by/my/
<civodul>ok
<mark_weaver>well, I should apply this fix to the bundled libffi in python anyway.
<civodul>yeah
<civodul>BTW, thanks for reporting the fcntl-lock issue, i'll look at it
<mark_weaver>np!
<mark_weaver>civodul: btw, shouldn't linux-libre be upgraded to 3.13.7? I think there are a lot of important fixes in there.
<mark_weaver>anyway, time for me to sleep.
*mark_weaver --> zzz
<alirio>I hope hydra.gnu.org will use guix kernel soon, so we can reproduce it's config. Otherwise I think I'll rebuild everything to test the kernel.
<alirio>civodul: gmail's advanced algorithms detected I'm not me, so I can't use gnus. The web interface inserted a newline at the indented comment url and the line below so there's two lines not starting with ' ', '+' or '-'. I'll resend soon
<civodul>ok, thanks!
<Deepan>?
<Deepan>hello.. anyone?
<civodul>anyone!
***schjetne_ is now known as schjetne
<bavier>are we trying in general to prefer shared libraries over static libraries?
<civodul>bavier: yes
<civodul>it's an unwritten rule :-)
<bavier>ok
<bavier>I'm looking at the octave build failures
<civodul>i just nitpicked over your last patch
<civodul>ah, excellent
<bavier>oh, thanks for looking at it
<civodul>Steap, mark_weaver: do we upgrade Python? do we add some mips-specific hack? :-)
<civodul>now is the time to decide
<mark_weaver>civodul: I still need to figure out how to fix Python on MIPS.
<mark_weaver>for now, we could disable tests on MIPS
<mark_weaver>I think we should upgrade to 3.3.5, on the grounds that (I guess) such minor revisions are likely to be relatively safe bug fixes.
<civodul>ok
<civodul>i'll try that along with Steap's patch
<mark_weaver>patches/libffi-mips-n32-fix.patch should be applied to the libffi within python.
<bavier>octave should build now
<civodul>yaay!
<mark_weaver>I'm not sure how best to do that. we could either make another patch file just for python, or add a phase to python to apply the existing patch within a directory excursion.
<mark_weaver>bavier: that's good!
<mark_weaver>civodul: what's your opinion on how to apply the libffi patch to the bundled copy in python? (see my last message)
<civodul>lemme see
<civodul>mark_weaver: the former looks "nicer", but maybe it's less convenient (double diff)?
<civodul>WDYT?
<mark_weaver>dunno!
<civodul>well, can you try it this way? :-)
<mark_weaver>in general, I prefer for "guix build -S" to provide the actual source code that we use, so that suggests either another patch or a snippet. I'll do a patch for now.
<civodul>perfect
<mark_weaver>(I'd actually like to see us move in a direction such that "guix build -S" provides the _exact_ source that was built, to the point where it would be possible to build from an immutable copy of that source)
<mark_weaver>and such that it can be used for debugging
<civodul>well 'patches' and 'snippets' were added for that, but some of the patching can't really be done there
<civodul>because it's system-dependent
<civodul>at any rate, what guix build -S returns is suitable for debugging
<mark_weaver>okay
<mark_weaver>this case makes me realize that it would be useful to be able to specify a directory excursion when applying a patch in an origin, for the bundled library case.
<mark_weaver>although maybe this case is rare enough that it's not worth it (one can hope :)
<civodul>crossing fingers ;-)
<mark_weaver>:)
<civodul>i had a patch for phases in snippets, but i found it a little bit too complicated for what it's worth
<mark_weaver>we'd also need to be able to have inputs to snippets.
<mark_weaver>yeah, I guess the whole point of 'origin' is to cover most of the common cases in a simple way.
<mark_weaver>for rare complex cases, you can always make a full derivation.
<mark_weaver>civodul: btw, shouldn't we upgrade linux-libre to 3.13.7 ?
<civodul>yes, i think so
<civodul>(re origin)
<civodul>yes?
<civodul>why not
<mark_weaver>cool :)
<mark_weaver>3.13.7 (with Loongson patches) has been rock solid on my YeeLoong.
*civodul builds Python, then Linux-Libre
*mark_weaver builds python-3.3.5 with libffi patches on the Loongson 3A
<mark_weaver>I'd be surprised if it fixes the ctypes test failures, but it's worth a try.
<phant0mas>civodul: these macros are driving me crazy
<phant0mas>I can't find the macros anywhere but I still get the error that something tries to use it
<civodul>mark_weaver: 3.3.5 + patch builds fine here
<civodul>so i'll push that
<mark_weaver>okay
<civodul>phant0mas: did you try what i suggested (adding #error in *hooks.h to see where it goes)?
<mark_weaver>then I'll push the libffi patch for both python versions.
<civodul>ok
<Steap>civodul: maybe we should upgrade to 3.4
<civodul>maybe, but another day :-)
<civodul>for 0.6 it seems safer to stay with 3.3.5
<phant0mas>civodul:I tried it today but I am not sure I got it correctly
<phant0mas> I went to libc-symbols.h as you told me and added some #error messages to see if the hooks got defined
<phant0mas>but nothing came out
<mark_weaver>well, even with the libffi mips n32 patch applied, the ctypes tests still fail on loongson 3A :-(
<mark_weaver>surely those patches are still a good idea. they fix some problems, but apparently not all.
<mark_weaver>I'll have to try similar tests with Guile's FFI to attempt to see if the problem is in libffi or python.
<Steap>civodul: I'm afraid 3.3.5 won't fix your weird issues
<Steap>mark_weaver: it would help to know whether your issues on MIPS64 also hapen on a "normal" build or if they're related to Guix somehow
<mark_weaver>I'd be very surprised if these problems were related to Guix, but yeah, that should be checked at some point.
<mark_weaver>but first, I should find out whether the problems are in libffi.
<mark_weaver>actually, it occurs to me that I remember seeing some other failure in libffi's own test suite on MIPS that I never got around to investigating.
<Steap>mark_weaver: it'd be convenient to be able to just leave a bug report at python.org :)
<mark_weaver>*failures
<mark_weaver>we're effectively not running the libffi test suite in guix because dejagnu is not a native-input.
<mark_weaver>I may not have time to get to the bottom of this before 0.6 is out. we should probably just disable the test suite on MIPS for now.
<mark_weaver>Steap: another problem: on current master, python-3.3.3 fails to build on i686
<mark_weaver>on my i686 system, anyway.
<civodul>mark_weaver: but that's test_multiprocessing.py, right?
<civodul>that is now fixed (in my tree)
<mark_weaver>yes
<mark_weaver>okay, good
<Steap>mark_weaver: what does python -c "import platform; print(platform.machine())" return ?
<mark_weaver>civodul: to minimize the number of times python is updated, would you like to just disable python tests on mips for now, as part of your commits?
<Steap>(what archs do we support currently, btw ?)
<mark_weaver>(and then I can reenable them when I fix these things up)
<mark_weaver>Steap: x86_64, i686, mips64el
<mark_weaver>Steap: on which of my systems?
<mark_weaver>(on which system do you want me to run that command, I mean)
<Steap>on mips64el
<Steap>not sure whether I should disable the test on mips or enable it only on i686/x86_64
<Steap>though that's technically the same for the moment
<mark_weaver>Steap: mips64
<Steap>k, I guess I'll disable it on mips64; should it fail on other systems, we'll just add them to the blacklist
<mark_weaver>sounds good to me.
<civodul>mark_weaver: ok, will do
<mark_weaver>civodul: okay, but now Steap is talking about disabling just that one test on mips.
<civodul>ah ok
<mark_weaver>so you should coordinate with each other on this :)
<civodul>yup
<mark_weaver>civodul: I just checked, and on Debian Wheezy i686 with Guile 2.0.5, the entire guix test suite passes (current master).
<civodul>phant0mas: i was referring to set-hooks.h, i think: add #error foo after the #else
<civodul>mark_weaver: cool, thanks!
<civodul>i tested too, on gcc76.fsffrance.org
<mark_weaver>however, there are some things that fail to download, with completely empty .tar.bz2.drv.bz2 logs
<mark_weaver>well, let me try again in case it was just transient.
<mark_weaver>seems to be working now.
<civodul>ok :-)
<civodul>phant0mas: so the idea is to try that in a failed build tree, obtained with "guix build ... --keep-failed" and then "source environment-variables"
<civodul>not sure if i was clear
<phant0mas>I think you are, gonna try it right away
<Fulax>civodul: in order to bootstrap dmd, as there is no autogen.sh, I juste have to run autoconf?
<civodul>Fulax: autoreconf -vfi
<Fulax>civodul: thanks
*Steap is rebuilding Python
<civodul>Steap: i'll push within a few minutes
<Steap>civodul: what ?
<civodul>Python 3.3.5 + your initial patch
<civodul>is that ok?
<Steap>civodul: well, you still lack the fixes for mark_weaver's issues
<civodul>i know, but i thought you were making it a separate commit?
<Steap>oh
<Steap>I'm putting everything in a single one
<Steap>how bad is that ?
<civodul>that won't work because i'll push before you do :-P
<civodul>and it's better to keep them separate
<civodul>i'll stop hydra-evaluator in the meantime to we don't rebuild both
<mark_weaver>okay, let me know when you've pushed so I can test on the Loongson 3A
<Steap>ok, I'll rebuild on top of master once it's pushed
<Steap>ping me, ok ?
<civodul>ok!
<mark_weaver>I also have the push the commit for the libffi mips n32 patch (for both pythons)
<civodul>Steap: pushed
<civodul>mark_weaver: oh, right
<mark_weaver>okay, let me do mine next, and then Steap.
<civodul>fine with me
<mark_weaver>okay, mine is pushed. your turn, Steap!
<mark_weaver>Steap: ^^
<civodul>all this is very low-tech ;-)
<mark_weaver>heh :)
<Steap>hahaha
<phant0mas>civodul: there's something wrong with git fetch in guix
<phant0mas>it's not downloading the commit I want it to
<Steap>"Using a VCS, part 1: get on IRC with everyone"
<phant0mas>the file donwloaded from guix is different from the one in that specific commit number