IRC channel logs

2025-07-03.log

back to list of logs

<meaty>does anyone know why importing (use-modules (gnu packages debug)) in emulators.scm causes an error?
<meaty>I'm trying to package pcsx2 and it needs libbacktrace, but when I try to import its module, it breaks evaluation
<meaty>(gnu packages debug) itself seems to evaluate without error, but as soon as I add the use-modules statement everything breaks, and the error message is cryptic as usual
<meaty>btw, could someone with priviledges add the help-wanted label to #964
<sturm>anyone else recently seeing some Gtk apps not displaying properly? Eg. nautilus just shows up blank
<sturm>(blank grey left-hand menu + blank white right-hand pane)
<ieure>sturm, Not seeing that. Pulled and reconfigured around an hour ago.
<sturm>I am running wayland which may be related
<sturm>thanks ieure
<ieure>Ah, yeah, I'm on X11, not even running Gnome.
<PotentialUser-31> https://bpa.st/STGG3YBURH4IW6WZGMLJ7YAH7U
<PotentialUser-31>I'm getting an error and I don't understand it
<PotentialUser-31>I included the error in the paste
<Rutherther>PotentialUser-31: the issue is probably that there is a syntax error in that module. Try running guix repl with -L on your modules path and put this base file as argument. It should show you what is wrong
<Rutherther>meaty: emulators -> python-XYZ -> debug creates a cyclic dependency when you import debug in emulators
<PotentialUser-31>Rutherther: I can't make sense of the error message
<PotentialUser-31>scheme@(guix-user)> ,use (config systems base)
<PotentialUser-31>While executing meta-command:
<PotentialUser-31>Syntax error:
<PotentialUser-31>./config/systems/base.scm:34:2: operating-system: extraneous field initializers (+keyboard-layout) in form
<Rutherther>PotentialUser-31: you have +kryboard-layout field in your operating-system. That doesnt make sense, that field doesnt exist
<Rutherther>PotentialUser-31: since +Kryboard-layout returns a transformer-like procedure, you should apply your operating system to that, ie. "((+keyboard-layout "us") (operating-system...))"
<PotentialUser-31>Rutherther: it still fails
<PotentialUser-31>with the same error message for `guix` commands
<Rutherther>Send the source
<PotentialUser-31>`guix repl` has changed though
<PotentialUser-31>While executing meta-command:
<PotentialUser-31>Syntax error:
<PotentialUser-31>unknown location: source expression failed to match any pattern in form (define system-base
<PotentialUser-31> https://bpa.st/A76A
<Rutherther>It is completely different than what I had in my message and that is what causes the problem currently
<PotentialUser-31>Rutherther: How was I supposed to correctly apply it? 😅
<Rutherther>As I showed in my message
<PotentialUser-31>Rutherther: I still don't understand what I did differently
<Rutherther>I dont really know what to tell you... You have them in completely different order than I showed and without outer parentbeses to actually call the transformer procedure
<PotentialUser-31>Rutherther: Thank you
<PotentialUser-31>it works now
<PotentialUser-31>I didn't know the order was important
<Rutherther>The first thing after ( tells what procedure to call, while the next ones tell the arguments to that procedure
<PotentialUser-31>Rutherther ahhh
<PotentialUser-31>again, thanks
<kyoji>hey #guix, earlier I messaged about having some trouble compiling emacs from the git source with libgccjit in a guix shell. I was told to use "guix -D emacs libgccjit" but I still encounter the same problem: configure: error: The installed libgccjit failed to compile and run a test program using the libgccjit library; see config.log for the details of the failure.
<kyoji>Trying to compile the example the test program I am able to confirm that it compiles, but doesn't execute correctly
<meaty>Rutherther: how can I use packages from debug then? is there a way to make a "cutout" or something
<ieure>kyoji, See the emacs-no-x package definition, looks like you have to do some donking around with $LIBRARY_PATH.
<apteryx>how do you find things in codeberg after you've seen them once and they've vanished from your 'codeberg inbox' ?
<apteryx>perhaps there are search-foo tips worth sharing?
<Rutherther>meaty: you can use module ref resolve interface, search for it in guix.
<apteryx>probably conversations I've created or participated in would be a good start
<ieure>apteryx, There's a "Read" tab on the Codeberg notifications page.
<apteryx>ah! I was indeed overlooking that tab
<ieure>apteryx, And if you participated, it'll be in your activity that shows on https://codeberg.org when you're logged in.
<apteryx>that helps. I was overlooking that as well.
<apteryx>glad the nss thing has been sorted out by the way!
<kyoji>ieure: thanks for the lead, I'll take a look :)
<ieure>kyoji, Why are you manually compiling Emacs instead of using Guix to build it?
<kyoji>just for fun
<kyoji>guix build emacs works fine
<ieure>I know :)
<kyoji>if it matters, this is my configure call: /configure --with-native-compilation --with-pgtk
<kyoji>I don't think --with-native... is necessary anymore but I wanted to be sure
<meaty>Rutherther: thank you }:)
<vntsuyo>has anybody been able to use a custom qt5 theme on Guix?
<meaty>vntsuyo: I use one
<vntsuyo>meaty: can I see your config?
<vntsuyo>my qt5 apps can't find any external themes for some reason
<meaty>You have to make sure that qt5ct, your qt backend (e.g. qtwayland) and your qt app are in the same profile
<meaty>in the simplest case, you can put them all in a "guix shell" call
<meaty>otherwise just put all of them in your home or in your system packages
<vntsuyo>let me see
<meaty>e.g. 'guix shell qtwayland@5 qt5ct kvirc -- kvirc'
<meaty>idk if it's similar with x11
<vntsuyo>oh wait
<vntsuyo>the default qtwayland package is just for qt6 apps?
<meaty>yes, I filed an issue https://codeberg.org/guix/guix/issues/790
<meaty>it's a bit tricky
<vntsuyo>meaty: thanks a lot :)
<meaty>vntsuyo: np }:)
<apteryx>has anyone tried packaging https://github.com/nozwock/packet? a software for sharing files with android via its quick share protocol
<apteryx>(over bluetooth)
<untrusem>apteryx: I am hearing of this program for the first time :p
<untrusem>btw does lineageOS have quickshare?
<apteryx>untrusem: I just researched a bit, looks like yes: https://www.reddit.com/r/LineageOS/comments/1brrl4c/lineage_21_review_quick_share/
<apteryx>so it must be in the base AOSP free software
<untrusem>I use los, I don't see it in my rom, maybe because it is unofficial or I am on los 21
<csantosb>Morning, Guix ! Anyone to merge #555 and #538 ? They have the approval tick since 3 weeks now ...
<z572`>csantosb: I thought you had the commit access?
<csantosb>z572`: I don't; I think the committers list is somewhere in the wiki or so ?
<z572`>i think committers list is in .guix-authorizations
<csantosb>You're right. 45.
<csantosb>Speaking of the wiki, this is it: https://libreplanet.org/wiki/Group:Guix
<csantosb>I don't remember is there are plans to migrate it to codeberg, see https://docs.codeberg.org/getting-started/wiki/
<futurile>Morning all
<z572`>csantosb: i think you should join the committers
<z572`>csantosb: pushed.
<attila_lendvai>i believe guix badly needs a wiki where editing is distributed broader than the commit bit to the git repo. and the problem with the libreplanet wiki is that it contains stuff that has nothing to do with guix, and the search finds that content
<attila_lendvai>csantosb, i don't think wiki migration was considered. my impression is that most guixnicks don't care much about wikis...
<csantosb>z572`: Thanks !
<csantosb>attila_lendvai: arch or gentoo wikis, among others, are rather useful, IMO; a Guix equivalent would be a practical means of concentrating recurrent questions
<attila_lendvai>csantosb, i agree. what comes back is that there are mailing list archives... which is nowhere near as useful as a wiki, but i'm tired of arguing about stuff that is obvious from my perspective
<futurile>be a lot easier for people to edit a Codeberg Wiki, getting edit rights on the FSF is difficult. Propose it and see how people feel
<z572`>civodul: i plan update qt6 on core-packages-team, it fix qtwebengine-6 build.
<z572`>see https://codeberg.org/guix/guix/pulls/978
<adanska>attila_lendvai, i think that remains to be seen. the libreplanet wiki is a bit obtuse, so i can understand why there wasnt much activity there. having a better wiki platform that doesnt require as much oversight or needing to deal with git (like wikipedia) would lower the barrier enough, i feel, as to promote editing
<adanska>i think having a community run guix wiki would absolutely help the project on the whole, as there are concepts and quirks in guix that take trial, error and experience to learn that could be instead shared with newcomers
<adanska>as well as being a reference for more experienced guixers
<untrusem>I am in favor of having a accessible wiki
<untrusem>I wanna people to say guix wiki is as good as arch 😛
<futurile>I think there would have to be a Wiki team who cared about it - the real secret of Arch is people who work on the Wiki as their 'thing'
<csantosb>Absolutely. Arch wiki is one of the reasons I'm an Arch citizen, while a Guix foreigner.
<civodul>the Cookbook was started in that spirit: how-to-style documentation people can easily contribute to, but that would be maintained
<csantosb>ping codeberg.org ... 😥
<picnoir> https://status.codeberg.org/status/codeberg :)
<identity>"Sorry, you don't seem to have JavaScript enabled or your browser doesn't support it."
<PotentialUser-87>why do I need to input my encryption password twice in Guix?
<PotentialUser-87>For some reason, I have to enter it once before booting to GRUB, and once after I select an entry in the GRUB menu
<PotentialUser-87>I have two encrypted partitions, so I have to do it a total of four times
<PotentialUser-87>+ not to mention entering the user password as well
<hako>PotentialUser-87: here's a post that explains it: https://merrick.luois.me/posts/guix-avoid-entering-luks-passphrase-twice
<Rutherther>PotentialUser-87: I guess you mean the Guix System then, not Guix. See https://paste.debian.net/1384123/
<PotentialUser-87>Rutherther: I keep on forgetting that installing Guix on a foreign distro is possible 😅
<futurile>REMINDER: the decision period for GCD005 ends on Monday 7th - so if you want to record a decision now's the time!
<apteryx>is anyone knowledgeable with nftables configuration? Can I tack extra input chain rules on %default-nftables-ruleset?
<apteryx>looks like I should be able to use mixed-text-file and the 'add' directive
<sturm>PotentialUser-87: I have a separate encrypted /root and /home and discovered that I don't need to enter the 2nd of 4 passwords as Grub doesn't need access to /home. Doesn't solve the overall problem, but saves one password at least
<Rutherther>you probably mean /, not /root
<Rutherther>to make grub not want a password with the default bootloader, /gnu/store has to be unencrypted, it doesn't matter what else is encrypted. That way linux and initrd are accessible
<Rutherther>(oh and also /boot I suppose, but maybe not with legacy)
<Rutherther>s/but maybe not with legacy//
<sturm>oh yes, / not /root. My setup could be related to having coreboot, but I've found I can just hit return at the second password prompt (of four)
<sturm>coreboot does seem to know how to decrypt LUKS
<wehlutyk>Hello all!
<wehlutyk>I'm exploring various gnu/packagesguile-xyz.scm sources (currently goblins), to try and understand how guile projects with C libs are configured for Guix packages
<wehlutyk>Would there be a kind of standard way (a setup script?) to generate all the basic configure.ac, bootstrap, etc., for all that?
<wehlutyk>(if this is out of scope do push me away towards any channel in which it would make sense)
<PotentialUser-59>What's the recommended method to manage one's Emacs configuration with Guix (System)?
<PotentialUser-59>I thought there would be a service or something.
<PotentialUser-59>I was expecting stronger Emacs integration within Guix.
<untrusem>PotentialUser-59: there is a home-emacs service, I suppose
<untrusem> https://issues.guix.gnu.org/58652
<untrusem>I use guix to manage my emacs packages
<untrusem>my bad i checked the manual we don't have a home service for emacs
<identity>there is one in other channels, though
<untrusem>aah maybe I saw that before and remembered it as official 😅
<untrusem>PotentialUser-59: you can search on toys.whereis.social
<PotentialUser-59>untrusem: A service is not a  necessity for me. I'd just like to know what is the recommended method to manage Emacs in Guix System, if not via services?
<PotentialUser-59>How do you manage Emacs with Guix? Is it via a third-party channel?
<PotentialUser-59>nvm, ignore the last question. I re-read it and realize that you only manage emacs packages wit Guix, not Emacs itself.
<Rutherther>PotentialUser-59: what would you like to manage with guix? Like writing configuration with guix? I think there is a third party channel for that, from system crafters
<identity>PotentialUser-59: i get the emacs packages (including emacs itself) with guix and then use home-xdg-configuration-files-service-type to put my init.el in place
<mange>PotentialUser-59: Similarly, I install emacs and the emacs-* packages I want in my profile, then I define a service extension to run "emacs --fg-daemon" as a Shepherd service.
<PotentialUser-59>Apparently, the official Toys repository (https://git.sr.ht/~whereiseveryone/guixrus/) has a `home-emacs-service-type`
<jakef>does copy-recursively copy the contents of the directory or the directory too?
<mange>I believe it copies the directory and all of its contents. I expect that (copy-recursively "a" "b") will create "b/a" and populate it.
<identity>jakef: the doc: "Copy SOURCE directory to DESTINATION. […]"
<ieure>You can also try it in the REPL. Or look at any of the existing packages that use it.
<identity>or, at the end of the day, look at what the source code does
<jakef>that's what i thought too mange but apparently not
<identity>i would expect it to work the same way "cp --recursive" would
<jakef>unless im holding it wrong, its just copied over the contents of "a" into "b", which is not what I would have thought from the docs
<mange>Huh. Okay, I must have misunderstood the source when I read it. Apologies!
<identity>that is how cp -r works
<untrusem>ieure, I believe you have written something on dbus and secret-keyring-service somewhere, I had seen that before
<untrusem>I want to setup dbus and keyring service, so that applications like fractal and gajim don't ask for password everytime
<ieure>untrusem, I was griping about element-desktop breaking.
<untrusem>I can't get a single matrix client to work
<ieure>untrusem, I got element-desktop to work, but it's super dumb, you have to tell it to use the gnome-libsecret on the CLI, then it saves that into its config and it works after.
<ieure>untrusem, This is all because upstream replaced the third-party secrets integration thing with one built-in to Electron, and the one in Electron is worse.
<ieure>untrusem, I was looking into how to make the keyring unlock on login, but haven't attempted anything, it seems like you have to screw around with PAM configurations.
<untrusem>have you tried nheko?
<ieure>No.
<ieure> https://linux.die.net/man/8/pam_keyring and https://wiki.gnome.org/Projects(2f)GnomeKeyring(2f)Pam.html both look helpful.
<untrusem>I didn't get dbus, keyring and all, its my first time diving into this stuff
<ieure>untrusem, I wrote some D-Bus sugar for Emacs Lisp, the project README has a D-Bus crash course: https://codeberg.org/emacs-weirdware/debase
<untrusem>I like the name ^o^
<untrusem>why are many apps dependent on this? is it because it makes things easy for them, or its a standard?
<dlowe>RPC between processes on unix that don't know about each other is just really painful without something like it
<dlowe>It may not be the best but it was the one that was adopted, like so many things
<untrusem>I see
<ieure>It's a bad implementation of a good idea.
<ieure>In Ye Olde Days, graphical utilities were often wrappers around the underlying CLI tooling, which meant you had a lot of reimplementation going on if you wanted a different kind of thing, because you had to solve problems like "how do I run this as root?" D-Bus is client-server, so you can have a privileged daemon and send it requests to do stuff for you, like mount/unmount disks, connect networks, etc.
<untrusem>aah
<untrusem>I am quite fascinated by https://arcan-fe.com/
<ieure>You also don't have to do stuff like parse command output (which is prone to breakage when the program changes) or build machine-readable output modes into everything.
<dlowe>Sure, but it's also got pubsub and an object format
<ieure>Yes, that also.
<dlowe>So you can subscribe to screensaver status changes without having to know the exact screensaver status change protocol
<dlowe>it's not nothing
<ieure>Nope. It's nice when it works, but can be a pain to debug.
<ieure>untrusem, d-spy (formerly d-feet, I liked the old name better) is a good tool for exploring d-bus on your system.
<untrusem>thanks
<PotentialUser-59>what does `maybe-file-like` mean?
<futurile-afk>PotentialUser-59: this one I think - https://codeberg.org/guix/guix/src/branch/master/gnu/system.scm#L1221
<identity>PotentialUser-59: pretty sure it is either a file-like or #false
<jaadu>How can I figure out what package a symbol exposes? In this case I am looking for package->manifest-entry
<jaadu>What package contains package->manifest-entry ?
<ieure>jaadu, Are you asking what Guile module the `package->manifest-entry' procedure is defined in?
<jaadu>Its easier to make me understood if I phrase correctly.
<jaadu>ieure: Yes
<ieure>jaadu, `grep -r define.*package->manifest-entry' in your Guix checkout. All Guix systems have the channel checked out under ~/.cache/guix/checkouts.
<ieure>"guix system" here meaning "any system running Guix including as a foreign package manager", not "Guix System."
<ieure>Speaking of phrasing things correctly.
<jaadu>ieure: Thanks, I found it.
<PotentialUser-59> https://bpa.st/VTBR34ZVZB63G2BO5SLFEBI3TM
<PotentialUser-59>I don't know why it is producing an error
<PotentialUser-59>(terminal output included in pastebin)
<ieure>PotentialUser-59, "no code for module (guixrus home services emacs)" means Guile couldn't find that module on its load-path.
<PotentialUser-59>ieure: How can I fix that?
<PotentialUser-59>I've been importing modules the same way before, and it never errored out before
<PotentialUser-59>It's also a valid module: https://git.sr.ht/~whereiseveryone/guixrus/tree/master/item/guixrus/home/services/emacs.scm#L19
<ieure>PotentialUser-59, Does guixrus show up in the output of `guix describe'?
<PotentialUser-59>ieure: nvm I figured out the problem, I put `$` instead of `%` in a specific place
<PotentialUser-59>so I wasn't even using the repo
<PotentialUser-59>-_-
<PotentialUser-59>should I be managing packages in a manifest file, or in my Guix Home file?
<ieure>PotentialUser-59, Whatever you prefer.
<identity>PotentialUser-59: if you already use a file to manage your packages, you might as well use guix home
<PotentialUser-59>I tried using `(file (string-append (dirname (current-filename)) "/../../files/emacs/init.el"))` to specify a relative path to my Guix Home configuration
<PotentialUser-59>but it failed
<PotentialUser-59>for some reason, `(current-filename)` returns `#f`
<PotentialUser-59>how am I supposed to specify relative file paths?
<identity>PotentialUser-59: (local-file "/../../files/emacs/init.el") ?
<PotentialUser-59>identity: ...wait, it was that easy!?
<PotentialUser-59>I couldn't find anything on that
<ieure>Aahhhhh, kind of
<PotentialUser-59>ieure "Kind of"?
<identity>i guess leave off the first /
<ieure>PotentialUser-59, The path is relative to the $PWD of where you run the command, not relative to the file it's in.
<PotentialUser-59>ieure: That;s specifically what I want to avoid though
<PotentialUser-59>*that's
<identity>PotentialUser-59: it is in the manual under (info "(guix) G-Expressions") and sprinkled in the examples across the manual
<ieure>PotentialUser-59, Only option is to use an absolute path or inline the stuff into the config. I don't like either.
<identity>"it is looked up relative to the source file where it appears"
<ieure>Okay, try it and see if it works I guess.
<PotentialUser-59>ieure: It doesn't seem like it in the docs though?
<PotentialUser-59>> Return an object representing local file FILE to add to the store;
<PotentialUser-59>     this object can be used in a gexp.  If FILE is a literal string
<PotentialUser-59>     denoting a relative file name, it is looked up relative to the
<PotentialUser-59>     source file where it appears; if FILE is not a literal string, it
<PotentialUser-59>     is looked up relative to the current working directory at run time.
<PotentialUser-59>     FILE will be added to the store under NAME–by default the base name
<ieure>PotentialUser-59, Use a pastebin or link the doc.
<PotentialUser-59> https://guix.gnu.org/manual/en/html_node/G_002dExpressions.html
<hako>PotentialUser-59: literal strings are resolved relative to the source directory, otherwise relative to the current directory.
<PotentialUser-59>hako: yea, I understood that from the documentation
<PotentialUser-59>btw you're the one who inspired me to try out Guix System ^_^
<PotentialUser-59>with your recent reddit post
<hako>:)
<postroutine>Hello. I'm still very new to Guix System and I would like to check if I have understand correctly the command `guix system reconfigure`.
<postroutine>When I run `guix system reconfigure config.scm`, it create a new generation of an operating system, based on the configuration set in `config.scm` ?
<postroutine>If I run the command with the same `config.scm`that the previous one, but a new version of the channel(s), I will obtain a new system, with same config but new package on the system. But, if I run the command with the same channel(s) version as the previous one but a new config, I will get a new system with a new config but same package on the system. Is it correct ?
<identity>postroutine: correct, you should get a new, (almost?) identical generation if you do that
<identity>sorry, i misread
<identity>if you change the config, then you get a new system, possibly with new packages (if you changed them)
<postroutine>By "new packages", I would mean new version of the packages listed in the `config.scm`. Sorry, I badly explained myself.
<postroutine>Example:
<postroutine>- I have a `config.scm` that list Prosody package and enable 2 system services: openssh and prosody
<postroutine>- I do a first `guix system reconfigure config.scm`
<postroutine>It create a new generation of the operating system, that include all the base packages and Prosody package at version X with the 2 system services configured as they are in the `config.scm`.
<postroutine>Then, the Prosody package on the channel is defined for a new version. Let say version Y.
<identity>guix pull updates the package definitions (in other words, new software versions) used with the next guix system build, while guix system build with a new config may only fetch more packages already defined in the channels (in other words, no new software updates, more packages on the system)
<untrusem>postroutine: You don't have to list the version of packaging in the config.scm. It should auto update those packages if there are new versions available.
<untrusem> https://codeberg.org/Bechamel_Guix/collective/wiki/Guix-Newcomer-FAQ
<untrusem>you can also read this
<postroutine>> postroutine: You don't have to list the version of packaging in the config.scm. It should auto update those packages if there are new versions available.
<postroutine>I do not specify the version in the config.scm.
<postroutine>> guix pull updates the package definitions (in other words, new software versions) used with the next guix system build, while guix system build with a new config may only fetch more packages already defined in the channels (in other words, no new software updates, more packages on the system)
<postroutine>Ok, it's what I have understand. Thank you very much.
<untrusem>postroutine: are you using xmpp?
<untrusem>Because it looks like you are replying to the messages.
<postroutine>I was a bit confused because of the `reconfigure` in the command. It's more a "renew" or a "rebuild".
<postroutine>> postroutine: are you using xmpp?
<postroutine>Yes, I use a gateway. Is it cause a quote problem on the IRC side ?
<identity>it looks like "> postroutine: are you using xmpp? <NL> Yes, I use a gateway. Is it cause a quote problem on the IRC side ?", where <NL> is the separator between the two messages
<untrusem>The replies are not rendered correctly in the IRC side as it doesn't support it 😛, I am using irc from Xmpp too :)
<postroutine>Ha, it's maybe a bug on Biboumi gateway.
<identity>try to just mention the person you are replying to directly, and only quote parts of the message if necessary
<postroutine>Ok, I will do. Sorry for the problem it caused.
<postroutine>untrusem, thank you for the FAQ, I learn a few things.
<postroutine>On the FAQ, in the section "How do I update the system?" it say to run `guix pull` then `guix upgrade`. But isn't it only to update the package installed on user side ?
<identity>yes, that should only upgrade packages installed with guix install
<untrusem>postroutine: https://merveilles.town/@untrusem/114725934080708062
<untrusem>my this post might clear things a bi t
<postroutine>I'm not sure to understand it.
<postroutine>untrusem, from what I understand from the post: Guix Home install it's package on a profile separated from the user. Same for Guix System. Is it correct ?
<untrusem>so basically if you want to do anything with your whole system, you do `guix system <commands>` if you don't add system there, it will be the current user
<postroutine>Ok
<untrusem>and if you do `guix home` it will be for your home environment
<untrusem>check the cookbook link i mentioned in the post
<untrusem>on profiles
<postroutine>One day, I would love to contribute to Guix. But I think I first need to understand it more (and also get my diploma work)
<postroutine>I mean, finish my diploma work.
<untrusem>all the best to you, I am also a noob 😁
<identity>postroutine: ‘guix system’ uses the system-wide profile, ‘guix package’ (some commands like ‘guix install’ are just aliases for ‘guix package’ commands) uses the user's ~/.guix-profile and ‘guix home’ uses the user's ~/.guix-home profile
<identity>‘guix home’ is more similar to ‘guix system’ in the way it manages packages than to ‘guix package’