IRC channel logs

2024-01-25.log

back to list of logs

<apteryx>jackhill: does it not share its version with webkitgtk?
<apteryx>ah, nope
<apteryx>it could, but it uses its own source, for $reasons
<apteryx>we should probably have it inherit it directly from webkitgtk
<apteryx>lilyp: I doubt berlin takes 10 h to build webkitgtk. I'd expect more like 20 min
<apteryx>not sure why it still hasn't happened though :-/
<apteryx>ok, it's doing it for the last 600 s
<bienjensu>Is there anything special I need to do after sending a patch for the first time?
<mange>I don't think so, but your first posts to a list might be held up in a moderator queue for a bit. Is there a particular reason you're asking?
<Gooberpatrol66>why does guix download a huge number of packages (~7G) when i run guix home reconfigure, and then delete them when i run guix gc?
<Gooberpatrol66>either they're unimportant and shouldn't be downloaded, or important and shouldn't be deleted
<mange>First guess: grafts? Does it print a bunch of messages about grafts while it's working?
<Gooberpatrol66>i don't see graft messages
<Gooberpatrol66>wtf, killing guix froze my shell
<mange>One way to test it would be to see if running the reconfigure with --no-grafts ends up downloading less (at least, in the sequence "reconfigure, gc, reconfigure"). That might mean running some more outdated libraries during the test, though. I wonder whether the --gc-keep-outputs and --gc-keep-derivations daemon flags would also help save the redownloads.
<adanska>Hi Guix!
<adanska>Hi Guix. I'm having some trouble with the asdf build system; I cant seem to get the tests to run.
<adanska>theres a file called 'lem-tests.asd' in the tree that should be picked up... and yet nothing happens
<adanska>hang on, thats not right, sorry
<adanska>it does run the tests
<adanska>:p i guess the tests are just not covering what i want
<rekado>Gooberpatrol66: can you give us more details? The behavior depends on the packages. Some tools are needed for processing build hooks, but 7G seems a little excessive even for that.
<efraim>I think I have rust fixed on core-updates, just waiting for the build to finish
<janneke>efraim: yay!
<janneke>and even better, the rest of the rust stack is unaffected :)
<efraim>I'll probably cherry-pick that commit to the rust-team branch so I don't have to worry about the merge conflict later
<efraim>I'm taking a look at clang-runtime-13 now
<efraim>clang-runtime-14 fixed, now on to 13
<efraim>clang-runtime-13 fixed
<efraim>I'm going to go down the line to see the earliest clang-runtime I can fix with just that patch and then push the updates
<civodul>Hello Guix!
<sneek>civodul, you have 1 message!
<sneek>civodul, rlb says: any idea offhand why the recent signal thread changes might cause the standalone tests to hang on test-guild-compile with the parallel test harness? May be repeatable for -j4 and greater here...
<efraim>rust is finished building on berlin
<efraim>o/
<janneke>ACTION lost again racing the build farm :)
<efraim>janneke: do you have ssh access to the build farm?
<civodul>i was looking at evaluations that don’t terminate on berlin
<civodul>one reason was that several were waiting on gnutls-3.8.3 and for some reason that build didn’t complete and the lock was held by one of the ‘cuirass evaluate’ processes
<civodul>preventing others from making progress
<civodul>specifically it’s /gnu/store/r6903q7vsapjmg3f8adisx0bkq5ackv9-gnutls-3.8.3.drv (aarch64-linux) that failed to complete
<civodul>let’s see if it works better this time
<janneke>efraim: ah yes, only access to overdrive seems to have been revoked/removed
<janneke>ACTION has problems building qemu-minimal without doc
<janneke>it builds but then fails with something like builder for `...qemu-minimal-8.1.3.drv' failed to produce output path `/gnu/store/xxx-qemu-minimal-8.1.3-doc'
<janneke>but i have (outputs '("out"))
<efraim>do you have a phase that needs to be adjusted?
<janneke>i removed 'move-html-doc, but it even `compress documentation' succeeded already
<janneke>it's as if (outputs ..) just won't be overridden, adding a mkdir ../doc instead as a workaround for now
<efraim>It looks like ldc currently only builds on x86_64. I'm going to see about moving it to clang-15 so we can keep our "standardize on the odd versions" schema going and reduce compiler proliferation
<efraim>I'll see about qtwebengine@6 later
<jpoiret>apteryx: yeah, I saw that pkgconf had some upsides. I'm worried about compatibility though
<jpoiret>but also pkg-config and static outputs don't mesh very well i'd say
<efraim>well that's fun, imagemagick and imagemagick/stable produce the same derivation on core-updates so inkscape fails to build since inkscape DOES refer to imagemagick, and therefore also imagemagick/stable
<janneke>efraim: i was just wondering about that
<lilyp>Looks like imagemagick isn't that stable on core-updates :)
<efraim>I'm going to modify imagemagick/stable to not install the documentation, and I guess remove some inputs
<efraim>lilyp: or TOO stable :P
<chloris>I just wanted to test if IRC works,
<efraim>nope, nothing to see here. all is broken
<chloris>my first time to use IRC
<rekado>chloris: welcome!
<chloris>fine it works
<chloris>if I need help I will use IRC
<efraim>14 hours for rust-1.75 on riscv64 on the rust-team branch
<efraim>imagemagick and imagemagick/stable are now two separate derivations
<efraim>and inkscape and inkscape/stable both still build
<efraim>well, now inkscape builds, inkscape/stable always built
<janneke>efraim: yay, ty!
<jobol>hi, how to have a different place than /gnu/store? symbolic link refused. A mount bind might be possible but can I avoid it?
<rekado>jobol: using a different location other than /gnu/store means that you cannot get *any* pre-built binaries from our servers.
<rekado>you’d have to build *everything* from source, from the ground up
<jobol>rekado, that's dissuasive!
<rekado>ACTION reconfigures bayfront
<rekado>jobol: one of the reasons is that binaries embed the absolute file names of libraries and other files
<rekado>so if you wanted to use a different location you’d have to either rebuild everything (so that your preferred location is embedded) or rewrite *every* file’s references to /gnu/store with a location that is of the exact same length.
<rekado>if you *cannot* write to /gnu/store you may want to look into running Guix inside a separate mount namespace.
<rekado>this means that all your Guix-installed packages would *also* need to be executed inside of this separate mount namespace.
<rekado>another way is to use “guix pack -RR” from a machine where you *can* write to /gnu/store and transfer the generated bundle over to a machine where you don’t have Guix (and thus also don’t have /gnu/store)
<lilyp>maybe someone with a cloud to spare could run Cuirass preconfigured to have /opt as the store path
<lilyp>As we all know, /opt is the right place for everything :)
<efraim>I'm giving up on libetonyek on core-updates for now
<janneke>efraim: what about libical, i'm getting: error: in phase 'build': uncaught exception:
<efraim>I haven't gotten to libical, right now I'm working on node-10
<janneke>ACTION hates static error messages
<janneke>ok, i'll see if -keep-failed will produce more info
<efraim>looks like I fixed the test, version string mismatch with zlib being 1.3 and not having a major.minor.patch version string
<janneke>well, with --keep-failed it built, eh, "yay" :-/
<janneke>ACTION also isn't a big fan of brittle software and transient errors
<efraim>I forget the package, I had one where I had a cached failure one way and a cached failure if I marked that test as XFAIL
<janneke>grmbl, next up is bluez
<janneke>client/bluetoothctl.rst:342: (WARNING/2) Cannot analyze code. Pygments package not found.
<janneke>ACTION tries adding python-pygments
<janneke>ACTION also adds python
<efraim>I always forget that part
<janneke>ACTION pushes fix for bluez
<janneke>it was weird, beceause there was already a python-docutils as a dependency
<efraim>I wonder if you only need to add python and not also python-pygments
<efraim>oh, now I'm back to python-urwid :/
<efraim>I'll do that later, time for lunch
<janneke>hmm, didn't think of checking that
<janneke>ACTION tries with removing python-pygments
<janneke>no, it needs python-pygments
<Gooberpatrol66>rekado: what details do you need?
<Gooberpatrol66>all installed packages?
<janneke>woot, hurd vm built!
<janneke>hmm, `guix shell' doesn't work in my fresh core-updates hurd vm :(
<janneke>root@guixydevel ~/src/guix/hurd-team# guix shell
<janneke>guix substitute: error: times: Invalid argument
<janneke>substitution of /gnu/store/ygqc1k3yxrsmw9qr5z04b26lamkfyk2a-bash-static-5.1.16 failed
<rekado-web>janneke: looks like your commit to maintenance.git broke authorization
<janneke>any ideas?
<rekado-web>your key has to be added to the authorizations file first
<janneke>rekado-web: oops, soryy!
<rekado-web>I'll force push after the deleting the commit, then add your key, and restore the commit
<janneke>ah, i figured my key was already there...
<janneke>rekado-web: thanks, i'll look at your fixed commit
<rekado-web>oops, force push is rejected
<rekado-web>I wonder if I can delete the branch and recreate it.
<rekado-web>nope, I can't delete the master branch :-/
<hy-im-sofie>hello everybody, i'm not sure if my question belongs to this channel. Please let me know if this is not the place for such a question. I'm new to guix and i want to write a system definition for my raspberry pi. For me this would need to include some flatpak apps and i don't find information on how to code this into the system definition. I'm able
<hy-im-sofie>to setup flatpak and install apps by hand but i want to solve the complete setup of my system inside the definition. Is someone willing to help a beginner?
<rekado-web>there is no integration between Guix and flatpak.  I don't think we offer a flatpak service that automates installation of flatpak applications.
<lilyp>Is there a way of using match-record to select a package from a list by name or should I rather code around that?
<hy-im-sofie>Maybe this is the reason i can't find any info on how to to such a thing. In the past i used a bash script to setup apps, preferences, keymaps and so on and i just assumed this would be possible using guix/guile as well.
<civodul>lilyp: hi! how do match-record and package lists relate to each other? :-)
<lilyp>it's a list of packages and I'd use filter with a match-record-lambda if that's possible
<lilyp>sorta like (match-lambda ((= package-name needle) #t) (_ #f))
<civodul>this would bind ‘needle’ to the package name, so not quite what you want
<civodul>better to just do (find (lambda (p) (string=? (package-name p) needle)) lst)
<lilyp>oh, no worries, I'd actually hardcode the needle
<snape>Hi, what is the use of a local channel?
<snape>To me a channel was meant to be shared but I've seen something about channels for local checkouts in the list
<snape>is it for more than just testing?
<lilyp>snape A channel is best shared, but you can keep it to yourself as well. In that case, it's just the same as a local git repository of package definitions :)
<snape>lilyp, yes but what's the point when you can just add guile code in your, say, config.scm
<snape>why would anyone want to have to "guix pull" their own channel
<lilyp>you don't have to
<lilyp>it may boil down to preference and separation of concerns
<snape>yeah, ok, thanks
<snape>I believe some newcomers think setting up their own channel is the usual way to run their own package code
<snape>(like the one I'm trying to help on the list)
<snape>but the reality is much simpler
<ennoausberlin>snape: I still use a private channel for my packages. I started that way, but I have to switch at some point in the future, because pulling can be very time consuming, if there are a lot of changes in the guix main channel at the same time.
<snape>ennoausberlin, so what I do is I just add my own packages in my home.scm/manifest.scm, works very well
<snape>and not time consuming at all
<ennoausberlin>snape: I have to see the syntax to adapt this way. Right now I use define-public, I guess it was different for manifests
<snape>ennoausberlin: you can use define, no need for define-public
<snape>and then: (home-environment (packages (append my-packages (specifications->packages my-specifications)))
<ennoausberlin>Would you post an example on pastebin?
<snape>my-specifications is a list of strings as you would see in a usual manifest.scm, and my-packages is a list of packages (as in "(define package ...")
<ennoausberlin>snape: I will try to activate my scheme-fu, but I fail often on debugging. Thank you
<snape>ennoausberlin, and in the manifest.scm, which starts with specifications->manifest, well you just need to transform it into (packages->manifest (append my-packages (specifications->packages specs)))
<ennoausberlin>snape: I used manifests before to setup for a given use case, but I never used own package definitions inside it. But I will give it a try
<apteryx>efraim: haha!
<apteryx>re inkscape, we should use this opportunity to update it
<apteryx>perhaps we need to comment the disallowed-reference for now
<apteryx>and add a comment about re-enabling it when 'imagemagick' is bumped
<apteryx>ACTION fixed the rust phase ordering problem
<apteryx>jpoiret: if RHEL 8 is on pkgconf, I doubt it'd be too painful to migrate to it
<apteryx>just a pkgconf-as-pkg-config, with a bin/pkg-config -]. bin/pkgconf should work
<apteryx>->*
<apteryx>jpoiret: but perhaps the low-risk, easy change would by -Ddefault_library=shared passed in default configure-flags of meson-build-system
<apteryx>then generated .pc file would not have a ton of libraries in Requires.private
<user363627>When installing guix on a foreign distribution (via the shell installer script) where are the manpages installed?
<user363627>It seems with the binary installation i get the info pages but not the manpages. If I do "guix install guix", then I get the manpages as well, but the version of guix I get via " guix install guix" is different from the one available to the root user
<civodul>sneek: seen nckx
<sneek>I think I remember nckx in #guix one month and 1 day ago, saying: Happy Christmas all y'all..
<civodul>we miss you nckx!
<distopico>Hi, someone kwnos hoy can I translate this `options snd-hda-intel id=HDMI index=1` into kernel parameter, I know that with a single options is like `snd-hda-intel.index=1`, but what about 2 options, is possible `snd-hda-intel.id=HDMI.index=1` ?
<apteryx>ACTION reconfigures berlin
<apteryx>rekado: I've tested my change on our mumi instance: https://issues.guix.gnu.org/68680
<peanuts>"[PATCH mumi 0/3] Add a button to copy a message Message-ID to the clipboard." https://issues.guix.gnu.org/68680
<apteryx>it looks like tE CSS doesn't refresh on a page reload there either
<apteryx>fixed
<apteryx>I used the timestamp trick on the file name
<apteryx>will send a v2
<apteryx>anyone, let me know if the new 'Copy Message-ID' button on https://issues.guix.gnu.org is not working as advertized
<peanuts>"Guix issue tracker" https://issues.guix.gnu.org
<apteryx>ah, I think the javascript has the same flaw (cached to old version)
<apteryx>so the button doesn't currently work
<apteryx>works now
<rekado>apteryx: works for me. Good job! One problem: the button can only be clicked. It cannot be navigated to by tab, as it is not a real UI element.
<apteryx>that's also true of other buttons, I think?
<rekado>no, the message download button is a link, so it works out of the box
<rekado>you can add a tabindex=0 to the new button to make it selectable
<apteryx>ah yes, I see that
<rekado>you’d also need to make it possible to trigger it via keyboard, e.g. to respond not only to a “click” event.
<rekado>but other than that it’s good
<apteryx>OK! I'll test this and send a v3, thanks for the feedback
<janneke>ACTION just built a fully functional hurd vm (or so it seems for now) from guix, that's with glibc-2.38
<apteryx>efraim: I've pushed a refined rust fix; I had a test failure I needed to skip (it used the publish procedure)
<janneke>wait, we don't have pretty-printed builders, it's emacs doing!
<janneke>*emacs'
<janneke>ACTION bets that civodul knew that with their `isn't it taking a lot of space?' https://logs.guix.gnu.org/guix/2024-01-23.log#154614
<peanuts>"IRC channel logs" https://logs.guix.gnu.org/guix/2024-01-23.log#154614
<janneke>:)
<apteryx>janneke: ah, I thought you had contributed that change or someone
<apteryx>emacs-guix is able to do that yes, but I don't think it does so by default for -builder files
<apteryx>I need to call 'guix-scheme-mode'
<apteryx>could be configured I reckon
<janneke>apteryx: "me didn't do or configure nothing"
<janneke>i just happened upon pretty-printed builders, while walking through .drvs
<apteryx>ah, .drv are handled by default
<apteryx>their extension is registered by the mode
<apteryx>rekado: any idea what's the event corresponding to hitting the enter key on the button?
<apteryx>maybe this? https://stackoverflow.com/a/45650898/2896799
<apteryx>keyup event on Enter key
<apteryx>works
<apteryx>rekado: try it at https://issues.guix.gnu.org/68680
<peanuts>"[PATCH mumi 0/3] Add a button to copy a message Message-ID to the clipboard." https://issues.guix.gnu.org/68680
<apteryx>ugh, it broke the click
<apteryx>no, it works on the top message, but not the others, for reasons
<apteryx>ah right, I need to register the events for every object
<apteryx>since there can be more than one button
<apteryx>I want to use a class, not a unique button id
<rekado>janneke: yay! Thanks for repairing the hurd vm!
<weary-traveler>i'm trying to debug the test environment for a package (i.e., the environment within which the tests for a package are evaluated). trying to "echo $var" in the test-command simply omits '$var' (as opposed to its value). how do i inspect the environment variables? if i have a way of doing something like a printf that outputs to the build log it'll help
<janneke>rekado: yes, i got quite some help from apteryx and efraim on core-updates too
<janneke>rekado: did you get maintenance sorted out? i'm still a bit puzzled by the breakage, the commit that removed my account changed nothing else than what i put back...
<weary-traveler>okay the info page on debugging build failures has some relevant information
<rekado>janneke: I think we may need to ask the savannah admins for help here.
<rekado>I pushed a new branch “master2” for now.
<janneke>rekado: just reverting my commit won't help?
<janneke>that's awkward
<janneke>ah, .guix-authorizations; the commit in itself was OK -- i get it
<janneke>crap, i missed 56d25466656ae699915b297ee9c8776decfddbf2
<janneke>(and failed to enable the commit hook on my "new" machine too)
<apteryx>the commit hook is enabled by just 'make' nowadays
<janneke>apteryx: this was for maintenance
<apteryx>ah!
<rekado>janneke: no worries. Since it’s only the maintenance repo, a hard revert is not quite as tragic
<janneke>thanks
<rekado>I just don’t know who exactly to talk to in order to get this fixed.
<janneke>rekado: maybe you can ask on #savannah here?
<Groumf>Hello guys. I don't really get the use of use-package-module in system definitions. The classic example from the documentation shows it with screen. I don't see the benefit of putting screen there.
<Groumf>gnu.scm seem to indicate it uses package-module-hints. But I see none of these in the screen.scm
<ulfvonbelow>(use-package-modules screen) is equivalent to (use-modules (gnu packages screen)), it just saves you a bit of typing
<Groumf>heh ok I got it.
<Groumf>silly me, it's just an include.
<ulfvonbelow>in the manual's example, it's present because it has to be loaded in order to get the package bound to the 'screen' variable
<ulfvonbelow>yep, pretty much an include, although IIRC it will also prevent duplicate reloading
<Groumf>damn I read a lot about guile at this point but I can't say I am comfortable with it yet
<Groumf>oh well, thanks a lot
<ulfvonbelow>👍
<sham1>I really wish that there was a Guix Home service for configuring user git settings. Having to configure the stuff the "old-fashioned way" just feels sad when other stuff can be done with Scheme code. Oh well, that elbow grease can be used later on
<ieure>sham1, Seems like a pretty reasonable project if you want to pick it up! I just dumped my git config into SCM next to home.scm and have it install the file.
<sham1>Yeah, I'll have to look into it at some point!
<sham1>If nothing else, it'd help to be able to use Guix at work as well as at home
<civodul>sham1: there’s actually one! https://issues.guix.gnu.org/54293
<peanuts>"[WIP] home: Add home-git-service-type" https://issues.guix.gnu.org/54293
<civodul>you can chime in in that thread an say how much you’d like to see it happen :-)
<civodul>sneek: seen iyzsong
<sneek>I think I remember iyzsong in #guix 15 days ago, saying: apoorv569: likely '(default "")'.
<sham1>ooh
<sham1>Well I'll be damned
<sham1>Absolutely brilliant
<civodul>sham1: maybe you can adopt the patch and send a new version there?
<sham1>Could probably do that.
<apteryx>rekado: i'm a bit confused by my data-tooltip state getting corrupted when I repeatedly click the button quickly
<apteryx>how are multiple click events handled on an html element? do they replace older ones? do they run "concurrently"? something else?
<apteryx>(in my handler, there's a 3 s timeout that reset the tooltip to its original value)
<apteryx>hm, "Each message is processed completely before any other message is processed." c.f. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Event_loop
<peanuts>"The event loop - JavaScript | MDN" https://developer.mozilla.org/en-US/docs/Web/JavaScript/Event_loop
<apteryx>if this was true what I'm seeing shouldn't happen
<apteryx>ah, setTimeout breaks the atomicity of a message
<PotentialUser-37>Hi there! in a container what is the machine-id? There is no /etc/machine-id file...
<PotentialUser-37>Problem solved! I guess I can just expose the /etc/machine-id of my machine :)
<bumble>I would like to get the equivalent store directory path inside a scheme function, how can I do this?