IRC channel logs


back to list of logs

<methalo_>on Hurd we don't have lsof, guix use lsof
<reepca>At last, I live! Problem on the ISP's end took me down all day
<sneek>reepca, you have 1 message.
<sneek>reepca, jonsger says: I think this is the last series who work with linux-libre I'm not sure but that's the last series who don't show up really here
<Apteryx>reepca: eeh. My sympathies.
<Apteryx>reepca: Did you one time said you found how to make Geiser debugging usable? It always locks on me and I have to kill it, having to redo all over again... So frustrating.
<Apteryx>*Guile debugging with Geiser
<Apteryx>Guile debugging straight from the terminal is even worse, since apparently there is no readline support (yet it's compiled with such support... hmm)
<reepca>Apteryx: welll... not exactly. I've mostly noticed the problem with the REPL created by the various emacs guix commands. Whenever I do M-x run-geiser RET guile RET it tends to go more smoothly (might be coincidental, though). Also, you can load readline as a module - (use-modules (ice-9 readline)) and then (activate-readline).
<Apteryx>reepca: OK. I usually start my Geiser REPL with C-a in my source buffer since it ",uses" it.
<Apteryx>This is a Geiser function: (geiser-mode-switch-to-repl-and-enter)
<Apteryx>I'll try your suggestion to run run-geiser straight.
<eacces>i seem to be struggingly with getting into packaging things. for instance, refers to `7.2 Running Guix Before It Is Installed`, which implicitly involves doing `7.1 Building from Git`. which mentions `./configure --localstatedir=` with my current store [which is /gnu/store]. however thats RO so things go pair shaped later on
<eacces>did i miss something? was i supposed to use something else for --localstatedir=?
<Apteryx>eacces: You're supposed to use /var
<reepca>ah, --localstatedir is where the "keeping track of stuff" goes, not where "the stuff itself" goes.
<eacces>ahhhh, i see. thanks!
<eacces>i read the start of The-Store.html then jumped to a conclusion :\\
<Apteryx>Is there a way to have an "optional" pattern in a match?
<Apteryx>I have a sexp where there might or might not be an entry at the end. I'm not sure how to express this.
<reepca>Apteryx: I think the usual way of expressing that would be to have another match clause with the extra option. I don't know if there's a more concise way of doing that, for example using define* syntax.
<reepca>I know in common lisp there was a destructuring-bind that let you use define*-like syntax for pattern matching
<janneke>Morning Guix!
<Apteryx>reepca: Working very well so far with geiser-run!
<Apteryx>Thanks for the tip!
<Apteryx>janneke: hi!
<reepca>Alright, ordering a radeon hd 6450 and if that doesn't work I'll probably write a very strongly-worded letter to that guy on h-node
<Apteryx>reepca: Eh. Are they recommending it for free operating systems?
<reepca>"tested with the following kernel libre: 3.14.12-1" "works with 3D acceleration".
<Apteryx>reepca: by the way, your suggestion to use multiple patterns worked a treat. Thanks again!
<Apteryx>And I think I fixed my last bug regarding a patch I'm making that augment the search-path-definition record with a "append-separator?" field.
<Apteryx>It is pretty involved to test due to search-path-definition being used by the gnu-build-system, so it means you must build the world just to try it out!
<reepca>Apteryx: what's the default (if any) going to be for "append-separator?"?
<Apteryx>It's going to be #f
<Apteryx>Resulting in the same as now.
<Apteryx>So I added a second sexp pattern with append-separator? missing in the pattern, and where I build the record with append-separator? #f
<bytes83>is there any sample grub configuration (via config.scm) available for reference. I am trying to set up a grub menu entry for my other distro but i keep getting an error
<Apteryx>And what this buys us is that now we can use resolve dependencies for example Emacs using a more normal native search-paths-specification approach; and this has the happy side-effect that Emacs dependencies are honored even at build time (doesn't seem to be used much so far but as we add tests to our Emacs package the problem would have quickly become apparent).
<reepca>bytes83: I'm assuming you've already checked out the menu-entry example in 6.2.12, so could you paste what you've tried so far?
<bytes83>Sohom Bhattacharjee:
<bytes83>(bootloader (grub-configuration (grub grub-efi)
<bytes83>(device "/dev/sda1")
<bytes83>(menu-entries (menu-entry ..... ))))
<bytes83>the stuff inside the (menu-entry .... ) are quite similar to 6.2.12
<bytes83>i keep getting the error unbound variable: menu-entry
<bytes83>also im new to scheme as well (i know the syntax... but thats about it)
<reepca>menu-entries wants a list, menu-entry returns a single object. Also, did you (use-modules (gnu system grub)) at the top? That would explain the unbound variable thingy
<reepca>(so you would use something like (menu-entries (list (menu-entry .... )))
<reepca>I keep forgetting I'm not using paredit in this buffer
<bytes83>no. i didnt (use-modules (gnu system grub)) at the top
<bytes83>but i do have (use-modules (gnu) (gnu system nss))
<rekado>Hi Guix
<rekado>TeX is weird and I feel I’m learning more about it than I was prepared for.
<rekado>there are so many different engines and compiled formats for different engines … and then there are symlink and argv[0] tricks that change the behaviour.
<reepca>Was (gnu system grub) recently renamed / moved around? I can't find gnu/system/grub.scm in my git checkout or in ~/.config/guix/latest, but can in my user's (somewhat outdated) guix install.
<rekado>reepca: it was moved in b09a8da4a2e50845a297e041762f3ff9e649c047
<rekado>replaced by (gnu bootloader) and (gnu bootloader grub)
<reepca>I think the documentation hasn't been updated yet
<bytes83>for uefi grub configuration... the documentation says that device should be "/dev/sda1" (i.e. a partition) but for legacy boot it should be "/dev/sda" (i.e. a drive) right ?
<reepca>Hm, yeah, menu-entry isn't exported anymore.
<ng0>[06:19:12] <reepca> Alright, ordering a radeon hd 6450 and if that doesn't work I'll probably write a very strongly-worded letter to that guy on h-node <- that card looks oddly familar. I have to check if this is one of the cards which is broken for me (as in technically, not driver) or if it just looks like one of the cards I have which aren't working
<ng0>okay, it just looks like an NVidia card I have :)
<catonano>what was the command for hhaving Guix download the source of a package ?
<ng0>reepca: could you tell me when oyu have the card if it works?
<efraim_>catonano: 'guix package foo -S' will get you the source with any patches and snippets applied
<catonano_on_mobi>efraim_: thanks !
<catonano>efraim_: with "guix package freexl -S" I get
<catonano>guix package: error: freexl: extraneous argument
<catonano>ah I see
<jlicht>hello guix! quick question; how does one include a service in their operating system declaration, but not enable it on startup?
<jlicht>In this case, I do not want to have my sshd always running, but I would like to only have to issue something like `sudo herd openssh start` to make it work when I like
<efraim_>catonano: sorry, I forgot the 'build' part of the argument
<catonano>efraim_: that's ok :-) Thanks !
<wigust>jlicht: I don't know about disabling service in guixsd, but as a workaround iptables may work for you.
<efraim_>I wonder if there's an autostart field for services
<snape>there is one, but it is quite well hidden
<snape>this is how I prevent nginx to auto-start:
<snape>I don't like the 'car' in there
<snape>And anyway it's too cumbersome
<jsierles>I just did a fresh install from the 0.13.0 binary tarball. I ran 'guix package -i vim' and it's compiling the whole dependency tree, and vim, from source. Why wouldn't it be using substitutes here?
<jsierles>the third time i tried it, it downloaded from instead of compiling.
<jsierles>is there a programmatic way to fetch all the exports a profile might require? for example export R_LIBS_SITE. I'd like to ensure that along with a manifest, i have all the necessary exports somewhere.
<rekado>jsierles: the exports are written to $out/etc/profile, but you can also get them with “guix package --search-paths”(?)
<jsierles>ok, thanks
<jsierles>is there a way to calculate the hash used in the profile path, given a manifest?
<pmikkelsen>hi guix!
<pmikkelsen>is anyone working on updating enlightenment and efl? Otherwise I might give it a try
<lfam>pmikkelsen: If you didn't find any discussion on guix-devel or guix-patches, I'd say the help is welcome!
<pmikkelsen>lfam: I didn't find anything, so I'll give it a go!
<pmikkelsen>can't promise I'll be done anythime soon, as I am quite new to this, but I'll do my best
<efraim_>I'm normally the one who bumps them but go ahead, I'm not working on them ATM
<pmikkelsen>efraim_: allright
<efraim_>If you do get EFL to bump nicely then Python-efl is also an option
<pmikkelsen>ok, i'll try
<lfam>efraim_: How's the firefly?
<efraim_>I'm currently working on a kernel so I can work on VMs and install media
<efraim_>Kernel builds nicely, for some reason not getting a vmlinux file/binary to boot
<lfam>It's more comparable to the Odroid in terms of computing power, but Olimex just released their A64 board:
<lfam>Still waiting on the DIY laptop kit based on it
<efraim_>The major issue with the odroid I think is I didn't buy an emmc chip for it so its compiling on an sdcard
<lfam>Too slow :(
<jsierles>is busted or just slow to load?
<lfam>jsierles: The web page? It's always slow to load
<jsierles>i see
<jsierles>been waiting a couple minutes. what's the cause of the slowness?
<lfam>The server is almost always heavily loaded, and the hydra software itself is not that efficient in general
<lfam>That's why we created to reduce the effect of fetching package subsitutes on But the mirror doesn't give the web interface to the build farm
<jsierles>right. but this means there's no easy way to check the status of substitutes on that server
<jsierles>just wondering if some local compilation i saw earlier today (of vim) would have been caused by something happening on the substitute server. not too clear on how that works yet.
<lfam>jsierles: Checking if a substitute is available via that web page will be impractical in my opinion, even if the page loaded faster.
<lfam>If a substitute is not available on the mirror, it will return 404 right away. If a substitute is available on the back-end, the mirror will request the back-end to start compressing and sending the substitute to the mirror. So, a few minutes after the initial 404, the mirror might have a substitute available.
<lfam>Personally I'm not so bothered by compiling once in a while. Guix is a build-from-source system with transparent binary substitution, after all :)
<lfam>But it's not practical on some systems to compile
<jsierles>it doesn't bother me exactly - i just like to know what is going to happen
<lfam>I still think the current arrangement is very good, though. It makes updates available quickly to those who are able and willing to build them, and everyone else has to wait, just like on a binary distro.
<jsierles>for all practical purposes, we will have a single store and only need to build/download stuff once
<lfam>Right, so the mirror lacks a subsitute, you might try again in 10 minutes or so in case it's fetched it in the meantime
<jsierles>single shared store that is, across the whole cluster.
<jsierles>lfam: but what happened today was, i ran the same command 3 times in a few minutes, and the third time, it did get a substitute. so just wanted to know if i did something wrong
<jsierles>or if that means the substitute was being rebuilt.
<lfam>You experienced what I described above. The mirror lacked the substitute but it was available on the back-end. So your query triggered the mirror to retrieve the substitute.
<jsierles>i see
<lfam>However, we return 404 immediately rather than leaving the connection open for what may be a very long compress-and-send process between the back-end and the mirror.
<lfam>The mirror configuration is publicly available:
<lfam>If you are deploying Guix on a cluster, you may want to host your own mirror.
<lfam>Did you talk to rekado yet? He has a lot of experience running Guix on a cluster
<jsierles>yeah. we already have it working pretty well now by mounting a google storage bucket on a fuse filesystem. then that gets mounted into docker containers read-only
<jsierles>but yeah, i was thinking we should host a mirror. any docs on doing that?
<lfam>jsierles: You just need to run an nginx server with the configuration I linked to
<jsierles>ah thanks. missed that
<lfam>There are a few lines to tweak here and there, and you might adjust the cache size, etc, but it's more or less "plug and play"
<jsierles>yup looks good.
<jsierles>given a manifest file, is there a way to fetch its associated profile hash or path?
<lfam>I haven't tried it, but maybe something like `guix package --manifest=foo --dry-run`?
<lfam>Of course you can always compute the manifest fully, but I assume you want something cheaper
<jsierles>that works. at least, it mentions the profile derivation path
<pmikkelsen>Out of curiosity, is it correct that the gcc version used to build all packages is 5.4?
<lfam>pmikkelsen: Yes
<pmikkelsen>lfam: okay, is there a specific reason for this, instead of the newer ones? :)
<lfam>Not sure, maybe there is some discussion on the mailing lists
<pmikkelsen>okay thanks
<efraim_>Moving from 4.9.3 involved tracking down a regression on arm so it took a long time, nothing specific in place about the next version jump
<efraim_>Does Python2-pandas build on other architectures? It keeps failing on aarch64