IRC channel logs

2020-11-16.log

back to list of logs

<leoprikler>nckx: Okay, I've given it some thought, and I think that we should definitely drop the interpreters at build time, perhaps even use parameters for those
<leoprikler>That being said, I don't foresee either js2py or v8eval being brought into Guix in the near future.
<leoprikler>The latter already looks like a pain from the setup script and the former does not seem to want to be built on a peasant machine.
<leoprikler>It ate my ram rather quickly and I manually killed it before it also ate my swap
<jgart[m]>There's a simple nix service to setup the slock screen locker with a setuid wrapper. Would something like this be appropriate for guix upstream?
<jgart[m]> https://search.nixos.org/options?channel=20.09&show=programs.slock.enable&from=0&size=30&sort=relevance&query=sloc
<jgart[m]>I see this in the guix man, might be relevant to implementing the above: https://guix.gnu.org/manual/en/html_node/Setuid-Programs.html
<jgart[m]>*manual
<jgart[m]> [slock](https://tools.suckless.org/slock/) is already in guix
<lfam>If I understand correctly, one would need to list slock as a setuid-program in their config.scm
<lfam>I don't think that slock requires any services
<zimoun`>sneek tell later civodul: thank you for the draft release blog, LGTM.
<sneek>later, zimoun` says: civodul: thank you for the draft release blog, LGTM.
<jgart[m]>lfam: something like this? https://github.com/jsoo1/dotfiles/blob/1b5c5315e44fb9f6d06b03d2837f233046df3d91/guix/config.scm#L144
<jgart[m]> https://github.com/jsoo1/dotfiles/blob/1b5c5315e44fb9f6d06b03d2837f233046df3d91/guix/config.scm#L211
<lfam>Oh, I guess it depends how you want to use it
<lfam>I use slock on Debian and it doesn't use a service
<lfam>Anyways, to add a setuid program:
<lfam>(setuid-programs (cons* (file-append slock "/bin/slock") %setuid-programs))
<lfam>(untested!)
<lfam>Add a line like that to your config.scm
<jgart[m]>lfam: thanks! I found this now also 😇: https://guix.gnu.org/cookbook/en/html_node/Xorg.html
<nckx>zimoun`: Sneek is quite the disingenuous grammar nazi.
<vagrantc>if only "guix lint" had some spellchecking and grammar checks...
<lfam>Perfect jgart[m]!
<zimoun`>nckx: Thanks. You mean s/tell/tells right?
<nckx>zimoun`: s/tell later/later tell/
<nckx>Otherwise:
<nckx>sneek> later, zimoun` says: civodul: thank you for the draft release blog, LGTM.
***catonano_ is now known as catonano
<nckx>Which is just perfect.
<zimoun`>sneek later, zimoun` says: civodul: thank you for the draft release
<zimoun`> blog, LGTM.
<zimoun`>well, if someone sees civodul later, then tell their that simon says the draft release blog LGTM :-)
<roptat>sneek, later tell civodule zimoun` says: civodul: thank you for the draft release blog, LGTM
<sneek>Got it.
<roptat>:)
<roptat>sneek, botsnack
<sneek>:)
<roptat>though for some reason I didn't see it
<roptat>gah, I got the name wrong ^^'
<roptat>sneek, later tell civodul zimoun` says: civodul: thank you for the draft release blog, LGTM
<sneek>Okay.
<DarjN>So what in the defaults keeps giving me that a GPT label has no BIOS Boot Partition, then it tells me to build blocklists
<db48x>when I invent a time machine, I'm going to go back in time to prevent automake from ever being conceived
<iyzsong-w>DarjN: via installer or manual system config? tips: 1. match bootloader (grub-efi-bootloader when use EFI), 2. boot partition (a vfat EFI when use grub-efi-bootloader, a bios boot partition when use grub-bootloader with bios booting)
<DarjN>via installer
<DarjN>on my laptop that uses UEFI, it builds the EFI partition no problem then a bunch of errors
<DarjN>on vm, errors on building the bootloader too
<iyzsong-w>i'm not familiar with the installer, dose the generated config look right? with UFEI, it should use 'grub-efi-bootloader'
<DarjN>okay I gotta boot up the laptop, I was on vm but yeah nothing
<DarjN>Doing this via DVD now
<db48x>I could go back and be the "person for Porlock" for the author of automake
<lfam>IME automake is the best one for packagers
*lfam ducks
<nckx>Area man shares edgy opinion held by majority of peers.
<nckx>Ducks.
<db48x>heh
<ryanprior>What's the least obnoxious way to get the full path to the file where a package is declared?
<ryanprior>package -A and package --show give you a partial path only
<ryanprior>I've decided the best answer is "VISUAL=echo guix edit <pkg>", please correct me if I'm being obtuse X.X
<guixy>hi guix
<guixy>I just realized we should have everything necessary for Progress Quest. It looks like it's MIT.
<guixy>That's on my to-do list now.
<DarjN>"looks like there's no substitute for gcc. I hope you have forvever hahaha"
<lfam>DarjN: There should definitely be a substitute for gcc
<lfam>If you can give more details we should be able to make it work
<DarjN>idk what do you need? I'm installing on a laptop with UEFI
<DarjN>My problems are like this link: https://lists.nongnu.org/archive/html/guix-devel/2017-12/msg00135.html
<dissoc>is it possible to inherit a package and just add a single phase before a phase of the parent?
<wleslie>sure. there's a (modify-phases) function that is quite convenient
<dissoc>what do i put in place of %standard-phases?
<wleslie>you *can* fish the phases out of the parent; does the parent do a lot of phase hacking?
<dissoc>yeah. it's ungoogled-chromium
<wleslie>ah, cool
<dissoc>i just want to do some stuff after 'patch-stuff
<wleslie>you can use (package-arguments ungoogled-chromium) to get the arguments, and then (assoc-ref arguments #phases) to get the phases
<wleslie>#:phases I mean
<dissoc>okay cool. i think i see some similar packages. i will give it a shot. thank you
<wleslie>you're welcome
***benny_ is now known as benny
<dissoc>i think it worked. of course i have to wait a while for chromium to build to be 100% sure. thanks again
<leoprikler>Just for reference, the canonical solution would be to use substitute-keyword-arguments
<DarjN>So I guess it's not enough to say guix install (x)? It did nothing. Also doing the "guix system reconfigure /etc/config.scm" is stuck on a package without even downloading it. Pinging the site returns all normal but this package is like stalling
<DarjN>I'm thinking of just CTRL-C-ing it but that has always created more problems
<civodul>Hello Guix!
<sneek>Welcome back civodul, you have 2 messages!
<sneek>civodul, roptat says: zimoun` says: civodul: thank you for the draft release blog, LGTM
<sneek>civodul, roptat says: zimoun` says: civodul: thank you for the draft release blog, LGTM
***apteryx is now known as Guest7992
***apteryx_ is now known as apteryx
<mroh>Hello civodul !
<civodul>hey mroh
<DarjN>how do you get a program to load after installing it? i installed 'lshw' and it tells me it's not installed
<civodul>hi DarjN! probably after installation you got a message telling you to source ~/.guix-profile/etc/profile no?
<civodul>see https://guix.gnu.org/manual/devel/en/html_node/Getting-Started.html
<DarjN>Isn't there a path so it's permanent?
<civodul>you can source it from ~/.bash_profile, as written above
<civodul>hey mothacehe!
<civodul>on guix-devel Florian reported a partitioning crash that looks a lot like what you reported earlier
<mothacehe>hey civodul!
<mothacehe>just replied to Florian
<mothacehe>It's another type of partitioning crash I think
<mothacehe>mine occured with automatic partitioning, while the installer is computing a partitioning layout. Florian's crash occurs just before proceeding to formating, after using manual partitioning
<civodul>oh right
<civodul>i hope we have enough info from syslog + the backtrace
<efraim>wpa-supplicant is now cross-compilable
<mothacehe>yes I think it's a delay issue :( We are waiting ~1s for the partition table changes to be sync to disk, while I guess it can take longer on some old HW.
<mothacehe>efraim: nice!
<lane>Hi all, I ran into some roadblocks when trying to package a project and am hoping to get some advice. The first issue is that the project currently has a shell script for each supported distro in order to install its dependencies using that distro's package manager. Does it make sense to run one of these scripts as part of the build process, or does that mean that I would need to package all of the dependencies using guix as well?
<civodul>lane: hi! the recommended approach is to package all the dependencies using Guix as well
<civodul>if you're lucky they're already packaged :-)
<civodul>and then the package itself would depend on those, and you woudln't need to run the script that upstream provides
<lane>Ok, thanks! Also, in another step, it downloads some libraries (headers + some object files) from the project's ci using wget. I tried including wget as a native input, but the download fails with "unable to resolve host address." even though when I run the same command from the shell it succeeds without an issue. I'm also wondering if the approach here needs to change. The project requires that the headers/object files are under a
<lane>`libs/` directory in the project folder before it can be compiled. I guess I could package these libraries as well and then copy the headers/object files into the `libs` directory before building this project? Or maybe it's ok/possible to download them somehow before the build?
<civodul>lane: right, the build environment has no network access so as to maximize reproducibility
<civodul>so you have to specify all the dependency upfront in the package definition
<lane>ok, makes sense. I'll take a closer look at how they are actually building these libraries for their ci then
<jlicht>hey guix!
<sneek>jlicht, you have 2 messages!
<sneek>jlicht, nckx says: Right. Reverting to a broken generation will still be broken. Going forward, resuming a hibernated system from an older generating with hibernation support will be pointless (because the old kernel+initrd is completely discarded in favour of the hibernated kernel+user space), but should work.
<sneek>jlicht, nckx says: Please let me know what works for you and more importantly what doesn't.
<DarjN>I got the packages to install after adding those two lines but do we always have to reboot to get the packages installed. I'm doing all the steps here
<DarjN> https://guix.gnu.org/manual/devel/en/html_node/Getting-Started.html
<jlicht>nckx: I assume you want me to try different kernel configurations with hibernation support, not for me to destroy my filesystem ;-)
<jlicht>DarjN: generally, no; if things are set up right, your profile is sources when logging in; only if you add new environment variables to your profile (e.g. EMACSLOADPATH) do you need to source your profile again (or restart, as you mentioned)
<jlicht>s/sources/sourced
<DarjN>If i'm understanding you right, you have to add a new variable for each package? I forgot to mention that I'm running GuixSD, not another distro
<nckx>jlicht: Oh I don't care, it's all data!
<jlicht>sneek: later tell DarjN: No that is not what I meant; you will only have to do it _once_ each time you install packages that work with a _new_ environment variable. E.g. the first time you install emacs-related packages, or python-packages etc etc.
<sneek>Okay.
<nckx>I didn't mean you had to try anything, just let me know if you have problems.
<jlicht>nckx: :)
<jlicht>Do we have a word for the situation where you let your mood be dictated by the output of `guix weather'?
<mroh>gumood, maybe?
<nckx>‘Violent mood swings’.
<roelj>Is anyone working on updating to the latest Bioconductor release?
<civodul>jlicht: not too mention that during autumn, the weather's never really good
<civodul>roelj: hi! i think zimoun + rekado were looking at it
<civodul>(see #guix-hpc too)
<roelj>civodul: Ha! Thanks for the pointers.
<jlicht>I am really looking forward to what comes of the buzz surrounding emacs-guix right now
<jeko>Hey Guixters !
<alextee[m]>how do you specify a version on an input again? any example that comes to mind?
<alextee[m]>ah actually nvm, i see that libhandy has a libhandy-0.0 already
<jeko>like that (inputs `(("guile" ,guile-3.0)))
<jeko>?
<alextee[m]>yeah thanks!
<jeko>if you have the possibility, git clone guix repo is really useful to learn such things ;)
<jeko>gnu/packages/*.scm
<alextee[m]>yay i made a package for this https://github.com/bitstower/markets
*alextee[m] uploaded an image: Screenshot from 2020-11-16 11-34-35.png (33KiB) < https://matrix.org/_matrix/media/r0/download/matrix.org/TgphpFeUWScaOzluAXXkIYaV/Screenshot from 2020-11-16 11-34-35.png >
<kozo[m]>Neat!
<jeko>haha cooool !
<kozo[m]>What part of guix would I use to have my publish server build and serve packages for multiple Arch's?
<efraim>To autobuild? Cuirass
<kozo[m]>Ok, thank you.
<kozo[m]>If i wanted to start with a few packages, if I guix build --system and get it into the gnu store, would that work?
<efraim>yeah, I that sometimes
<kozo[m]>Thanks again
<nckx>kozo[m]: If you want to build ARM packages on, say, x86 without offloading to an ARM box, also look up qemu-binfmt-service-type for transparent emulation.
<nckx>Corollary: ou really want the server(s) to run Guix System if at all possible.
<nckx>*y
<kozo[m]>nckx: I do have that in my config but building always fails on qemu when I try armhf or aarch64
<kozo[m]>Thank you though
<efraim>dannym: thanks for cxx-for-target. just used it for making pzstd cross compile
<dannym>efraim: You are welcome :) cc-for-target had annoyed me one time too much ;)
<PurpleSym>Is there an example config somewhere how to boot Guix on a legacy BIOS machine with GPT+mdadm RAID using GRUB2?
<nckx>dannym: You haxxed me! Had the same thing queued up for building GNU Eiffel.
<nckx>kozo[m]: How does it fail?
<apteryx>civodul: I tested the glib change! Some comments incoming.
<civodul>apteryx: yay, thanks!
<nckx>efraim: Cool stream of CC fixes. Do you use cross-compiled packages IRL?
<efraim>I was working on the mips64el port and got carried away
<nckx>I'm annoyed by the number of packages that silently ‘cross’-compile to native code & musing about a phase similar to validate-runpath (with similar opt-out switch) that would at least check whether there are any ‘foreign’ ELF files in the output.
<nckx>It could snowball into parsing ELF files in Guile :-/ Don't want to do that.
<efraim>I think I added one that doesn't work well by doing lua
<efraim>But I really want to be able to say this is my os config, I should be able to make it natively or cross compile it
<nckx>Right.
<efraim>Would be an interesting way to get git-annex on arm, at least for one OS generation
<efraim>Or go for powerpc
<divoplade>Who's downloading texlive right now? ^^
<mdevos> https://logs.guix.gnu.org/ and https://logs.guix.info/ point to Cuirass. Is this a known issue?
<civodul>mdevos: not that i know of; could you email that to bug-guix@gnu.org?
<mdevos>civodul: will do
<civodul>thanks
<nckx>mdevos: Yes, there's no HTTPS support for logs.guix.gnu.org so it hasn't really ‘mattered’ that there's a missing server block. It should of course be fixed, thanks for reporting it â˜ș
<nckx>I had to resort to curl -k to see what you mean.
<mdevos>I disabled ‘Encrypt All Sites Eligible’ in HTTPS Everywhere, and now I can see the logs again
<mdevos>(when using http: URL)
<nckx>Seems like they define ‘eligible’ as ‘lol port 443 responds, must be valid #content!’ which is... a daring assumption.
<mdevos>is there any standard word for Guixers? Guixians? Guixen?
<nckx>I just use Guix (geeks).
<divoplade>I do too
<nckx>Guixoids when I'm feelin' feisty.
***str1ngs_ is now known as str1ngs
<mdevos>bug report has been sent, feel free to forward the bug to (%make-void-port "a0")
<nckx>No space left on device.
<nckx>mdevos: Thanks! (And welcome, I think.)
<mdevos>nckx: what version of guile and representation format of bugs are you using? My guile-3.0.4 squashes symbolical bugs without any error messages: (display 'bug (%make-void-port "a0")) --> *unspecified*.
<mdevos>nckx: (-:
<bavier[m]1>nckx: our (guix elf) module already parses the "e-machine" field of the ELF header, so it may not be too hard.
<nckx>mdevos: Oh, I wasn't using Guile, I was using a ball of spaghetti stuck on a stick, my mistake.
<nckx>I always mix those up.
*nckx eats the spaghetti.
<nckx>bavier[m]1: Oh that is super neat.
<dannym>nckx: Good idea doing the arch checking. Reading ELF headers for that is easy; it has the architecture right in the first global header. See https://github.com/oriansj/mescc-tools/blob/master/elf_headers/elf32-ARM.hex2 for how they actually look. Line 43 is what you want to check.
<dannym>nckx: Since guile uses ELF for its own "go" files, it probably already has an ELF parser, too
<dannym>Whether it exposes it to users of guile, I don't know yet
<dannym>Constants are in (system vm elf), though
<shmore>I can't seem to build binutils-mesboot0.2.14. Configure of ld fails on not finding lex. build-log: https://controlc.com/ea216795 any thoughts?
<dannym>We already have a "supported-systems" package field, too. So getting a first version which does check should be pretyty easy
<zimoun>Hi!
<dannym>shmore: Sounds like it needs flex (in the native-inputs), but doesn't have it in the dependencies. The (gnu packages base) binutils doesn't seem to have any deps, also no flex.
<zimoun>civodul: yesterday I missed how to use the grammar nazi Sneek. I have proofread the release blog post, nice! (-: And LTGM.
<dannym>shmore: (janneke probably knows more of how this part works)
<shmore>dannym: Hmmm, interesting that base's binutils has no inputs, I attempted to add flex but guix would hang, I think im into some circular dependencies
<nckx>If everything depends on it, any dependency is circular. â˜ș
<nckx>dannym, bavier[m]1: Thanks for the pointers!
<bavier[m]1>np, good luck :)
<buenouanq>is wpa_supplicant only on the install image and not included in %base-packages? I just successfully installed GuixSD minimally on a Macbook Air - But rebooting I can't use my usb dongle because there's no wpa_supplicant...
<buenouanq>and I suppose I don't know how to boot to the install usb and install just that without doing the whole thing over again or if that's even possible
<divoplade>wpa_supplicant is only in the desktop services I think
<buenouanq>whelp
<nckx>buenouanq: Any ls /gnu/store/*/sbin/wpa_supplicant to invoke manually?
<buenouanq>I just shut rebooted it
<buenouanq>hold on
<buenouanq>nope
<nckx>cd /root/maintenance/hydra | guix system reconfigure -L modules bayfront.scm | error: goggles-service-type: unbound variable | hint: Did you forget `(use-modules (sysadmin services))'?
<nckx>wat
<nckx>I'm staring at (use-modules 
 (sysadmin services)) right now.
<janneke>shmore: you're not using guix, i take it?
<janneke>shmore: looking at the guix build log: guix build -e '(@@ (gnu packages commencement) binutils-mesboot0)' --log-file, it has:
<janneke>checking for flex... no
<janneke>checking for lex... no
<janneke>checking for flex... /tmp/guix-build-binutils-mesboot0-2.14.drv-0/binutils-2.14/missing flex
<zimoun>nckx: guix weather --substitute-urls=https://guix.tobias.gr takes ages. Do I miss something?
<nckx>It takes a bit over 1000 seconds.
<nckx>Your guess is as good as mine. Guix throws 1000 nar requests at the nginx proxy, then does absolutely nothing for a long time, repeat.
<shmore>janneke: I am using guix ontop of arch. flex dosen't seem to be an input to binutils-mestboot0
<nckx>(Numbers of course unrelated. It's more like 1400s at the moment, so about 10req/s.
<nckx>)
<nckx>zimoun: Mine happened to finish 5s ago, so here it is: 34.8% substitutes available (5,814 out of 16,711)
<janneke>shmore: ah, you may want to use a --pure environment, then
<nckx>zimoun: Not normal of course. It's been rebuilding from scratch this week.
<janneke>it looks like a "lex" is creeping in and confusing configure
<shmore>janneke: will look into that
<zimoun>nckx: that’s just I was not patient to wait 15 min. ;-)
<nckx>You were almost there!
<nckx>Much glorious TLS: https://logs.guix.gnu.org/
<zimoun>And I do not know if it is similar to https://guix.cbaines.net
 well I will wait too.
<buenouanq>is there anyway to do a guix system reconfigure on the main GuixSD while booted to the install image on a USB?
*jonsger did his first push to our git repo :)
<nckx>buenouanq: It's ugly, but in your shoes I'd create a (relocatable) wpa_supplicant guix pack in the live environment, copy it to your hard drive, reboot and run that.
<civodul>jonsger: yay! \o/
<taylan>civodul: FYI, replied to your mail re. bytestructures :)
<bavier[m]1>jonsger: \o/ !
<civodul>yup, thanks taylan
<jonsger>374 open patches at issues.guix.gnu.org, that is less then I thought :)
<sneek>Welcome back jonsger, you have 1 message!
<sneek>jonsger, nckx says: Welcome! \o/
<nckx>Eh, why didn't it say that sooner.
<nckx>Oh, Sneek doesn't see actions.
<nckx>Ah.
<maav>hmmm, my emacs crashes as soon as I open README
<roptat>zimoun`, the announcement looks good, I'll check spelling and push in ~2 hours
<zimoun`>roptat: cool! Thank you.
<lane>I made a bunch of progress on packaging openFrameworks but got kind of stuck again. Compilation is failing with "Cannot find 'ld'." I made sure that binutils are included in the inputs. I also tried using 'ld-wrapper' and then appending the 'bin' from that input to PATH, but I still end up with the same error. Any ideas?
<GuixNewbie84>Q: How do I update a package to the latest version for which a substitute is available? E.g. how do I install/update and guarantee that I won't be building any packages.
<cbaines>GuixNewbie84, that's quite a hard problem. It very much depends which packages you're using, what other store items they require, and what substitute servers you've authorized and are fetching substitutes from.
<vagrantc>does "guix build --rounds=N" do anything notable when they differ?
<vagrantc>e.g. run diffoscope or diff or something?
<nckx>vagrantc: No.
<nckx>I think --keep-failed will print the offending output directory but it's formatted for humans.
*vagrantc smells a feature-request coming on
<cbaines>--rounds=N doesn't even do builds for me, I'm not sure how to make that happen
<vagrantc>yeah, i sometimes can get it to do multiple builds, sometimes not
*vagrantc shrugs a bit
<nckx>cbaines: Probably --no-grafts.
<nckx>A graft counts as a build.
<vagrantc>i know "guix challenge" can invoke diffoscope, but that only works if you have a substitute server that has performed the build already
<cbaines>That's probably an issue some of the time, but I'm just directly trying to build a derivation, so grafts don't come in to it
<cbaines>I think it's because I've already got the outputs in the store
<nckx>cbaines: You need --check.
<vagrantc>guix build --no-grafts --check --rounds=100 openjdk
<vagrantc>:)
<nckx>Burn it all down.
<vagrantc>or ... ungoogled-chromium
<cbaines>guix build --check --rounds=100 builds it one time, which I guess is better than nothing.
<cbaines>maybe it aborts after the first non-deterministic build
<lfam>That's strange — it works as expected for me
<cbaines>as in it builds more than once?
<lfam>Yes, it builds N times
<dustyweb>hello hello
<nckx>Works for me.
<cbaines>and are you testing with something that builds deterministicly, or not?
*dustyweb wonders idly how much energy is wasted on non-deterministic builds
<lfam>I don't know cbaines
<nckx>cbaines: Does.
<vagrantc>plenty of energy is wasted on perfectly deterministic builds, even :)
<nckx>The point is to find non-determinism, not to generate random numbers badly.
<lfam>`guix build --no-grafts feh && guix build --no-grafts feh --check --rounds=4` builds once (or no-ops) and then compiles 4 times
<dustyweb>true :)
<dustyweb>obviously what we need is GuixCoin, using proof of substitute
<dustyweb>get paid to build and serve substitutes!!!! ;)
<lfam>What's a package that is fast to build and does not build deterministic?
<lfam>ally
<vagrantc>dustyweb: what misaligned incentives could that possibly introduce? :)
<cbaines>lfam, I was testing with ghc-crypto-random
<vagrantc>lfam: could maybe package https://github.com/bmwiedemann/theunreproduciblepackage
<vagrantc>not sure how fast it builds
<cbaines>and yeah, when I test with hello, I do see more than one build. So --rounds probably means keep going for N rounds or until there's a output that doesn't match the last one.
<lfam>Heh, interesting vagrantc
<nckx>If I had a GuixCoin for every time someone suggests GuixCoins, I'd have a lot of stupid GuixCoins.
<lfam>cbaines: What if you use --keep-going?
<dustyweb>nckx: and what would you spend them on, these imaginary riches????
<lfam>Use of --keep-going doesn't make it keep going, I just checked
<nckx>hi guys i accident gc all guixcoin plz give command to restore
<cbaines>Anyway, if I need to find unreproducible packages/derivations, I just look at https://data.guix-patches.cbaines.net/repository/2/branch/master/latest-processed-revision/package-derivation-outputs?search_query=&output_consistency=not-matching&system=x86_64-linux&target=none&after_path=&limit_results=&all_results=on
<cbaines>I really want to add buttons to that page for viewing in diffoscope
<nckx>Would be cool but diffoscope is slow. But maybe you're made of hardware.
<nckx>dustyweb: I'd buy a Guixboat.
<efraim>is there something like %build-inputs but is for native-inputs?
<nckx>cbaines: How long does the GDS cache each server's substitute (un)availability, respectively?
<cbaines>nckx, it's not cached, there's an implicit assumption that it's there forever
<cbaines>nckx, I was thinking about this enough though that it records what time it fetched the narinfo
<nckx>And 404s are uncached?
<cbaines>There's nothing to check narinfos that are thought to exist, and record them as not existing
<cbaines>I should probably add that, as it might be useful to check substitute availability for older revision
<cbaines>*revisions
<nckx>OK, thanks! I was waiting for <https://data.guix-patches.cbaines.net/repository/2/branch/master/latest-processed-revision/package-substitute-availability> to drop to the current ~36% but no know that it won't.
<nckx>*now
<cbaines>Cool, also note that actually keeping the substitute information up to date isn't really a thing at the moment
<nckx>So it's all LIES?
<cbaines>It's lies of ommision
<cbaines>When I actually want to look at the data for a revision, I specifically run the script for that revision, to make sure it's actually queried everything
<nckx>I'm still unclear on the negative case: if the GDS polls my server and a nar isn't present yet, will it poll the same URL for each new evaluation the contains it?
<nckx>*that
<cbaines>It's not dependent on evaluations, the code just tries to look at the most recent 100,000 outputs that it knows about
<cbaines>It'll keep asking about an output until it's present, or it's old enough that it drops out of the top 100,000
<cbaines>I have often thought about trying to work build information back in to the process, so it queries for substitutes for unseen outputs for successful builds, but the build information is patchy as well...
<cbaines>Once it's finished checking a batch of 100,000, it selects another batch of 100,000 and the process begins again
<nckx>Aha.
<cbaines>The many GB narinfo cache that Guix maintains means that the actual queries to substitute servers are a bit more methodical
<cbaines>I think Guix sets different timeouts for it's cache, depending on the exact response
<euandreh>Are gexps somehow like Nix's string context?
<euandreh>They certainly do look like the same
<nckx>Since we can always hide behind ‘somehow like’: yes they are.
<cbaines>nckx, Out of interest, what happened to guix.tobias.gr that caused the drop in substitute availability?
<civodul>euandreh: yes, but they're not strings, and that makes a bit of a difference :-)
<civodul>euandreh: see https://hal.inria.fr/hal-01580582/en
<euandreh>nckx, civodul: thanks
<euandreh>I imagined that they would be different for not being strings
<civodul>:-)
<euandreh>But I just wanted to confirm if my understanding was on the right track
<bloxxom>I have an install failure, installing from the .iso onto a laptop. It fails while trying to run grub-install, complaining: "error: failed to get canonical path of `/boot/efi'.
<efraim>I think I cracked cross-building grub for mips64el, which may be the last file needed to build my disk image
<bloxxom>It appeared to go through all the preceding steps without trouble. Not sure how to proceed.
<shmore>janneke: It was odd that it was dealing with lex correctly when building its other tools, just not with ld. It appears that binutils-2.14.tar.gz may contain an error in ld/configure
<shmore> -test -n "$LEX" || LEX=""$missing_dir/missing flex""
<shmore> +test -n "$LEX" || LEX="$missing_dir/missing flex"
<dustyweb>hey g_bor[m], around?
<nckx>cbaines: A historical design mistake :-) The CI GC roots were on a separate file system...
<dustyweb>do you have notes on which postfix commands needed setgid and what the plan was more or less?
<nckx>You can guess what happened when it failed to mount after a reboot.
<bavier[m]1>oops
<dustyweb>I might see
<dustyweb>postfix / postdrop
<dustyweb>for user / group
<cbaines>nckx, ah, at least you have some kind of GC though. For guix.cbaines.net, I just have a ~1.4TB bunch of nars, which is growing all the time
<cbaines>nckx, what size did your store peak at?
<nckx>Golly. Around half a TiB IIRC? Much more that I'd like: I don't care about old substitutes and would rather have them gone, but Guix GC on the slowest RAID array in the West is intolerable.
<nckx>Unfortunately I wasn't paying attention whilst it ate itself for days â˜ș
<cbaines>Ok, .5TB doesn't sound too bad
<bloxxom>Is there anyone I can contact to get help specifically with installing from the .iso ?
<nckx>bloxxom: Us â˜ș How are you installing Guix?
<bloxxom>I'm installing from the .iso by booting the .iso on my laptop
<bloxxom>It runs through the entire process okay, but dies while trying grub-install
<nckx>bloxxom: Which process though? The guided (UI) installer, or by manually typing commands?
<bloxxom>The guided gui installer
<nckx>I'm very familiar with the latter, quite shit at the former.
<dustyweb>hm
<bloxxom>Should I redo it typing commands?
<nckx>bloxxom: So this describes your situation, right? https://lists.gnu.org/archive/html/help-guix/2019-10/msg00037.html
<kozo[m]>Are you using 1.10 or latest?
<PotentialUser-35>Hi - does anyone have a link to a page with all links for the Guix Days video talks? I can't seem to find and single reference?
<nckx>bloxxom: I'm not sure about that. If you're new to Guix, I'd recommend downloading this first <https://ci.guix.gnu.org/search/latest/ISO-9660?query=spec:guix-master+status:success+system:x86_64-linux+image.iso>.
<nckx>And trying the ‘GUI’ again.
<nckx>A new release is just around the corner. If this is a bug that's been fixed, it would be a shame to waste time on it.
<bloxxom>Yes, that describes my situation.
<nckx>Thanks.
<nckx>And damn, because that's quite puzzling.
<euandreh>nckx, civodul: this string context equivalence to gexps reminds me of C macros and Lisp macros change of view
<bloxxom>I wonder if it's related to creating an efi partition. Normally you need a FAT partition to host efi. But I don't recall it creating one.
<kozo[m]>I had that issue as well. If you do the gui installer, do manual partition and create it and it'll work
<kozo[m]>On a mac mini
<bloxxom>You mean manually create an EFI partition?
<kozo[m]>Yes
<kozo[m]>One sec, I'll find some commands for you
<roptat>zimoun`, pushed
*nckx thought they'd seen this bug reported recently, but it was the ‘opposite’: failure to install a non-UEFI boot loader if an EFI system partition is present.
<roptat>it'll be online when the website is reenerated
<kozo[m]> http://paste.debian.net/1172755/
<kozo[m]>Take a look at that bloxxom, you can do it on the cli installer or through a live cd
<kozo[m]>You just need to create it once and it should be fine after that
<kozo[m]>Or with the graphical installer, I think you can do it through the manual partitioning. You would set your efi to /boot/efi and make it bootable and set your main partition as /
<nckx>kozo[m]: Why would you boot ‘a live CD’ separate from the Guix live CD?
<nckx>Just curious.
<bloxxom>Thanks.
<kozo[m]>nckx Guix doesn't have a live CD?
<kozo[m]>If you want to use a gui tool like gparted, I would boot to another distro's live CD just to partition to drive. This is how I did it before I got wiser at partitioning
<maav>mbakke: should i push the patch for git too?
<nckx>The Guix installer is a live CD.
<maav>i'm compiling and it takes some time, so better doing it once :)
<nckx>Whatever tool rocks your world, of course, but I find it hard to service Guix Systems from more ‘traditional’ live OSes sometimes.
<mbakke>maav: as long as 'git' and 'git-minimal' are happy, sure :-)
<maav>mbakke: both are ok :)
<kozo[m]>nckx What do you mean it's a live CD? You don't get a graphical desktop from the guix iso
<bloxxom>Why doesn't everyone run into this problem?
<roptat>kozo[m], different definition :)
<nckx>kozo[m]: Both are true! It's a live CD that doesn't include a graphical desktop like some others do.
<roptat>to be fair, it's probably not a CD either :)
<kozo[m]>OK
<nckx>Heathens.
<mbakke>I have a weird problem with Sway: it does not set a scaling factor (HiDPI screen) when it first starts, but it does after resuming from a 'swaylock'.
<kozo[m]>Guix has ruined everything else for me. I can't stand not having my whole computer in a couple of files
<roptat>nckx, well, I think that's more of a size issue, isn't the iso too large for a CD?
<nckx>That would be new.
<nckx>Possible! But news to me.
<kozo[m]>A CD can hold up to 700MB~
<kozo[m]>Almost
<nckx>I spent some time shrinking it to a few 100MiB for exactly that purpose.
<nckx>If it's over 700M again, without even including X, that's IMO problematic.
<bloxxom>Once I manually create the partitions, can I then re-run the graphic installer, and just use the partitions I created?
<roptat>I might be wrong
<nckx>bloxxom: Yeah.
<roptat>haven't tried to download a recent iso
<kozo[m]>bloxxom Yes, when you choose the auto formatting, it should show you the 3 partitions now.
<kozo[m]>If you continute to have trouble, I can create you a shell script to do the cli installer for you
<nckx>roptat: you're not; ‘latest’ is 649 MiB o_O
<bloxxom>I think I should be able to get it to work.
<euandreh>Quick question: are patches to add Matrix (synapse) to gnu/services/messaging.scm welcome? I'm thinking about working on it
<euandreh>I see Prosody already in messaging.scm, so probably yes?
<nckx>bloxxom: Good luck, let us know how you fare!
<mbakke>euandreh: Synapse is already packaged in gnu/packages/matrix.scm
<nckx>euandreh: Don't we have synapse already?
<nckx>Yas.
<euandreh>Synapse yes
<mbakke>TIL 'pactl' supports a magic @DEFAULT_SINK@ keyword
<euandreh>hmm, I didn't look at the existing synapse definition
<euandreh>Well, only the synapse package exists, not the service
<mbakke>euandreh: oh, I did not read your message clearly
<mbakke>a service would be terrific :)
<kozo[m]>Last time I tried to install synapse, it wasn't building correctly. I put in a bug report, I don't think it was resolved yet
<nckx>Oops, same.
<nckx>mbakke: OK, it's not just me that found that weirdly undocumented then, thank you. I only recently replaced a stupid shell script to ‘detect’ it 😒
<mbakke>maav: re git patch, where did that 109 number come from?
<zimoun`>roptat: thank you! I will send an email to guix-devel and co later if you do not beat me. :-)
<euandreh>I think I'll start working on it, then, ty
<roptat>I can take care of it, as soon as the website is regenerated (should happen soon)
<pinoaffe>euandreh: yeah, adding a synapse service definition would be absolutely awesome!
<euandreh>guix-devel mailing list is the place to ask for help if I get stuck, right?
<pinoaffe>yes, or here
<roptat>rather, help-guix
<roptat>guix-devel is to discuss development of guix
<lfam>You'll get an answer regardless of where you ask
<mbakke>is there a way to add files that will get sourced by the shell at login, through the Guix configuration system?
<nckx>mbakke: from guix refresh -l git.
<mbakke>we don't have a 'profile.d' or 'bashrc.d'
<pinoaffe>roptat: and isn't adding new service definitions part of "development of guix"?
<pinoaffe>or is guix-devel just for some guix core / subset / whatever
<mbakke>nckx: aah, I see :)
<nckx>mbakke: Does it have to be shell-specific? I prefer environment-service-type because it's not.
<pinoaffe>unrelated: where can I find guix-days talks?
<nckx>*session-...
<roptat>pinoaffe, the announcement should show up on the website shortly
<pinoaffe>roptat: okidoki, thanks!
<roptat>we have them here for now: https://xana.lepiller.eu/guix-days-2020/
<roptat>and the question was about asking questions, so i assumed asking for help
<roptat>but discussing a service can happen of guix-devel
<mbakke>nckx: oh, I did not know that! it would be nice to mention in the manual ... unfortunately I need to run an actual shell script :/
<mbakke>basically I want to move the snippet that starts sway out of my own .bashrc
<nckx>Yuck.
<pinoaffe>roptat: yeah, euandreh was talking about adding a service definition for the matrix server synapse to guix (and where to ask when they get stuck)
<maav>mbakke: nckx got it, thanks :)
<cbaines>nckx, I the issue described in #44696 could still be a thing. Unless I have some cached DNS locally, I still get Cuirass at http://logs.guix.info/ and a certificate problem at https://logs.guix.info/ ?
<nckx>Why are you using guix.info?
<mbakke>I suppose I can override the trivial /etc/bashrc, not sure how etc-service-type deals with conflicting files
<nckx>The domain is logs.guix.gnu.org, guix.info should probably die now.
<nckx>cbaines: If you find any references to guix.info please let me know so I can help it do so.
<cbaines>nckx, I'm not, but the person that submitted that bug is
<nckx>Only in the IRC quote. I don't think guix.info isn't expected to work.
<nckx>s/isn't/is/
<nckx>cbaines: DDG nor Google find "logs.guix.info" (although DDG ‘helpfully’ returns results for gnu.org, I'm not sifting through those)...?
<cbaines>Ok, I guess there's some old DNS to deal with if anyone has the config
<cbaines>The title of that issue seems to not make sense as well
<jonsger>mbakke: how are you setting the scaling in sway?
<nckx>It's just a typo...
<nckx>I think you're being a bit harsh on them.
<mbakke>jonsger: I'm not! It gets set to 2 automatically .... after I've used swaylock once :P
<jonsger>mbakke: I have just `output HDMI-A-1 scale 2` and I'm using swaylock as well
<cbaines>nckx, I'm not trying to be harsh, just trying to follow what's going on
<jonsger>I still have the problem that suspend and lock are not working nicely together as it was the case with i3
<mbakke>jonsger: yes, I'll likely add that to the config as well for deterministic behavior...
<mbakke>jonsger: I found the swayidle snippet that comes with sway worked pretty well
<mbakke>with i3, there is no such integration I think? I've just used xscreensaver for like a decade.
<cbaines>Is it a done thing to merge master directly in to core-updates, or does one usually only merge staging in to core-updates?
<mbakke>cbaines: usually just 'master', but staging if there are compelling reasons
<mbakke>cbaines: IIRC there has been a staging merge already, so you should probably stick to that to avoid conflicts (looking at you, lisp-xyz.scm) :-)
<jonsger>mbakke: I don't wanna have automatic lock + suspend. I do it like this https://paste.opensuse.org/view/raw/6237467
<cbaines>mbakke, Urrgh, I tried merging master and got lots of conflicts
<mbakke>cbaines: yes, merging staging instead will avoid some of them
<cbaines>Something something continuous integration...
<nckx>cbaines: I don't think random names existing in the DNS means they need to be entered into a Web browser, though. So there's some ancient A record in the inwx.de control panel. Et alors? Have you seen ‘logs.guix.info’ mentioned anywhere besides that quote?
<nckx>(Not rhetorical; we should certainly fix it if so.)
<nckx>Just not put effort into removing some A record, or, er, hm, discussing it 😛
<cbaines>I don't know of any particular references to logs.guix.info
<nckx>I expected to find some but didn't. Very strange.
<mbakke>jonsger: those are some neat keybindings :-)
<mbakke>jonsger: how are you starting sway?
<cbaines>Ok, given merging/rebasing core-updates with master is unfeasible, how bad is it to push a commit to both branches?
<mbakke>cbaines: should be fine, but merging is better of course ... did you not have any luck with staging either? :P
*nckx ...well this is going to drive me bonkers now <http://issues.guix.gnu.org/44696#2>...
<cbaines>mbakke, well, I want a commit I just pushed to master, I guess I could try merging master in to staging, and then staging in to core-updates?
<mbakke>cbaines: that might work better :-)
<mbakke>cbaines: otherwise cherry-picking is fine really ... it's courteous to use 'git cherry-pick -x' when picking between branches, to aid the poor soul who might have to resolve conflicts :-)
<mbakke>in other news, I'm amazed at how well 'ungoogled-chromium-wayland' works, haven't tried it in a while and it used to be kind of buggy...
<mbakke>now even downloading files does not crash the browser!
<jonsger>mbakke: via sddm
<jonsger>icedove-wayland ist still a bit buggy, especially notifications. So I disabled them
<civodul>mbakke: you can download files with the browser?!
<civodul>that sounds futuristic
<mbakke>heheh :-)
<civodul>:-)
<jonsger>civodul: only after building your browser for 17h and downloading some files before from the web :P
<civodul>right, one has to deserve it!
<nckx>Is there a reason for there being an icedove-wayland but no icecat-wayland beyond ‘nobody has done it’? Or is there no need?
<mbakke>nckx: I'd love a icecat-wayland :-)
<mbakke>but haven't looked at it
<jonsger>nckx: I guess nobody does it, I use firefox-wayland :p
<bloxxom>Is there a way to start up the gui install if I'm in the text mode install shell?
<nckx>jonsger: Maybe I should too.
<nckx>bloxxom: Can't you just ‘exit’?
<mbakke>how can programs request a "VT switch"? I.e. how do display managers typically change to the canonical VT7?
<civodul>probably there's an ioctl
<civodul>you could strace the "chvt" program
<bloxxom>If I type 'exit' it just prompts me to enter the shell again
<bloxxom>I guess I'll reboot.
<nckx>bloxxom: How did you enter the shell?
<nckx>Does C-M-F1 do anything reasonable?
<bloxxom>Yes! That did it!
<mbakke>civodul: nice, didn't know about chvt, thanks :-) probably I can use that directly in a startup service
<nckx>Check out openvt as well.
<nckx>bloxxom: Great. I guess the installer does... just that, change VT, instead of spawning a new shell.
<dustyweb>hm
<roptat> https://guix.gnu.org/en/blog/2020/online-guix-day-announce-2/ \o/
<dustyweb>oh horray roptat :)
<mroh>\o/
<maav>congrats and thanks, roptat and co :-)
<maav>otoh, i won't be able to attend most of the day :_(
<nckx>roptat: Looking good!
<nckx>maav: Same here. It blows.
<roptat>well, same for me ^
<nckx>:(
<roptat>but you can always watch the talks, whatever your timezone :)
<roptat>I could wake up early, it only starts at 4am here... :D
<cbaines>Meh, curl is missing HTTPS support on core-updates. Which probably breaks many things, including just cloning Git repositories over HTTPS.
<maav>roptat: having the videos available is great, thanks for that too :-)
<roptat>that was the goal: even if you can't attend, you can still get half of the conference at your own time and pace :)
<maav>btw, i cannot watch https://xana.lepiller.eu/guix-days-2020/guix-days-2020-efraim-flashner-build-it-with-guix.mp4 with icecat, does anybody have the same issue?
<cbaines>It works for me
<nckx>maav: You probably need one of gst-plugins-{bad,ugly}.
<nckx>Maybe it {c,sh}ould be re-encoded, for freedom?
<nckx>☝ lfam?
<roptat>works here... but you can always use this url with mpv/vlc
<nckx>Oh wow.
*lfam looks at logs
*nckx summoned lfam. Sorry.
<maav>it was noscript... don't know why it just complained with that one...
<maav>:(
<roptat>what? there's no script, it's just a video file
<lfam>IIRC, you have to install some set of gstreamer plugins to watch most videos in icecat
<lfam>Idk
<lfam>mp4 is definitely the right format for widespread viewing compatibility
<zimoun`>roptat: Awesome! Schedule released. Thank you!
<lfam>Anything else and support will be very spotty
<mbakke>I think IceCat uses ffmpeg nowadays.
<maav>roptat: i meant no-script, the extension, i was using to watch it already :)
<maav>i was using vlc*
<civodul>zimoun`, roptat: yay!
<civodul>well done!
<roptat>zimoun`, I also took care of announcing it on the ML
*civodul -> zZz
<buenouanq>I have a file I want to include in my main config.scm, what's THE GUIX WAY to do this?
<roptat>you mean scheme code, or a file you want to install on your system through config.scm?
<buenouanq>file is just some scheme defs I don't want cluttering the main config
<zimoun`>roptat: yeah, double thanks. :-)
<roptat>you can use a module, I do that here: https://git.lepiller.eu/system-configuration (the modules directory contains my modules with some definitions)
<nckx>lfam: Noted, thanks. The directory is a mix of .mkv, .webm, and .mp4 by the way.
<roptat>then I use guix system reconfigure -L modules systems/
.scm
<lfam>nckx: Okay, we should probably convert everything to mp4. That means a container of video encoded with h264, and audio encoded with AAC
<nckx>So I'm sure everyone will be able to find something they can't play.
<nckx>Yeah.
<nckx>Erm
<nckx>would you mind doing that? 😛
<roptat>(-L modules tells guix to find additional modules in the modules directory)
<nckx>I can, but it won't be so soon.
<lfam>Otherwise, nobody using Apple Safari on macos or iOS will be able to watch the webm and mkv files
<nckx>I ($) need my CPU right now.
<lfam>I can do it nckx roptat. Should I download the files, convert them, and then make them available somewhere?
<lfam> https://caniuse.com/?search=webm
<roptat>if you send me the right command line, I can have my server do the work directly
<lfam>Okay, please stand by
<nckx>Thank you so much.
<lfam>I'm testing different AAC encoders. The one that's built-in to FFmpeg is regarded as significantly inferior to libfdk, which is free software but not licensed compatibly with FFmpeg. I normally use a custom package of FFmpeg with libfdk
<lfam>I'm also going to compare tuning h264 for 'film' or 'stillimage'. Depending on the content of the videos it will matter which is chosen