IRC channel logs
2026-03-15.log
back to list of logs
<ekaitz>rovanion: change one char of the hash and try again <rovanion>Right, the text in the version field straight up has no bearing on whatever source code is fetched and packaged under that version number. Makes sense now that I've wrapped my head around it. <nomike>I seem to not fully understand the convention behind commit comments. I was told on a PR I recently opened that the changelog "is used to explain what, not why.". Isn't that redundant? I can just do a `git describe` and see what has changed, better than any description could do. But if the comment only shows the *what*, where do I write down *why* something has changed? <nomike>After all the *why* is much more interesting as in most cases I can not simply derive this from the diff. <ieure>nomike, You do both, the why is prose after the subject, but before the modified file list. <ieure>I personally do not agree with this, I agree with you that the why is the actual important thing. <nomike>Okay. I understand this a bit better. However, the documentation you just linked, states that the *why* should be put in comments in the code. That sounds very weird and wrong to me. Especially when you remove code. How is that supposed to work? But I guess that's am aspect the Guix project not took over. <nomike>What ended my confusion is that bit that it's okay to explain the *why* in prosa on the beginning of the commit-comment. That makes more sense. <nomike>The line-length limit is also a bit weird nowadays as it often leads to text/code being less-readable, while I assume it originally wanted to achieve exactly the opposite. <nomike>But with today's IDEs, with side-panels and stuff, when you have e.g. a 80 column limit and the side-panel is only 70 columns wide (and perhaps uses a proportional font), things tend to get quite messy. <nomike>ieure, thanks anyway for the link and the explanation. <ieure>nomike, Sure thing. I also agree on the line limit, like... I understand why it's a thing, and I even have a VT220 sitting on my coffee table right now. But it's not the best in some situations. <ieure>Like when I have a long URL and have to split it up and use string-append to piece it back together again. Not my favorite. <scholastic>Hi guix. I'm trying to use simplescreenrecorder to record my screen with audio, but for some reason when I do that in mednafen, the video got no output. Any ideias? <identity>scholastic: you mean a black screen? i would guess it is a GPU acceleration thing, like if you have GPU acceleration enabled in a browser, when you play a video and then try to record the screen you get a black box where the video would be <identity>try disabling GPU acceleration for mednafen (somehow), that might fix it <scholastic>for example, I record my gameplay on emulator, I can see the screen and gameplay well, but no sound <identity>if it is audio, not sure; double check your audio settings <identity>i would guess Guix is not the issue here if you can hear the sound when playing <scholastic>I just need to specify the output channel output <bjc>so it turns out guix is using settrans under the hood, but for some reason ‘showtrans /servers/socket/2’ doesn't show anything <dckc>help me find docs on using lvm2, please? I have guix installed on an SSD with no LVM, but the system also has an lvm VG on an nvme disk, and I'd like it to mount at boot <dckc>I added a bunch of filesystems, but that caused the thing to fail to boot <dckc>I'm missing the `vgchange -ay` or something <dckc>I think I puzzled out the mapped-devices stuff. reconfiguring now. wish me luck. <dckc>how often do folks `guix pull`? <pomel0>hi everyone, is there someone here who knows how to use agetty on guix? <pomel0>I'm trying to get a serial terminal working on my laptop but I'm having 0 luck with it <pomel0>agetty kinda works. It's just that after it asks for my username it hangs, doesn't even show the password prompt <dckc>is this important? building /gnu/store/lygczfzp2kmkxh6rs316yddhx0qdz0hf-upgrade-shepherd-services.scm.drv... <dckc>guix system: warning: exception caught while executing 'eval' on service 'root': <dckc>error: service: unbound variable <untrusem>before reconfiguring its good to first "build" <dckc>ugh. now sudo is failing with pam_open_session: Module is unknown <pomel0>untrusem: greetd doesn't seem suitable for starting sessions on a serial terminal, or otherwise I couldn't see how to point greetd to /dev/ttyUSB0 <doojin>I wish there was a guix discourse board. The mailing lists have bad UX. <doojin>Discourse, zulipchat, and slack are better than mailing lists. <doojin>The problem is that I sent an email to help-guix@gnu.org days ago, and the email hasn't appeared on the list. <untrusem>doojin: the first mail needs to be approved from maintainers <untrusem>guix is currently testing zulip with contributors <doojin>Damn. I sent two emails already. <doojin>Two emails with similar contents. <doojin>I suppose it is self-hosted zulipchat because the cloud pricing is expensive. <doojin>Is it feasible for a casual guix user to create a guix source package for a nodejs application? <doojin>I started learning gnu guile. After learning gnu guile, I will learn gnu guix. <doojin>In the worst case scenario, I can make guix packages for pre-built binaries, but I prefer source packages. <doojin>I'm looking to migrate from gentoo linux because gentoo linux package system is complex and fragile. <doojin>USE flags, stable/unstable versions, and non-deterministic build graphs lead to unpredictable build outcomes. <doojin>Gnu guix seems simple and reliable. <adanska>can i specify the source of a package as the build output of another package? I'm trying to create a wrapper to clone a kernel package so I can use some gexp transformations before it gets ingested by an operating-system record <Rutherther>adanska: you will need to keep the source as is. But you replace the phases with copying out of the package you want <Rutherther>adanska: the source is important because unfortunately the linux-module build system used for building linux modules will be using it to execute "make modules_prepare" <adanska>Rutherther, right. that makes sense, I was only wondering if there was a more elegant solution. <adanska>Rutherther, I see. Thanks for the pointer. I think I will be able to get this thing to work! <Rutherther>adanska: no, source is really meant just for source. Putting packages to source is not well supported, it's not even a thunked field. Plus there is this need for keeping the source due to the linux-modules <coopi>so i ended up finding the problem <coopi>turns out I'd converted `use-modules' to `define-module' but forgot to export `main' <yarl>why (string-append "R:" url) in (guix git) url-cache-directory? <Rutherther>yarl: you need to distinguish cache for recursive clones and non recursive clones, you need something to change the hash <Rutherther>yarl: it could be anything appended... there is no particular reason to choose R: specifically other than it just made sense at the time writing it <Rutherther>the same approach is taken with shell --no-grafts or time-machine --disable-authentication <adanska>Rutherther, it appears i cant use the `with-parameters`-ised package as a package i can inherit from. I get a completely nebulous error. Do you have any ideas how I could get around this? https://pastebin.com/wUkRwvZc <Rutherther>adanska: that is correct. Why are you inheriting it? You can inherit records of the same type, with-parameters does not return a package.. <Rutherther>adanska: it expects to unpack the linux source, replace build phase and install phase. You need to respect that. This pakage will always be compiled natively, it's not in your control, but it should be quite fast I believe. <Rutherther>the only way to make it in your control would be by pointing guix channel to your own fork <Rutherther>I would probably replace build phase with a no-op const and install with the copy as you now do in build phase, but the other way round is also fine <adanska>Rutherther, oh, right. I wanted to inherit because I wanted to create a function that returned a clone of a package it was given. Thanks for the module-builder pointer, I would have completely missed that. <Rutherther>I think in the long run guix should support this in a better way <Rutherther>I have been trying to do some changes yesterday, but dealing with this module package is going to be tough as with inferior packages there is no source you can build I think <adanska>i agree, i think this should be supported in a better way... combining cross-build and native artefacts is something you can do on real systems and has real use cases <Rutherther>you should be able to do that with most services even now <adanska>currently building... lets see how this goes <Rutherther>are you sure it's building as your native architecture? <Rutherther>I am surprised you do not have to 'reset' the %current-system to your native architecture <Rutherther>if you're using --system=aarch64-linux, I would expect this to be doing sort of a cross build from aarch64-linux to aarch64-linux-gnu <adanska>im not using a --system flag at all. and I think it's working, as im getting the `set-environment` phase showing its setting cross-build... <adanska>i do have offloading set up but the overhead is too bad. the whole point of this exercise is to eliminate the need for doing that <Rutherther>yeah, without --system flag it will make kernel for aarch64, but everything else will end up for your native architecture <adanska>Rutherther, if i set %current-system to x86_64 as well, then use the --system=aarch64-linux flag, would that perhaps work... i'm going to give it a try now but it seems like its properly cross-compiling the kernel... <adanska>Cool! Im excited to see if this works <distrofrog>Also is my APU likely to have problems with lack of drivers or is that only a dedicated GPU thing (Ryzen AI MAX 385) <distrofrog>I use ethernet so other than these two concerns I am looking to install GuixOS or if it doesn't fit my needs I will look into Parabola next but I am interested in Guix more <Rutherther>sure you can use flatpak, it's packaged and working. There is no service in the main Guix channel, so you might have to tackle some env vars yourself so that flatpak installed packages end up in your PATH and XDG_DATA_DIRS <Rutherther>not lack of drivers, lack of firmware, Linux Libre does not support loading firmware blobs. I haven't checked, but I expect your GPU needs it <distrofrog>What sort of issues would I face, would I just have lower performance for GPU tasks or would I not be able to run a DE at all, sorry for the noob questions <distrofrog>Well I'm just going to install it and see what happens, thanks for the help <distrofrog>what does no code for module error mean and how can I fix it <czan>It means there's no code for a module. :) I think it usually means either (a) you've tried to use a module that doesn't exist, or (b) you've tried to use a module that failed to load for some reason (there should be an earlier error message in this case). <czan>Can you tell us anything about how you've run into this error? <distrofrog>I added a channel did Guix pull then added a new use modules () with two things in it and then tried system reconfigure (sorry for bad typing I’m on phone since no web browser on pc and kde is not working properly) <Rutherther>does "guix describe" show you the channels you expect to see - the ones you pulled? <distrofrog>Yes it shows the channel I added and Guix pull took a while <Guest35>Anyone use Anki here? How did you set it up the manual installer doesn't seem to work and it's not in the repos, I am currently installing it using flatpak haven't tested it yet its still downloading but Discover (KDE app store) doesn't work it used to crash if I clicked add flathub but now it doesn't crash but I can't use it normally but on the <Guest35>command line I'm installing anki from flathub right now <Guest35>Also I've been using guix install, thats totally wrong right I should be editing /etc/config.scm instead right and then system reconfigure? <Guest35>Also installing it this way from flathub means I have to open a terminal and type flatpak run net.ankiweb.Anki, theres no shortcut in start menu or on desktop <futurile>Guest35: using `guix package` install like that means you're installing all apps into your user's profile. It's fine in the short-term. But as you progress you should use Guix Home or use manifests to keep a list of apps to install <futurile>Guest35: you probably only want to keep a few "system wide" packages in your system config.scm. Then have all your user apps listed in Guix Home or in manifests. But, you can take it step by step <Guest35>Whats the equivalent of adding it in configuration.nix is there a way to do that <identity>you probably need to tell us more about what «adding it in configuration.nix» means <Guest35>I think configuration.nix is the equivalent of config.scm however it had like two ways to add packages one that was user specific and the other one was where I would just list every program I wanted but I think if I made another user they could also access it, either way is fine the reason I liked it was being able to do a fresh install, replace <Guest35>the file and run one command and all my programs would be downloaded and other preferences set automatically <apteryx>needs a simple bump of blueprint-compiler to 0.20 <apteryx>ah, there's a patch to avoid a python 3.12 specific syntax too. I guess I should upload a WIP <noe>I can take a look if you upload a WIP <yelninei>hmm my dmd currently crashes while passing structs to/from c/c++ <redacted>ieure, you set up an Ungoogled Chromium updates branch in CI so I could work on getting that package updated, but I neglected to ask how to use it. <redacted>What triggers a CI build on that branch? <identity>like, if the root of the branch is on a commit that is built by CI, CI should evaluate the branch next, or at least that is my understanding <redacted>That would have been my guess, but it seems unlikely I have the permissions to push to the guix repo. <identity>somebody could push your PR to the branch, then <avigatori>can anyone give me a rundown what guix weather does internally? Yesterday it took 50min for me to run. So I am just wondering if it's computing something difficult or what else it might be <identity>avigatori: are you running it without arguments? <identity>because (i think) that would mean it is manually checking whether every package is available <noe>50 minutes is crazy 😭😭 <identity>if you are interested in one or two packages, just pass their specs as arguments, e.g. ‹guix weather emacs-next-pgtk gnome@48› <avigatori>what does checking if the package is available involve? <identity>probably just looking if a substitute is available, like what it does when you download it but without the *actually downloading* part <Rutherther>avigatori: what computation did take a long time exactly? <Rutherther>some substitute servers can be slower than others <avigatori>Rutherther: I am not 100% sure, but I think it was the "computing derivations" step <Rutherther>avigatori: okay, that step takes 5 mins for me, but it can be different based on the computer hw. Do you have /gnu/store on HDD or SSD? <Rutherther>you can see that CI sometimes evaluates world rebuilds for hours. Though it needs to be noted that it commonly computes derivations for multiple architectures <avigatori>ah, yeah I have some issues with random access writes with my hdd <Rutherther>it could be as simple as that, the computation of derivations needs to write and read drv files in your store <cbaines>computing derivations can be expensive, and populating the local narinfo cache can also be very expensive <avigatori>is the architecture behind all this documented in the manual or should I read the thesis for that? <noob93>(packages (append (list ungoogled-chromium-wayland flatpak kdenlive calibre kdevelop git mpv kate krita qbittorrent keepassxc) %base-packages)) I tried adding this line in config.scm but when I try to system reconfigure it says error ungoogled-chromium-wayland: unbound variable hint: did you forget a use-modules form? What am I doing wrong <identity>noob93: did you import (gnu packages chromium)? <noob93>no I didn't but at the top I do have (use-modules (gnu) () () (gnu packages linux)) the last one I made up to try something idk if its correct or not <avigatori>noob93: when you search for a package with e.g. `guix search ungoogled-chromium` the entry "location" tells you which package you need to import. So in this case it says "location: gnu/packages/chromium.scm:1014:2" which means you need to import "(gnu packages chromium)" then you can refer to "ungoogled-chromium-wayland" <identity>noob93: do you actually have the () () imports? <noob93>yes there is text inside () () i just censored it <Rutherther>cbaines: guix weather with ci as substitute took 4m42s for me. with bordeaux it's 21m8s <identity>noob93: you can use ‹…› to omit irrelevant stuff like (use-modules (gnu) … (gnu packages linux)) to make it clearer <Rutherther>cbaines: is it because of the local cache that it's not suitable? <cbaines>Rutherther, mostly, especially given that the local caching is generally more expensive than the narinfo requests (at least when I've experimented in removing it) <noob93>guix install torbrowser, does it work on your machines? Not working for me, and the build log ends in .drv.gz how can i read it <cbaines>I don't know if the package and its dependants build <noob93>tor browser portable version doesn't work either <podiki>anyone seeing recently: In procedure load-thunk-from-memory: incompatible bytecode version <podiki>i get for every guix module, even after clearing cache and doing a new bootstrap/configure/make <cbaines>podiki, maybe you have a stale ./guile <podiki>stale where? (this is in a pure shell) <futurile>noob93: are you running it inside a `guix shell`? You generally can't run anything that's been precompiled for a standard linux distribution because Guix doesn't have the libraries where they're expected to be. You can read the manual for guix shell --emulate-fhs <noob93>thanks, I was just trying to run it normally <futurile>noob93: if you need to use software from other distributions, I would look at some of the other Guix channels and/or using flatpak - if it's just one thing, then running it in a `guix shell` may work. <cbaines>podiki, ./guile as in the guile binary in the root of your Guix repository checkout <podiki>cbaines: interesting, didn't realize there was one there <podiki>where does that come from? i would have thought bootstrap/etc. process would make sure it is current <podiki>futurile: nice guide! (shouldn't need that gcc:lib workaround anymore, thankfully) <cbaines>podiki, the Makefile creates it I believe <podiki>ah, a "make clean" needed, not just a "make clean-go" <futurile>podiki: thanks, I should go back and clean it up <futurile>podiki: it wasn't that far after you'd added the feature I think <podiki>likewise the original blogpost, not sure how we handle updates there <podiki>yeah the gcc:lib thing being an issue happened soon-ish after the original emulate-fhs (or i guess the core-updates after?) and took a while to rectify <stfnbms>I just updated my Guix installation (both system and user), which pulled in GNOME 48. <stfnbms>Now I cannot log into EXWM from the GDM login manager any more. After entering my password, I am right back to the login screen, without any indication of Emacs or EXWM loading. <noe>stfnbms, can you send the logs in /var/log/gdm <stfnbms>I have previously seen that whem my system and user packages did not match, but in this case they do, to the problem must be something else. <identity>stfnbms: that would mean GDM has failed to start the session; look for an error in– <stfnbms>noe, I now rolled back, so have one successful login. Digging through the lolder GDM logs for the previous failed login attempt, what am I looking for? <noe>I don’t have any more specific ideas 😛 <noe>I would start from the bottom <stfnbms>libmutter-Message: 16:47:31.495: Running GNOME Shell (using mutter 48.7) as a Wayland display server <stfnbms>I need X for EXWM, though. Has the X option been removed from GNOME 48? <stfnbms>Ah yes, after rollback it still says: <stfnbms>libmutter-Message: 17:00:51.622: Running GNOME Shell (using mutter 46.9) as a Wayland display server <stfnbms>Apparently it says that even when launching an X session. <ieure>stfnbms, EXWM errors will be in .local/share/xorg/Xorg.0.log, should tell you why your session isn't launching. <stfnbms>ieure: Thank you. I think those log files got overwritten by the last, successful attempt. Will have to roll forward, then try to log in again, to get the relevant messages. <bjc>any hurd people here? i'm trying to build gcc-toolchain, and gcc is failing because it can't find the build system header dir <bjc>i assume i'm missing a package (it ain't hurd headers), but i would have also assumed that package would be in ‘gcc-toolchain’ <yelninei>bjc: with guix or manually? cross compiler or native? <bjc>yelninei: using an os image w/ guix system image --image-type=hurd64-qcow2 <bjc>i can try it on the childhurd w/ -s <yelninei>bjc: i think that will cross compile a native compiler, that might not be well supported <bjc>i'll let you know how it builds under qemu, i guess <yelninei>i have doubts that the full system image will build in the childhurd because of some dependencies <bjc>no, i'm building gcc-toolchain only w/ -s <bjc>if i can get it built then i can add it to the os definition, since it'll be in my store at that point <yelninei>that should work, but will require some workarounds to convince guix to not attempt to cross compile the gcc <Rutherther>I think it could be just matter of inheriting that image and setting platform to #f <Ribby>Does guix have cryptdisks_start? <dckc>`docker-compose up` throws docker.errors.DockerException: Error while fetching server API version: Not supported URL scheme http+docker <dckc>does anybody else here use docker-compose on guix? <dckc>guix compose produced an (oci-extension ...) form. hm. what to do with that? <dckc>the coupling seems odd somehow <dckc>has anybody organized their config.scm using services.d/service1.scm etc.? <dckc>docker --version says 20.10.27. it seems that version reached end-of-life Dec 2023. hm.