IRC channel logs

2023-04-13.log

back to list of logs

<rdrg109>[Q] I know I can execute guile commands by starting "$ guix repl" and evaluating commands in the REPL. Is it possible to execute commands as shell one-liners? I want to show the print the value of the variable %load-path in a shell script.
<shcv>what's the status on getting nodejs upgraded to 16? The latest I see in the package search is 14
<shcv>and what should I do to get a more recent node version in the absence of an official update?
<poselyqualityles>shcv: there is something in the works for Node 18: https://issues.guix.gnu.org/59188
<Guest70>does anyone use nix in guix
<Guest70>I cannot get it to run.
<Guest70>dave@host ~$ sudo nix-shell -p cowsay
<Guest70>warning: the group 'nixbld' specified in 'build-users-group' does not exist
<Guest70>error: file 'nixpkgs' was not found in the Nix search path (add it using $NIX_PATH or -I)
<Guest70>do anyone face this problem, before?
<shcv>poselyqualityles: seems like that could still take a while; how should I work around it for now?
<poselyqualityles>shcv: piecing those patches into a package definition does result in a "working" node and npm, and i could install e.g. mermaid-cli and get it to work, however, for dev workflows that rely heavily on npm, there are likely to be issues? not sure what to do in the meantime, maybe creative uses of guix shell?
<Gooberpatrol_66>Guest70: did you add (service nix-service-type) and reconfigure
<pickanick>"The software environments created with Guix are fully reproducible: a package built from a specific Guix commit on your laptop will be exactly the same as the one built on the HPC cluster you deploy it too, usually bit-for-bit." : does this mean that the compilation is not optimized for each CPU? https://hpc.guix.info/
<pkill9_>pickanick: yea, i asked about that ages ago, apparently there are runtime CPU optimisations
<jackhill>c.f. https://hpc.guix.info/blog/2022/01/tuning-packages-for-a-cpu-micro-architecture/
<jackhill>I would love to see more research done on whether the CPU customizations result in the same computation :) https://ssvb.github.io/2011/08/22/simd-idct-libjpeg-turbo-bitexactness.html
<vagrantc>also, the promise of "exactly the same" is a bit more theory than practice ... in particular guix itself is not typically reproducible
<vagrantc>you can also write software that is built with "all" the optimizations and pick the appropriate ones at runtime
<jackhill>rdrg109: how about: guix repl <(echo '(display %load-path)')
<pickanick>I wonder how much tradeoff there is in performance when using a multi-target executable
<pickanick>Of course it depends on .... everything
<jackhill>I suppose you could always create a package varient that passes the right CFLAGS or what have you, if it is important to be sure.
<vagrantc>ACTION has seen many people spend more time trying to get cpu optimizations out of something and spend arguably nearly infinitely more time optimizing than it would take to run the code unoptimized
<vagrantc>obviously, for huge repeated computations, that can earn a significant benefit ... but for many cases, people do not end up winning any real performance gains relative to the time spent trying to do so
<bjc>‘guix pull’ on a new system is, for some reason, pulling down multiple versions of gcc and binutils. it's still not done and there are already almost 1000 items in the store
<bjc>it's getting substitutes, so i'm not sure why it needs to download all this stuff
<vagrantc>a newly installed system?
<bjc>it's just downloaded mes for some reason. there's no way that's a propogated inputy right?
<bjc>vagrantc: new guix on a foreign distro
<vagrantc>usually the first "guix pull" has a lot of work to do
<bjc>sure, but i wouldn't expect to need the vast majority of these tarballs when i'm using substitutes
<vagrantc>tarballs seem a bit worrysome ...
<vagrantc>has it downloaded any substitutes? ... otherwise, maybe something is amiss in the substitute configuration
<bjc>there are 30 versions of binutils in /gnu/store right now. i can't imagine why i'd need even 1 of them
<bjc>these are *all* substitutes
<bjc>oh, it's just started building ‘mes-boot’, which i guess would explain all the dev tool downloads
<vagrantc>sounds like you are, for whatever reason, rebuilding the world
<bjc>it does seem that way, though i gotta wonder why. if i could get substitutes for all the other junk, why not mes-boot?
<vagrantc>sounds like substitutes are not tecvhnically available, for whatever reason
<vagrantc>you got substitutes for the tarballs?
<vagrantc>~= other junk ?
<bjc>yeah, it downloaded quite a lot before it started actually compiling mes-boot
<bjc>hmm. ‘guix weather mes-boot’ returns ‘unknown package’
<vagrantc>that does not sound promising ...
<vagrantc>anythign in /etc/guix/acl ? how is guix-daemon configured?
<bjc>i suspect mes-boot isn't a normal package. i can find things like gcc
<bjc>i've got a single key in /etc/guix/acl
<vagrantc>should be two, one for ci.guix.gnu.org and one for bordeaux.guix.gnu.org
<bjc>i'm running the daemon with: guix-daemon --build-users-group=guixbuilder --cores=0
<vagrantc>which key is it? ci or bordeaux's key? :)
<bjc>how can i refresh the acl file?
<bjc>(q #23C1B287A12CEC498CA31212F2ADF46DF6FB09694DA4591639B83C0723E468D3#)
<bjc>you tell me ;)
<vagrantc>cat /path/to/very/very/trusted/public/key | guix archive --authorize
<vagrantc>maybe with sudo ...
<bjc>how do i get the public keys for ci and bordeaux?
<vagrantc>they are in guix.git ...
<bjc>ok
<vagrantc>in etc/substitutes/
<vagrantc>that looks like neither key
<vagrantc>though maybe it was ci's older RSA key?
<bjc>now i have three keys, so yeah, i have no idea where that first entry came from
<bjc>this may be due to using arch's aur to install guix, in retrospect
<vagrantc>how old is it?
<bjc>no idea
<bjc>says 1.4.0
<vagrantc>that *ought* to be reasonably recent ...
<bjc>ohh.. that key came from my other box. i was setting up this new one for guix offload, and part of that was adding a key
<vagrantc>tada!
<bjc>that may have screwed up the first pull, which may have been expecting an empty acl file before filling in ci/bordeaux automatically
<vagrantc>well, if the package does not populate that for you, you may need to do it manually.
<bjc>and i bet the reason i was able to get those other tarballs was because of the bootstrapping fixed-output derivations. so it was a red herring: i wasn't actaully getting substitutes
<vagrantc>right ... i think :)
<vagrantc>guix knows those URLs and hashes by heart :)
<bjc>things seem to be going more smoothly with those keys in place, so thanks for that. i don't know how long it would have taken me to figure that out on my own
<apteryx>I've sent patches to enable hot-reloading syslog configuration in case you had a need for that
<apteryx>(it also fixes the fail2ban sshd jail -- tested to work on my box now)
<apteryx>the one documented with using extra-jails in the manual
<bjc>anyone might know why ‘guix offload test’ is giving me: guix offload: error: failed to connect to `/var/guix/daemon-socket/socket': Connection refused
<bjc>that socket exists, and on the offload box i'm seeing the connection in the daemon logs: Apr 12 21:32:15 ditto guix-daemon[221214]: accepted connection from pid 226333, user guix-build
<bjc>i'm assuming the ECONNREFUSED is coming from somewhere else
<poselyqualityles>would it make any sense to add guix-publish to an installation-os bundling some of the larger packages?, and if so, apart from adding the local substitute url, how to ensure that substitutes during system init ask for packages that guix-publish will find?
<bjc>to answer my earlier question: restarting guix-daemon on the local machine fixed it
<apteryx>is it me, or are there many workers missing in action? https://ci.guix.gnu.org/workers
<lfam>It does look a little thin
<apteryx>it'd be cool to have a 'vanished workers' page, with the last time seen
<apteryx>perhaps at the bottom of that same page
<lfam>That's a good idea
<apteryx>sadly, just an idea :-)
<the_tubular> What is a hidden package and when is it pulled ?
<lfam>What do you mean by pulled, the_tubular?
<lfam>Hidden packages are packages that are not accessible in the Guix user interface. That is, commands like `guix show` and `guix install` will tell you they don't exist
<lfam>They can only be used via Scheme code
<the_tubular>You anwered it lfam :P
<the_tubular>I meant how do a user use it
<lfam>guix build --no-grafts -e '(@@ (gnu packages compression) zstd)'
<lfam>You use '-e / --expression' to pass a Scheme expression as the argument
<the_tubular>Ohhh, cool!
<lfam>It is the variable of the zstd 1.5.0 package that is hidden
<lfam> https://www.gnu.org/software/guile/manual/html_node/Using-Guile-Modules.html#index-_0040_0040
<lfam>That explains '@@"
<lfam>It's basically a debugging tool or escape hatch
<the_tubular>Ohh, yeah I rarely saw that
<jlicht>Hey guix: I’d like to get the node lts patch series in before node 14 is end-of-life later this month. Anyone willing to review 59188? Thanks!
<jlicht>No bot? https://issues.guix.gnu.org/59188
<mekeor[m]>jlicht: #59188
<mekeor[m]>doesnt work either
<Guest70>good morning, anyone using discord?
<Guest70>sorry I meant nix, not discord, too tired this morning
<Guest70>I can not good nix to run in guix
<gabber>how can i trigger the (re-)build of the docstrings in the info manual?
<gabber>i found out why i couldn't match the trailing backslash at end-of-line in (substitute*) and would love to send in a patch improving said docstring
<gabber>`make info` does not seem to include my changes to the substitute* docstring
<jpoiret>isn't `make doc/guix.info` the right command rather?
<gabber>this gives: "make: 'doc/guix.info' is up to date." (i guess this is invoked by `make info`)
<gabber>should i/do i have to `make clean` first (for some reason)?
<jpoiret>what docstrings are you talking about?
<jpoiret>i'm not sure we generate the manual from guile docstrings
<gabber>jpoiret: soooo, the seemingly identical passage in the info manual under `substitute*` (chapter Build Utilities) and the (identical?) string in the (substitute*) definition (guix/build/utils.scm) are copy-pasted?
<gabber>ACTION has some doubt
<gabber>no, i just
<gabber>checked, the strings only appear in the docstring (and the generated .info file)
<jpoiret>gabber: no, they are copy-pasted
<jpoiret>but in the manual source it has markup so it's not exactly the same
<gabber>copy-pasted manually? to doc/guix.info-2 2?
<gabber>jpoiret: btw thanks for your explanations!
<jpoiret>doc/guix.texi is the source!
<jpoiret>gabber ^
<gabber>yes, of course. i can see it now. thank you so much!
<gabber>does this look reasonable to you? or am i missing something? https://termbin.com/i8ne
<unmatched-paren>hello guix :)
<gabber>o/
<Guest19>hey. if i want to learn a lisp to make GUIs, which one is my best bet on guix system? i haven't found good gui support for guile. i tried racket, but it seems like the package manager raco is incompatible with guix system.
<mirai>McCLIM?
<msavoritias>yeah guile has only gtk which is pretty bad. I would go with McCLIM and Common Lisp.
<Guest19>okay, will try that. thanks
<Guest19>do you have any experience with SBCL?
<jpoiret>gabber: looks ok to me
<gabber>jpoiret: thanks, again!
<rekado>McCLIM is rather unusual. I would not recommend it for the kind of GUIs that you may be familiar with.
<gabber>the matrix bridge seems to be in an especially flaky state today
<irfus>hi, all! I tried to use `guix download` to download a source tarball and it seems to automatically redirect to web.archive.org which gives a 404
<irfus>is there way to suppress this automatic redirection?
<irfus> http://ix.io/4tkL
<irfus>^ that's the output I get when running `guix download https://archive.mesa3d.org/mesa-23.0.0.tar.xz`
<irfus>okay, so it's resolved by adding the arg '--no-check-certificate'. Seems my system doesn't validate letsencrypt-issued certs. :-/
<ellysone[m]>I'm getting a dns error consistently when I try to build a rust package https://paste.debian.net/1277226/ any ideas?
<negligiblebeans>It looks like the build script is trying to fetch data from github, but Guix disables network access during the build phase I believe
<sneek>Welcome back negligiblebeans, you have 1 message!
<sneek>negligiblebeans, jpoiret says: you can always replace the build phase by your own, with the proper command line invocation!
<negligiblebeans>ellysone[m] What's the package you are trying to build?
<ellysone[m]>negligiblebeans: https://github.com/mthom/scryer-prolog
<negligiblebeans>Are you the one packaging it, or is it an existing package?
<negligiblebeans>The problem is the patch that cargo is trying to download, caused by line 76 here https://github.com/mthom/scryer-prolog/blob/master/Cargo.toml
<negligiblebeans>Rather than depending on the regular modular-bitfield from crates io, looks like you need to depend on the patched version instead
<ellysone[m]><negligiblebeans> "Are you the one packaging it, or..." <- Yeah I'm trying to package it
<ellysone[m]>I have this https://paste.debian.net/1277231/ right now, I was able to compile the 0.9.1 version
<Guest4578>Hi, when i'm adding a package to my system declaration i get dependency issues. https://paste.debian.net/1277234/  i thought this is what could never happen on guix because every package is supposed to have it's own dependencies separately? how can i resolve this without removing packages?
<gabber>Guest4578: i think this comes from different profiles having conflicting entries. e.g. your home profile vs your system profile or your home profile vs manually installed packages
<gabber>i think i had this before and was able to resolve the issue by removing a package from one of the profiles
<irfus>Guest4578: while somebody more knowledgable might suggest an actual solution, a temporary workaround could be to remove one of those packages and use `guix shell` when you need it
<irfus>I have run into something similar as well, and that is what I ended up doing at the time
<bjc>it looks like xkeyboard-config is currently broken on core-updates
<Guest4578>irfus: gabber: okay. thank you for the tips
<bjc>is the upstream xorg file ok for xkeyboard-config? i'm getting an error on line 105 of rules/base, and the line continuation markers in this whole section are ‘/’ not ‘\’, which they are everywhere else
<bjc>but i don't see any patching of that file at all in the guix package, so i'm pretty confused
<TristanCottam[m]>Hi everyone!
<TristanCottam[m]>Is it possible to convert a file-like to its store path outside of a gexp?
<bjc>i don't think so, since you need to go through the store to get the path, and gexps are how you defer evaluation to that point
<TristanCottam[m]>I'm defining a serializer for a file-like configuration field, from which I want to get the contents of a file. Could this be done in this context? I'm stumped.
<bjc>serializers return gexps, don't they? so they should be able to refer to the store location of other things
<bjc>you may need to import modules, though
<TristanCottam[m]>I use Guix' standard serialize-configuration, I haven't had to explicitly specify gexps for serializers, I'll have a look at the source.
<bjc>the default serializer assembles its output by using ‘string-append’ with the output of each field serializer ungexp'd. they are implicitly gexps
<bjc>search the manual for “Complex Configurations”, which describes how they work
<TristanCottam[m]>bjc: I just had a look, but how can I make use of `gexp`s in this situation? I already went through "Complex Configurations", but the example doesn't make use of `serialize-configuration`.
<TristanCottam[m]>Should I not use the standard serialize-configuration altogether?
<unmatched-paren>TristanCottam[m]: the procedures you pass to DEFINE-CONFIGURATION should return gexps containing code that evaluates to a string
<unmatched-paren>s/procedures/serialisation procedures/
<lfam>Anyone use dpkg on Guix System? For example, for building kernel package .deb files?
<lfam>I see that I'll have to somehow change the dpkg --admindir argument, but I'm wondering if it's a crazy rabbit hole
<lfam>Mainly, I just bought a new computer that is by far the fastest computer I own, and it would be nice to build kernels for my Debian machines on it
<lfam>Looks like providing the build dependencies will be challenging
<graywolf>Hello :) Since the $(which guix) leads to a symlink, `hash guix' is not necessary after `guix pull', correct?
<lfam>graywolf: It's necessary after the first time you run `guix pull`
<lfam>Only once. Because that time, the symlink changes
<lfam>For example, after you first install Guix System, the location of `guix` will be '/run/current-system/profile/bin/guix'
<lfam>After you run `guix pull`, it will be '~/.config/guix/current/bin/guix'
<graywolf>Right, but after the initial setup and pull, when just updating already configured system, `guix pull && guix system reconfigure config.scm' is enough, correct?
<lfam>Similar for Guix on other distros
<lfam>Yup
<graywolf>Just want to make sure my script to update /etc/guix/channels.scm is correct :)
<graywolf>Thanks :)
<Guest13>hi, is there any way to develop racket programs on guix system? racket doesn't find libraries installed with raco
<lfam>But, it's also harmless to run, and putting it in your script will ensure correct behaviour in *all* cases, graywolf. It's up to you
<lfam>Well, there could be a TOCTOU issue, but that's out of scope of this conversation
<apteryx>lfam: Do you mean 'guix pack -f deb' ?
<apteryx>I've used dpkg to test the .deb produced with guix pack (there's a test doing that)
<apteryx>basically you just need to mkdir and chown some /var/lib directory to use dpkg on Guix System, IIRC.
<lfam>apteryx: I wonder if it would work! Normally I'm checking out the kernel git repo and doing `make bindeb-pkg`
<lfam>Then I install that with dpkg
<lfam>The `guix pack` documentation suggests you can't install the .deb packs on systems that have Guix on them
<lfam>" It is unwise to install Guix-produced ‘.deb’ files on a system where /gnu/store is shared by other software, such as a Guix installation or other, non-deb packs."
<apteryx>ah wait, I had rpm on mind
<apteryx>which support an install prefix, so it's safe to do that
<lfam>It's okay if it can't be done. Building the kernel on my laptop takes a few hours but that's okay
<apteryx>could you use offloading?
<Guest19_>does gnome boxes work for any of you on guix system? for me it just loads forever when i select an iso
<apteryx>works for me, but you need some virtlogd daemon setup
<apteryx>*service
<apteryx>Guest19_: I think that's what I have: https://paste.debian.net/1277257/
<jonsger>rekado: I assume that you set `(mount? #f)` for CIFS here https://lists.gnu.org/archive/html/help-guix/2018-01/msg00050.html because the file-system stuff happens before the network becomes ready, when booting
<Guest19_>apteryx: that works, thank you!
<Guest19>How can I change sudo config.  I want to run sudo halt without entering the sudo password
<apteryx>I think the manual has an example in the context of guix deploy
<apteryx>see info '(Invoking guix deploy)'
<apteryx>that one grants sudo without password for *all* commands to a given user
<apteryx>to do that just for one command, it's possible to I think, 'man sudoers' (it's a hell of a syntax)
<Guest19>Ah I understand.  Thanks
<unmatched-paren>do we not have a sudoers-service-type yet?
<unmatched-paren>...apparently not :)
<apteryx>we have a sudoers field on the operating system
<apteryx>*sudoers-file
<unmatched-paren>ah
<unmatched-paren>i suppose we might want to deprecate that at some point
<unmatched-paren>like we did with HOSTS-FILE
<teddd>I'm trying to buidl guix. I the get error: In procedure allocate-struct: Wrong type argument in position 1: #<syntax-transformer <origin>
<unmatched-paren>teddd: maybe try ``make clean-go''?
<unmatched-paren>then just ``make -j$(nproc)'' again
<teddd>ah nice
<teddd>unmatched-paren: tks
<TristanCottam[m]>unmatched-paren: I returned strings from serializers all along, thank you so much!
<unmatched-paren>no problem to both :)
<mirai>unmatched-paren: well, sudoers file has some interesting syntax
<unmatched-paren>mirai: ah, would it be quite difficult to replicate it in scheme?
<unmatched-paren>i suppose if we did manage to do that, it would make writing a sudoers a lot easier...
<negligiblebeans>Does anyone know if it is possible for a 'home service' to depend on other home services?
<unmatched-paren>negligiblebeans: well, in a way
<unmatched-paren>you can make home services extend other home services
<unmatched-paren>if those home services support being extended
<unmatched-paren>and you can also make *shepherd services* depend on other shepherd services running
<negligiblebeans>Right, but my impression was that this was more about basing the functionality of a new service one off an existing one
<bjc>other than shepherd, i'd say there's no real way to set up a dependency tree with useful properties
<unmatched-paren>^
<unmatched-paren>you probably want an extension
<negligiblebeans>Yeah unfortunately I'm not making a shepherd service
<unmatched-paren>you definitely want an extension :P
<unmatched-paren>(exact same goes for system services btw)
<bjc>if you want home-environment-service-type to depend on home-dbus-service-type, or some such thing, you're out of luck unless you don't actually care the order things are done in
<bjc>and if you have two extensions to a single service-type that have some ordering between them, you can't do that, either
<negligiblebeans>That was the sort of thing I was looking for yeah
<bjc>shepherd one-shots may be your best bet, depending on your requirements
<negligiblebeans>ok yrah
<negligiblebeans>thanks for everyone's help!
<sysfu>Has anyone here been succesfully creating an OpenWRT build enviroment on GUIX?
<sysfu>I want to create on OpenWRT package for the pounce IRC bouncer. Figured I'd take a crack at it using GUIX.
<sysfu>My chief concern is that I might have a hard time compiling certain parts of the system of non-free software is required.
<sysfu>Also, are there any GUIX web forums? the GUIX subreddit seems to be the most active equivalent at present.
<Guest19>that would be the mailing lst
<Guest19>list"
<Guest19> https://savannah.gnu.org/mail/?group=guix
<sysfu>Guest19: thx. I'm just not a mailing list guy, but if that's the recommend resource I'll figure something out.
<sysfu>this channel is a great resource but in some cases I like to be able to document the solution so that people can find it easily later on using a web search.
<jpoiret>sysfu: you can use yhetil.org/guix to browse the archives
<lfam>sysfu: There aren't any traditional message board forums. There is the reddit page and other chat rooms besides this one
<Guest19>Ah I understand.  Sometimes they implement it in the Guix Cookbook.  This can be seen by search engines.  Other than that I also see stuff from blog content.  So if you have a blog or a site it will be useful as well.  Though you probably want a centralized wiki but I don't think we have that
<lfam>But the overwhelming majority of discussion is over email
<jpoiret>i like email, I can index it however I want, have it available offline, etc.
<jpoiret>also it's decentralized and compatible with whatever tools you want
<lfam>I love it, I use mutt and am really efficient with it. And all the things that jpoiret mentioned. But there really is a generational divide, and the younger side is not interested
<sysfu>jpoiret: Thanks I'll check that out. I'm a big fan of mail-archive.com for mailing list perusal too.
<lfam>It's also easy to figure how many days I spent setting up mutt and the associated tools to be ergonomic
<jpoiret>yhetil is much better
<lfam>I mean, to forget
<sysfu>lfam: Do you use a dedicated email address for mailist lists? I used to on my own domain until some chinese bastard stole it from me when I accidentally let the registration lapse. Since then I just haven't had the gumption to setup another dedicated mailbox.
<lfam>sysfu: No, I only have one email address. In the future I may create another for my professional work
<lfam>Obviously, if you have your own domain, make sure you don't lose it
<unmatched-paren>sysfu: there's also aerc, which is very easy to set up imo
<sysfu>lfam: I register them five or ten years at a time now.
<lfam>Yes, same. And whenever I think about it, I add another year or two
<unmatched-paren>(i packaged it for guix [a traumatising process], and i used to use it until yesterday when I switched to using mu4e within emacs)
<lfam>It's cheap enough
<sysfu>unmatched-paren: I have experimented with aerc too, prefer that over mutt. Funny that the original dev stepped away from the project after determining the always on IMAP connectivity was a flaw.
<Guest19>honestly that stuff with domains is in my opinion absolute unacceptable.  People can park domains and don't even use it.  Therefore you can't have any domain accept it has random chars. I understand your frustration
<unmatched-paren>sysfu: i think that they came to that conclusion after they stopped maintaining it, as a thought in retrospect
<lfam>With the new TLDs, there are really a lot of good options for domain names
<sysfu>unmatched-paren: then we owe you a debt of aerc gratitude my friend? I compiled it on Kali loonix but haven't tried the GUIX pkg yet.
<unmatched-paren>keep in mind the guix package is one version behind
<unmatched-paren>it's on 0.13.0, whereas aerc is currently on 0.14.0
<unmatched-paren>sysfu: btw it's Guix, not GUIX :)
<sysfu>lfam: The only thing that make managing email lists tolerable for me 10-15 years ago is when the opera web browser was shipping the M2 mail client. I set that up with a dedicated email address list@mydomain and it was very efficient, especially with the M2 clients search and database driven interface.
<lfam>Nice
<lfam>I can hardly recommend it due to the effort involved in setup, but once you have mutt, it's super efficient
<sysfu>unmatched-paren: Aye, I'll pay more attention to the capitalization, thx.
<lfam>mutt + mu index / search
<ellysone[m]>What about gnus?
<unmatched-paren>given that they're talking about terminal programs i suspect sysfu doesn't use emacs?
<lfam>... and renewed
<lfam>Thanks for the reminder
<sysfu>unmatched-paren: been a vi guy for 20 years, never learned emacs.
<unmatched-paren>sysfu: i used neovim initially but switched to emacs (using evil) after a while
<unmatched-paren>i find it more polished personally
<unmatched-paren>(i despise emacs lisp though, it's so much worse than scheme...)
<ieugen[m]>hi, are there articles on how to support multiple versions of the same package ?
<ieugen[m]>Like have definitions for multiple openjdk versions. Be able to list them and switch between them.
<ieugen[m]>Switching should be easy I guess. Not sure how I would model this as packages
<ieugen[m]>Also there can be multiple providers - openjdk has Azul, Oracle, Corretto, OpenJDK
<bravillo04>hola, si alguien esta interesado/a en entrar a un grupo de amisades y amigos que me hablen en privado
<ellysone[m]> https://www.pulumi.com/ai/
<ellysone[m]>if only we could have something like this
<ellysone[m]>but to generate package definitions
<unmatched-paren>anyone got any emacs irc client recommendations? now that i've switched my email over i'm looking to use emacs for irc too :)
<unmatched-paren>i know there's erc, circe, and rcirc, but maybe there are less well-known ones that might be better?
<ngz>unmatched-paren: I prefer Circe over ERC, but that's really a matter of taste. I haven't tested rcirc.
<davidl>Hi, I have a problem with my custom channel - when I guix pull with it, it fails silently at the "building package cache" step by never finishing and I wonder how to debug it. I think there should be a better error message if possible. I don't really know when or how it started happening.
<unmatched-paren>davidl: surely there's a log file displayed?
<unmatched-paren>"building package cache" errors generally mean that one of your packages is malformed in some way
<davidl>unmatched-paren: no I have to cancel it. I think it's stuck in some loop, as if there is a recursive package definition perhaps.
<davidl>but I don't know how to debug it properly.
<unmatched-paren>ah
<unmatched-paren>i don't think there really is a way
<unmatched-paren>you'd need to add some sort of recursion checker to (guix packages)
<unmatched-paren>(which i suspect *would* be totally possible
<unmatched-paren>)
<davidl>I guess readding each file in the channel one by one, commiting and guix pulling for each file, then drilling down to the individual package inside the first file that causes a hang at the build package step. But thats just really time consuming.
<unmatched-paren>(but also hard :))
<unmatched-paren>yeah...
<davidl>oh well.
<unmatched-paren>here's an idea:
<davidl>Id pay someone to make that recursive checker right now
<unmatched-paren>cd to your channel directory, and run ``guix repl -L .''
<unmatched-paren>or just ``guix repl -L my-channel'' i guess
<unmatched-paren>and then try this:
<davidl>im really sorry but I dont have time for a debug session at the moment. But if you send me instructions I| will try them out later.
<davidl>thanks though! I wil;l try what you send
<unmatched-paren>okay, i'll send you a sneek message once i've written the debugging code
<jgart[m]>unmatched-paren: I'd like a "sneak peak" at the debug code also :()
<Guest13>has anyone worked with guile-g-golf in guix system? it's absurdly hard to get working..
<lfam>Guest13: You might also get help in the #guile channel
<Guest13>i asked it there too, thanks
<sysfu>If there are any other catgirl irc client fans in there, let me know if you've figured out a way to include nickserv commands in the configuration files. I've discovered that the config file won't recgonize the 'ns' command.
<sysfu>So far I've been able to include the host, nick, join channels, and the quiet command with success.
<unmatched-paren>sneek: later tell davidl: https://paste.sr.ht/~unmatched-paren/4e48f506f374ebaaf4415918eef5163baba1976e <- and jgart[m] too
<sneek>Got it.
<unmatched-paren>sneek: later tell davidl: run this in a guix repl with your channel in the load path and once it starts hanging, cancel the operation, and the last line in ~/recursion.log should tell you which package has a cycle in it
<sneek>Got it.
<unmatched-paren>sneek: later tell davidl: disclaimer: i'm not certain this will work
<sneek>Will do.
<unmatched-paren>sneek: botsnack! :)
<sneek>:)