IRC channel logs


back to list of logs

<apteryx>it'd just offer a 2nd option to consult the kernel parameters, which would allow quickly seeing what non-standard options are used for our linux-libre build
<dstolfa>thecatster: there's some unclear stuff about using the name "firefox"
<dstolfa>you basically need permission from mozilla
<lfam>apteryx: Sure, if people want it
***niko is now known as o
<dstolfa>it's their trademark
<lfam>I'm not in charge of the kernel packages
<lfam>(I only started taking care of them after they were abandonded for a few months)
<thecatster>dstolfa: Oh that's not very free then, makes sense
<dstolfa>thecatster: it is free
<sss1>hi all
<dstolfa>it's just a trademarked name
<sss1>looks like avr compiller is broken
<dstolfa>basically, mozilla doesn't want people using "Firefox" for software that they don't endorse to be firefox (so anything that is even slightly modified)
<dstolfa>you can rename it to say, icecat, and use that
<dstolfa>(which is in the repositories, but it is the ESR version)
<Noisytoot>Rust is in Guix, and has similar trademark issues
<apteryx>lfam: OK; thanks for doing it!
<thecatster>Ah, got it. Thank you for clarifying that!
<lfam>I would be really happy if other people did things about the kernel packages too
<lfam>It's kind of a drag knowing that nobody else will update them
<sss1> - problem appeared recently, with same code which was compiled fine earlier
<dstolfa>Noisytoot: i can't comment on that since i don't know the details about rust, but it's possible that rust in guix just isn't modified in any way
<dstolfa>so it really is rust
<apteryx>right, it'd be more sustainable if multiple people could help with the task
<lfam>I don't even really know anything about dealing with the kernel
<lfam>Hence my questions like "how to make a defconfig"
<dstolfa>lfam: i'd be happy to help with it, but at the moment my time is being eaten up by work and strongswan
<lfam>The matter of trademarks is a matter of judgement
<apteryx>lfam: eh, I only learned about that recently
<lfam>Similar to patents, there is no definitive answer to "can I do this?"
<dstolfa>that is, unless the holder gives you the OK
<lfam>We shouldn't worry too much about trademarks
<lfam>Debian / Firefox was a special case since Debian is notorious for making big changes to upstream software
<lfam>The easy solution is to not do that
<lfam>Also, we are only just passing the first generation of people involved in "distros". So, it makes sense that things will change now
<lfam>And that old grudges will melt away
<lfam>A lot of things that we consider "set in stone" are really just the result of an argument between two people in like 1997
<dstolfa>i imagine that even if trademark is an issue, emailing firefox and being like: "can we please use this?" would result in a quick "yes go ahead"
<dstolfa>ultimately the only thing guix would have to do with it is remove non-free bits like widevine and that's about it?
<dstolfa>that's just compile time flags, not changes to the source
<lfam>The add-ons are a problem for Guix
<dstolfa>yeah, ungoogled-chromium cleverly avoids this
<lfam>Speaking of trademarks... "Guix" itself
<dstolfa>surely almost any software name would be trademarked if they care about their quality and so on
<lfam>Yeah, and there may also be multiple projects using a given name
<lfam>Trademarks have to be enforced to have value
<Noisytoot>Guix and GNU are trademarked, but their trademark policies allow commercial distribution of unmodified versions (which the Firefox/Mozilla trademark policy doesn't)
<lfam>Guix is trademarked... by somebody else
<dstolfa>uh oh
<dstolfa>renesas electronics i assume?
<dstolfa>wait what really
<Noisytoot>That's ironic
<lfam>And, it really doesn't matter
<dstolfa>so there's 3 pieces of software called guix then
<lfam>I think MS bought the other thing called GUIX
<dstolfa>oh i see
<lfam>So, I think we'll be okay with Rust
<pkill9>building qtwebengine seems to have slowed to a halt, i'm assuming it's because it's shared CPU among the users
<pkill9>so I've rented a 'bare metal' instance
<ecbrown>dstolfa: i lost my logs, were we talking about virt-manager not working? i just installed trisquel
<ecbrown>i had to set up a bridge with networkmanager
<dstolfa>ecbrown: we were, yes!
<ecbrown>then make sure virtlogd is also running, and voila i am running trisquel 9 right now
<lfam>If this is correct, we came first anyways:
<ecbrown>so, not a bug, not filing a report that we talked about earlier.
<pkill9>which has 8 cores with 16 threads at 3.7GHz, and 128GB of RAM
<dstolfa>ecbrown: alright, interesting.
<ecbrown>if you start with a dhcp connection, i think you need to use bridge-utils and brctl to create the bridge
<dstolfa>ecbrown: there's no way to configure a bridge in a system configuration right now, correct?
<ecbrown>but here i have a desktop, and it has gnome networkmanager which has a wizard for bridges
<dstolfa>at least i couldn't find a way to do it
<ecbrown>not that i saw, unless one can issue commands, e.g. brctl eth0 yada yada
<ecbrown>arbitrary commands
<dstolfa>you don't really need brctl either, you can do it with ip
<dstolfa>just an interface to ip would be nice
<ecbrown>well i am happy as a darned clam now, i have a gui vm manager :-)
<Noisytoot>Where did the name "Guix" come from?
<ecbrown>guile nix i believe
<dstolfa>ecbrown: well i ported all my stuff to shell scripts so now i'm sticking to that, but good to know! :D
<dstolfa>you know at some point i might get annoyed enough with all the virtualization configuration and write a clean guile interface for guix and VMs
<dstolfa>arbitrary VMs
<dstolfa>because let's face it, libvirt with XML is awful
<dstolfa>i would love to specify VMs in my system configuration and then be able to simply say `guix vm start name`
<dstolfa>have it as a service
<ecbrown>iirc openbsd has that for their native vm
<dstolfa>i mean libvirt is that as well, but this would be in guile as a part of your system configuration
<dstolfa>this isn't a new thing, i would just like that as guile
<dstolfa>(+ the ability to program it)
<pkill9>this seems to be building a lot faster
<pkill9>yep got past the other server
<joshua>so I'm trying to set up wireguard with guix system. anyone else done it? Is it somewhat easy?
<dstolfa>joshua: haven't done it myself, but i've spent a decent amount of time around it and it looks to be pretty simple to me. you would just do something like (service wireguard-service-type (wireguard-configuration (...))
<dstolfa>joshua: see
<joshua>dstolfa: I'm looking at the docs...I'm still just confused...haha.
<dstolfa>joshua: what are you confused about specifically?
<joshua>(service wireguard-service-type ...) do I put that in on my laptop? Or does that go into my remote server?
<dstolfa>joshua: that would be on your guix systems. if your laptop is a guix system, then you would use it there
<dstolfa>it would go in your /etc/config.scm (or where ever you keep your config)
<joshua>both my laptop and my server use guix system. :)
<dstolfa>right, are you trying to set up a client or server then? :)
<joshua>both. I'm trying to set up my laptop to connect to my server.
<joshua>expressVPN is $200 or so a year. A linode server in a foreign country costs me $70 a year.
<dstolfa>i see, well i assume it would work, but i wouldn't want to mislead you because i haven't done it myself, so i'll just let someone who's actually done it answer :)
<pkill9>it got compiled woop
<ix>Folks, I don't know how guix works well enough to say, would it be reasonable to install it into a VM first as a test, until it has enough in it that I can switch my nixos to guixsd?
<dstolfa>ix: putting things in a VM to test first is always worthwhile
<ix>dstolfa: how best do, would I need different kernels?
<dstolfa>ix: you can just spin up a qemu + kvm VM
<pkill9>anyone encountered this issue when runing `guix copy`? guix copy: error: implementation cannot deal with > 32-bit integers
<pkill9>ah, it lacks a signing key that's hwy
<pkill9>feature proposal: command to authorize a machine based on ip address/domain name
<pkill9>tbf you could just make a simple wrapper
<pkill9>ssh <remote> cat /etc/guix/acl | guix archive --authorize
<pkill9>would be nice to be able to do something like `guix archive --authorize <remote-ip/domain-name>`
<pkill9>`guix copy` needs a progress bar
<pkill9>how do people manage multiple guix compilations for different packages?
<pkill9>just put them all in different directories?
<pkill9>if the 'cloud' is other people's computers, then FOSS is the aether
<oriansj>hello joshua
<joshua>I a still trying to figure out how to use wireguard...
<joshua>specifically that meant to be used for clients or servers?
<joshua>I'm guessing both...but I can't figure out how to generate the server config.
<acdw>hi all! can i ask about installing Guix with nonfree wifi drivers on this channel?
<acdw>i have a ralink rt3290 on an asus. h-node says ther's no free driver, but i want to install guix anyway
<acdw>... or should i just install, say, debian or smth and put guix on top of it?
<acdw>honestly i should probably just go w/ ubuntu on this machine
<roptat>acdw, you won't get an answer to that question on this channel :)
<acdw>haha that's what i was wondering
<roptat>the best I can suggest is to get one of these cheap usb dongles
<acdw>can i ask where i can ask those questions :P ?
<roptat>(one of the ones that have the RYF certification, otherwise they'll need a proprietary driver/firmware)
<roptat>any means that's not an official communication channel of guix would be a place to ask specifically about using proprietary software with guix
<acdw>lol right
<acdw>okay thanks roptat
<apteryx>sneek: later tell civodul, ah! the bad performance comes from exec-command attempting to close the first 99999 file descriptors (!)
<apteryx>as can be seen with: strace -f -s200 guile -c '(begin (use-modules (shepherd service)) (let ((pid (fork+exec-command (list "sh" "-c" "echo hello")))) (waitpid pid)))'
<joshua>hey guix people! I've been running guix on a linode server for a while...are there any other cloud providers I should try to run servers on guix with?
<ix>OK yes
<ix>I'll do this tomorrow
<drakonis>but is this related to me sending a message to the wrong channel?
<ix>drakonis: actually no
<ix>I saw that just after
<ix>I havent had any time to figure stuff out til tomorrow
<drakonis>i see
<drakonis>anyhow, i'm highly pleased at having a working irc relay now
<drakonis>i am completely free from nixos now
<drakonis>no going back now
<ix>Sounds nice... soon
<apteryx>sneek: later tell civodul this runs in < 0.1 s instead of > 2 s: ,time (without-automatic-finalization (catch-system-error (par-for-each close-fdes (iota (max-file-descriptors) 3))))
<sneek>Got it.
<apteryx>joshua: both, yes
<joshua>apteryx: thanks.
<apteryx>see the guix-maintenance repo, under doc/ for some explanation + examples
<apteryx>one gotcha is if you use dyndns
<apteryx>even with keep-alives it's not reliable by itself
<joshua>apteryx: thanks! I currently don't use dyndns.
<joshua>apteryx: so I'm going to have some connectivity issues? even with keep-alives?
<apteryx>only if you use a dynamic IP
<apteryx>because the wireguard client resolves it only upon connection
<joshua> my client will have connectivity issue, if the client uses dynamic IP...which I'm pretty sure that it does. it's a laptop.
<apteryx>it can be refreshed via keep alives, but if a machine goes down, so does the keep-alives and if the IP changes in the meantime, it's over.
<apteryx>so you need some other script to restart wg or something
<apteryx>we should add this as a feature to our service :-)
<apteryx>another thing that sent me searching was that without traffic, nothing happens; so before you see wireguard establish some connection, you'll need to ping the remote wireguard IP
<joshua>apteryx: that seems very odd to me. Why would you build a vpn protocal based on allowing a client's IP address. That IP address is bound to change. it's a client.
<joshua>wireguard is starting to seem not so great based on it's own. :)
<apteryx>it's very simple and works fine and fast for what it does, that's its strength
<joshua>apteryx: gotcha.
<joshua>apteryx: I'm not certain what it was that you were hoping me to find...under doc/
<joshua>doing a git pull now...maybe my maintence git checkout was old
<joshua>now I see it! Thanks!
<apteryx>Okay :-)
<apteryx>sneek: later tell civodul actually, forget the above optimization, it doesn't work :-).
<sneek>Got it.
***o is now known as niko
<raghavgururajan>BUG?: xorgproto-2019.2/share/pkgconfig/xproto.pc is empty.
***Kimapr0 is now known as Kimapr
<ix>> error in finalization thread: Success
<wingo>u love 2 see it
<civodul>Hello Guix!
<sneek>civodul, you have 3 messages!
<sneek>civodul, apteryx says: ah! the bad performance comes from exec-command attempting to close the first 99999 file descriptors (!)
<sneek>civodul, apteryx says: this runs in < 0.1 s instead of > 2 s: ,time (without-automatic-finalization (catch-system-error (par-for-each close-fdes (iota (max-file-descriptors) 3))))
<sneek>civodul, apteryx says: actually, forget the above optimization, it doesn't work :-).
***Kimapr5 is now known as Kimapr
***lukedashjr is now known as luke-jr
***Kimapr2 is now known as Kimapr
<civodul>mothacehe: hey!
<mothacehe>hey civodul!
<sneek>Welcome back mothacehe, you have 2 messages!
<sneek>mothacehe, apteryx_ says: I had to manually restart wireguard-wg0 and ping from overdrive1 to have the wireguard link re-established
<sneek>mothacehe, apteryx_ says: but I did that yesterday and it lost the link again it seems, so I'm not sure what's going on. The connection with Cuirass seems to have been lost since I reconfigured it (before yesterday?)
<civodul>i'm being told that <>, used by channel-with-substitutes-available, is 500
<civodul>does that ring a bell?
<mothacehe>I also noticed that some pages were failing on that server:
<mothacehe>any chance you could send me the cuirass-web.log file?
<mothacehe>or at least some backtraces
<civodul>mothacehe: Throw to key `psql-query-error' with args `(fatal-error "PGRES_FATAL_ERROR" "ERROR: relation \"pending_dependencies\" does not exist\nLINE 21: LEFT JOIN pending_dependencies as PD on =\n ^\n")'.
<civodul>perhaps i need to "do something" to get the database schema up to date?
<mothacehe>mhh, something went wrong with the SQL upgrade scripts I guess
<mothacehe>pending_dependencies should be provided by the 11th upgrade
<mothacehe>could you run: sudo -u postgres -s /bin/sh -c 'psql cuirass -h /tmp'
<mothacehe>and select * from schemaversion;
<tissevert>hi guix
<Noisytoot>Is "@acronym{UDF, Universal Disk Format} is a filesystem mostly used for DVDs
<Noisytoot>and other optical media. It supports read-only media (DVD/CD-R) and rewritable media that wears out (DVD/CD-RW)."?
<Noisytoot>(is it a good description for udftools)
<muradm>hi, sometimes i use #!/usr/bin/env -S guix repl -- in my scripts, which works fine, today i tried to use #!/use/bin/env -S guix environment -L ${HOME}/devel/guix -l ${HOME}/devel/project.scm --
<muradm>and ended up recursive processes spawning, my code never reached execution
<muradm>ok after stairing at 'ps -ef' output figured it out
<muradm>header should be #!/use/bin/env -S guix environment -L ${HOME}/devel/guix -l ${HOME}/devel/project.scm -- guile --no-auto-compile
<leoprikler>Noisytoot: no, it should at least contain the info, that udftools reads/modifies such UDF images or what exactly it does
<Noisytoot>leoprikler, What about "@code{udftools} is a set of programs for reading and modifying @acronym{UDF, Universal Disk Format} filesystems."?
<leoprikler>that loses some of the info from the previous one. It's nice as a leading sentence with clarification of what UDF is following afterwards
<Noisytoot>"@code{udftools} is a set of programs for reading
<Noisytoot>and modifying @acronym{UDF, Universal Disk Format} filesystems.
<Noisytoot>@acronym{UDF, Universal Disk Format} is a filesystem mostly used for DVDs and other optical media.
<Noisytoot>It supports read-only media (DVD/CD-R) and rewritable media that wears out (DVD/CD-RW)."
<civodul>mothacehe: sorry for the delay; "select * from schemaversion;" returns 8
<civodul>i'm setting up a replacement for this machine
<civodul>so this schema upgrade problem may soon be moot for me
<civodul>roptat: congrats on!
<civodul>roptat: which reminds me: PHP's build system waiting for you! :-)
<pineapples>Some Matrix goodies: <>
<mothacehe>civodul: could it be that you are running an up to date cuirass-web service with an outdated cuirass service? The cuirass service is responsible for database upgrades.
<civodul>mothacehe: i've done "herd restart cuirass" for good measure; both are cuirass-1.0.0-23.58e3551
<civodul>looks like the schema upgrade is not being triggered, somehow
<mothacehe>apteryx: regarding the overdrive1, it was missing the Wireguard keep-alive config. I cannot connect it for reconfiguration though.
<civodul>rekado_: looks like mumi is taking quite a bit of CPU when it starts indexing things
<civodul>it seems to slow things down
***attila_lendvai_ is now known as attila_lendvai
<ecbrown>hello guix: earlier i had posted a pastebin about a mysterious cuirass error. i installed cuirass on a barebones configuration, and it seems to be working. i may have had a collision with other apps/services who want their own version of postgres. (will diagnose and send bug report if it's truly a bug report and not a misconfiguration)
<ecbrown>pardon my naive question: but to get https substitutes, does one do reverse proxy to guix publish port?
<ecbrown>i'm wondering if that's maybe a little "heavy"
<civodul>ecbrown: hi! we usually set up nginx in front of nginx for https etc.
<ecbrown>ahhh, ok. thanks civodul
<civodul>you can see configs for ci.guix at
<ecbrown>so not far off lol
<civodul>it's probably more involved than what you'll need though, so don't be intimidated :-)
<ecbrown>cool, thanks
<ecbrown>wow, lots of recipes on how to make ones own guix infrastructure
<civodul>tips & tricks from the trenches!
*ecbrown daydreams about inn2 as a mechanism for sharing pre-built packages
<ecbrown>nntp server
<ecbrown>kind of the original "federation"
<ecbrown>leafnode2 is also interesting, it's lazier and only gets when requested then caches
<ecbrown>(i play with nntp servers on debian and read nntp with gnus, hence my interest)
<civodul>substitutes over NNTP, that sounds like a good idea :-)
<roptat>civodul, regarding the php build system, do you think I could fix the issue I had with "with-extension" somehow?
<civodul>roptat: on core-updates yes, but not on master; in i suggested going with the custom JSON module as you had initially posted
<civodul>that's okay, we can leave a TODO to fix that on core-updates
<roptat>ok, let's do that
<asterope>it's weird but I'm getting a lot of "incompatible bytecode version" warnings/errors adter doing guix pull on my user account, but it's fine on root
<civodul>asterope: hi! could it be that GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH are set?
<civodul>or GUIX_PACKAGE_PATH?
<jonsger>do others have problems on Guix system with ssh and ipv6?
<asterope>civodul: yes, both are set
<asterope>guix package path is set to, but there are no packages/channels under it currently
<apteryx>civodul: to waste 2.5 s on every exec-command call in Shepherd must slow things down a bit, no? :-) It'd be nice to find a way to make closing the file descriptors operation more efficient.
<apteryx>IIUC, suggests using O_CLOEXEC for *every* file that gets opened in Shepherd, so that they get closed for free when using fork/exec.
<apteryx>I'm not sure how easy that'd be to achieve in Shepherd; would that be a good thing to pursue?
<asterope2>(I switched devices) to add, I did not set those GUILE_* paths manually, first time I hear about them
<civodul>apteryx: FWIW the basic fork+exec-command example you gave yesterday runs in 0.05s here
<civodul>O_CLOEXEC would be better, of course
<civodul>but currently it's quite hard to guarantee that everything we open is O_CLOEXEC
<civodul>for one thing, call-with-input-file and the likes don't allow you to pass such flags
<civodul>there are also no bindings for pipe2(2) i believe
<civodul>so a few things need to be address before we can safely get rid of the loop
<civodul>but really, the loop can't take this much time
<civodul>could you try 'strace -Tt guile -o log the-fork+exec-example.scm'?
<civodul>it may be that your FD ulimit is much much higher than the default, too
<apteryx>oh yes, I have a pam-limits-entry raising it to 100000
<apteryx>the default must be more like 4000, I don't recall
<lfam>jonsger: What kind of problems?
<lfam>The TLS certificate for expired
<lfam>jonsger: There is <> which is related to SSH and IPv6
<jonsger>it does not work via IPv6, connecting to or even via ssh. So my guess is more towards my router or ISP
<lfam>I guess you could try again with -vvv to see more details
<lfam>I assume you can access those sites over IPv6 using other tools besides SSH
<jonsger>yeah, I just disabled IPv6 at all :)
<jonsger>lfam: interesting bug, but its client side for me and I'm running on SSD
<lfam>I think it's a totally different thing in that csae
<dstolfa>seems like gcc dropped the FSF copyright requirement
<jonsger>nice :)
<civodul>lfam: the cert of looks fine now!
<civodul>i restarted nginx
<civodul>and ran "certbot renew" to be sure
<civodul>however, and could not be renewed
<jonsger>I had problems with cert renewals in the past, but since I removed port 80 from (listen...) it works always...
<jonsger>seems really like a bug in guix, as git via ssh on my openSUSE laptop and the same network does work...
<lfam>Did you try with -vvv yet?
<lfam>Or, any other tracing / debugging?
<jonsger>I'm using tcpdump besides
<jonsger>it's my router or network, so no issue from guix :)
<lfam>Weird that it works for some computers and not others!
***roptat_ is now known as Guest5512
***Guest5512 is now known as roptat
<ix>Hey se
<ix>If i use `guix system init config.scm /guix` with /guix being empty, will it Mount based on the file-systems slot?
<ix>Or will it use the existing Mount tree?
<drakonis>ix: existing mount tree i believe
<drakonis>did you also forget to mount the store?
<ix>drakonis: havent tried yet
<drakonis>ah i see
<jra>Is there an example for creating a single C file, one-line build command application in a pack for distribution? (no git, no source tree, no build system, ... even more simple than the hello example: just one C file and a one-line compile command.)
<roptat>you need to get that C file from somewhere at least, so you'll need an origin (git, download, ...)
<jra>right, it is just a single c file that I wrote.
<ecbrown>jra: don't you need a builder of some sort?
<ecbrown>i mean, a simple cmake is trivial for this
<ecbrown>something has to locate the compiler, run make, presumably
<jra>true, for now my build system is "mpicc -o simplempi simplempi.c"
<jra>at some point my project will have a full source tree with a build system under versioncontroll hosted on-line ... but for now I just want to pack a very simple program developed locally.
<leoprikler>just pointing this out quickly, but you don't need to write a guix.scm for stuff like that (it's a little overkill)
<leoprikler>it suffices to do so once you know the build system you want to use
<jra>I imagine something like the guix hello example, where the source section references a single file with a relative path and a single line build command ... not even a Makefile.
<roptat>that's more difficult to write, but it's possible of course
<jra>Is there an example for how to do something like this without writing and guix.scm?
<roptat>maybe something the trivial-build-system can help with
<roptat>jra, this will probably not work as is, but it should give you an idea of what you have to do:
<roptat>I guess, you'll be missing a native-input for mpicc, and you'll have to set $PATH yourself so the invoke can find it
*jonsger gives core-updates a shot in hope for many substitutes :)
<roptat>speaking of which, do I have time to sneak in a wip-python branch, or should I push the python improvements to core-updates now?
<jra>roptat, that looks perfect ... thanks! I figured I'd have to write a package in order for it to be pack'd correctly to keep all its dependencies from my local guix.
<mbakke>roptat: I think there is room for python-build-system improvements still ... note that there have been a few already.
<mbakke>roptat: also, have you seen ?
<roptat>it's not related to the pyton-build-system, but to python itself (performance and size improvements)
<mbakke>roptat: that sounds nice :)
<mbakke>I have a big pile of patches to be applied after , after that I think the branch is ready to go
<roptat>that's and
<roptat>ok, so I guess I'll just push to core-updates
<mbakke>roptat: looks great! I trust you checked that '--enable-optimizations' does not enable -march=native, avx2 or other stuff that cannot run on all CPUs :-)
<roptat>mbakke, ah, good question! I don't think it does, but haven't checked thoroughly
<mbakke>roptat: apparently --enable-optimizations implies LTO on supported architectures:
<mbakke>it also enables PGO, I wonder if that makes it non-reproducible
<roptat>is that a bad thing?
<mbakke>roptat: no, it just makes the separate --enable-lto flag redundant (will it work on all architectures? I guess we'll find out!)
<mbakke>LGTM anyway
<roptat>ah you're right
<mbakke>roptat: in any case, in the spirit of Python, "explicit is better than implicit" :-)
<mbakke>roptat: eh, nvm, reading , --enable-optimizations no longer implies LTO. Don't mind me! :P
<roptat>ah, alright :)
<ix><drakonis> did you also forget to mount the store?
<ix>Are you meant to?
<ix>Cause i did
<ix>And it fuckin overwrote my store
<ix>And now i gotta reinstall guix from scratch
<ix>mbakke: OK
<ix>mbakke: * oh, hey
<ix>Im here now, switching from nixos
<mbakke>hello ix, hope you'll enjoy your stay! sorry to hear your store got corrupted :-/
<mbakke>also, have we met? :P
<bavier[m]>mbakke: pgo shouldn't make the build non-reproducible, in my experience, as long as the profile-gathering tests are the same from build to build, since the profiling tracks trip-counts rather than wall-time.
<mbakke>bavier: that's great to know, thanks. I've skimped on it before because I was unsure (and too lazy to test).
<jonsger>seems like core-updates is currently not built on ci :(
<civodul>ah, some texlive thing broke:
<civodul>mbakke: great job on texlive 2020 BTW!
<jonsger>uff, building 19 versions of rust will take some time...
<mbakke>civodul: ty! unfortunately there are still indeterministic failures like above, I suppose we'll have to live with it at least one more round.
<mbakke>I'll try to get it merged this weekend
<apteryx>mbakke: indeed, great job!
<apteryx>about these non-deterministic failures, were they around as long as you remember, or is it something new?
<apteryx>I remember experimenting with them last time I touched texlive
<apteryx>on core-updates
<apteryx>experimenting them*
<apteryx>experiencing them, even
***wrk is now known as pjotpr
<mbakke>apteryx: not sure, they've been around at least for 1-2 years, my goldfish brain can't recall further back
<civodul>mbakke: i think we should wrap up soonish on core-updates, WDYT?
<civodul>t's been a nice long journey already :-)
<raghavgururajan>Folks, some of the .pc files of xorgproto are empty.
<roptat>civodul, when we have a target date, we should send something to guix-devel
<mbakke>civodul: agreed! I have a GCC 10 update coming after TeX Live, after that it's more-or-less "ready" from my side.
<raghavgururajan>It appears there use to be individual packages each proto (fooproto), for which the .pc files are fine. After they are superseeded by xorgproto, the .pc are empty.
<civodul>mbakke: woohoo, nice!
<civodul>roptat[m]: agreed!
<mbakke>I do want to get in too, as we're going to have a lot of Python woes otherwise ( is mostly deprecated)
<civodul>roptat[m]: i didn't mean to make a decision here and now
<civodul>so yes, we should announce the Last Things™ we'll merge before freezing
<mbakke>civodul, roptat: I can probably take care of it this weekend :)
<qy>Im ix.
<qy>Rebooting my pc
<mbakke>maybe give everyone two weeks or so to wrap up last-minute patches, and announce a freeze from ~June 20
<qy>So weechat will be down
<ix>mbakke: oh, sorry im bqv
<ix>(and qy)
<ix>mbakke: the guix-nix guy
<mbakke>ix, qy, bqv: right, hi! long time no see. Still sad that the guix Nix package was not merged :/
<qy>Yeah, heh. Ah well, leaving nix now
<KE0VVT>Does Guix have Abrowser?
<pkill9>it has multiple browsera
<mbakke>raghavgururajan: 'find $(guix build xorgproto) -size 0' does not give any results here
<nckx>L'evening, Guix.
<roptat>goodsoir nckx
<Noisytoot>pkill9, Abrowser is the name of a specific web browser (Trisquel's default web browser), not "a browser"
<civodul>today i got this a few times: "guix substitute: warning: connection failed: Connection timed out"
<civodul>are people seeing this as well?
<maximed>sneek: later tell wingo: When using #:drain? #t, I notice some fibers are not actually run to completion (tested by adding a few (pk 'i fiber-index); some indices are missing from the log). Does that sound a bell? (I need to make a minimal test case & try to work-around with condition variables)
<sneek>Will do.
<maximed>civodul: FYI, I sent an updated patch series for wrap-script & wrap-program & search-input-file cross-compilation
<civodul>maximed: great, thanks!
<civodul>lemme take a look
<nckx>Who fixed the TLS cert by the way? (Thanks!)
<jonsger>I assume ludo
<nckx>Since doing it manually requires bringing down nginx, maybe something didn't start quite right (or a lurking configuration bug now got applied).
<nckx>Well, we assume Ludo' does everything.
*nckx hasn't noticed connexion problems yet...
<raghavgururajan>mbakke: Hmm. For example, xorgproto-2019.2/share/pkgconfig/xproto.pc is empty.
<nckx>raghavgururajan: It's not here; let me pull. (It's a failure mode of ext4 to truncate files on crash; did you verify your store?)
<raghavgururajan>nckx: I think jgart[m] tried too.
<nckx>I was already on the same xproto hash as master here.
<nckx>So no change.
<civodul>nckx: that's me! though i emailed guix-sysadmin for, help needed on that one
*raghavgururajan 's head spins
<nckx>It could be a parallel-build? bug as well.
<nckx>I mean, I guess, since I can't do much else :)
<civodul>BTW, thoughts on the getting rid of input labels, people?
<nckx>raghavgururajan: Do you have the same store hash?
<civodul>mbakke: ↑
<civodul>(could have an impact on core-updates)
*raghavgururajan checks
<raghavgururajan> /gnu/store/wxl57nkbqgamfp73b7v62kk3f1hiv0cz-xorgproto-2019.2
<mbakke>raghavgururajan: on my end /gnu/store/wxl57nkbqgamfp73b7v62kk3f1hiv0cz-xorgproto-2019.2/share/pkgconfig/xproto.pc is not empty and has guix hash 0v4wiv9frkhx841ydpdf9806sy08grkgyjkbr3cxkv181235l4mb
<nckx>That matches my paste. ☝
<maximed>civodul: Automatically creating input labels when they aren't specified looks good to me, saves some typing.
<mbakke>oh, I see nckx already addressed it
<nckx>It's good to have confirmation that normality is normal.
<nckx>I don't want to be the only one for which things build as intended.
<maximed>I don't know if it makes sense to remove them completely though (I mean replacing the alist 'inputs' and 'native-inputs' with a list of strings and things like that)
<raghavgururajan>nckx, mbakke: Should I do `guix gc --delete /gnu/store/wxl57nkbqgamfp73b7v62kk3f1hiv0cz-xorgproto-2019.2` and them `guix build xorgproto`?
<nckx>raghavgururajan: Be sure to --verify=contents[,repair] before investigating further.
<nckx>raghavgururajan: If you can get rid of all roots referring to it, yes.
<nckx>It's pretty ‘core’ if you like ‘graphics’.
<nckx>A less ambitious check that tells you as much is, well, --check...
<nckx>...with --keep-failed.
<dstolfa>is there any reason why a (let* (foo (computed-file "foo.d" #~begin((mkdir #$output)))) ...) wouldn't create said directory? am i missing something?
<mbakke>dstolfa: without looking closely, I think it should be #~(begin (mkdir #$output))
<dstolfa>oh sorry, that's just me making typos instead of copy pasting
<nckx>I'm curious how you got to that double ((…
<nckx>Oh, OK.
<jonsger>maximed: +1 for that approach
<maximed>computed-file does not actually create a file. You need to insert the result somewhere, e.g. in a package definition
<dstolfa>maximed: it's in a function called by a service type
<dstolfa>the code definitely runs, because the other stuff happens
<dstolfa>but this particular directory doesn't get created
<dstolfa>and i'm unsure why
<nckx>Can we please not use specs in packages? Something intuitively tells me we'll regret ever allowing that.
<maximed>dstolfa: Can you give the service definition? (-->
<nckx>Is the appeal of that idea to do away with/make irrelevant package variable names entirely?
<dstolfa>maximed: yep
<dstolfa>one second
<maximed>nckx: Specifications in packages seems to be a bad idea when combined with channels
<mbakke>dstolfa: (let ((foo (computed-file "foo" #~(begin (mkdir #$output))))) foo) "works for me" (tm)
<dstolfa>maximed: excuse the messy code, currently in the state of debugging a few things (but this one has me puzzled):
<maximed>e.g. if I define a coreutils/not-to-be-confused-with-GNU-coreutils/something-else-entirely
<dstolfa>the particular part is line 5
<maximed>then would that basically rebuild everything?
<dstolfa>(this is now the whole thing, but that's the part that has me puzzled with all the bits included)
<mbakke>dstolfa: you're missing a '(' before 'mkdir' on line 5
<dstolfa>mbakke: ah yes, that's the latest change that i thought might be causing the problem, it doesn't even compile now! :)
<dstolfa>assume the () is there, would anything else be wrong around that part?
<civodul>maximed: replied!
<maximed>I don't think you can use computed-file like that
<mbakke>dstolfa: reading more closely, it seems like you are trying to write to #$strongswan-dir later, that won't work
<mbakke>any output created by guix is immutable
<dstolfa>ah i see. okay
<maximed>computed-file is for building a file (or directory I guess). You can't later say ‘oh, let's add some stuff to that file later
<dstolfa>let me try to fix that to see if it resolves the issue
<maximed>what you can do, is something like (computed-file "strongswan.d" #~(begin (mkdir #$output) (add-some-config-stuff-to #$output) (and-also-to (string-append #$output "/stuff.conf"))))
<raghavgururajan>> ‎nckx‎: raghavgururajan: Be sure to --verify=contents[,repair] before investigating further.
<raghavgururajan>gc noob xD. I have to do `guix gc --verify=/gnu/store/wxl57nkbqgamfp73b7v62kk3f1hiv0cz-xorgproto-2019.2` right?
<maximed>cvodul: I'll look, thanks
<chikamungus>mu4e emacs package seems to be missing or at least doesn't pop up with 'guix search mu4e' but a few packages appear that extend mu4e functionality do. Is it hidden in some other package or has it been overlooked?
<nckx>raghavgururajan: Just ‘guix gc --verify=contents,repair’ (you can't specify a store item, but since we're checking the store for *corruption* — do you really want to? Just check the whole thing, yes it takes a while.)
<raghavgururajan>nckx,mbakke: Fixed after gc --delete. Thanks!
<raghavgururajan>guix gc --verify=contents,repair finished with no errors.
<nckx>Oki. I still suggest running that command but it's up to you. It's like a fsck for your /gnu.
<nckx>Oh, never mind.
<nckx>I iz become lag, destroyer of conversations.
<nckx>raghavgururajan: Weird, though. That means at some point Guix downloaded or built that empty .pc file, thought ‘yup that looks good’ and added it to your store.
<raghavgururajan>nckx: Oops! I just ran --verify. Now running with --verify=contents,repair
<nckx>chikamungus: mu4e *is* the ‘mu4e emacs package’. It's not maintained or distributed separately.
<nckx>Sorry, mu.
<nckx>mu4e is simply a file in it.
<nckx>raghavgururajan: JSYK the difference is significant. --verify[=repair] merely checks that files mentioned in the db *exist* in /gnu/store, but even an empty file exists. =contents makes Guix actually open the file and compare it to the hash stored in the db.
<nckx>In this case you obviously need the latter.
<chikamungus>nckx: thanks! I was just going to check that out. I thought they were seperate
<nckx>I'm sure there are distributions that separate them, but I'm with Guix on this one: it's a tiny file and it's not separate upstream.
<nckx>OK, it's several files but everything's tiny if you hold Electron next to it.
<nckx>What an ironic name.
<chikamungus>I'm another step closer to degoogling my life
<ss2>hi, I'm looking into updating the redis package at the moment.
<ss2>and seeing that some tests are disabled in the current version, I've disabled another test, which allows the build to complete
<ss2>and am wondering if this is okay?
<ss2>anywone willing to have a look before I push a patch?
<ss2>The server runs, and puh, I'm not that much a wizzard with this server to test it properly. But it looks okay.
<ss2>but some one will look at the patch anyway. Think I'll just push it then.
<leoprikler>ss2 if it's well enough explained no one should complain, but normally you ought to go through the review process
<leoprikler>did the UI change or why am I getting multiple lines per substitute now?
<roptat>leoprikler, maybe your daemon is not up-to-date?
<leoprikler>nvm twas my terminal
<nckx>ss2: As long as you don't break my rspamd I am hap.
<leoprikler>though probably the stuff to be printed did get wider
<civodul>cbaines_: hey! we need to welcome Canan on the mailing list and with a blog post
<civodul>i wonder if g_bor can give a hand
<civodul>sneek: seen g_bor
<sneek>kkebreau?, pretty sure was seen in #guix 4 months ago, saying: There are a few unique patches, so I'll start with those..
<civodul>sneek: seen g_bor[m]
<sneek>g_bor[m]?, pretty sure was seen in #guix one month and 1 day ago, saying: canant: morning.
<civodul>ah, better
<nckx>(string-closest "g_bor") OK 👍
<leoprikler>Who is Canan?
<nckx>Outreachy intern.
<nckx>For the Guix Data Service.
<pkill9>what are they adding to it?
<ecbrown>data lol
*ecbrown ducks for cover
<nckx>Last I saw: speed-ups.
*nckx covers ecbrown with ducks.
<ss2>leoprikler: as in explaining my own motivation why I disabled it?
<ss2>nckx: I can't see so far that rspamd depends on redis.
<nckx>Welp, mine does.
<nckx>Mine might predate the actual rspamd service that exists in Guix, mind you.
<nckx>I'm sure it'll be fine and otherwise I'll be buying some marble this week.
***bao is now known as qy
<qy>me again
<qy>i gotta add initrd arguments to a menu entry
<qy>but i see no option to do so
<qy>nothing in the manual afaict
***qy is now known as Guest6728
<Guest6728>is it possible?
***Guest6728 is now known as qy
<nckx>gy: What are ‘initrd arguments’? You can add arguments to the kernel command line with (linux-arguments '("list" "of=stuff" …)), which is I think the same as what you want.
<nckx>It's up to the initrd to parse /proc/cmdline, which Guix's does.
<qy>nckx: i'm not entirely sure
<qy>i'm trying to reproduce what my nixos grub config does
<qy>it has initrd <initrdfile> <extrafile>
<qy>as a grub line
<qy>so hence, i assumed it was arguments to the initrd, but now i'm thinking it's maybe just two ramdisks?
<nckx>Those aren't arguments, but multiple initrds.
<qy>can i do that?
<nckx>You can probably get away with (initrd "/boot/initrd1 /boot/initrd2"), I don't *think* Guix even looks at the contents.
<nckx>You can also create a combined single initrd file, but the only example I know isn't acceptable to link here, sorry.
<qy>ah ok
<nckx>Let us know if "foo bar" works or doesn't. If it doesn't, someone clearly didn't know multiple initrds are a thing & added some bogus validation, which should be easy enough to fix.
*nckx AFK.
<dakr>I'm using the latest stable VM image through qemu, but I can't get the resolution to change. I change it using the XFCE settings and it briefly changes, then goes back to the default 1024x768. Are others having this issue or am I missing something?
<qy>i'll test it out in a while, my system's stable for now which is quite nice so i'm just fiddling and setting up things