IRC channel logs

2018-06-10.log

back to list of logs

<Copenhagen_Bram>Hi, guix! Can you give me some tips on editing gnu/system/install.scm? I'd like to create a custom disk-image with links, irssi, curl, wget, and netcat added.
<Copenhagen_Bram>Also... I think guix is compiling everything, how do I make it download binaries?
<roptat>hi guix!
<rain1>hi
<sneek>rain1, you have 1 message.
<sneek>rain1, janneke says: have you seen that (sxml xpath) overrides core filter? i renamed it to xpath:filter
<roptat>Copenhagen_Bram: what substitute server(s) are you using?
<Copenhagen_Bram>uh, how do I check that? and I was just following the instructions in 3.3.1 in the manual
<Copenhagen_Bram>Huh. Okay, looks like it's using substitutes now :)
<roptat>ok, my guess is that you're only using hydra, which is slower than berlin
<Copenhagen_Bram>Hmm. Yeh, I'm using hydra. How do I switch to berlin?
<pheonix83>is there a more detailed wiki for partitions?
<Copenhagen_Bram>Can I use both hydra and berlin at the same time?
<roptat>first, you need to authorize substitutes from berlin
<roptat>yes you can
<roptat>download this file: https://berlin.guixsd.org/berlin.guixsd.org-export.pub
<Copenhagen_Bram>authorized
<Copenhagen_Bram>eh? it was in /usr/share/guix/
<Copenhagen_Bram>how do I update those files btw? if they need to be updated?
<roptat>I don't know :/
<Copenhagen_Bram>okay
<roptat>now you can run with --substitute-urls="https://mirror.hydra.gnu.org https://berlin.guixsd.org"
<Copenhagen_Bram>Hmm
<roptat>that's a bit cumbersome, right?
<roptat>you can add this line to whatever is running the guix-daemon service
<roptat>that way, it uses both servers by default
<roptat>I guess you're on a foreign distro, so that will be /etc/system/systemd/guix-daemon.service I think
<Copenhagen_Bram>I'm an openrc user, so it's actually `@reboot guix-daemon --build-users-group=guixbuild` in the root crontab
<roptat>hi pheonix83! we don't have a wiki, so the only document that explains how to contribute is the manual: http://www.gnu.org/software/guix/manual/html_node/Contributing.html#Contributing
<roptat>Copenhagen_Bram: so just add the --substitute-urls option there
<roptat>you'll have to restart the service of course
<Copenhagen_Bram>The manual is almost as good as a wiki. It taught me how to connect to the internet without a network manager, and how to encrypt my hard drive.
<Copenhagen_Bram>I really like how you guys set it up so that it's easily accessible via tty2
<roptat>pheonix83: but the best way to get help is to ask your questions here directly ;)
<Copenhagen_Bram>I have a question. How do I edit gnu/system/install.scm to make a custom disk image with a few extra packages installed?
<roptat>mhisn't there a packages field in that file?
<Copenhagen_Bram>Hmm. And do I need some other files to use install.scm? Like the .tmpl files?
<pheonix83>roptat: thanks mate, i get most of it. just not sure about the partitioning. i tried a install and set the bios flag and so on. but after install and boot it wouldnt load grub so ill try again in the next couple days. just wanted to gather some more detailed information.
<roptat>Copenhagen_Bram: I don't think so, but I'm not sure how the file is used to generate a system
<roptat>Copenhagen_Bram: I guess you'll have to look in Makefile.am to find that info
<Copenhagen_Bram>makefile.am? Where's that?
<roptat>at the top-level of the source code
<pheonix83>roptat: yeh not sure. think i messed something up. ill install on my laptop so i can chat here and ask what everyone else did when im unsure :)
<pheonix83>roptat: thanks for you help appreciate it mate.
<iyzsong>Copenhagen_Bram: hello, after you edited the 'packages' field of install.scm, you can run 'guix system disk-image PATH-TO/install.scm' to build the image (as mention in 6.1.7 of the guix manual).
<roptat>Copenhagen_Bram: looking in Makefile.am, you'll just have to run "guix system disk-image --file-system-type=iso9660 gnu/system/install.scm"
<roptat>hey, too late ^^
<Copenhagen_Bram>ACTION tests that command to see if it even works without gnu/system/install.scm downloaded onto my computer
<Copenhagen_Bram>no, it doesn't
<roptat>oh of course you need the file
<roptat>how can guix find it otherwise?
<Copenhagen_Bram>lol
<Copenhagen_Bram>so how do I download gnu/system/?
<roptat>from savannah I guess
<roptat>there it is: http://git.savannah.gnu.org/cgit/guix.git/plain/gnu/system/install.scm
<roptat>(from sv.gnu.org, find guix, browse repository, find the file you want, click on it, and then there's a link called "plain")
<Copenhagen_Bram>uhh
<Copenhagen_Bram>$ guix system disk-image --on-error=backtrace --file-system-type=iso9660 ./install.scm
<Copenhagen_Bram>guix system: error: failed to load './install.scm': No such file or directory
<Copenhagen_Bram>and it's there
<Copenhagen_Bram>$ ls ./install.scm
<Copenhagen_Bram>./install.scm
<Copenhagen_Bram>could it be because a guix pull is running at the moment?
<roptat>can you try with an absolute filename?
<Copenhagen_Bram>$ guix system disk-image --on-error=backtrace --file-system-type=iso9660 /run/media/elonsatoshi/external-drive/ISOs/install.scm
<Copenhagen_Bram>guix system: error: failed to load '/run/media/elonsatoshi/external-drive/ISOs/install.scm': No such file or directory
<Copenhagen_Bram>Want the backtrace?
<Copenhagen_Bram>roptat: ^
<iyzsong>oh, I got the same error :(
<roptat>Copenhagen_Bram: that would be useful
<iyzsong>Copenhagen_Bram: looking at the backtrace, it will loads 'bare-bones.tmpl' relative to its location. So, I think you have to make a git clone of the 'guix' repository (which contains 'bare-bones.tmpl' at right location), and then edit the 'install.scm' there.
<roptat>possibly
<roptat>I don't have the error when I try to run guix syste disk-image from my git checkout
<iyzsong>yeah..
<Copenhagen_Bram>iyzsong: this the backtrace you got?
<Copenhagen_Bram> 1 (primitive-load "/run/media/elonsatoshi/external-drive/…")
<Copenhagen_Bram>In ice-9/boot-9.scm:
<Copenhagen_Bram> 751:25 0 (dispatch-exception 0 system-error ("open-file" "~A:…" …))
<Copenhagen_Bram>oh no did I crash his client by pasting 3 lines at once? ;-;
<iyzsong>Copenhagen_Bram: Yes, I got "(primitive-load "/tmp/examples/bare-bones.tmpl)" when I have /tmp/install.scm.
<Copenhagen_Bram>ah
<roptat>Copenhagen_Bram: you'll need a git checkout of guix
<Copenhagen_Bram>Hmm fair enough. How big is the repo?
<roptat>a few MB I think
<roptat>otherwise, you only need the files from gnu/system/examples
<roptat>you could simply create a directory named "example" in the same directory as install.scm
<Copenhagen_Bram>Alright. Why does guix keep warning me to consider running guix pull and guix package -u but I already did that?
<g_bor[m]>Hello guix!
<Copenhagen_Bram>hey g_bor[m]
<roptat>guix pull works in a per-user basis
<Copenhagen_Bram>oh
<Copenhagen_Bram>so does guix package -u right?
<roptat>yes
<g_bor[m]>If I would like to use a function in a package definition in a phase, it is enough to list it origin modules? According to the documentation it only work for code in snippets, so I assume no. Is it possible to do this without including the module (i. e. restrict the scope to a single package?)
<roptat>g_bor[m]: could you give an example of what you're trying to do?
<roptat>I'm not sure I understand
<Copenhagen_Bram>So how do I add packages to install.scm?
<g_bor[m]>roptat: I will experiment a little to see what I get from this. Actually I'm trying to fix ant-bootstrap reprodubility bug.
<roptat>Copenhagen_Bram: in the packages field of installation-os
<roptat>g_bor[m]: cool, thanks for taking care of that :)
<roptat>g_bor[m]: I'm about to send my last patches for maven :D
<Copenhagen_Bram>ahh alright
<Copenhagen_Bram>unfortunately I get this error when trying to build a disk image:
<Copenhagen_Bram>guix: offload: command not found
<Copenhagen_Bram>guix system: error: build failed: unexpected EOF reading a line
<g_bor[m]>roptat: that is nice :)
<g_bor[m]>what do you think about gradle?
<roptat>g_bor[m]: I've compiled about half of it
<Copenhagen_Bram>So what version of guix has the offload command?
<roptat>most of its subprojects are easy, but gradle-launcher won't work properly and I don't understand how gradle-doc is compiled
<roptat>Copenhagen_Bram: I don't know :/
<Copenhagen_Bram> https://www.gnu.org/software/guix/manual/html_node/Daemon-Offload-Setup.html
<roptat>Copenhagen_Bram: but I don't understand why it wants to offload anything
<roptat>it should be able to build things locally
<roptat>g_bor[m]: gradle-doc is an essential part of gradle btw, it won't work without it. they have good naming conventions ^^'
<roptat>g_bor[m]: as always, you can find my work here: https://framagit.org/tyreunom/guix-more/blob/master/more/packages/gradle.scm
<g_bor[m]>roptat: Maybe you know more about this, we have a bug in java-picard, the build fails with duplicate class. In the gradle file one dependency excludes the module. That is why the gradle build works without problem. How could we replicate that in guix?
<Copenhagen_Bram>Would --no-substitutes fix that??
<Copenhagen_Bram>No, it didn't.
<Copenhagen_Bram>What version of guix are you guys using?
<efraim>--no-build-hooks
<roptat>g_bor[m]: where do these duplicate classes come from?
<iyzsong>Copenhagen_Bram: do you have '~/.config/guix/current'? And if 'which guix' point to '~/.config/guix/current/bin/guix', you should have a well-new version.
<Copenhagen_Bram>I have a ~/.config/guix/latest/
<roptat>Copenhagen_Bram: I think we all use a very recent version
<Copenhagen_Bram>Hmm
<roptat>can you run guix pull twice as user?
<Copenhagen_Bram>twice?
<g_bor[m]>ok, so it goes like this:
<g_bor[m]>ACTION sent a long message: g_bor[m]_2018-06-10_10:34:58.txt <https://matrix.org/_matrix/media/v1/download/matrix.org/KoMvSGmXIyjZzOabTnIhXPgQ>
<roptat>Copenhagen_Bram: this is due to a recent change in the way guix pull works
<Copenhagen_Bram>wait, do I need to put ~/.config/guix/latest/bin/ in my $PATH?
<roptat>not latest
<g_bor[m]>this is the relevant part of the gradle build file.
<Copenhagen_Bram>Well there's no ~/.config/guix/current
<roptat>but after you run guix pull, you'll have to put current/bin in your PATH
<roptat>guix will tell you that
<g_bor[m]>and htsjdk get duplicated.
<Copenhagen_Bram>huh
<Copenhagen_Bram>ACTION runs guix-pull
<Copenhagen_Bram>btw I have guix installed from parabola's repo, using pacman
<Copenhagen_Bram>pacman says guix's version is 0.14.0-1
<roptat>Copenhagen_Bram: once you run guix pull, the version you installed with your package manager doesn't matter
<Copenhagen_Bram>alright
<roptat>g_bor[m]: I don't know much about these build systems
<roptat>I'm just trying to build java packages, and I got sidetracked into building maven and gradle :p
<roptat>so I'm not sure what the semantics of exclude is in that case
<g_bor[m]>roptat: Ok, I see. Then I will have a closer look at this. Some functionality, like exclude module, and maven input renaming came up several times. It is a good question, if ant-build-system should be extended to support these patterns, should we wait to have the appropriate build systems for maven and gradle, and focus on that first, or keep dealing with this on a case by case basis, as it is done right now...
<Copenhagen_Bram>uh oh
<Copenhagen_Bram>guix: offload: command not found
<Copenhagen_Bram>Try `guix --help' for more information.
<Copenhagen_Bram>guix pull: error: build failed: unexpected EOF reading a line
<Copenhagen_Bram>what now?
<Copenhagen_Bram>ACTION tests if guix package -u guix works
<roptat>Copenhagen_Bram: efraim suggested using --no-build-hooks
<roptat>that works with guix pull too
<Copenhagen_Bram>guix pull: error: no-build-hooks: unrecognized option
<Copenhagen_Bram>oh --no-build-hook works
<roptat>good :)
<soundtoxin>is there a way to search bug reports to see if something has been reported and what the status is on the issue?
<roptat>soundtoxin: https://debbugs.gnu.org/cgi/pkgreport.cgi?package=guix
<soundtoxin>thanks
<soundtoxin> https://a.doko.moe/bppdtl.png guix system reconfigure fails on mumble. is this the sort of thing I should file a report for?
<rekado_>soundtoxin: it’s not specific to “guix system reconfigure”; this happens because mumble is among your global system packages.
<soundtoxin>uh yeah, I'm just saying I was running updates and saw this
<rekado_>soundtoxin: please do report the mumble build failure with a copy of the error messages to bug-guix@gnu.org
<soundtoxin>I install all my packages as global system packages
<janneke>and ... TADAAA: /gnu/store/p36f1lzza0m8n5694gpil9bcwzmrg24v-glibc-boot-2.2.5
<soundtoxin>sure
<rekado_>soundtoxin: thanks!
<janneke>i now have this triplet: binutils-2.14/gcc-2.95.3/glibc-2.2.5
<g_bor[m]>janneke: Wow!
<janneke>built from mes+tcc [some small cheats]
<rekado_>soundtoxin: I wasn’t trying to correct you; just clarifying that if you report this as a bug it would be better to keep “guix system reconfigure” out of it :)
<soundtoxin>sure
<soundtoxin>rekado_: one more thing, what parts of these errors are relevant?
<rekado_>janneke: beautiful!
<rekado_>soundtoxin: I usually search the build log for the first instance of “error: …” and pick that.
<janneke>it's up on my wip-bootstrap on my own guix@gitlab
<rekado_>soundtoxin: the Guile backtrace is not interesting. It will disappear when core-updates will be merged again.
<rekado_>janneke: what are the next steps?
<janneke>(i'm rewriting that all the time, will push to savannah when rewrites are done)
<janneke>rekado_: first, some cleanups of mes, mes libc to prepare for 0.15 release
<rekado_>I’d love to merge this into master as soon as you think it is ready.
<soundtoxin>rekado_: should I copy all the way down to right before the backtrace from the first error then? and does the stuff after the backtrace matter?
<janneke>rekado_: *yay*, that's great! i expect in a couple of days..maybe a week
<janneke>i also want to look at flex, bison: cheated with those
<janneke>and i need to do a full rebuild without Guile -- I'm developing with Guile+MesCC -- but that should be just a matter of time
<janneke>then we need a plan to build gcc-4.7 and truly replace the x86 bootstrap path/binaries
<janneke>also OriansJ` is working to remove the Mes bootstrap binary seed, so much work still to do
<ngz>Woohoo. I fixed the Musescore issue with Qt 5.11.
<soundtoxin>rekado_: http://chunk.io/bard/5ad8050c0e60482c8c12236373220ffd so this is everything from the first error and downward. It feels like too much to put in an email. What bits should I trim out, besides the backtrace? Or would it be okay to just link to this in the email?
<soundtoxin>wasn't sure if "build log" was an actual separate file somewhere, this is just copied from scrollback via tmux copy mode and then pasted into a text file
<divansantana_>Can one install a root CA cert via the system manifest file?
<divansantana_>Guessing it can be done, but not quite sure how.
<rekado_>soundtoxin: one thing that could be really helpful is to build the package with “#:parallel-build? #f” in the “arguments” field.
<rekado_>soundtoxin: that way it will likely have the important error right at the bottom.
<soundtoxin>is that going to be a separate process from just doing another reconfigure? how do I go about that?
<rekado_>ngz: awesome!
<rekado_>soundtoxin: it may be enough to do “guix build --cores=1 mumble”
<soundtoxin>alright
<soundtoxin>output doesn't look that different to me... is this enough info? http://chunk.io/bard/f34bb9a3bea745f3987e9da6f779507c
<g_bor[m]>rekado_: I'm trying to get the ant-bootstrap reproducibility bug sorted. What I would like to do, is to get the strip-jar-timestamp phase from ant-build-system standard phases added after the build phase in ant-bootstrap. It is ok that I have to use add-after 'build 'strip-jar-timestamp ...
<rekado_>soundtoxin: no, this does not include the actual error. It only says that it aborted because an error was taken as fatal, as per some configure flag.
<g_bor[m]>But how do I get the phase from the ant standard phases. It looks like, that I can refenece the ant standar phases like @ant-build-system %standard-phases, but how to go on from there?
<soundtoxin>the only error logs I'm able to make sense of are minecraft crash logs... excuse my inexperience here
<rekado_>g_bor[m]: yes, you can do (assoc-ref ant:%standard-phases 'strip-jar-timestamp); you only need to make sure that the ant-build-system module is included in #:modules and prefixed with “ant:”.
<rekado_>soundtoxin: no worries.
<rekado_>soundtoxin: I’m trying to build mumble now to see if I can catch the relevant error message.
<soundtoxin>alright
<rekado_>the error is: AudioOutput.cpp:434:82: error: no matching function for call to ‘abs(float)’
<soundtoxin>ah, I see! I think I took your advice too literally when searching for 'error', as it comes up a lot
<soundtoxin>should I still file the bug myself?
<rekado_>soundtoxin: yes, please do.
<soundtoxin>okay
<ngz>Wow. Looks like Guix provides maven now.
<g_bor[m]>rekado_: Thanks.
<ngz>Now if only we had Gradle and npm ...
<ngz>NixOS has npm support, IIRC.
<rekado_>ngz: it provides npm support in a way that would not be appropriate for Guix.
<g_bor[m]>ngz: roptat is working on gradle.
<ngz>rekado_: OOC, is there any such way?
***soundtoxin is now known as bard
***bard is now known as soundtoxin
<ngz>g_bor[m]: Great!
<g_bor[m]>I also think there was some work on an npm importer...
<ngz>On another topic, I packaged python-pylibscrypt a few weeks ago. For some context, it is a wrapper that tries to use Scrypt with different ways (openssl, libscrypt ...) and fallbacks to a Python implementation if none is found.
<g_bor[m]>I believe that the main problem we are having with these is package version explosion. I was thinking about how to avoid that, but it is not so easy. How could one guarantee, that the version requirement in the software is not strict? If we would have in the builds a range of versions specified, that is known to be working, it would be much easier to optimize for the number of packages really needed...
<ngz>However, this package is not able to find any external library, would it be provided as an input, a native-input or a propagated input, would it be libsodium, or openssl-next... so it always fallback to the slow Python implementation.
<ngz>There is no absolute path for these libraries in the package source code. It uses find_library.
<ngz>So, I wonder: how can I tell it to find them?
<ngz>g_bor[m]: I understand.
***soundtoxin is now known as tune
<Copenhagen_Bram>Just ran guix package -i guix --no-build-hook. For some reason, it's compiling.
<Copenhagen_Bram>Hey xkapastel
<Copenhagen_Bram>I'm still getting guix: offload: command not found if I don't add the --no-build-hook option
<jfchevrette_>hi! is there an official selinux policy for guix-daemon? i'm having trouble creating one ..
<dustyweb>hello hello
<sneek>Welcome back dustyweb, you have 1 message.
<sneek>dustyweb, civodul says: for common fonts, see the 'gs-fonts' package
<Copenhagen_Bram>Hey dustyweb
<pkill9>is it a known bug that `guix package -p subdir/profile` will generate a symlink in the 'subdir' directory to 'subdir/profile-<n>-link'?
<pkill9>(instead of just 'profile-<n>-link')
<jlicht>hey guix
<janneke>hi jlicht
<jlicht>o/
<jlicht>"(maven): New variable." might very be the best news I've had the please of reading last week ;-)
<jlicht>*very well, *pleasure.
<hulten> https://hpc.guixsd.org appears to be off-line.
<jlicht>I am having issues sending mail to guix-devel right now. My apologies to any people I might have spammed by retrying this several times.
<tune> https://paste.debian.net/1028671/ got this interesting error at the end of a guix pull. is this a temporary problem or should I add that line to a file somewhere?
<tune>also getting "guile: warning: failed to install locale
<jlicht>tune: are you running as guix as root?
<tune>yeah I'm doing sudo guix pull
<jlicht>tune: You could source it for root's login sessions, but I am assuming/hoping that you normally only login with your normal user.
<tune>correct
<jlicht>just a joke, not meant to be condescending btw ;-)
<tune>all good
<jlicht>and you are running Guix on top of an existing distro, or via GuixSD?
<tune>so basically my locale might be set for my user, but when I'm using sudo it's acting as root, which may not have locale set?
<tune>via GuixSD
<jlicht>ah yeah, when you run via sudo, it acts as root, and root does not have the proper paths setup indeed
<tune>I deleted my .bash_profile earlier, so if my path was in there before, that may explain that first error
<jlicht>I've never had any issues with it (using a standard English locale, so YMMV).
<tune>I was making a .profile to autostart mpd and I remembered hearing that .bash_profile overrides .profile
<tune>yeah it may have warned me about that in the past and I just ignored it before, so I thought I'd check in about it
<tune>it's probably fine
<jlicht>tune: it seems unlikely that your normal user sources anything from root's homedir. If you run e.g. `guix build hello', you do not see these messages?
<tune>guix build: error: could not find bootstrap binary 'guile-2.0.9.tar.xz' for system 'x86_64-linux'
<tune>this is all I saw doing guix build hello
<tune>I'm running another guix pull right now in case that matters also
<jlicht>that does not seem okay, at all, but also seems unrelated to the locale stuff. So, problem solved, I guess. On to the next one :)
<pkill9>has mesa had any major changes to it, e.g. in it's dependencies?
<tune>haha, alright
<jlicht>I'm running guix pull right now too, so a browser + emacs is about all my laptop can handle. I'll try to see if I can reproduce your issue though
<hulten>Hi Guix'ers.
<hulten>I would like to test/debug mcron jobs. Where do the log files go and/or how do I read mail if logs are mailed?
<hulten>On e.g. Debian I type in 'mail' as root; but even if I install the package that provides this program (don't know which that is), I'm not sure if mcron on GuixSD will send an e-mail by default.
***jonsger1 is now known as jonsger
<cbaines>hulten, from memory, mcron has some room for improvement in terms of the visibility of what it does
<cbaines>I use it for letsencrypt on a server I have with GuixSD, and the output goes to the virtual terminal
<g_bor[m]>hello guix!
<g_bor[m]>It seems that openssh fails start on boot on my guixsd system. I can start it with no problem afterwards.
<jlicht>hey g_bor[m]
<efraim>does anyone online know about containerizing services?
<cbaines>efraim, I've done some stuff with system containers with GuixSD, but not services
<cbaines>are you trying to do some service stuff?
<efraim>i was thinking about ntp and openntpd and they seem like they should be easy to containerize
<cbaines>looks like there are 4 services running in more contained environments, which is actually more than I thought :)
<hulten>cbaines, I see now it is on the first virtual console, indeed!
<hulten>Would it be easy to redirect (the source of) or copy a virtual console somewhere else, e.g. a file?
<cbaines>hulten, specifying a #:log-file in the make-forkexec-constructor call should do it https://www.gnu.org/software/shepherd/manual/html_node/Service-De_002d-and-Constructors.html
<cbaines>unfortunately, that's not configurable, or the default, so you'll need to make that change in the Guix codebase
<hulten>That would be too complicated for me at the moment. But I'm not stuck: I can just have a look at the virtual console when things don't work.
<hulten>Thanks!
<cbaines>You're welcome :)
<Copenhagen_Bram>Hey dopplergange
<Copenhagen_Bram>Hey guys
<ngz>and gals :)
<jlicht>*folks ;-)
<ngz>Even better
<Rukako>hi guix
<apteryx`>hello!
<pkill9>how does pulseaudio normally get started?
<cbaines>pkill9, I don't know, but somehow, as sometimes I kill it, but it just comes back...
<jlicht>pkill9: I know that my i3 status bar, with volume level indicator, can start it 'by itself', with sometimes disastrous results.
<rekado_>does “pasuspender” help here?
<jlicht>and if icecat is 'using' pulse, I also cannot seem to consistently kill it without it being restarted, so my guess is that there is some 'pulse-on-demand' thing going on somewhere
<pkill9>often if i exit my window manager and log back in, the volume control doesn't appear, and pavucontrol fails to connect to pulseaudio
<pkill9>but it also often works, so i dunno what's starting it
<pkill9>i end up having to start it manually then restart my bar
<jlicht>pkill9: exactly like what I have. At least once a week, I `pkill pulseaudio && herd enable pulse && herd start pulse' (with user shepherd used to manage pulse and other things)
<pkill9>did you make your own pulse service?
<jlicht>pkill9: user shepherd services are a bit less glamorous than full blown GuixSD-services, so it's just a call to `pulseaudio --start --daemonize=no'
<axd-v>has there been some kind of an update to guix's UX? Now it tells me what files it's compiling and stuff, very nice changes. But I also notice that running guix pull for my main user and root at the same time causes some conflicts now. As in: my root user is "waiting for locks or build slots". Is this a regression or I just never paid enough attention?
<axd-v>I guess it's nice not to have the two processes fight for resources, since the cpu is still utilized to the max.
<cbaines>axd-v, yep, this is the new guix pull stuff that civodul has been working on https://lists.gnu.org/archive/html/guix-devel/2018-06/msg00089.html
<civodul>axd-v: the "waiting for locks" is expected in this case: that's because both users are really trying to build the exact same thing
<civodul>so one is waiting for the other to complete
<vagrantc>so happy to see the new "guix pull" !
<hulten>I have a question about "guix system reconfigure" and /run/current-system/profile/.
<hulten>Apparently, (gnu packages nfs) does not provide mount.nfs4.
<g_bor[m]>hello guix!
<hulten>How can I get insight in this? And what package would provide that exectuable, as in existing in /run/current-system/profile/{bin,sbin}/?
<g_bor[m]>I'm a little confused. I see that there is and #:imported-modules and also a #:modules in arguments sometimes, but I can't find in the documentation what these mean...
<hulten>I half-realise that (gnu packages ..) is not really the same kind of package as one would install through "guix package -i", right (apart from the fact that there are different profiles)?
<hulten>Ah, I probably need to install normal packages "system wide" in (packages ...!
<ngz>With the new "guix pull", is it still useful in a single user set-up to symlink /root/.config/guix/latest (or current) to ~/.config/guix/latest (or current)?
<roptat>civodul: I could send the result of guix pull to my server!
<pkill9>yeah ngz, on mine it couldn't find guix when i didn't have 'current'
<roptat>part of my locale is broken though, it seems
<civodul>roptat: yay!
<civodul>oh
<roptat>all of a sudden everything started talking English
<civodul>roptat: make sure to register the thing as a gc root
<roptat>and now part of it is talking French again :/
<civodul>part of it?
<roptat>my terminal and java things seem broken when I try to enter UTF-8 characters
<civodul>ngz: in a single-user setup you could also run 'guix pull' for the same commit for both root and the user
<axd-v>cbaines: civodul: thank you for the explanation. Yeah it is very nice, more informative. I still wish that guix would offer some basic info like standard package managers do. I.e. amount of packages to be downloaded, the total size, what already exists on the system will just be linked into the user profile, tell you what's going to be rebuilt from scratch (useful for linux-libre, icecat, qutebrowser updates with large rebuilds) and
<axd-v>what packages there are substitutes for. There is also this wall of text that always happens that just says `substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%` for 20 lines straight. Idk why it gets cut off, but it's useless in its current state. Plus shouldn't there be just one list of substitutes (but I don't really know how guix works yet so free to ignore this last remark)
<civodul>or you could indeed link ~/.config/guix/current of one account to the other account's link
<roptat>like guix is in French
<ngz>civodul: So call "guix pull" twice in a row, the second call being way faster than the first one. Right?
<civodul>ngz: yes
<civodul>or call 'guix pull' in both accounts at the same time
<civodul>or run 'guix pull --commit=XYZ', etc.
<roptat>oh I think the terminal issue is on my serveur though
<ngz>Yes, I meant "sudo guix pull && guix pull" or something like that.
<jlicht>can guix already be operated from some GUI package manager front-end?
<roptat>civodul: I think my locale issue is because of the glibc update, not guix pull
<roptat>par of my system still uses glibc 2.26
<roptat>so it can't find the locale
<civodul>roptat: you can populate the 'glibc-locales' field
<civodul>i have: (locale-libcs (list (canonical-package glibc) glibc-2.26))
<civodul>ah it's called 'locale-libcs', not 'glibc-locales'
<roptat>in the system config?
<civodul>yep
<civodul>axd-v: you are right; in fact, the tools do display that info (size of things downloaded, etc.) but the current implementation of grafts works counter that feature
<civodul>if you run, say, "guix build inkscape -n", you see that info correctly
<civodul>it could be made clearer, but it's there
<jlicht>civodul: How can I see which locales I need to include?
***jonsger1 is now known as jonsger
<civodul>jlicht: see https://www.gnu.org/software/guix/manual/html_node/Locales.html#Locale-Data-Compatibility-Considerations
<civodul>basically if you have programs using glibc-X.Y, you need locales built with/for glibc-X.Y
<g_bor[m]>How can I print a message to the console from a phase?
<rekado>g_bor[m]: the usual way with “format”. The icedtea-7 package does this, for example.
<jlicht>civodul: thank you, but my questions is on how to verify that my programs use glibc-X.Y
<jlicht>*question.
<civodul>jlicht: you can do: guix gc -R $(which xyz) | grep glibc
<axd-v>civodul: thank you very much for the info, I'll look into guix-build a bit closer, I usually install stuff straight away so haven't messed around with the build system manually. Maybe in the future guix could have a --verbose option, in the absense of which it would provide more of a summary than a detailed information during an update. You're probably going to say that it does that already, so I'll retreat to the info manual hehe. I
<axd-v>love your work, thank you so much for everything you do.
<civodul>axd-v: thanks for the kind words
<civodul>i mentioned 'guix build' but 'guix package' and 'guix system' do the same thing
<hulten>Does someone know if there is an mcron/Guile version of "@reboot"?
<civodul>hulten: i think there's no such thing, but it would be good to have!
<OriansJ`>sounds like a task for shepard
<hulten>OK, thanks civodul :-)
<civodul>OriansJ`: right, we could do it that way too
<civodul>so yeah hulten, like OriansJ` writes, maybe you can simply defined an "activation snippet" or a Shepherd service that does what you want at startup
<hulten>Yeah, but what I wanted to do did not work with herd.. it is nfs mounting, and the system 'hung' while booting... though, not I think of it, I'm not certain if that would not happen through a cron job @reboot.
<hulten>With such an "activation snippet", can I tell it it should wait for certain services, like networking?
<hulten>civodul, OriansJ, this is probably not so difficult (after reading docs). Indeed, a shepherd service for this would be much nicer than doing this indirectly via the mcron service (which cannot do @reboot anyway)!
<OriansJ`>well, looking at runlevels; https://www.gnu.org/software/shepherd/manual/shepherd.html#Runlevel-assumptions setting a dependency on networking should be rather straight forward.
<pkill9>jlicht: where did you add the user service? I'd like to add pulseaudio as a service, among other things
<rekado>jlicht, pkill9: pulseaudio is started over dbus when an application needs it.
<jlicht>pkill9: in my user shepherd config (~/.config/shepherd/init.scm). But the dbus thing explains a lot indeed
<OriansJ`>civodul: did anyone get around to allowing users to specify forbidden dependencies like gentoo?
<rekado>what are forbidden dependencies?
<rekado>ah, I get it.
<rekado>a list of packages you don’t want to be used ever, so the installation of packages pulling them in would be prevented.
<pkill9>i wonder why pulseaudio often fails to 'register' when you login then
<janneke>rekado: i've been preparing a mes-0.15 release but of course, as i have been working only mes libc and using the Guile shortcut, building Mes scheme has bitrotted
<janneke>when i'm lucky, in about 2 hours my wip-bootstrap branch builds and i can do a mes-0.15 release and we can start looking at integrating
<wigust->pkill9: What do you mean by register? Starting the ‘pulseaudio’ process?
<pkill9>well, for example, pavucontrol fails to connect to the running pulseaudio often when i logout and log back in
<pkill9>and my volume control doesn't appear so i presume it als fails to connect to it
<pkill9>that's when i kill pulseaudio and start it, then restart the bar and it connects
<pkill9>same with pavucontrol
<wigust->pkill9: Is it reproducible? We should probably work on it (e.g. create a bug report and collect information about it there), because I remember a thread on the help mailing list with a similar issue (folk uses window manager) https://lists.gnu.org/archive/html/help-guix/2018-06/msg00023.html
<rekado>the manual speaks of “git-http-service”, but it does not seem to exist.