IRC channel logs

2025-05-24.log

back to list of logs

<alexdarc`>Hi, I would like to be able to update emacs-dash to latest GNU (for denote-explore). What is the current process ? A PR on codeberg ? :)
<identity>alexdarc`: yes. if you prefer, the email workflow it is still available (until december 31)
<identity>(or, wait, are PRs on codeberg not open yet?)
<alexdarc`>identity: thanks. There were no PR opened yet
<alexdarc`>I can beta test if needed :)
<ruther>migration of guix repo is tomorrow, there will be PRs afterwards
<ekaitz>ACTION crosses fingers
<alexdarc`>Right, got the dates confused
<alexdarc`>Eager to see it on codeberg, the email workflow was a bit frightening for me
<gargaml>Hi! I'm a new guix user :) I use the nonguix version of the linux kernel to make my wifi card useful. Unfortunately, I'm running into one major issue, my sound card doesn't appear as an output in pavucontrol. I tried an Ubuntu liveUSB to check whether this was also the case. Fortunately, it's working! The output of lspci -nnk tells me that the driver sof-audio-pci-intel-lnl is used. On guix, the same driver is used. Ubuntu uses kernel
<gargaml>version 6.10.4 but guix uses 6.14.6. Apart from the nonguix part my system is not too far from the default installation. Do you know if I missed something somewhere? I'm going to paste my config.scm and the system description.
<gargaml> https://paste.debian.net/1376346/ (config.scm)
<gargaml> https://paste.debian.net/1376347/
<gargaml>My first goal would be to run (kernel linux) by specifying version 6.12.28 in my config.scm but I don't know how to do this yet.
<cbaines>gargaml, since this is probably non-free software/nonguix related, you're better off asking in #nonguix
<gargaml>oh didn't know about this one, thanks!
<ekaitz>efraim: https://old.reddit.com/r/rust/comments/1ktph3c/media_the_gcc_compiler_backend_can_now_fully/ have you seen it?
<ekaitz>hako: ^^ and you? did you see that?
<hako>not yet, that's exciting!
<ekaitz>it is!
<gabber>what's the best build system for copying a couple of files out of a repository and patching the shebangs of one of these?
<gabber>copy-build-system? it's about a Python script (and a text file the script needs).
<ekaitz>copy-build-system is cool, but make sure it does the patch shebang phase
<gabber>as it turns out, this happens by default already \o/
<ekaitz>gabber: it does have it
<ekaitz>gabber: it's not that it is default, copy is inheriting from the gnu-build-system, that has a phase that does that
<getstate>how do I get guix to check the sourcefile hash when building something?
<getstate>It just assumes it's correct when I run 'guix build'
<ieure>getstate, Guix can never build anything which doesn't match the provided hash.
<getstate>ieure: Idk if I'm doing something wrong. I just inherited a package and updated the version, and it built. Only after I ran guix gc, and rebuild, did it fail. So I edited it in to the definition.
<getstate>edited the new hash in*
<ieure>getstate, The old source tarball is cached, and since the hash didn't update, that got used instead of your source tarball.
<ieure>So it built the old version.
<ieure>There's no way to change this behavior, really, since it's the fallback to keep packages building if the upstream is down or vanishes.
<ruther>getstate: it is usually better to change the file-name of origin to git-file-name so that this cannot happen on mistake
<ieure>Yeah, if it's a Git repo, that should help. `guix download https://...' will give you the new hash; or `guix refresh -u' will update the version and hash for you in many cases.
<ruther>if it isn't a repo, I wouldn't expect this as the name is taken from the url and it differs with version
<ieure>ruther, You get this behavior if the update URL 404s.
<ieure>ex. the version is wrong, or they changed the format, switched from .tar.gz to .tar.xz, stuff like that.
<ieure>It's in the build output when that happens, but is easy to miss.
<ruther>that could happen if it is downloaded from software heritage, that is true
<ieure>getstate, Can you share the package definition?
<ieure>Using a pastebin
<getstate>Sure!
<getstate> https://pastebin.com/newB8vcs
<ieure>Which one did you update?
<getstate>neovim is the one that fails
<getstate>but the other two are dependencies
<ieure>Agree with ruther, you should add git-file-name to its origin. tree-sitter also.
<ieure>Try adding that and see if the build fails.
<getstate>I can confirm adding git-file-name did cause it to fail
<getstate>thanks a lot!
<ieure>Sure thing.
<pastor>Hello. I have a patch for `guix pull' ready. Should I wait for the Codeberg migration before submitting it?
<ruther>pastor: the debbugs patches should still be accepted till Dec 31, so I see no reason why you 'should wait'
<pastor>I would not want it to be forgotten because is not using the new shiny toy :')
<identity>pastor: you could just resubmit it
<pastor>identity: you are right. I will submit it now then
<luca>Hi, does anyone know if it's possible to set up auto login when using greetd? It doesn't seem like guix can set up `initial_session`, neither through guile nor through any "extra config" type of parameter
<Lord_Devi>How do I list installed packages on my Guix distro? 'guix package --list-installed' seems to only want to list packages that I have installed with 'guix package install'. But what about packages installed as a part of the base system? How do I list those?
<ruther>Lord_Devi: guix system describe --list-installed
<Lord_Devi>Thank you ruther. So 'guix package' is for user profiles, while 'guix system' is for the system profile.
<identity>Lord_Devi: for slightly different information you could also look at the %base-packages variable, or at the output of guix size $(guix system build config.scm)
<Lord_Devi>Is there a way to track which packages in the 'list-installed' output are provided by what channel?
<ruther>Lord_Devi: guix package is not just for user profiles, it is for any profiles, the user profile happens to be the default. You could list installed packages with `uix package -p /var/guix/profiles/system/profile --list-installed`, but guix system is easier as you don't have to type the path
<Lord_Devi>Oh ok
<ruther>note that in both cases it is just the profile, so packages used by services not in the profile are missing
<Lord_Devi>The thing is, I am trying to learn channels, and am trying to understand how to know if a package is from the default guix channel, or from 'other' channels.
<ruther>Lord_Devi: the only place such information could be is in the manifest file of the profile. But you will find it there only for user profile, not for system profi
<Lord_Devi>Ok. Yeah that's what i saw in a reddit post. Check for the manifest. But I don't see any profiles under /var/guix/profiles that actually has a manifest file at all. System or user. Might be because I have not installed any packages with 'guix package install' yet though. Just whatever the config.scm provided on install.
<Lord_Devi>Thanks again Ruther.
<ruther>Lord_Devi: you don't have /var/guix/profiles/system/profile/manifest file?
<Lord_Devi>Odd thing I notice is that when I use 'guix system describe --list-installed', I see the installed packages, but there seems to be no kernel package.
<ruther>Lord_Devi: yes, as I said, only packages in the profile are shown, kernel is not installed in the profile
<Lord_Devi>OH!! I was checking for /var/guix/profiles/system/manifest, not /var/guix/profiles/system/profile/manifest. I see it now. Gotcha.
<Lord_Devi>So the manifest for the system profile won't contain the kernel as an entry then..
<ruther>Lord_Devi: although /var/guix/profile/system is under 'profile' folder, this folder is not really a profile
<ruther>Lord_Devi: correct, it won't
<Lord_Devi>Where can I see what kernel's are installed in that case?
<ruther>Lord_Devi: the kernel is symlinked as 'kernel' file in the system (/var/guix/profiles/system) folder. That's all info you can reach
<Lord_Devi>Ok I see that. Tyvm.
<guix-newbie>is there a tool to format scm files?
<ekaitz>guix-newbie: guix style
<guix-newbie>ah, so .scm is specific to guix?
<ekaitz>no no, i supposed you were working in guix
<ekaitz>for that you have guix style
<guix-newbie>`guix style` takes a package, not a file
<guix-newbie>yes, context is correct, i'm learning guix
<ekaitz>we had an emacs script for this before
<identity>guix-newbie: you can give it a file with -f
<guix-newbie>yes, that works, thanks
<identity>guix-newbie: it will probably not format anything apart from package definitions and home/system config files correctly.
<ekaitz>identity: oh! thanks! i didn't remember that
<ekaitz>it does format other things but i don't know if greatly
<guix-newbie>i had assumed that since .scm files are a bunch of parenthesis, that it would be easy to autoformat
<guix-newbie>s/sis/ses
<acrow>That's what emacs modes are for, reformatting.
<identity>guix-newbie: you can find a bunch of lisp formatters online
<ekaitz>guix-newbie: what editor are you using?
<guix-newbie>neovim :-)
<ekaitz>guix-newbie: i do use neovim too!
<guix-newbie>hey, another fellow minority in this minority.
<ekaitz>guix-newbie: in neovim you can g=G if you only need to indent, but you need to have the lisp style indentation active and also lispwords properly set
<guix-newbie>i assumed that this minority would be tiny since the neovim package is at 0.9
<identity>guix-newbie: check out (info "(guix) Alternative Setups") in the manual
<cow_2001>what was that one procedure used in guix phases to run programs? it is like system* but better in some way
<ekaitz>identity: guess who wrote that part? LOL
<ekaitz>cow_2001: invoke
<identity>cow_2001: it raises an error if the program exits with non-zero status
<guix-newbie>ok, i'll leave the formatting for now, it sounds like there are different ways of doing it and not one true guix way
<guix-newbie>i'm trying to leave nix and am used to nixfmt
<ekaitz>guix-newbie: the true guix way is guix style :)
<cow_2001>weird. it is not in the Info index
<cow_2001>thank you
<guix-newbie>but `guix style` is not fully determinate, or did i read that wrong?
<ekaitz>cow_2001: it's not documented, it only happens to appear in the docs... maybe someone should document it
<ekaitz>also guix-newbie if someone writes a guix plugin for neovim that formats with the style that guix uses... that would be awesome...
<ekaitz>guix-newbie: something like the .dir-locals.el that we have in the root folder but for nvim
<guix-newbie>so there is a documented way guix way to fmt .scm files?
<ekaitz>guix-newbie: give a try to guix style with --dry-run to see what it does
<ekaitz>files in guix should follow that
<ekaitz>btw is the .dir-locals.el equivalent to the .editorconfig? it looks like they are not coherent
<guix-newbie>$ guix style  --dry-run
<guix-newbie>nonguix/utils.scm:103:2: error: no definition location for package heroic-nvidia@2.16.0
<identity>guix-newbie: (info "(guix) Formatting Code")
<guix-newbie>(there's no nvidia on this device)
<identity>guix-newbie: try that with --whole-file or something. it tries to format all the packages it knows about
<guix-newbie>ACTION reads the info page
<cow_2001>ekaitz: opened guix.texi's build utilities node. where do i plonk the word about invoke?
<ekaitz>cow_2001: good question... where it feels good... do you have commit access? if not, send me the patch in cc or mention me in the PR in codeberg and i'll try to take a look
<cow_2001>ekaitz: no commit access :|
<cow_2001>cronenberg.org, where writhing masses of eldritch code branch merge and fork
<ekaitz>cow_2001: :) i'll commit for you
<cow_2001>first let me see what a procedure reference looks like so i can cargo cult my way into writing something sorta coherent
<Lord_Devi>When updating Guix, and my desire to actually use the new versions of updated packages, do I have to run 'guix system reconfigure' after doing a 'guix pull'? Or is 'guix pull' enough to update which packages are currently being used?
<identity>Lord_Devi: you need to guix {system,home} reconfigure and guix package --update, yes
<Lord_Devi>Ok. So if I am using guix home (which I will be, but am not yet), I need to essentially run all of these commands in order: 'guix pull', 'guix system reconfigure', 'guix home reconfigure', and 'guix package --update'?
<identity>Lord_Devi: you do not need to run guix package --update if you are not using guix package for your package management, it is also not necessary to run the commands after guix pull in a specific order
<cow_2001>oh wait, i see invoke in the guix.texi code. maybe mine is an old version?
<cow_2001>must be olde, even. 1.2.0 is old, right?
<Lord_Devi>Ok. So I haven't gotten as far as trying to setup my user environment yet. I was planning on learning and using/relying on guix-home. If I do that, and avoid using 'guix package install', then I don't need to worry about 'guix package update', as 'guix home reconfigure' will essentially handle that for me.
<Lord_Devi>Gotcha, thanks Identity
<identity>cow_2001: for me it is in the programming index and in (info "(guix) Build Utilities")
<guix-newbie>while reading documentation, i've found a grammar issue. Should I mail a patch somewhere or better wait a few days and do MR on codeberg?
<identity>Lord_Devi: actually the option is named --upgrade, fyi
<identity>guix-newbie: use whatever you prefer while you can :)
<identity>s/what/which/g
<guix-newbie>i do not know what I prefer yet because it'd be my first contribution (apart from irc chat), but since code contributions will go to codeberg which I already know, i'll wait
<identity>guix-newbie: then you should be able to do that, iirc, on the 25th (tomorrow)
<guix-newbie>It is my estimation that the grammar issue will not lead to a human-mediated security problem, so it can wait a day.
<cow_2001>how do i get the latest guix manual? i have a side installation of guix
<cow_2001>INFOPATH is /home/yuval/infopath:/home/yuval/.guix-profile/share/info:/usr/share/info:
<identity>cow_2001: try guix pull && guix package --upgrade
<cow_2001>no, there's no guix.info in ~/.guix-profile/share/info/
<getstate>Looks like the ncdu package is broken
<cow_2001>do i have to install the "guix" package or something?
<cow_2001>last time i did it resulted in some weird behaviour, i think
<vhns>has someone provided a simple (channel ...) definition for the guix repo now that it's on codeberg?