IRC channel logs

2016-12-22.log

back to list of logs

<paroneayea>ooh there's a new guixsd release out? :)
***jz is now known as Guest4124
***jonsger1 is now known as jonsger
***jim_ is now known as jje
<baconicsynergy>paroneayea, yes :) installing right meow
<baconicsynergy>me setting up crypt/luks http://imgur.com/gallery/QMMtsAt
<NodeGuy>Hi, I'm new to Guix and just got it running successfully in Docker! I'm trying to install my first package and am stuck.
<NodeGuy>When I do it via the CLI, it works: "guix package -i gtk+". But when I put it into my config.scm (http://lpaste.net/350325) I get the error "guix/profiles.scm:196:8: Throw to key `match-error' with args `("match" "no matching pattern" "gtk+")'."
<mange>Remove the quotes from around it. In scheme code it's a symbol, which isn't quoted. To get it working you'll also need to add gtk (unquoted) in the (use-package-modules ...) at the top of that file.
<NodeGuy>Awesome, thank you!
<lfam>efraim: Thanks for figuring out the QEMU issue!
<lfam>efraim: I wonder, how'd you figure it out? I struggled with it for a few hours yesterday :)
<paroneayea>hi lfam
<lfam>Hi paroneayea!
<paroneayea>:)
<lfam>I'm very grateful right now that I've been running a private substitutes mirror. This mirror still has libgcrypt 1.7.3, which is needed to update a server that I rarely touch!
<jje>can not download mutt-1.7.2 from any mirror. is it possible for anyone to fix this?
<lfam>jje: What goes wrong?
<jje>504 Gateway timeout
<lfam>jje: Did you retry the command with '--fallback'?
<lfam>This will build things on your machine when something goes wrong with the substitution
<jje>just a minute, will try
<lfam>If the mirror doesn't have the substitute, and the server proxied by the mirror is so overloaded that you are getting 504, then I will be building mutt 1.7.2 soon myself :)
<lfam>I'm seeing 504 timeouts too
<jje>ok thank you!
<marusich>Congratulations on the release!
<Helius>I am trying to install an R package from inside R, the package is XML, I have install with guix (0.12.0) guix package -i guix pkg-config libxml2 r, R finds pkg-config and xmk2-config but later returns checking for xmlParseFile in -lxml2... no
<rekado_>Helius: what toolchain are you using?
<rekado_>Helius: (note also that you can install the package with “guix package -i r r-xml”)
<rekado_>the thing with using install.packages from within R is that it uses whatever toolchain is available on your system.
<rekado_>this means GCC, system linker, etc
<rekado_>and of course system glibc.
<rekado_>things linked with the system glibc won’t be compatible with things linked to the glibc in Guix.
<rekado_>as a result you wouldn’t be able to load them into the same R process.
<rekado_>if you really really want to use “install.packages” you need to make sure that R will use the gcc-toolchain from Guix.
<rekado_>the best way to ensure this is to run R inside a container in which gcc-toolchain is available along with all build time tools.
<rekado_>note that you’d lose the guarantees Guix provides, because install.packages makes no efforts to build things reproducibly.
<rekado_>for R stuff I find it most convenient to just import the packages recursively from CRAN/Bioconductor and install them via Guix.
<rekado_>Helius: here’s what I did:
<rekado_>guix environment --container --network r-xml --ad-hoc r gcc-toolchain
<rekado_>(i.e. create a container environment with network access where all dependencies of the r-xml package are available along with R and the GCC toolchain)
<rekado_>then inside of the container I ran R and told it to install the XML package (install.packages("XML"))
<rekado_>it then proceeded to use the GCC toolchain from Guix and find the dependencies for r-xml
<rekado_>I confirmed that everything is working by running “library(XML)”
<Helius>rekado_: thanks a lot I will try in few minutes. But how do you “handle” Rusers that want to install packages by themselfs?
<rekado_>you can achieve the same results with much less effort by just using r-xml from Guix, though: “guix environment --ad-hoc r r-xml -- R -e 'library(XML)'”
<rekado_>Helius: I usually don’t.
<rekado_>Helius: users who care about reproducibility will opt for installing everything with Guix.
<rekado_>Helius: those who don’t just use whatever R version the system provides.
<rekado_>they can also use a shared profile in which the GCC toolchain from Guix is available, but it’s a little too much friction for these odd cases.
<rekado_>importing packages from CRAN to Guix is a mere matter of minutes.
<Helius>rekado_: For me is not just a matter or reproducibility but also a fatc of portability where I can use the same software on different installation, our cluster is not completely homegeneous. Btw I still have problems with certificates, is it possible to “import” a package with from a R/package .tar.gz file ?
<rekado_>Helius: currently, the importers for CRAN and bioconductor take a package name only and look up additional info on the web.
<rekado_>Helius: we could change them to also support URLs (including file:// URLs)
<Helius>rekado_: sorry mac crashed
<ng0>lfam: wrt curl 7520, see cve-2016-9586 or the most recent mail on list [security advisory]
<ng0>or was this one of the actual fixes?
<ng0>no.. but we could apply the appended patch
<ng0>I can not come up with a weblink, it's one of those on openwall
<ng0>patch is at
<ng0>A [patch for CVE-2016-9586](https://curl.haxx.se/CVE-2016-9586.patch) is
<ng0>available.
<ng0>oh.. reading compentence 0 >.<
<ng0>that was one of the fixed cves
<ng0>would've been to easy
<ng0>so I continue to wait for what the undisclosed issue is
<thomasd>Hi, how do I create an additional profile that is not a per-user profile? (i.e. a profile to hold guix development packages so they don't accidentally get gc'ed)
<iyzsong>thomasd: `guix package -i <some-packages> -p <path-to-profile>` will does that, with adding a gc root into /var/guix/gcroots/auto.
<thomasd>iyzsong: thanks. I notice I already have something there (I remember I wanted to do that some time), but don't remember where I put that profile.
<thomasd>can I find out to which profile a hash in .../gcroots/auto belongs?
<iyzsong>yeah, the gcroot is actually a symlink to the profile.
<thomasd>ah yes, I see :-D
<thomasd>is it useful to `guix --upgrade` as root at some point (perhaps to upgrade the build daemon?)?
<thomasd>(running Guix on top of another distro)
<ng0>I think curl or hydra does not understand the 'substitute-for' thing we have for curl
<ng0>for their list it looks as if we still have 7.50.3
<Helius>Happy that with guix 0.12.0 the problem I had with x509 is solved in the end, nice
<dvc>possible patchshebangs bug, should it only replace when it's the first line of a file or throughout?
<sneek>Welcome back dvc, you have 1 message.
<sneek>dvc, nckx says: Bye, and thanks for all the help!
<dvc> https://github.com/riscv/riscv-gcc/blob/riscv-gcc-6.1.0/gcc/genmultilib#L158
<ng0>dvn: only the first line
<ng0>you can substitute this /bin/sh
***marxistvegan_ is now known as marxistvegan
<ng0>why is google a master in canceling things... I could use mp4v2 from code.google.com .. but now I have to find the correct source if there is one
<ng0> https://github.com/mp4v2/mp4v2 this is almost too obvious... it must be somewhere else
<ng0>one of the original contributors is on github I think
<ng0>okay I have libmp4v2 build and packaged, but I want to get feedback from upstream before I add the source, I'm not so positive about using code.google.com
<ng0>finished almost all TODO dependencies of libextractor, I just need to figure out the libmp4v2 situation
<efraim>Sneek later tell lfam I saw the build failure with s390x and I saw it used host-cc so I put that in and it just worked
<sneek>Okay.
<efraim>sneek: botsnack
<sneek>:)
<ng0>any idea why checking rpm/rpmlib.h presence... no still appears when I precisely point to the directory? Has anyone ever tested "rpm" as dependecy for other packages?
<ng0>some day I'll get this into libextractor
<nliadm>is there a way to allow 'make check' to talk to the internet? I get why it's a bad idea, I want to do it anyway
<Helius>I am packing an R package, rhdf5. I got /gnu/store/qkw4zrwfybxww8f56nkb6hggxambk89b-bash-4.4.0/bin/bash: ./configure: /bin/sh: bad interpreter: No such file or directory
<nliadm>did that script's shebang get patched?
<Helius>the build process start and apply the shebang to the files of the package, but the install process enters a directory which contains an archive. The system unzip it and the configure script into the archive has not been shebanged
<Helius>short story, there is a gzip that is unpackaed after shebang and a configure is called without shebang
<nliadm>does it unpack it even if it's already been unpacked?
<Helius>I do not know
<nliadm>because you could just add a step before the shebang patching to go unpack that inner archive
<Helius>nliadm: Could I unpack shebang and pack ?
<nliadm>could do that too, I suppose
<nliadm>I'm no expert
<Helius>the script remove the unpacked directory
<ng0>nliadm: no, when it's in the build system of guix that won't be possible
<ng0>if it's outside of it, that's up to you
<nliadm>fair enough
<nliadm>some of these just don't get tests, then
<ng0>what exactly is the problem?
<nliadm>for me, I'm packaging https://github.com/maxmind/geoip-api-c and its tests want to talk to the internet
<ng0>all tests?
<ng0>if so, you can just do something like: (arguments `(#:tests? #f ; Testsuite requires internet connection
<ng0>with closing parens of course
<nliadm>nice
<Helius>for me, that my R package unpack an inner archive that needs to be shebang otherwise it will run the standard /bin/sh, I guess I need to unpack the archive shebang it and repack to make it follow its own destiny
<ng0>I know nothing about R, sorry I can't help
<Helius>but about … unpacking a tar.gz before the shebang ?
<Helius>and after shebang repack/zip a speific directory ?
<Helius>that should be R agnostic
<nliadm>I mean, you can add phases: (arguments `(#:phases (modify-phases ...
<ng0>I'm not really sure if I understand you correctly, if it's possible for you and your intention is inclusion in guix master, can you prepare a patch with git format-patch and send it to guix-devel@gnu.org for quick review?
<nliadm>ng0: I think he's just trying to package something that has a weird configure script that's unpacking another archive
<nliadm>as a one-off thing, right?
<ng0>no idea..
<ng0>but you can invoke the shebang-patch phase on its own
<Helius>nliadm: you are right
<Helius>ng0 and nliadm I will look for that
<Helius>thanks
<nliadm>I figured out how to do it by reading source because I can't work emacs for shit
***bhenc_ is now known as bhenc
<nextos>Im planning to migrate to guix on a workstation i have, and i need CUDA drivers to do some GPU computing. How do Guix users generally deal with proprietary drivers and non-free software (which I don't support!)?
<nextos>I've seen e.g. rekado has a repo for some non free bioinformatics stuff
<nextos>at https://github.com/BIMSBbioinfo/guix-bimsb
<nliadm>I'm building something that requires curl, but libtool bombs out during compilation if cyrus-sasl isn't also an input. this is surprising
***GrimKriegor_ is now known as GrimKriegor
<ng0>nextos: it's undocumented and off topic for obvious reasons but if you search not very long with the right terms you can find how to get certain drivers to work and even the linux instead of linux-libre
<ng0>The store is immutable, if I do chmod u+s /some/files in a service activation, it won't be possible and I need to do this in the package definition, correct?
<nextos>ng0: thanks.
<ng0>cuda drivers are part of linux, or are they external included like some new wifi drivers?
<ng0>just curious
<nextos>ng0: no, they are shipped separately. This is how Arch packages them: https://wiki.archlinux.org/index.php/GPGPU#CUDA
<nextos>Most distros have a similar
<ng0>ah, ok
<nextos>arrangement
<nextos>some components are free, but drivers are closed source
<ng0>it's a problem that our ncurses does not install .pc files
<ng0>and our libnotify as well
<jmd>ng0: Personally I'm not a big fan of pkg-config
<jmd>Are you having trouble building something?
<ng0>yes, https://github.com/JFreegman/toxic/tree/master/cfg/checks
<ng0>oh our ncurses is named cursesw
<jmd>I don't think so.
<ng0>no, not the package the file
<ng0>we have no ncursesw
<ng0>just cursesw.h
<jmd>we have ncurses.h
<jmd>and libs for both the w and non-w variants.
<ng0>hrm. this package is almost complete. anyone interested in working on this? I'm away to friends soon
<sneek>I'll keep that in mind.
<ng0>sneek: forget t
<sneek>Okay.
<ng0>sneek: forget it
<sneek>Consider it forgotten.
<ng0>sent the package as a patch
<ng0>including a typo where it's not client but clien
<rekado_>sneek: later tell Helius rhdf5 is a bit anomalous. I would patch the libhdf5ForBioC.a target in src/Makevars to not unpack the tarball and unpack it in an extra build phase (after “unpack”). It’s pretty unusual to have modified upstream sources bundled as tarballs. I’m surprised this passed bioconductor peer review.
<sneek>Will do.
<rekado_>sneek: what is hrm. this package?
<sneek>I could be wrong, but hrm. this package is almost complete. anyone interested in working on this? I'm away to friends soon
<rekado_>sneek: forget hrm. this package
<sneek>Consider it forgotten.
<rekado_>sneek: what is hrm. this package?
<rekado_>sneek: botsnack?
<sneek>:)
<ng0>sneek: you are one odd bird
<efraim>sneek: what is the cake?
<sneek>Its been said that the cake is a lie
<Sleep_Walker>it's a bit surreal here
<efraim>one of the video packages bundles ffmpeg, which we untar, play with, and re-tar
<rekado_>sneek later tell nextos You can use Guix as a package manager on top of any other distro (including Arch).
<sneek>Will do.
<ng0>sneek: the pudding is more liquid lies than the cake
<sneek>So noted.
<ng0>sneek: what is the pudding
<sneek>Someone once said the pudding is more liquid lies than the cake
<ng0>ah... now I get why sneek does this
<jmd>sneek: Why do you talk so much rubbish?
<ng0>good... I noticed this in august only to discover the issue again of ncurses and friends https://github.com/JFreegman/toxic/issues/405
<ng0>both suggested commands I only discovered now, give "error"
<ng0>maybe I can make pkg-config just ignore this
<ng0>and not error on not found
<davexunit>Guix is on the HN front page
<davexunit>could a core dev correct the misinformation in comments there?
<davexunit>I'm on a phone and can't write long responses easily.
<davexunit> https://news.ycombinator.com/item?id=13238115
<jmd>Is there a way of knowing the size of a disk-image in advance?
<davexunit>people are saying things like Guix not being usage in production and being way behind nix
<davexunit>used*
<nliadm>the only thing I've missed in guix is a go build system. I might take a stab at it after the holidays
<ng0>it's being worked on as far as I read it
<ng0>but help is welcome as far as I read Petter's take on it
<nliadm>oh really? I suppose I should make sure to dig around on the list first
<ng0>it's in Add syncthing or whatevcer it was I guess. I have to go now. good night
<jmd>Anyone know of an easy way to merge two branches in our repo?
<rekado_>jmd: git checkout final; git merge the-other-branch — now the-other-branch is part of the branch “final”.
<jmd>But then how can one push it?
<rekado_>jmd: is there a complication you didn’t mention? After the merge you can just “git push origin final”.
<jmd>If there are n changes in the other branch, I'll have to sign them all.
<taylan>is it possible to have a package build in an environment where TMPDIR isn't and doesn't begin with /tmp? Leptonica's issue where TMPDIR="/tmp/foo" causes failures has been fixed upstream but the patch can't be applied to 1.73 so I'm pondering how to just work around it for now during build. (the bug also affects users I think, but I wish not to spend time trying to adapt the patch to 1.73 so I
<taylan>hope not many people use a subdirectory of /tmp as TMPDIR...)
<taylan>absolute worst case I'll disable the test suite
<rekado_>jmd: if the n changes in the other branch are not your own you wouldn’t sign them (they should be signed already). You would only sign your merge commit.
<rekado_>(I could be wrong here)
<jmd>rekado_: It would seem not. I have to sign every single commit :(
<efraim>are you rebasing instead of merging?
<jmd>No. Merging.
<jmd>Anyway I've cheated and just recreated the branch.
<taylan>rekado_: 0.12.0 officially supports Hurd? (asking to update Wikipedia...)
<taylan>rekado_: thanks for the release and all other amazing work by the way :)
<rekado_>taylan: thanks. Ludo really helped *a lot*, I mostly just reported problems :)
<rekado_>taylan: re Hurd: Manolis submitted commits that make bootstrapping a native Hurd system possible.
<jmd>rekado_: What do you think needs to be done to streamline the "release" process?
<rekado_>see git log v0.11.0..HEAD --oneline | grep -i hurd
<rekado_>jmd: this time it was a little bumpy because there were problems building the tarballs for mips and armhf.
<rekado_>ideally we would just build these things continuously
<jmd>Can't those things be built by hydra?
<rekado_>another thing that was unexpectedly manual was generating the official announcement. We already have code snippets in release.org that could be tied together to generate a decent announcement without having to copy, adjust, and eval the snippets one by one.
<rekado_>the NEWS file is another thing that took time, but it wasn’t really *that* bad.
<rekado_>some more problems were my inexperience with gnulib and the fact that our build-aux directory doesn’t contain all the things that are needed to make a release.
<rekado_>I’d like to discuss these things at FOSDEM (which will also be close enough to the time of the next release)
<jmd>Sounds like the ./bootstrap script needs attention.
<baconicsynergy>greetings guix :) I just installed guixsd on my cr-48 chromebook as my main driver now :)))))
<rekado_>updating the website was a little painful too, but I think that’s because I didn’t expect CVS to behave the way it did.
<rekado_>(it didn’t add all the new manual pages, but updated those that had changed only)
<jmd>That could be scripted I think.
<rekado_>yes, that would be nice.
<rekado_>I actually think it would have helped me a lot if release.org were a literate programme
<taylan>is there a reason the About page <http://www.gnu.org/software/guix/about/> states that GuixSD is a "GNU/Linux distribution" rather than a GNU distribution (that uses Linux-libre by default)? a certain anti-GNU zealot on Wikipedia seems to use it for justification to call GuixSD a "Linux distribution", since Wikipedia has a policy to call GNU/Linux distributions "Linux distribution".
<rekado_>it’s good that it’s not fully automated (because it made me double check my actions), but it would be great if I could read a section and then run its associated scripts to get that step mostly done.
<rekado_>taylan: I don’t know if changing this would help with Wikipedia zealots.
<taylan>it might help a certain zealot *cough cough* to counter-zealot them :P
<rekado_>:)
<taylan>but I probably shouldn't sink too much time into this *sigh*
<baconicsynergy>but... it *is* a GNU distribution
<baconicsynergy>THIS I CANNOT ABIDE
<jmd>Festival i a beast to package.
<rekado_>davexunit: I made a couple of comments on that HN thread.
<davexunit>rekado: thank you