IRC channel logs

2018-06-20.log

back to list of logs

<mbowcutt>wpa_supplicant is not in my path on a fresh GuixSD image
<mbowcutt>I'm trying to install and set up wireless connection
<mbowcutt>the reference manual says the location of wpa_supplicant is not important. But how can I start the wireless service?
<mbowcutt>Also, there's no wifi interface listed.. tht sounds like a bigger issue
<snape>mbowcutt: indeed, it may mean that your wifi card isn't supported by linux-libre
<snape>i.e. it requires non-free blobs
<pkill9>am i supposed to install xf86-video-nouveau to use the nouveau driver ?
<vagrantcish>so, trying to package a u-boot variant not in mainline u-boot ... i point the source to the git url, and everything goes fine, except it fails to build, seemingly missing a bunch of include files ...
<vagrantcish>but when i do "guix environment --container" and run the commands manually, everything works fine.
<apteryx`>Hello! Why is my guix-daemon using /usr/local/etc/guix instead of /etc/guix, and how can I fix this?
<vagrantcish>what would be present in "guix environment --container PACKAGE" that wouldn't be with "guix build PACKAGE" ?
<pkill9>ignore my nouveau question
<nckx>apteryx`: 1. Because the defaults are silly for historical reasons. 2. With ./configure --sysconfdir=/etc --localstatedir=/var.
<nckx>If you've already done so: no idea.
<apteryx`>nckx: But if I used the official 'guix pull' to deploy versions of guix, shouldn't that override whatever I could ever have done when playing with the guix source code? And a 'guix pull'd guix should use /etc/ out of the box, no?
<apteryx`>also, how do I get the manuals for linux system calls available on GuixSD?
<nckx>apteryx`: Perhaps you're running a different daemon than you think? I can't help with ‘guix pull’ since I've never really used it.
<nckx>apteryx`: See the ‘man-pages’ package.
<nckx>Even better: s/See/Install/
<apteryx`>nckx: thank you!
<pkill9>is there any free software that can be used to test icedtea with lwgjl?
<pkill9>basically test the 3D graphics capabilities of icedtea?
<pkill9>so i can see if anyone else can reproduce an issue with it
<nckx>I had to look up lwjgl (sic) so I'm out.
<RetardedOnion>what do i do to install grub on efi? i specified grub-efi-bootloader and /boot/efi as the target. it says "failed to get canonical path of /boot/efi" which i never encountered
<pkill9>guix i'll have to make a package for lwjgl and use one of it's demos
<nckx>Guix so.
<nckx>(bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (target "/boot/efi"))) has always worked flawlessly for me.
<nckx>It sounds like your EFI system partition isn't mounted or not at the point where GRUB expects it to be.
<nckx>Is /boot/efi mounted? Are you still in the installation environment? Recent installers have a bug where they expect the EFI system partition to be mounted at /boot/efi, not /mnt/boot/efi which would make more sense.
<RetardedOnion>i have my /dev/sdb1 (which is the $esp) mounted at /mnt/boot/efi. i am booted in the install env.
<RetardedOnion>so umount esp and mount at /boot/efi(which should not be empty?
<nckx>Try mounting it at /boot/efi instead.
<RetardedOnion>will try
<nckx>For what it's worth, that bug has been fixed in the upcoming release.
<nckx>And it won't affect the installed system.
<RetardedOnion>i expect issues. its beta and i am an arch user. i cant help programming but i will be helping at the software availability. i think the whole system is a great start at packagemanagement which does not suck. i wonder why i didnt find it earlier
<RetardedOnion>there is no password set for your user by default?
<pkill9>no there isn't, you set it with passwd
<pkill9>you can specify one in the config but that's obviously a security risk
<RetardedOnion>i think i just got the beta experience... well it could be asked when you guix system init /mnt/etc/config.scm /mnt
<nckx>Guix has its fair share of suck, like all software, but it's a promising attempt at managing the suck.
<RetardedOnion>i think i expressed that already. also: why no networkmanager for xfce?
<nckx>“The ‘root’ password in the new system is initially empty; other users’ passwords need to be initialized by running the ‘passwd’ command as ‘root’, unless your configuration specifies otherwise (*note user account passwords: user-account-password.).”
<nckx>If you missed that or think it could be improved, please shoot an e-mail to the list.
<RetardedOnion>oh yeah. mail lists. generally the installation could be very much more simple for new users with a small ncurses interface... though it is easy if you understand the concept
<nckx>There's an unfinished installer but I don't think it's seeing much development at the moment.
<nckx>Aw yiss. Mail lists ♥
<pkill9>RetardedOnion: you want network-manager-applet
<RetardedOnion>i have way too much time in the next few months. i will create the packages i need, if they are gpl i will submit them. i will then look at the ncurses installer... probably
<RetardedOnion>pkill9: yeah i know. thanks anyways
<rekado>the packages don’t need to be under the GPL.
<rekado>They only need to be free software.
<RetardedOnion>rekado: i dont know how free software "ungoogled-chromium" is
<RetardedOnion>is there an easy way to search for packages?
<pkill9>guix package --search and guix package -A
<RetardedOnion>pkill9: thanks
<very>I have a quick question concerning program packaging under Guix.
<very>I'll soon be releasing a program that uses some libraries I've also written. I'm using a sh program to launch it and I'd prefer it to be the same across GNU/Linux systems; it works relative to the user's home directory. My question is if Guix permits packages that add a directory to the home directory, when it's necessary.
<very>This is the most natural fit, with what I want to do with the libraries, which I'd prefer be separate packages.
<apteryx`>very: many programs already add stuff to a user's $HOME directory, such as Icecat (.mozilla) and countless others.
<apteryx`>so I don't see why your program shouldn't be allowed to.
<very>So, there shouldn't be an issue, then; I just thought I'd make certain.
<very>I appreciate it, apteryx`.
<apteryx`>you're welcome!
<very>I'll soon have some nice stuff available; Guix will be my first priority for package managers.
<very>Well, goodbye for now.
<apteryx`>Got `guix offload' to work! woohoo! :)
<brendyn>Thanks to Julien for fixing faba icon theme, I was just about to make a patch for it!
<hoebjo>After "guix pull", "guix system" cannot be found. This was also reported on mailing list. But what is the solution to that?
<efraim>The quick work around is 'guix environment guix -- guix system ...'
<hoebjo>efraim: Ah, good idea. Will try that out.
<hoebjo>efraim: Probably guix environment --ad-hoc guix ...
<civodul>Hello Guix1
<sneek>Welcome back civodul, you have 1 message.
<sneek>civodul, wingo says: i used to!
<civodul>hmm? :-)
<wingo>ah that was regarding gdb backtrace things
<wingo>can't find it atm tho
<civodul>oh i see
<snape>civodul: here https://gnunet.org/bot/log/guix/2018-06-18#T1738636 you told me why hydra failed to build guix-modular. I said I understood but in fact I don't. What are those two different guix modules you are talking about? To me there is only one: the one that is passed as an input.
<snape>It's probably too obvious, but to me everything being compiled comes from the --fresh-auto-compile option in hydra-eval-guile-jobs.in
<snape>but if it's the case, then I don't understand why it would work with other kinds of jobsets
<civodul>ACTION look
<civodul>+s
<civodul>snape: --fresh-auto-compile is one thing, indeed
<civodul>the other thing is that (i think!) AddBuilds.pm always passes "-I /path/to/checkout" to hydra-eval-guile-jobs
<civodul>consequently, hydra-eval-guile-jobs always adds that to %load-path
<civodul>meaning that we end up loading Guix modules from the fresh checkout
<civodul>whereas the intent is to use whatever Guix happens to be installed
<snape>civodul: but that's what we do for Cuirass isn't it? Don't we use the fresh checkout modules?
<civodul>i think we need to be more precise :-)
<civodul>guix-modular.scm is intended to use whatever guix modules are available
<civodul>not those from the checkout
<civodul>and then, the job of guix-modular.scm is to build the checked out guix, of course
<civodul>does that make sense?
<snape>in evaluate.in, we chdir 'source', and then append load-path with '.'...
<snape>but it's appended, right? so it's at the end and the available (compiled) modules are used instead?
<civodul>we don't add "." to %load-path, AFAICS
<civodul>unless the spec explicitly asks for it, as is the case with the spec that runs gnu-system.scm
<civodul>ACTION goes afk for a while
<snape>civodul: in maintenance/.../services.scm, #:load-path is set to '.'
<snape>for the guix-modular spec
<snape>and that #:load-path is passed as an argument to evaluate.in, so IIUC we do add '.' to %load-path
<snape>and '.' isn't compiled (because of the #:no-compile #t), so to me it's more or less the same behaviour as with hydra
<snape>the only difference being --fresh-auto-compile
<civodul>snape: hmm hmm, indeed
<civodul>so i've been saying stupid things all along? :-)
<civodul>so you're right, the difference is --fresh-auto-compile
<civodul>weird
<snape>:-) is it complicated to patch hydra?
<civodul>well :-)
<civodul>ok
<civodul>so we'd just remove --fresh-auto-compile, is what you're saying?
<civodul>that's something i can do
<civodul>gnu-system.scm forces %fresh-auto-compile anyway so it won't see the difference
<snape>of course I'm not sure, it's my understanding of the code. You know it better than me, and I don't know the implications of removing fresh-auto-compile
<snape>also, I still don't undersand why it work with other evaluators than guix-modular.scm then
<snape>*works
<roptat>civodul: I'd like to help with fixing build errors, but I'm not sure where I should look for a list of failing packages?
<roptat>hydra is a bit hard to navigate as it timeouts regularly
<snape>roptat: there is 'hydra' :-)
<civodul>snape: trying it now
<civodul>snape: the bottom line is, i'd rather direct efforts to Cuirass
<snape>civodul: of course. I'm trying to understand how Hydra works in order to understand Cuirass better, that's all.
<civodul>np :-)
<civodul>roptat: hydra is what we have for now, but perhaps with some enhancements to Cuirass and/or 'guix weather' we could get similar info
<snape>roptat: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=31910
<roptat>thanks
<RetardedOnion>how do you create the sha256sum for a package? sha256sum file, right?
<Copenhagen_Bram>hello Guix. I am making a package for https://notabug.org/elonsatoshi/sleepuntil.
<Copenhagen_Bram>RetardedOnion: ooh thanks, i'll try that i was going to skip the sha26 sum
<RetardedOnion>well it says that i have an invalid base32 character. so i dont know if that helps
<snape>RetardedOnion: guix download <source>
<Copenhagen_Bram>guix download: error: git://notabug.org/elonsatoshi/sleepuntil.git: download failed
<RetardedOnion>does the package get installed when i do guix package -f file of do i have to do anything more?`
<snape>Copenhagen_Bram: I'm not sure it supports git
<pkill9>yeah i don't think it supports git
<pkill9>ACTION needs to add more package templates to his package definition generator
<Copenhagen_Bram>snape: so why does it support git as a source when writing a package? according to an example package
<snape>Copenhagen_Bram: otherwise, you can just 'guix build package', and the error message will give you the downloaded sha256sum
<pkill9>ACTION also perhaps should rewrite it in guile
<Copenhagen_Bram>snape: i'm trying to create a package
<snape>Copenhagen_Bram: Yes, so you may try to build it :-)
<roptat>Copenhagen_Bram: put a random hash from another package, try to build it, see it fail and correct the sha256
<Copenhagen_Bram>pkill9: what's that? can it help me build my first package?
<roptat>guix build builds the package and returns its store path
<roptat>it doesn't install anything
<pkill9>Copenhagen_Bram: it basically uses `guix import` and adds some boilerplate (i think that's the right term)
<roptat>oh, sorry, I misread :)
<pkill9>but i saw someone else's package generator which fills out a predefined template, rather than using `guix import`
<pkill9>which would be good for more complex templates, like generating a package definition that replaces an input with a custom one, or adds a configuration flag, also to use git
<RetardedOnion>how do i install a package from a file? is ist just guix package -f file? do i suck at copy pasting?
<pkill9>Copenhagen_Bram: https://gitlab.com/pkill-9/guix-multitool/blob/master/guix-module-creator.py
<rekado>pkill9: need to sign in to see this.
<pkill9>oh i thought i changed that
<rekado>pkill9: would it not be possible to add these features to “guix import”?
<snape>Copenhagen_Bram: the official source of your package is on Github though
<pkill9>yeah but at the time i knew very little about guile and just wanted to get something working that i could use
<Copenhagen_Bram>snape: what does that have to do with anything?
<snape>well, if you want to package it, you've got to use the official source
<snape>I mean if you want to contribute it to Guix
<snape>that's all
<pkill9>ok i changed the permissions, now it's accessible to the public
<Copenhagen_Bram>Define official. hmm.
<snape>well, yours is a mirror
<snape>seems clear to me
<Copenhagen_Bram>oh
<Copenhagen_Bram>would it be fine then if i cloned it without checking mirror?
<snape>I don't understand what you mean
<pkill9>it also makes it so it doesn't re-download files if they've already been downloaded when it runs `guix import` :3
<Copenhagen_Bram>well when i cloned it from github, there was a checkbox to determine whether or not it was a mirror. I wasn't sure what it meant. What's the difference between cloning a repo and cloning it as a 'mirror'? But I checked the box. Now you're telling me it's not official because it's a mirror. So maybe I could clone it again and make it not a mirror.
<snape>Copenhagen_Bram: what checkbox are you talking about? I've never seen such checkbox
<janneke>o/
<snape>o/ janneke
<rekado>Copenhagen_Bram: the point is that “https://github.com/alexmbird/sleepuntil” appears to be the official origin of this project.
<rekado>when we package things we usually take the sources from the upstream repository.
<Copenhagen_Bram>snape: nvm i'm just nitpicking and looking for a loophole for no reason
<snape>haha np :-)
<Copenhagen_Bram>my apologies
<Copenhagen_Bram>rekado: hmm, well I think the upstream repository is unmaintained. I decided to clone it in case I ever decided to work on it
<Copenhagen_Bram>the last commit was in 2017
<snape>and did you work on it?
<Copenhagen_Bram>anyways if i actually succeed in making a package, i'll change the source to github and contribute it
<Copenhagen_Bram>snape: no? i just cloned it a few minutes ago
<snape>nice, good luck then :-)
<snape>oh ok
<Copenhagen_Bram>thanks for the good luck
<Copenhagen_Bram>guix build -f ~/sleepuntil.scm
<Copenhagen_Bram>ice-9/boot-9.scm:3822:12: error: use: unbound variable
<Copenhagen_Bram>hint: Did you forget a `use-modules' form?
<Copenhagen_Bram>i'm getting this but i did ad modules
<snape>could you paste it somewhere, so we can see it?
<rekado>what is “use”?
<Copenhagen_Bram>hmmmmmmmmmmmmmmmmmmmmmmmmmmm
<Copenhagen_Bram>maybe i typed 'use modules' instead of 'use-modules'
<snape>maybe :-)
<pkill9>you may need to put (use-modules (module1) (module2)) as well as the (#:use-module (module1) #:use-module (module2))
<rekado>?
<pkill9>for using with the -f flag
<pkill9>i'm probably wrong
<Copenhagen_Bram>> no code for module (guix package)
<Copenhagen_Bram>huh
<rekado>(guix packages)
<Copenhagen_Bram>/home/elonsatoshi/sleepuntil.scm:11:0: error: missing field initializers (build-system synopsis description license home-page)
<rekado>you’ll need those
<Copenhagen_Bram>jeez i only have the name version, and source with a bogus hash
<Copenhagen_Bram>i see
<Copenhagen_Bram>wish guix import worked with git
<Copenhagen_Bram>i mean guix download
<rekado>you can just clone the repository and use “guix hash -rx the-directory”
<snape>Copenhagen_Bram: for the beginning, you can use empty synopsis, description, home-page, and any build-system/licence. Then at least it will start to build. And you go step by step.
<rekado>don’t use a bogus hash.
<snape>for the hash, copy the hash of another package, so to make sure it's not bogus
<Copenhagen_Bram>oh
<snape>'guix build' will tell you the right one anyway
<rekado>if you’re using Emacs and Yasnippet you can use the “package... ” snippet to build a package definition.
<Copenhagen_Bram>my laziness doesn't like this
<rekado>it’s even better to just use the right hash
<Copenhagen_Bram>rekado: i'm using spacemacs, how do i install yasnippet
<Copenhagen_Bram>rekado: that's what i'm trying to find out ._.
<pkill9>yeah i put in bogus hash then just copy actual hash when it errors, when using a git download lol
<snape>rekado: indeed, thanks for the 'guix hask -rx' tip
<pkill9>one thing i don'
<snape>pkill9: 'git clone + git hash -rx' should be better, as rekado said
<snape>* + guix hash -rx
<pkill9>don't get, why did the person go and make a rust inmplementation to use it in scripts when he could have just put the bash script in a file and just use that? lol
<g_bor>hello guix!
<snape>g_bor: is your 'hello guix!' automated?
<snape>(hello :-))
<g_bor>I guess it is acceptable to add a service without support for all configuration option
<pkill9>ACTION makes a guix-download-git script
<snape>pkill9: could you rather improve guix download?
<g_bor>snape: no, actually not. My client froze the firs time :)
<snape>oh ok haha, I just thought it was very fast
<pkill9>i feel like i would be too slow
<snape>then why don't you use git clone + guix hash -rx?
<pkill9>that's what i'll put in the script lol
<pkill9>tbh i'll just remember to use guix hash -rc
<pkill9>rx*
<snape>ha :-) do you have a script for 'ls -l' ?
<pkill9>haha no lol
<snape>I'm just kidding :p
<snape>g_bor: yes it's acceptable
<snape> https://lwn.net/SubscriberLink/757118/f2f894279576c348/
<mbakke>How can I conditionally add a new phase inside an [arguments] block?
<rekado>isn’t “add-after” part of the “modify-phases” macro?
<mbakke>I have a fix for OpenBLAS on i686, but don't want to rebuild all dependents on x86_64.
<mbakke>I could hijack the "set-extralib" phase, but wanted to add a new phase for clarity.
<mbakke>rekado: Apparently the macro functions are not available inside the spliced expression.
<Copenhagen_Bram>What build-system should I use? Is there a special build system for rust?
<roptat>cargo-build-system I think
<Copenhagen_Bram>ah
<snape>Copenhagen_Bram: there are very few rust packages. see gnu/packages/rust.scm. I'd say gnu-build-system
<Copenhagen_Bram>where's the almighty list of build systems?
<snape>it's probably going to be complicated
<rekado>“4.2 Build Systems” in the manual.
<snape>I wouldn't package a rust package as my first package though
<rekado>ACTION has never packaged a rust thing
<Copenhagen_Bram>snape: alright, what do i package first
<rekado>R packages are easy, but maybe not useful to you.
<snape>there is no rust package actually
<snape>there's only 'rust' :-)
<Copenhagen_Bram>reading the manual, i think i do need the cargo-build-system
<mbakke>Last I checked rust failed to build on all architectures, did that change?
<snape>Copenhagen_Bram: python, perl, emacs packages are easy
<snape>is there any software you'd like to see included in Guix?
<snape>if so, check its dependencies, and if some aren't in Guix yet, you may try to package them
<snape>For example I'd like to package Postfix, but I still haven't found the time
<Copenhagen_Bram>snape: how about the latest experimental version of cataclysm DDA? or the Terminator terminal?
<Copenhagen_Bram>actually if this rust program sleepuntil is easy I'd still like to do it so that I can run program at midnight when my internet is fast
<snape>Copenhagen_Bram: terminator seems to be a good idea
<Copenhagen_Bram>hmmmm
<Copenhagen_Bram>i really need to install sleepuntil because i need to turn off my internet until midnight :/
<efraim>Python isn't too bad, I'm still pointing to rtv as 'should be easy to package'
<pkill9>Copenhagen_Bram: just put this in your .local/bin https://paste.debian.net/plain/1030043
<pkill9>then you can use it as a command
<civodul>mbakke: you can do: (arguments `(modify-phases x ... ,@((if condition `((add-after ...)) '()))))
<pkill9>yeah rtv is very easy to package, i made this from `guix import pypi rtv` https://gitlab.com/pkill-9/guix-packages/blob/master/free/rtv.scm
<snape>Copenhagen_Bram: Terminator is probably more interesting
<Copenhagen_Bram>if terminator is interesting then maybe sleepuntil is easy
<snape>sleepuntil is not easy because it's rust
<snape>it's actually very difficult
<Copenhagen_Bram>hmm
<snape>becausae it would be the first real 'rust' package and you would have no example to base from
<Copenhagen_Bram>alright i'll do terminator, at midnight
<snape>Copenhagen_Bram: and Cataclysm is already packaged
<Copenhagen_Bram>snape: well can you ask the maintainer to update it to the experimental version?
<Copenhagen_Bram>otherwise i'll do it myself
<snape>Copenhagen_Bram: we usually package stable versions unless there is a good reason to do so
<snape>however, you can create a custom package that would inherit that one, except for the source, whose version would be different.
<Copenhagen_Bram>there is a good reason to package an experimental version of cataclysm DDA: the latest stable version is ancient
<snape>2015
<Copenhagen_Bram>yup
<snape>yes, so it probably makes sense
<Copenhagen_Bram>yeh
<snape>so you can try to update it and if it works, send the patch to guix-patches@gnu.org
<nckx>With a comment about the 2015 thing.
<pkill9>cataclysm looks fun, the graphical version reminds me of Exile: Escape From The Pit
<civodul>snape: seems to be working: https://hydra.gnu.org/jobset/guix/modular#tabs-evaluations
<Copenhagen_Bram>Btw how do I config guixsd to use connman instead of networkmanager?
<jlicht>hey guix
<Copenhagen_Bram>hey jlicht
<Copenhagen_Bram>would you happen to know how i can make guix use connman instead of networkmanager?
<jlicht>hey Copenhagen_Bram
<snape>civodul: nice!
<jlicht>you could not use the network-manager-service, and instead use a connman-service I thing
<jlicht>*think
<efraim>Copenhagen_Bram: take a look at my config https://gitlab.com/Efraim/guix-config/blob/master/macbook41_config.scm
<Copenhagen_Bram>thank you efraim
<Copenhagen_Bram>farewell for now guix, i must shut down my wifi to conserve internet. I have a partially downloaded Dragon Ball Z Abridged playlist to entertain me until my internet is fast and free once more
<mbakke>civodul: Thanks! Quasiquoting the (add-after ...) block was what I needed :-)
<jlicht>how could I adapt the recently packaged maven to play nice with java 8 based projects?
<mbakke>Why does `guix build -d -s i686-linux openblas` require downloading a bunch of i686 substitutes?
<mbakke>`guix build -d -s i686-linux gcc` returns just the derivation as expected.
<civodul>mbakke: because of grafts; try --no-grafts
<mbakke>civodul: Aaaahhhh of course. --no-grafts works, thanks :-)
<civodul>yw :-)
<snape>civodul: there is another error: In procedure private-lookup: No variable bound to define-module* in module (guile)
<snape> http://hydra.gnu.org/build/2840592/nixlog/8/tail-reload
<civodul>oh well, you know that one already, don't you?
<civodul>terrible terrible
<civodul>roptat: is our ocaml package reproducible?
<civodul>there was question on the rb-general list about ocaml
<snape>civodul: oh yes it's the famous guix pull error :-)
<civodul>one of the infamous errors, indeed
<snape> and that LWN article about Debian reproducibility talks about Ocaml
<efraim>How did we fix the hanging vm image creation? I just got it while trying to create a vm on aarch64
<snape>efraim: enabling virtio-rng
<efraim>snape: thanks
<snape>efraim: https://git.savannah.gnu.org/cgit/guix.git/commit/?id=d282388789a21ae031035e9fd8e94a72463d0c96
<snape>yw
<civodul>the LWN article also mentions R, but i think rekado got R right, no?
<civodul>i thought it was a solved problem
<vagrantc>solved problems are regressions waiting to happen. :)
<civodul>true :-)
<civodul>especially when it comes to reproducibility
<pkill9>in part 6 ( ithink) the author talks about package management, i wonder if they're aware of NixOS and/or GuixSD
<pkill9>oops
<pkill9>wrong chat
<wingo> https://github.com/projectatomic/bubblewrap
<wingo>probably something we will want to use on foreign distros at some point
<apteryx>civodul: is the sysconfdir settitngs used by the guix-daemon stored in the sqlite database?
<apteryx>setting*
<bavier>wingo: the `bwrap` tool needs to be installed setuid for an unprivileged user to use it?
<wingo>bavier: yes. but it will be on many systems
<wingo>i think it's designed to be setuid
<roptat>civodul: I think our ocaml package is reproducible
<bavier>wingo: sure, ok
<roptat>civodul: I even added a patch to remove a source of irreproducibility
<bavier>we could maybe at least include a trivial example of how to use tools like this to start guix-daemon; similar to our short example of booting guixsd in a vm
<roptat>civodul: the issue with ocaml is more about bootstrapping: they include a bytecode version of the compiler in the source, that is used to build itself
<civodul>roptat: ah sure, but the LWN article mentioned reproducibility
<roptat>running --check to... check :)
<civodul>bubblewrap could be an option, there's no shortage of tools in this area
<roptat>civodul: so it's not reproducible :/
<civodul>roptat: ah, see?
<civodul>from the rb-general message, there's something about using temporary C files
<roptat>but that's for building ocaml packages, not the ocaml compiler, right?
<civodul>maybe, yes
<roptat>civodul: I have a package definition for ocaml 4.06.0 (
<roptat>we have 4.02.3) that builds reproducibly :)
<roptat>the only differences are in the man pages
<roptat>they embed timestamps
<bavier>the LWN article says "ocaml packages", which I assume to mean "packages that use ocaml"
<bavier>but of course a reproducible ocaml itself is also great
<roptat>I think that's easy to fix
<roptat>there's a couple call to Unix.time that should be replaced
<civodul>neat
<rekado>R is fine.
<rekado>(Except for that one non-deterministic newline character that I get when building R on another machine.)
<nckx>rekado: I can't build augeas without patching out ‘test-load’. Does it work for you?
<rekado>I haven’t tried in a while
<mbakke>That augeas test started failing during the previous (not latest) core-updates cycle. I don't think the update did any difference.
<mbakke>(at least, it didn't when I tried it back then)
<nckx> https://paste.debian.net/1030074/
<mbakke>nckx: Could you link to an upstream issue if you disable it? ;-)
<mbakke>Reading the HN thread about Debian reproducibility reminded me of this page: https://www.gnu.org/software/guix/packages/reproducibility.html
<mbakke>civodul: Any chance we can revive that cron job?
<brendyn>I also saw an article that said NetBSD is fully reproducibly for about a year now
<civodul>mbakke: we could do that, but moving the web site on its own machine would help
<nckx>mbakke: Is there one? Searching for that error got me no results.
<nckx>Though that might just be 'cause my Searx instance got kicked off of Google.
<nckx>At which point you realise some facts about the world.
<nckx>I'll file one...
<g_bor>hello guix!
<nckx>ACTION waves.
<g_bor>I got a very interesting error message from guix: unable to load module, value out of range.
<g_bor>What can that be?
<g_bor>the range is 0 to 6, and the value is 7.
<g_bor>ok, I've figured it out. I assinged
<g_bor>I assigned a tagname to commit instead of the commit hash, but this error message is not very helpful...
<mbakke>nckx: Thanks for filing it! ;-)
<ProfessorDey>okay, so I slightly fucked up. I was trying to get my system image install to regenerate properly, forgot that gc existed and stupidly did a find | rm -r for the packages I wanted gone. Now everything is obviously broken. Is there a way to regenerate the manifest or at least rebuild everything currently listed as installed?
<janneke>g_bor: do you know what this means: ld: access beyond end of merged section (1728814200)
<janneke>is my .o file fu, is ld broken, or could it be a version mismatch (gcc-2.95.3 + binutils-2.25) and should i try+debug binutils-2.14 with gcc-2.95.3?
<roptat>ProfessorDey: do you still have a working guix command? what did you remove exactly?
<ProfessorDey>roptat: I was removing a number of packages that were created using `guix system disk-image`, because for some reason it was ignoring the changes I made to the initrd.
<roptat>ProfessorDey: so you removed items from the store?
<roptat>in that case, there's guix gc --verify
<ProfessorDey>roptat: yes, because I'm an idiot who was distracted. and I get an error of `guix gc: error: build failed: executing SQLite statement: FOREIGN KEY constraint failed` when running that
<roptat>eh, I got the same error when trying the same thing on my broken file system
<roptat>not sure how to solve that :/
<roptat>basically, I booted on the installation media, removed /gnu and /var and initialized a new system from there
<ProfessorDey>fair enough
<nckx>‘Slightly’.
<Copenhagen_Bram>Does guix have a compositor service? How do I turn it off?
<nckx>Copenhagen_Bram: No, but some desktop environments like GNOME might. It won't be something managed by Guix.
<Copenhagen_Bram>ah
<heobjo>I found out that the new guix pull also has generations, i.e. list them with the -l option. But there is no --help on how to deal with them otherwise than showing. Can I switch back to one, or do anything else cool with them?
<Sonolin>can anybody answer if GuixSD will always stick with Shepherd as init (PID 1)?
<Sonolin>trying to find a FOSS system without SystemD (and don't really want to try Dragora)
<bavier>Sonolin: that's the plan
<Sonolin>sweet
<Sonolin>bavier any idea about GNOME? Looks like the updated one relies on SystemD as hard dependency
<Sonolin>for logind or w/e
<Sonolin>I know there's a solution from another distro that patches that out, but sounds a little annoying... perhaps GNOME will be phased out of the package manager?
<heobjo>Sonolin: There are plans to move away from Shepard and use systemd: https://lists.gnu.org/archive/html/guix-devel/2018-04/msg00001.html
<bavier>Sonolin: our gnome-session package uses "elogind" instead of systemd
<heobjo>Sonolin: But please note the date of the post :-)
<bavier>Sonolin: e.g. see https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/gnome.scm?id=v0.14.0-5262-g9b9db6c48#n4542
<Sonolin>heobjo eek :(
<heobjo>Sonolin: April-01 :-)
<Sonolin>ACTION thanks god
<bavier>Sonolin: for clarity, that was an April 1 joke
<Sonolin>:)
<Sonolin>damnit, that's cruel
<Sonolin>:P
<Sonolin>excuse the french
<bavier>mbakke put a lot of work into that one ;)
<Sonolin>bavier cool yea elogind was what I was thinking, glad to hear its already included!
<Sonolin>maybe I'll actually try gnome-shell - last time was with Ubuntu when they first switched to Unity, been without a DE since :P
<bavier>I've used gnome only occasionally, for testing mostly, but it seems to work nicely
<ng0>rekado: you've done some fair amount of work with Sun units, right? I'm not sure if you ever dealt with the pricetags on them, but an almost fully equipped Fire X4450 unit for less than 300€ is that worth it?
<roptat>ocaml is now reproducible :)
<bavier>roptat: \\o/
<pkill9>what environment variable does gnu-build-system pass to 'configure' to specify the store path to install to?
<pkill9>or config flag
<ng0>the standard
<pkill9>whatever it uses by default
<pkill9>what's the standard?
<bavier>pkill9: '--prefix=...'
<pkill9>oh ok
<bavier>as well as other appropriate --docdir, --libidir, etc
<pkill9>i thought it didn't use that because often you need to specify that as a cofnigure flag
<bavier>s/libidir/libdir/
<bavier>yes, gnu-build-system uses configure
<pkill9>but i mean sometimes you have to add '--prefix=' in 'configure-flags' in the package definition, if it's adding that automatically then why does it sometimes need to be added in the package definition?
<bavier>oh, I see what you mean; do you have an example package?
<pkill9>yeah there's a few in guix, i'll find one
<rekado>ng0: I have the X2200(?) here. They are old, loud, slow, and power hungry.
<rekado>the biggest problem with them is the management interface, which uses a proprietary system that is no longer supported.
<pkill9>actually it looks like it's mostly make-flags prefix gets manually added to, not configure-flags
<rekado>ng0: I don’t know if it’s worth EUR 300.
<j3kyl_>What about sqlite3, cant find it ...
<pkill9>so i guess if they don't have a configure phase they have the prefix added as a make flag
<ng0>hm
<ng0>thanks
<bavier>pkill9: that's usually the case, yup
<j3kyl_>oh my bad, its called sqlite, not sqlite3
<ng0>my current local build machine is also loud and power hungry consumer hardware.. then I was looking at DL380 proliant for a much cheaper price
<ng0>x2200 series servers go for 100 euro though, but high energy consumption is bad
<rekado>I would not recommend hosting them at home.
<rekado>it may also not be worth the cost of co-lo.
<ng0>thanks for the advice
<rekado>with newer servers you can get higher performance for size and power consumption, but you shouldn’t neglect absolute power consumption either.
<ng0>I'm in this loop where I compare home hosting with co-lo and rented dedicated, and I'm going round and round, while old hardware at home is already running reliable.
<ng0>too bad when your hobby reaches a point hosters consider enterprise, from diskspace amount etc
<Sonolin>is there an easy way to specify configure/make flags with Guix? (I'm from Gentoo and currently spoiled with USE flags)
<Sonolin>or is it only for binary packages?
<ng0>yes, you can use a smarter equivalent to overlays
<Sonolin>hmm interesting
<ng0>you inherit the package definition and then overwrite the values you need to have changed
<Sonolin>ooh nice :)
<Sonolin>sound good since I hate Gentoo overlays anyway (and had to use a couple on this system)
<Sonolin>although I suppose with a FOSS system I don't have to worry as much about those things
<ng0>a global concept of overwrites is not possible since this would go against [forgot the word right now]
<ng0>but you can rewrite inputs etc on the fly with some switches
<Sonolin>yea that makes sense, seems like Guix favors the modular approach (as opposed to global/systemwide)
<ng0>there's a limit to modularity in Guix though
<ng0>but for what you described it's ok
<Sonolin>one thing I was confused about is shared libraries - I know Guix specifies a prefix per app, does that mean shared libraries are duplicated (i.e. for those limited in HDD/SDD space)?
<Sonolin>if not, how does it handle libraries with different versions?
<Sonolin>oops just left, hope I didn't miss anything
<ng0>my alternative choice to hosting @ home is upgrading my units at hetzner and clean out the disk every time the store gets too big.. maybe colo or/and this is better.
<civodul>roptat: thanks for ocaml, that was fast! :-)
<civodul>the patch you added was signed off by a colleague of ours, fun
<nckx>Sonolin: If you're asking whether libraries are ‘bundled’ under the application directory (/foo/appz/gimp/lib/libgtk.so, for example) as is done in some other places: no.
<j3kyl_>Sonolin: Guix has both option build as maintainters would build or binary
<rekado>Sonolin: for any particular version of Guix there is usually just a single version of any particular library. (There are only few exceptions.)
<rekado>This means that generally there will be little duplication.
<Sonolin>oh interesting
<Sonolin>so if a program needs a specific version, they *can* bundle it with app if they wish?
<rekado>they wouldn’t bundle
<rekado>but one could specify a new package variant and refer to that instead of the variant that is commonly used.
<Sonolin>oh ok, then I'm assuming the variant could be installed alongside the main (latest) version?
<rekado>the result is a new library variant under its own prefix; the application using it is configured at build time to use just that variant, and it embeds a reference to the absolute file name of that library variant.
<rekado>correct.
<Sonolin>nice
<Sonolin>thanks for help, I'll have to try out the PM once I find some disk space
<civodul>roptat: would you be willing to send a tarball with up-to-date po files to the TP coordinator?
<civodul>we usually do that one or two weeks before release
<roptat>with name guix-0.15.0.tar.gz, right?
<civodul>roptat: maybe guix-0.15.0tp.tar.gz
<civodul>that's how i do it at least
<roptat>oh, right
<roptat>I'll do it
<civodul>in the subject you need to mention the 3 text domains
<civodul>cool, thanks roptat
<civodul>well, you don't have to do it *right now* of course :-)
<roptat>what do you mean? like "new pot for guix, guix-manual and guix-packages"?
<roptat>or is there a stricter rule?
<rekado>ACTION just registered the guix.info domain name
<nckx>Noyce.
<civodul>roptat: just like you write, yes
<civodul>rekado: awesome!
<j3kyl_>server not found
<ng0>whatẞ