IRC channel logs

2017-02-08.log

back to list of logs

<ryanwatkins>nvm, figured it out :D
<Apteryx>Is (compose list proc) equivalent to (list proc) ?
<Apteryx>Where do the logs of our services typically go? Is there some general mechanism taking care of this (by say, shepherd) ?
<Apteryx>And why do our dhcp-client-service requires "'(user-processes udev)" ?
<Apteryx>It's so quiet! Is everyone reeling from FOSDEM? ;)
***Piece_Maker is now known as Acou_Bass
***Digitteknohippie is now known as Digitteknonoob
<Apteryx>Is there a way to guarantee the ordering in which the services start?
<Apteryx>I'd like wpa-supplicant-service to always start before dhcp-client-service, for example.
<thomasd>hi guix
<Apteryx>Any way to debug "starting" a service? I just reworked one, and it fails with 'ERROR: Wrong type to apply: "/gnu/store/.../dhclient"'
<Apteryx>I'd like to put exercise the code from the repl, if possible. I can instantiate the service, but not sure how to "start" it.
<roelj>If someone installs GNU Guix using the "binary installation" instructions. Where can the GNU Guix source code be found?
<Apteryx>Online?
<roelj>Apteryx: guix package --list-available works, so the package definitions should be somewhere locally..
<CharlieBrown>roelj: The Guix site shows you how to generate the binary.
<Apteryx>Ok, you mean guix itself
<CharlieBrown>roelj: To verify.
<CharlieBrown>That the source and binary match.
<Apteryx>roelj: Probably "guix build guix" would point to the store location?
<Apteryx>ACTION zzzz
<roelj>Apteryx: Right. Thanks!
<Digit>i've never actually read the guix code. i imagine it might be a treat to read.
<roelj>Digit: I learned a lot from it!
<Digit>ACTION wrestles rainbow delimiters back onto his emacs
***fkz__ is now known as Guest37382
<civodul>Hello Guix!
<roelj>Hello civodul
<civodul>hey roelj!
<civodul>roelj: i think we lost track of each other after your talk, but i wanted to say i liked it
<civodul>i think it's a good area to work on
<civodul>definitely an improvement over the existing pipelinish tooling
<roelj>I followed the approach of "guix web" and made it a separate project: https://git.roelj.com/guix/gwl
<Digit>oh yes! talks n things are happening around this time... ~ i've been distracted with medical things. yay. now lets see... nope, not libreplanet... that's end of march.... what else is on?
<roelj>It still has a long way to go to prove itself.. :)
<civodul>roelj: right, but it's a worthwhile direction, i think people will realize that :-)
<roelj>civodul: thanks :) it gives me the confidence I'm not doing something stupid :)
<roelj>civodul: I'd love your opinion on the record-type field naming.
<Digit>ACTION snaps fingers, says "fosdem!" and shoots off with purpose
<civodul>roelj: during the presentation i thought that maybe you wouldn't need the <package>-style 'inputs' field since you can use gexps
<civodul>but the record field names looked good i think :-)
<roelj>civodul: right. First time I showed that I confused the person I was showing it to, because it seems hard to imagine that one symbol holds the actual contents of a package.. While a package recipe seemed all straightforward.. :)
<roelj>civodul: I'll see if I can simplify that indeed.
<thomasd>Hi guix
<thomasd>I can't find a manual section on how to delete a system profile generation. Do I just remove the link from /var/guix/gcroots/profiles, or is there a clean way?
<civodul>hey thomasd
<civodul>thomasd: well, turns out there's still no command to do that :-)
<civodul>but it boils down to "sudo rm /var/guix/profiles/system-N-link"
<civodul>although you have to make sure to pick the right N
<civodul>it's ridiculous we don't have 'guix system delete-generations' tho
<thomasd>OK, I wanted to check. Yes, it's ridiculous ;-)
<civodul>:-)
<civodul>ACTION finally changed the logo at https://hydra.gnu.org \\o/
<thomasd>Well, plenty of HD space left, I'll just wait a while longer. Probably someone will implement that before I run out :)
<roelj>civodul: Nice!
<thomasd>also, there is a slight inconsistency between `guix package --list-generations` and `guix system list-generations`. But there's probably a reason for that?
<civodul>thomasd: there's no good reason i think
<civodul>there was a discussion on revamping 'guix package' in the past but nothing really came out of it
<thomasd>ok, good to know. plenty to do!
<civodul>in that case it's also that there's was no consensus on what the right thing would be
<civodul>but we should revisit the issue
<bnw>guix-cloudflare.tomli.me and guix-amazon.tomli.me seemed to be faster when I tried, but they both would stop before even a single package finished transferring.
<bnw>with error message "TLS error in procedure 'handshake': The TLS connection was non-properly terminated. ... substituter 'substitute' die unexpectedly."
<bnw>I think it has something to do with the GFW of China.
<bnw>Though there was one try that ended up with error message shown in this screen shot https://img.vim-cn.com/9c/4bcf86cab2001df37158d8569df42938ea2d0f.png
<rekado_>when I lived in China the connection to AWS would be consistently unreliable.
<bnw>rekado_, Yeah. Kind of annoying.
<paroneayea>hi
<thomasd>after deleting a system profile link, should I run guix system reconfigure to generate a new grub.cfg, or is there another way to remove the now invalid entry from grub?
***jonsger1 is now known as jonsger
***jonsger1 is now known as jonsger
<thomasd>to answer my own question, yes, it seems that's the way to go :)
<civodul>thomasd: yeah, that's right!
<thomasd>I'm afraid to run guix gc for the first time on this system, though :P
<civodul>thomasd: don't be afraid, everthing's gonna be ok
<roelj>The gc is very effective.. I once tried to gc with an invalid localstatedir and it actually removed the entire store :D. If you don't mess with the NIX_STATE_DIR variable, I believe it's entirely safe.
<thomasd>I recall some bugs with undetected references (fontconfig) but I thought those were solved, yes
<civodul>thomasd: yeah, that's fine
<ryanwatkins>Hey guys, is there a bluetooth package in guixsd currently?
<civodul>*guys & gals
<civodul>ryanwatkins: i think so, yes
<civodul>for instance https://www.gnu.org/software/guix/packages/b.html#bluez
<ryanwatkins>civodul: I just saw, but does it also provide utils for client side usage?
<civodul>dunno, i'm quite ignorant about Bluetooth
<ryanwatkins>hmm, I think (bluetooth-service) and bluez package w/ bluetoothcti should do the job :D
<rekado_>ryanwatkins: the bluez package contains bluetoothctl
<rekado_>I used that to connect to a bluetooth speaker
<ryanwatkins>rekado_: I am trying to connect to a echo :D
<bnw>If I am able to find someone or organization that is willing to mirror guix. Is there a more convenient way to sync the repo? Like rsync vs https?
<ryanwatkins>rekado_: the bluetooth service daemon requires a restart right?
<bnw>rsync other than https
<rekado_>ryanwatkins: I don't know if it needs restarting. I'm sure it needs to run :)
<roelj>Can I use the binary installation and have the profiles in /gnu/profiles?
<rekado_>bnw: I don't know of an easy way to mirror hydra. I wonder if we should start an rsync server on hydra to allow for syncing the disk contents.
<bnw>I am going to file an issue at github.com/tuna/issues tomorrow and see if they are able to mirror a repo to mainland China.
<civodul>bnw: existing mirrors use nginx with a configuration like http://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/nginx/mirror.conf
<civodul>but of course, that's only useful if there are enough users of that mirror
<rekado_>civodul: what do you think about a low-level sync at the file system level?
<bnw>civodul: Thank you.
<civodul>rekado_: that sounds more complicated/risky no?
<civodul>we'd expose all of /gnu/store over rsync?
<rekado_>yes, that's the idea.
<rekado_>maybe providing access only through a read-only FUSE layer.
<bnw>I can't install guix on a vm if connection keeps failing, which is quite often due to all kind of disturbance at backbone portal to the outside world.
<civodul>rekado_: and you think that'd be more efficient?
<rekado_>civodul: it's about being able to fetch everything regularly without needing to know the individual store items.
<rekado_>the nginx mirror setup only acts on a cache miss.
<civodul>rekado_: yeah, i see
<civodul>hmm
<civodul>maybe we should rather expose the compressed nars?
<civodul>dunno
<rekado_>ACTION shrugs
<rekado_>I'm having a hard time building the latest libreboot release.
<rekado_>the fact that it is so very unlike any other GNU package makes it hard for me.
<rekado_>it has a custom "build" script that is supposed to do certain things
<rekado_>but I can't even build the info documentation because the texi files aren't included.
<rekado_>has anyone here built libreboot from source yet?
<davexunit_>no.
<davexunit_>it's not a GNU package anymore, btw.
<rekado_>yeah, I know.
<rekado_>I find the documentation *very* hard to follow.
<rekado_>Since reinstalling GuixSD with full disk encryption I have to do this very time consuming dance on each reboot:
<rekado_>enter console, type "crypt<TAB> -a", input passphrase, wait, ESC, edit last item to add (crypto0) to the search, F10, ESC, select boot from (crypto0), dismiss warnings/errors.
<rekado_>so I'm looking for a way to update the contents of my SPI chip and have it include a better grub.cfg.
<rekado_>here's another GuixSD question: I use full disk encryption and on booting Linux I'm told that there was a problem with my file system.
<rekado_>I'm dropped into a bournish REPL, but there's nothing available
<rekado_>how can I access fsck in that REPL when the root fs isn't available yet?
<rekado_>there seems to be fsck (because that's what's running before I'm thrown into the recovery REPL), but I can't run it from the REPL.
<civodul>rekado_: weird
<civodul>what does "echo $PATH" say?
<thomasd>rekado_ : I had a similar problem while trying different kernel versions (I'm now happily on 4.9.8 and no longer have problems), when I quit the shell, GuixSD continued to boot as normal
<thomasd>in my case, no disk encryption was involved though
<rekado_>yes, I can exit the REPL and it continues booting.
<rekado_>but I'd like to fix the file system errors at that point.
<rekado_>I'll reboot soon and then check what the PATH is.
<jonsger>rekado_: did you check out librecore? it's a fork of libreboot
<dale>In order to use emacs' tramp mode from my laptop to a guix-sd system, I have found that I need to put symbolic links to the programs id, ls and sed into /bin. Have others come across this/is there another way?
<rekado_>jonsger: thanks, I haven't heard of it before. I'll take a look.
<rekado_>dale: this was reported before. I forgot the details; ISTR that there's a TRAMP variable you can set to find programs on the remote end.
<dale>Ah, yes, that would work also. But seems wrong to inconvenience every user separately rather than dealing with the issue once and for all.
<civodul>dale: yeah the details are in the help-guix archive for now
<dale>Thanks civodul.
<Apteryx>Hello Guix! Do the service definitions end up in the store? I can't find the one I'm trying to debug, even using strace...
<Apteryx>I would have expected "herd start networking" to load some service script (gexp in guix sources) from the store
<Apteryx>And, another question: Is there any way to verify that a service definition "works" at the Guile REPL?
<Apteryx>Something equivalent to "herd start my-service"
<civodul>Apteryx: to test your service definition, you can run "guix system vm foo.scm" and run "herd start my-service" in there
<civodul>for your 1st question, you can try "guix gc -R $(guix system build foo.scm) | grep shepherd-"
<Apteryx>civodul: Thank you for your answers :)
<civodul>yw!
<bavier`>civodul: are the scripts that generate the website in a git repo?
<civodul>bavier`: yes, see the link at the bottom of web pages :-)
<bavier`>civodul: hmm, ok. But who/what 'git clones' that repo and runs haunt?
<bavier`>I was wanting to get the output of 'git describe' in the package source links on the packages page, but I need some way to pass that info into the scheme code
<Apteryx>Why do "(append (quote ("a" "b") '("c"))
<Apteryx>nevermind, this was meant for the repl :o
<bavier`>I guess (www packages) could locate the guix source directory in GUILE_LOAD_PATH and run (open-pipe* "git" "describe"), no user intervention required
<sankey>if i run `guix pull`, does that update the guix distribution for all users on the system? I assume not, because that would have a side-effect
<sankey>i wonder how to update the guix package definitions for all users on the system without having to run it once per user
<Apteryx>sankey: The only way I can think of would be to add the packages to be shared at the "system" level (directly to the system config.scm file).
<Apteryx>And then running "guix system reconfigure /your/config.scm"
<Apteryx>But even then, if a user installed another version of a package in config.scm, it won't be touched.
<davexunit_>sankey: we don't have anything to do that. letting each user have full control over their guix environment is a feature.
<Apteryx>err, "sudo guix pull && sudo guix system reconfigure /your/config.scm"
<sankey>i admire that, ans i'm not suggesting that guix pull should have side effects
<davexunit_>you could make, say, /usr/local/bin/guix a symlink to the root user's guix
<davexunit_>and have no other user use 'guix pull'
<civodul>bavier`: currently there's a dirty script that updates the package pages daily on hydra.gnu.org
<sankey>i wonder if there can be a `guix pull --use-latest-already-downloaded`
<sankey>network and CPU on my system are very limited
<mvb>sankey: You could point all users' "~/.config/guix/latest" symlink to a shared location
<civodul>bavier`: but the goal is to clean that up and move it to bayfront.scm
<sankey>mvb: indeed i've thought of that hack
<bavier`>civodul: does invoking "git describe" from the scheme code seem alright to you?
<sankey>mvb: wouldn't that link get overwritten by the next guix pull?
<davexunit_>yeah, it would. users would have to not run that.
<sankey>ah, of course
<sankey>i am the user, and I can remember to not run that :)
<davexunit_>:)
<sankey>normal users don't have access to the root user's /root/.config/guix/latest so I can't simply make that symlink into my normal user's $HOME/.config/guix/latest
<davexunit_>better to not use 'guix pull' for this
<mvb>a git checkout is probably easiest
<davexunit_>a symlink in /usr/local/bin to /root/.guix-profile/bin/guix will do
<davexunit_>you'll need to install a guix package that is the version you want
<mvb>root's guix executable will still work with $HOME/.config/guix/latest for the active user
<davexunit_>yes
<davexunit_>there's simply no way around that ever, without forking guix to remove that
<mvb>it could be useful to make `guix pull` add the symlink to an arbitrary location
<sankey>i would like that, but also to make guix pull determine which guix-latest, among those already installed, is the newest
***snape`` is now known as snape
<sankey>but meanwhile i'll probably just use a git checkout
<mvb>you could have a "guix" user whose home directory is world-readable and use that for "guix pull"
<sankey>indeed, it just occured to me that guix pull does some heavy lifting that i'd rather not script around using a git checkout
<sankey>so a shared "guix-pull" user could be easier
<sankey>honestly I already have on my TODO list: "explore new features for guix pull"
<rekado_>how can I watch HTML5 videos in icecat or epiphany?
<rekado_>I’m supposed to review the recordings of two FOSDEM talks
<rekado_>and the review system requires me to be able to watch the videos in the browser and push buttons
<rekado_>(normally I’d just use mpv, but I can’t push buttons with mpv)
<catonano>rekado_: in Fedora and Ubuntu you need to install gstreamer plugins in order to watch footages in the browsers
<rekado_>catonano: thanks for the hint. I’ll give that a try.
<catonano>rekado_: did you solve your issue with rebooting and disk encryption ? If you did, how ?
<emyles>Hi guix, Was doing some hacking using .//pre-inst and ran into trouble, rebooted but still get /gnu/store/yaddayadda-guile-2.0.13/bin/guile: error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: No such file or directory. Any ideas?
<janneke>emyles: is this while booting, or can you ldd on .../bin/guile?
<emyles>Not while booting but when using a guix command e.g. 'guix package -I'
<emyles>'which -a guile' show just the system guile (on Arch Linux)
<emyles>*shows
<janneke>libgcc_s.so.1 should live in something like /gnu/store/...-gcc-4.9.4-lib/lib/libgcc_s.so.1
<janneke>what does ldd say on the failing guile?
<emyles>libgcc_s.so.1 => not found
<emyles>(presumably you're not interested in the things it did find?)
<janneke>okay, right
<janneke>have a look at readelf -d .../bin/guile
<janneke>it should list a /gnu/store/*gcc-x.y.z-lib/lib element in the runpath
<emyles>looks odd at the end there: "Library runpath: [blahblah:/gnu/store/cdi08kw7r6r684w8mk0xq0dkgpjhfpmd-gcc-4.9.4-lib/lib:/gnu/store/cdi08kw7r6r684w8mk0xq0dkgpjhfpmd-gcc-4.9.4-lib/lib/gcc/x86_64-unknown-linux-gnu/4.9.4/../../..]"
<janneke>emyles: it may look odd, but that's expected
<janneke>so, now the question is: what's in the directory: /gnu/store/cdi08kw7r6r684w8mk0xq0dkgpjhfpmd-gcc-4.9.4-lib/lib
<janneke>i have a libgcc_s.so.1 there
<emyles>'No such file or directory'
<emyles>when my adventure with ./pre-inst ended it had just failed to compile something to do with gcc...
<emyles>I have two other libgcc_s.so.1:
<emyles>/gnu/store/f1sq4bmamyisvx89h31j6nrvk8cpmcw3-gfortran-4.9.4-lib/lib/libgcc_s.so.1
<emyles>/gnu/store/8rpz0r04p9wqm28ash861b43cvql8imz-gcc-5.4.0-lib/lib/libgcc_s.so.1
<emyles>forget the fortran one, I meant this one:
<emyles>/gnu/store/q4a1z2arssij8iq80i4k0zqallqlh2lv-gcc-4.9.4-lib/lib/libgcc_s.so.1
<janneke>emyles: if your guile needs that gcc, the store has become corrupt
<emyles>can it be fixed? 'guix gc' doesn't work, obvs
<rekado_>sneek: later tell catonano In the REPL I only have one directory in my PATH: e2fsck. So I had to run “e2fsck /dev/mapper/root”, which seems to have fixed the corrupted file system.
<sneek>Okay.
<emyles>janneke: Should I have used a seperate store for my experiments with a git checkout and ./pre-inst?
<emyles>*separate
<janneke>emyles: i'm not sure what the situation is that you're in now
<rekado_>emyles: using the same store is fine as long as you configure with “--localstatedir=/var”
<catonano>rekado_: thanks
<sneek>catonano, you have 1 message.
<sneek>catonano, rekado_ says: In the REPL I only have one directory in my PATH: e2fsck. So I had to run “e2fsck /dev/mapper/root”, which seems to have fixed the corrupted file system.
<rekado_>catonano: you may have to use a different device node, dependent on what you named it. It’s called “root” in my case.
<rekado_>catonano: BTW with all the gstreamer plugins installed I see a properly sized box where the video should be and I can hear the sound.
<rekado_>still don’t see any video, but I guess that’s just a matter of fiddling with the gstreamer plugins.
<rekado_>so thanks again for the hint!
<catonano>rekado_: :-)
<emyles>janneke: okay, thanks a lot for the help, I didn't specify a --localstatedir because I thought it would default to the existing /var/guix
<jmi2k>What's your opinion on Guix being used to distribute non-software related packages? Like books, artwork, presentations... I think it would be a nice concept, aside from the official repo.
<rekado_>jmi2k: it could be argued that we already do this to some extent.
<rekado_>we have a package for SICP (*the* book on Scheme) in Info format.
<jmi2k>rekado_: really? I didn't know! I've heard someone talking about something on that line here before, and I fell in love with the concept. Also, when Guix gets channels, it could be even better
<janneke>emyles: ouch...good to know that now
<rekado_>emyles: unfortunately, the default value for localstatedir is usually not what you want for Guix. It’s the default due to compliance with the GNU build system standards :-/
<jmi2k>I'm packaging Google Material Design icon font, what name is better: font-google-materialicons or font-google-material-design-icons? Second seems too large but more appropiate.
<rekado_>we have no problem with long names; I’d take the latter.
<rekado_>for the record: I needed to install “gst-libav” to see the videos; no need for gst-plugins-bad.
<janneke>rekado_: hmm...
<janneke>we may want to have our web browsers be able to play video's by default some time before 1.0
<emyles>rekado_: janneke: Hmmm after a standard install my profile is in:
<emyles>/var/guix/profiles/per-user/myles/guix-profile.
<emyles>The info "3.2 Invoking ‘guix package'" says
<emyles>'that directory is normally LOCALSTATEDIR/profiles/per-user/USER'
<rekado_>I do like that I can decide what plugins to install, but it’s not so nice that I *need* to make this decision.
<emyles>implying LOCALSTATEDIR is /var/guix.
<emyles>In "5.3 The Store" is LOCALSTATEDIR is definately /var.
<rekado_>localstatedir should be /var
<rekado_>let me check section 3.2
<rekado_>could be a mistake
<rekado_>I think it should be “that directory is normally LOCALSTATEDIR/guix/profiles/per-user/USER”
<rekado_>because right after that it says: “where LOCALSTATEDIR is the value passed to ‘configure’ as ‘--localstatedir’
<rekado_>
<emyles>Yes I think so. Anyway, I'll reinstall now, I am getting quite good at it now ;)
<rekado_>:)
***jonsger1 is now known as jonsger
<drakonis>this year's fosdem videos and aren't out yet, right?
<drakonis>and can i use nix packages with guix without any modifications to the packages?
<rekado_>drakonis: the videos still require some editing. I received the links to two videos where I need to adjust the beginning and the ending and make notes as to whether the sound is in sync or not.
<rekado_>drakonis: only then the videos will be re-encoded for publication.
<reggggieee>rekado_: thnx for the update, been refreshing 24/7
<rekado_>drakonis: use can use nix packages *alongside* guix packages without modification.
<drakonis>okay
<drakonis>hmm.
<rekado_>but you cannot make guix packages depend on things that are installed via nix.
<drakonis>right.
<emyles>ACTION restores The Store from backup (btfs snapshot)
<emyles>ACTION feels totes smug
<rekado_>:)
<drakonis>rekado_, what about the slides?
<drakonis>the presentation files
<rekado_>drakonis: I uploaded my slides already.
<drakonis>where?
<drakonis>the future of guix presentation for example
<rekado_>there were no slides
<rekado_>“the future of guix” was a panel discussion.
<rekado_>my slides are here: https://fosdem.org/2017/schedule/event/guixintroduction/attachments/slides/1739/export/events/attachments/guixintroduction/slides/1739/slides.pdf
<drakonis>oh i see.