IRC channel logs

2024-01-18.log

back to list of logs

<spiderbit>So, no moving chat, I don't know if that is good or bad but I use it for my question
<spiderbit>I asked around here at some time because I need a hwdb file loaded for my thinkpad keyboard with a japanese layout. but the current stable eudev version did not support it
<spiderbit>or  was buggy so that they did not support it
<spiderbit>and somebody here said that they fixed that for gnome-dev or something, I thought back then, ok I just wait for the next new guix version I don't need it instantly can wait a month or so, but I think I misunderstood how extreme long release cycles guix has.
<spiderbit>So I would need some "pinning" or something? to another branch? how can that be done in guix?
<mange>I don't think the gnome-team branch is ready to use, so you'd have to cherry-pick the changes in cde1becfaba7a5757b881a5940ef0c6c2a70794f, I guess. I'm not sure the best way to do that.
<peanuts>"guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/commit/?id=cde1becfaba7a5757b881a5940ef0c6c2a70794f
<spiderbit>hmm thanks for the info but yes is there a mechanism to cherry pick stuff
<spiderbit>or let's say I would want the gnome-team branch
<spiderbit>I don't use gnome would it effect me that they are not ready to use?
<apteryx>sneek: seen mirai
<sneek>I last saw mekeor in #guix one day and 15 hours ago, saying: in this case, i could not find useful information.
<apteryx>is it me or elfutils:bin is buggy: /gnu/store/7qvs92vb0lqcspxcbvdb0vjqnvn8mdmc-elfutils-0.187-bin/bin/eu-addr2line
<apteryx>nested bin
<mange>That's not nested, is it? the -bin is the output, and the /bin/ is the subdir?
<apteryx>ah, thanks for fixing my eyes
<apteryx>hm, libdw or libelf suggests zlib should be propagated (Requires)
<apteryx>already reported with a patch here: https://issues.guix.gnu.org/55793
<peanuts>"Issue with elfutils libdw pkg-config's inputs" https://issues.guix.gnu.org/55793
<apteryx>wouldn't it be handy if we could provide a list of submodules we want (allowlist) when using recursive? with git-fetch
<apteryx>we could have a 'submodules' field that'd take their name (and implicitly turn recursive? #t if we want)
<lilyp>this is going to be a hell to maintain, but you could try making it so that (recursive? (list …)) has the desired semantics
<adanska>Hi Guix!
<efraim>o/
<adanska>hi efraim! hows things :)
<efraim>only complaints! I can't get rust-1.73 to build on ppc64le, I have 100+ rust patches to test and apply and I still have my fosdem presentation to do. so not bad :)
<adanska>hahaha, sorry to hear that! i've been seeing the struggle with getting rust working recently and i truly lament all the pain the rust team is dealing with at the moment.
<efraim>I have decided to bring my ppc laptop to fosdem for funsies though, so that should be interesting during guix days
<adanska>but ive also been hearing about the fosdem talks on the mailing list! really excited. are the talks recorded at all? I live in Perth so there's not a chance id ever be able to attend one, sadly :(
<adanska>ooo! what laptop?
<efraim>ibook g4. I have a 12inch and a 14 inch. 14inch I use sometimes, the 12 inch isn't in great shape and sits in my drawer until I have time to install debian on it so I can also use it as a guix offload machine
<weary-traveler>how do you add specific items that already exist in the guix store to the gc roots?
<ulfvonbelow>is there any particular magic necessary for running a guix installer image under qemu? When I try booting this particular image I made, it gets to generating ssh keys, then the screen goes blank with just a blinking cursor forever. (This is the same image that seemed to have weird corrupted files on real i386 laptops, although the same files appeared fine when looking at it from my desktop)
<efraim>ulfvonbelow: try mashing the keyboard or jiggling the mouse a lot, it might just not have enough entropy
<adanska>efraim, cool!! those old ibooks are really neat. I've heard though that the screens on them have finally started to rot, which is sad to hear
<efraim>weary-traveler: I think symlinking the output into /var/guix/gcroots should be enough but I don't remember
<weary-traveler>oh i see. let me try that
<efraim>my screen isn't doing too bad, it might just seem dim since new laptops try to hit like 1000 nits, but the battery isn't doing great. I took it out more than a year ago to try to keep it usable longer
<efraim>I tried to create an install tarball for guix so I could use that on the second machine but I ran into weird issues so I was going to try again from the 1.4.0 tag
<efraim>actually, I might just try building the debian guix package for ppc
<efraim>vagrant's going to be in trouble if I manage to get that working
<weary-traveler>efraim: that works. specifically, the symlinks can also go under a sub-directory of /var/guix/gcroots (say /var/guix/gcroots/manual )
<efraim>weary-traveler: we'll see if I remember that for next time :)
<weary-traveler>heh
<ulfvonbelow>it looks like in qemu it makes it past the ssh-keygen step, last message I saw was "Error: driver 'pcspkr' is already registered, aborting...", which seems pretty benign, and then just a black screen with a single white rectangular (column) cursor in the top left. When I type stuff it gets echoed there.
<ulfvonbelow>how does one sent ctrl+alt+f2 to qemu without it getting intercepted by the host system?
<ulfvonbelow>okay, looks like sendkey is the command to use from the monitor
<ulfvonbelow>well, it's able to get to the manual via ctrl-alt-f2, so that's good, it just doesn't display the installer at all
<efraim>oh nice, it doesn't look like I need to build packages of anything before attempting to build the guix package
<futurile-afk>morning
<efraim>o/
<theesm>good morning^^
<adanska>Hi, packaging question here. I'm sure people have encountered a similar problem before. I'm currently packaging https://github.com/koron/cmigemo (dependency of lem, its a incremental search engine for japanese) and the compilation downloads a dictionary during its compilation. whats the best way of getting this file in so the package can build? short of packaging the thing that makes the dictionaries
<peanuts>"GitHub - koron/cmigemo: C/Migemo" https://github.com/koron/cmigemo
<jpoiret>ulfvonbelow: are you building from latest?
<adanska>because the thing that makes the dictionaries is all documented in japanese and is a pain to build unforch
<adanska>worst comes to worst that might be what i have to do :(
<ulfvonbelow>jpoiret: ah, no, building from a local branch with a bunch of changes
<adanska>Hi guys, have a question about cl projects using CFFI that also include C code that needs to be compiled to create the .so file that the CL code binds too. (i'm trying to package https://github.com/lem-project/async-process)
<peanuts>"GitHub - lem-project/async-process" https://github.com/lem-project/async-process
<snape>hi, is there a way in package foo to use a scheme variable in a phase, so that a package bar inheriting foo could change that variable?  Without having to rewrite the phase
<snape>I can think of two possible ways:
<snape>- passing a variable as an argument to the phase procedure, but I can't add new arguments on the fly
<snape>- using setenv and getenv (seems hacky but it probably works)
<flypaper-ultimat>snape: rather than inheriting, you could make a function that returns a package, and hae the variable part as an argument
<snape>flypaper-ultimat: indeed, good idea, thx
<flypaper-ultimat>snape: i've got an example, lemme upload
<snape>dw I have examples of this
<flypaper-ultimat>snape: heres an example: https://paste.rs/YmvfS
<snape>flypaper-ultimat: thank you!
<graywolf>Hm, any idea how I can try emacs 29.2? guix shell --with-latest=emacs emacs does not seem to work. Get a lot of "native compiler error" in the *Warnings* buffer.
<apteryx>lilyp: I had that idea of "abusing" recursive? to accept a list of submodules too... perhaps that's better
<apteryx>lechner: 403 on https://juix.org/; is that normal?
<adanska>hi guix, another question. if theres a package that has a bunch of its components seperated out into different git repos, and these components are heavily coupled with the package, is it better to keep the component packages private (define) or define them regularly (ie define-public) in the appropriate file.
<adanska>*?
<snape>adanska, yes, you can look at torbrowser for example
<snape>it uses "torbrowser-assets", which is not public
<snape>in this case it's still an input, but it doesnt need to (and in this case it probably shouldn't be)
<snape>adanska, you can also use an <origin> instead of a <package>
<snape>like the icecat package does
<adanska>these components need to be built with asdf, so it might be easier to just define another package... but thats good to know in future! that actually solves a problem i was having earlier, needing a file hosted online during build-time
<PotentialUser-66>hi mom
<apteryx>ACTION is testing an update to the kde-framework libs
<ulfvonbelow>okay, this is quite strange. In real, physical i686 laptops, and *only* in real, physical i686 laptops, my gnu/build/activate.scm has the same size, but the start of the file has been shifted to begin with "and-line))))" and filled with null bytes at the end
<ulfvonbelow>the start of the file seems to have been shifted exactly 16384 bytes
<ulfvonbelow>which is an extremely suspicious number
<ieure>That's incredible.
<ulfvonbelow>and another file is shifted exactly 20480. Clearly something to do with blocks...
<ieure>ulfvonbelow, What kernel version/filesystem? There was a recent kernel data corruption bug.
<ulfvonbelow>linux-libre 6.5.10, filesystem is... whatever the installer generation command spits out, I guess? Let me check
<ulfvonbelow>iso9660 according to lsblk on my desktop
<Franciman>does anybody have an intellij IDEA community edition package def?
<attila_lendvai>any committer up for a quick one? https://issues.guix.gnu.org/68468
<peanuts>"[PATCH] gnu: services: Add respawn-limit and respawn-delay." https://issues.guix.gnu.org/68468
<ulfvonbelow>I've got a rescue repl up on the laptop, I don't suppose anyone happens to know an easy way to get a checksum of an entire flash drive from just the initrd guile?
<ulfvonbelow>what's interesting is that grub clearly has no trouble with reading this same filesystem (it's where the initrd came from, after all)
<attila_lendvai>this just "forwards" two fields to the new shepherd
<lilyp>graywolf: try #68571
<peanuts>"[PATCH 0/2] Update Emacs to 29.2" https://issues.guix.gnu.org/68571
<mekeor>emacs-tempel-collection does not ship the .eld files that contain the templates which represent the essential value of the package
<mekeor>i'll work a patch when i have time
<attila_lendvai>could someone sneak in a quick curl update into the core-updates branch?
<attila_lendvai>a bug is biting me (https://github.com/curl/curl/issues/10521)
<peanuts>"http fails on 416 when resuming ? Issue #10521 ? curl/curl ? GitHub" https://github.com/curl/curl/issues/10521
<attila_lendvai>scratch that, i'm not fully pulled
<PotentialUser-51>I have a potentially ridiculous question that I couldn't really find an answer on. I installed guix as a package manager on some older hardware but any time I try to do a guix pull, I end up freezing. I am assuming it's running out of memory (I only have 2GB total) so I was curious if there was a way to limit the memory used when using the guix
<PotentialUser-51>pull command?
<rekado>PotentialUser-51: unfortunately, the Guile compiler requires a very large amount of memory when compiling all of the modules that make up Guix. 2G is the minimum.
<rekado>PotentialUser-51: you can try to avoid compiling things locally by setting up a channels file that will only get the most recent version of Guix that has been built by the build farm.
<rekado>or you could set up offloading so that the builds are performed on a more powerful machine.
<PotentialUser-51>I thought I chose to only have binaries, but I could be wrong. I'll check now. For offloading, would it matter that my desktop is x86 and the device I want the packages on is ARM?
<attila_lendvai>PotentialUser-51, i'm running guix on a very small VPS, and what i do is i `guix deploy` it from my laptop.
<rekado>PotentialUser-51: you can use channel-with-substitutes-available from the (guix ci) module.
<rekado>the docstring says: “Return a channel inheriting from CHAN but which commit field is set to the latest commit with available substitutes for the Guix package definitions at URL. The current system is taken into account.”
<rekado>you can use this in your .config/guix/channels.scm file
<PotentialUser-51>That's good to know, thanks!
<attila_lendvai>rekado, wow, thanks for pointing that out! lack of substitutes is a constant headache for me with guix.
<attila_lendvai>there should be a staging branch, and only update master in larger steps, and considering whether substitutes are available. with a tool like that it could even be automated.
<rekado>I’m surprised that this is not mentioned anywhere in the manual
<rekado>“should” is difficult for a staging branch
<rekado>it’s not a new idea
<attila_lendvai>maybe i don't see all the complexity. what i see is that devs would push to staging, and someone sometimes pulls it to master. optionally automated, if feasible.
<attila_lendvai>this would also relax devs pushing to staging, because it wouldn't immediately break a gazillion installations.
<rekado>what do you do in case of a build failure after a few more people have pushed to staging?
<attila_lendvai>it would also open the possibility to force-push to staging when it's necessary
<rekado>and how many build failures are permitted?
<rekado>see also https://docs.gitlab.com/16.7/ee/ci/pipelines/merge_trains.html
<PotentialUser-51>I added the `channel-with-substitutes-available` to my channels.scm. Fingers crossed this works...
<attila_lendvai>rekado, pulling staging into master would be strictly a fast-forward deal. it's really nothing more than simply delaying the publication of commits to the unwashed masses.
<attila_lendvai>PotentialUser-51, what is the url paramteter that you used for that?
<PotentialUser-51>attila_lendvai I just put this in there. https://guix.gnu.org/manual/en/html_node/Channels-with-Substitutes.html
<peanuts>"Channels with Substitutes (GNU Guix Reference Manual)" https://guix.gnu.org/manual/en/html_node/Channels-with-Substitutes.html
<PotentialUser-51>So, "https://ci.guix.gnu.org"
<peanuts>"Cuirass" https://ci.guix.gnu.org
<rekado>oh, it’s in the manual after all
<rekado>(couldn’t find it via the index)
<attila_lendvai>under a rather misleading title... i'd call it Substitute availability or something along those lines
<PotentialUser-51>It was the first result when just searching "channel-with-substitutes-available guix", which I never would have even thought of if it wasn't recommended here.
<attila_lendvai>oh, wait. this does not ensure that all packages have substitutes, only that guix pull will not compile locally. which is useless for me, becuase most of the time i need to run a patched guix.
<rekado>this is strictly about “guix pull”
<rekado>the infrastructure provided by “guix weather” could probably be used to attempt to install a manifest only when substitutes are all available.
<rekado>could be called “manifest-with-substitutes-available”
<attila_lendvai>rekado, ideally, what i think i need is a way to define a blacklist of (large) packages, and guix pull to the latest commit that has substitutes for those packages.
<attila_lendvai>...considering every channel in my channels.scm. </wishlist>
<rekado>I think this can be arranged with a “guix weather” check in your manifest
<rekado>gotta check if the Guile API for “guix weather” is conveniently usable
<rekado>doesn’t seem so
<rekado>we’d need to export a few more lower-level procedures from (guix scripts weather)
<attila_lendvai>civodul, i'm looking into preparing my shepherd patches for submission, but some of them depend on each other. how shall we do this? would you be fine with me ordering my patches in least controversial order, and you cherry pick commits from my repo?
<attila_lendvai>civodul, then i rebase, refine, and let you know when there are more commits that i deem ready for inclusion?
<attila_lendvai>FTR, my patches are here: https://codeberg.org/attila-lendvai-patches/shepherd
<peanuts>"attila-lendvai-patches/shepherd: Mirror and patches to https://git.savannah.gnu.org/cgit/shepherd.git/ - Codeberg.org" https://codeberg.org/attila-lendvai-patches/shepherd
<attila_lendvai>and/or is there anyone else who pushes shepherd patches? to relieve civodul...
<PotentialUser-51>It froze again on building the "...translated-texinfo.drv..." bummer.
<graywolf>lilyp: great, will try, thank you
<vagrantc>grrrr. building of `/gnu/store/v08p6qng12bny96hch5jvggsxraysdwg-linux-libre-6.6.12-guix.tar.xz.drv' timed out after 3600 seconds of silence
<vagrantc>is that timeout configurable?
<vagrantc>--max-silent-time, maybe ...
<rekado>--max-silent-time=9999999
<vagrantc>thanks
<rekado>there’s also timeout, which shouldn’t be smaller than max-silent-time
<vagrantc>oh