IRC channel logs
2025-09-04.log
back to list of logs
<gabber>FuncProgLinux: WDYM with `use inheritance for the "next" variation'? <gabber>first you need to craft the (updated) package definition. if you create a patch as a direct update for the perl package or a new package called perl-next only makes a difference in how fast that package definition will land on upstream guix' main repository <loquatdev>Hello, everyone. Has anybody here gotten wine-mono working on Guix? I have to run a certain Windows application and wine states that it requires mono. <FuncProgLinux>gabber: I meant something like (package (inherit perl) ...). guile-next does this :) but if others apart from me will benefit from this, should this be done as an entirely new package definition? <ieure>Not sure what the fix is, or why Guile is working the way it is. If anyone's compelled to opine, I'd love to hear it. <gabber>FuncProgLinux: ah, yes. this is the easiest way forward. your perl-next inherits from the current perl package and you only update the relevant parts. you only need to craft a completely new package definition if too many fields need overhauling and it is easier/cleaner as a new definition <gabber>> articulating the problem feels like a good start <FuncProgLinux>gabber: I just hope perl doesn't take ages like PHP to compile <gabber>or does it? `time guix build --no-substitutes perl` is quite fast but maybe that does not really rebuild the package? <gabber>it takes not too long (on my not too slow machine) <FuncProgLinux>gabber: I'm building v5.42.0 already, all it took was 20 lines of Guix Scheme :) <FuncProgLinux>No way: /gnu/store/2zdzzdmq7zb9la8id8km3afnymbsp0j7-perl-next-5.42.0.drv construido satisfactoriamente <FuncProgLinux>It's very sus that it was too easy... maybe I need to test it with a couple scripts first <apteryx>would someone have an idea why adding #:disallowed-reference *arguments* can cause top level cyclic dependency problems? The 'arguments' field being thunked, I didn't think this could happen. <FuncProgLinux>Can channels have "priority"? I think the latest merge on mate.scm undid some of my overrides which should have a "-1" revision appended, but to no avail :( <ieure>FuncProgLinux, No, there is no priority mechanism for channels. <ieure>What exactly is your problem? <FuncProgLinux>ieure: I want to test some env var changes I did to the mate-panel package, I had to do a derivation of the guix package to add my own inputs and test before upstreaming to Guix. But the latest update somehow overwrote those changes <FuncProgLinux>And now no matter how much updates i try to force into a particular package it's not getting installed in the profile :( <FuncProgLinux>I do find it weird because mate.scm (latest commit) has various dependencies as propagated inputs. I'm doing (inputs (modify-inputs (package-propagated-inputs mate) and replacing some of those like Atril where Guix has 1.28.0 I have 1.28.1 but it's not getting replaced but added twice: dependencies: at-spi2-core@2.52.0 atril@1.28.0 atril@1.28.1 <apteryx>if you didn't already, you might want to slap (goto-address-prog-mode) in your emacs config <apteryx>ouch: qtdeclarative-6.8.2-debug 842.1MiB <efraim>who do I ping about cuirass.genenetwork.org being down? <csantosb>Just curious about why it takes so much time to build emacs itself and all emacs-build-system packages <PotentialUser-57>I'm trying to understand how `dconf-service-type' works, but I can't get it <PotentialUser-44>Currently, I'm just trying to do the equivalent of `dconf write /org/gnome/desktop/interface/color-scheme '"prefer-dark"'` <gabber>FuncProgLinux: no, this is not particularly suspicious! usually package definitions of updated packages work quite similar to the previous iterations ;) <gabber>PotentialUser-44: are you the one who previously posted here as PotentialUser-57? <gabber>AFAICT there is no dconf-service-type? <gabber>sorry, there *IS* dconf-service-type <gabber>i have no experience with dconf. what happens if you do `dconf write /org/gnome/desktop/interface/color-scheme '"prefer-dark"'` ? <identity>gabber: it sets /org/gnome/desktop/interface/color-scheme to "prefer-dark", so GNOME (and more broadly GTK) apps are going to use a dark theme <gabber>yes, i figured that. but PotentialUser-44 does not seem to be doing that successfully in guix? is there an error when attempting that? <PotentialUser-44>gabber: I can set it using the command line, but I'd prefer using `dconf-service-type' to declaratively do it <PotentialUser-44>it would greatly help if there were an example somewhere for me to understand from <gabber>guessing from my quick look at the service definition i think you could copy whatever is generated through your command-line invocation into the service configuration <civodul>feel free to get in touch with me if youâre interested :-) <gabber>civodul: hi and \o/ and yeah, why notâthe list usually has more reach than this channel <gabber>PotentialUser-44: it is suboptimal that there is *no* section in the manual for this service. if you wouldn't mind, could you open an issue? without testing i now am fairly confident that you can add your `dconf.ini' files in that service as <dconf-profile> objects and that they will land in your system's /etc/dconf/ directory <gabber>also, i think this would more optimally be a home service? since "the dconf system profile, which should match the name of a user for which the profile is to be used with"..? <PotentialUser-44>gabber: Unfortunately, it appears that for some reason, I am unable to create an issue in Codeberg (it is giving some weird issue related to JavaScript)... <ColdSideOfPillow>PotentialUser-44: If you don't mind, I guess I can create the issue on your behalf? <Deltafire>civodul: the remuneration is a bit insulting :| <gabber>Deltafire: maybe that's as expected in france? <ColdSideOfPillow>and sometimes when reconfiguring my system, it randomly decides to combust with an "<invalid G-expression input>" error <ColdSideOfPillow>it's very weird, as it seems to happen even when I make that don't even touch those lines <identity>ColdSideOfPillow: could you paste the whole âhome-bash-configurationâ? <cbaines>civodul, ah, great, I hadn't seen this <identity>ColdSideOfPillow: you should not use âwhenâ and âunlessâ for returning values, they are used only for side effect and do not return anything useful <identity>well, i guess in guile they do return something useful, but only if the test is true or false respectively <identity>ColdSideOfPillow: you could just move branch up, out of the âmixed-text-fileâ, and then share the other stuff with a âletâ or something <cbaines>I haven't adapted at all to the lack of guix-commits emails, so I'm kinda in the dark about stuff that gets pushed at the moment <pinoaffe>is that a sign of misconfiguration? or just guix picking a mirror? <pinoaffe>cbaines: that much I know, but does it mean my channels configuration is somehow outdated, or is this just behavior as usual? <cbaines>assuming you're using the %default-channels in your channels configuration, then it's not out of date <identity>it might be out of date, but it should get fixed after a pull and reconfigure <bdju>Having massive performance/thermal issues since my last reboot and my computer is barely usable. Anyone else running into issues recently? linux-libre 6.15.10 <bdju>Trying to watch videos in mpv as I often do and after a couple minutes my CPU hits 97C and I get really bad thermal throttling. It was fine just a few days ago. <bdju>Maybe my CPU fan failed... <nikolar>happened once on my laptop (it was just stuck, i had to poke it and it worked fine after that) <nikolar>but the cpu overheated and the laptop even rebooted under relatively light load <nikolar>so check if you can reach your fan and just poke it abit <bdju>`sensors` output shows it think it's at 65535 RPM, but I've never looked at it before now to know if it could tell the speed before or not. <identity>that is a *lot* of RPMs, i doubt that you fan actually goes that fast <identity>that is like, 1100 rotation per *second*! that fan would make your laptop fly away <identity>âWith sufficient thrust, [penguins] fly just fine. However, this is not necessarily a good idea. It is hard to be sure where they are going to land, and it could be dangerous sitting under them as they fly overhead.â <bdju>Well, yeah I don't think it's right, but I don't know if it ever knew the actual speed. <bdju>Plus that's one of those special numbers. Probably the max possible speed it can measure or something. <bdju>Or max it can store in an int. <bdju>Yeah, I'm not a programmer, I don't really care. But I've seen that number around is all I was saying at. <nikolar>and it's definitely not max speed, no fan you'll ever see in a laptop is designed to run at 65000+ rpm <bdju>It's just unfortunate I had never thought to check the speeds this way before to have a comparison. <nikolar>just poke the fan if you can reach it through the grills <nikolar>it might just be stuck because some dust got in or whatever <bdju>It's 10 years old or more now and it was making some nasty noises since I last cleaned it some months ago. I think I dripped some isopropyl alcohol in the area where the lubricant goes. <nikolar>demindiro: assuming it ever reported the speed correctly <nikolar>you might need to regrease it or whatever <nikolar>or just replace it outright if the bearing is dead <bdju>The fan is most likely dead I'm thinking. <bdju>The docking station blocks most of the vent, I sprayed some canned air at it but I can't poke anything in there easily. <demindiro>Easy way to check: hook up a 5v (or 12v) source directly to the fan after unplugging it <nikolar>you can probably find replacement fans pretty easily online <bdju>I did indeed already find one for $15 or so on eBay. I was just hoping to become more sure I needed a new one before ordering it. <nikolar>if you got isopropyl into it and if it was making noises, it's probably smart to replace it regardless <nikolar>even if you unstuck it, who knows how long it'll last and you'll need to replace it anyway <bdju>Yeah, I figured it might not last a lot longer after that happened. Been saving up to get a T14g5 or something but wasn't quite ready yet. <identity>bdju: 65535 is 1111111111111111 in binary, biggest number you can fit in 16 binary digits; generally you see such a number when somebody does x - 1, where x cannot be negative and is 0, so it wraps around <identity>so it is probably an off-by-one error that turns into off-by-16-magnitudes error <nikolar>my hunch is a deliberate `return -1;` to signal an error <demindiro>Looking at git logs it seems that guile-fibers got updated yesterday, I wonder if that's related. Although that says "guile-fibers@1.4" and mine tries to compile 1.1.1 ... <jfred>civodul: that looks like a fun position, if only I lived in France and not the US ^^; <bavier>with this new profile check for conflicting entries, are there now packages that literally cannot be installed into a profile? <bavier>e.g. I try to install `gnome-boxes`, but its propagated dependencies propagate their own conflicting package versions. <yelninei>profile contains conflicting entries for libxml2 : evolution-data-server and mutter in my system profile <lfam>Howdy Guix! I'm curious if we have any automatic building of Codeberg pull requests <ieure>I believe we don't yet, but it's being worked on. <ieure>lfam, You just want substitutes available when the PR merges? Or to test the change? <lfam>In my experience, it's a crapshoot if the substitutes from such "hand built" packages survive in CI's store until a commit lands on the master branch <civodul>lfam: we donât have CI, which means weâll have to shut down soon <ieure>civodul, What do you mean by "weâll have to shut down soon?" <civodul>ieure: i mean that itâs not sustainable <ieure>civodul, Okay, thanks. I agree. :) <civodul>like âmasterâ sometimes breaks several times a day <ieure>ColdSideOfPillow, I was getting some 502s for a minute, but it seems to be working now. <lfam>Well... it is at heart a build-from-source distro :) <lfam>I don't think I have a machine that can build Chromium <lfam>Well, if CI isn't working, is there any harm in me testing the build of a package "by hand" on Berlin? Or should I avoid trying that? <gnucode2>I keep seeing guix giving me a hint after I install a package. (I'm using guix on Chimera linux). <Rutherther>gnucode2: if you install particular packages giving you new search paths, you're going to have to reload the profile. That's essential what it is telling you <gnucode2>how does one go about "reloading the profile"? Open up a new terminal? logout ... login ? <Rutherther>exactly the way it is telling you in the hint. Yes, logging out and in is going to ensure it's everywhere and not just in the terminal session <Rutherther>no, opening a new terminal is not going to do it. That's not a login shell, you would have to source it yourself, or open login shell yourself <FuncProgLinux>I think (modify-inputs (package-propagated-inputs mate)) doesn't work if the propagated inputs are conditional :( <gnucode2>Rutherther: But didn't I set those necessary environmental variables in my ~/.profile ? <Rutherther>gnucode2: no, ~/.profile is sourced on login. New env vars have been added in the meantime so you couldn't have sourced them <gnucode2>Rutherther: is there a way to automatically add these new environmental variables after I install new packages (I'm using guix on a foreign distro)? So that I don't have to think about it? I'm guessing the answer is...no. <FuncProgLinux>Rutherther: mate.scm at the metapackage has (propagated-inputs (append (if ... (list <list-of-inputs>))) yesterday I was asking about duplicated inputs on a derivated package I was making <Rutherther>gnucode2: no, Linux doesn't have a general support for changing environment of other running processes <gnucode2>gotcha...so you're saying I should use the Hurd ? I actually don't know if it supports changing environmental varables of other running processes... <Rutherther>gnucode2: I don't know a single thing about Hurd, but I would doubt Hurd supports this <FuncProgLinux>I have (inputs (modify-inputs (package-propagated-inputs mate) (replace "atril" atril-1.28.1))) but when building & installing the dependencies are...funny: dependencies: at-spi2-core@2.52.0 atril@1.28.0 atril@1.28.1 <Rutherther>FuncProgLinux: I would doubt modify-inputs doesn't support it, the modify-inputs doesn't even know something like this is in there, it's evaluated prior to getting into modify-inputs. And I have actually tried this in repl and it is working fine as I would expect, there is just one atril package when I replace it, and its cdr is the package I chose instead of it. <FuncProgLinux>Rutherther: I don't know what am I doing wrong though. There's "dual deps" everywhere: mate-applets@1.28.0 mate-applets@1.28.1 <Rutherther>FuncProgLinux: I can't tell you that without seeing the source <Rutherther>so you're inheriting the package... and then putting propagated-inputs to inputs, but of course the old propagated-inputs will stay. So you will indeed have all inputs twice <FuncProgLinux>Rutherther: gssdp-1.4 (gnome.scm) has an example of what I should be doing. Thanks for the help :) I'm grateful for it. <ieure>FuncProgLinux, package-mapping might be helpful, it'll rewrite the whole dependency tree. So if say mate-applets@1.28.0 depends on mate-foo@1.28.0 depends on mate-bar@1.28.0, you can rewrite all of them. <ieure>And you can write a fairly generic transformation function, like a procedure that takes the MATE version and returns a procedure that operates on any package with a name matching ^mate-.*$ and updates it to the provided version. <FuncProgLinux>ieure: Is that in the package reference? I did that code because I wanted to update the components, there are also several missing pieces of the desktop not present in Guix there <ieure>FuncProgLinux, I don't understand what you mean by "in the package reference." <ieure>FuncProgLinux, Oh, it's in the manual, not sure where. But it's easy to explain: given a function which accepts a package as an argument, and returns a possibly-modified package as an output, package-mapping applies it to some object containing one or more packages. <ieure>It's a monad. I know that's a helpful thing to say. <ieure>Rutherther, The transformation is monadic, package-mapping applies it. <Rutherther>ieure: I mean I don't really get functional programming terminology, but it's surprising to me it's a monad, because it's just a 'trivial' procedure, while I also hear working with the store is monadic and that is much more complicated <identity>you may be surprised, but something as simple as an Either sum type also forms a monad <ieure>Rutherther, The store monad is more complex, because (I believe) it's used to represent the IO of the communication between the Guix daemon and a client, which is the same kind of escape hatch you use to do IO in a purely functional language like Haskell. <FuncProgLinux>I got lost after the word monad. Given the example I'm assuming it's the section at the end right? <FuncProgLinux>So this means I could save myself from the gazillion (insert ...) & (append ...) I'm doing in my derivative package? <ieure>FuncProgLinux, Yes, if you want to reuse the same set (or subset) of operations across multiple packages. <FuncProgLinux>I have trouble understanding the second one. But the first one showed me things I didn't know :O <FuncProgLinux>I guess it takes more than the crash course to be a real scheme hacker <dcunit3d>if i do `guix shell -D guix --pure`, i can't quite ./bootstrap because autoreconf isn't found. however, if i drop the --pure, `which autoreconf` shows it exists. is that normal? <ieure>dcunit3d, `guix shell -m manifest.scm --pure' <Rutherther>dcunit3d: what does --check tell you when you use pure? <dcunit3d>i had written a tree-sitter-hyprlang package, but the tests were failing, so i didn't try to push it up. now they're not (but i can't build in my dotfiles), so i thought i would walk through that <Rutherther>"guix shell: warning: variable 'PATH' is clobbered:" this is definitely not good for pure environments <dcunit3d>k, i haven't used --pure much unfortunately. let me try from another profile and with the manifest <Rutherther>I don't know why the manifest would fix this, the manifest still uses development dependencies from guix, it adds a bit extra, but not autoconf <dcunit3d>i'm not 100% sure. i'm using uwsm and my setup needed to pass PATH through sessionVariables on nix, so that may be it. i may be able to get it to work on another user then <dcunit3d>hmmm... k, sorry things get a bit mixed up. i haven't properly set that up yet on this system <dcunit3d>i'm not used to zsh and i'm also mixing a few other files I ported over from another system. i need to trace through how the environment is being set up by nixos for bash & zsh. <podiki>do we have any rules or customs on when to specify e.g. release build for meson-build-system? <euouae>had some fun with `make-string' and `substring/shared' yesterday. It's funny that I was trying to get a "single buffer" optimization but by (initially) using `substring' I ended up cloning the buffer per-line anyway <podiki>interestingly, pixman has "disable-static" but i see a static library in the build <podiki>anyway, guess i'll find out if anything is using that since when i update it there is no static library now <dcunit3d>Rutherther: thanks for helping earlier. for some reason i blanked out on fully reading the message... i just zipped on to looking into potential path problems. i'm using --container --pure now and it's building <ieure>I think I remember seeing some way you could specify a Guix commit / additional channels in a manifest, so you could reproduce a package set more easily than `guix time-machine --commit=abcd123 -- shell -m manifest.scm', but I don't remember how do that -- anyone have a link handy? <Rutherther>dcunit3d: using pure with container is not really doing anything <ieure>There's the "Reproducible profiles" section of the cookbook, but I'd like a way to have a single file have both the channel and package definitions. <ieure>identity, That looks like it, thank you! <pastor>Hi, does anyone know if `/bin/sh' is available during Guix builds? <podiki>shebangs are usually all patched early in the build process, to refer to a store path <pastor>Well, I have some tests running in the check phase which try to use that path, it's not a shebang <podiki>then you'll need to patch those paths probably <pastor>I guess, although I'm wondering why we have `/bin/sh' available in Guix system then... <podiki>there's plenty of examples if you search for bin/sh in the source of this patching if you need <Rutherther>and users are likely to use such scripts from the internet <podiki>yeah, i think /bin/sh is just for basic system compatibility; /bin/sh is a symlink to sh from bash package in the store on guix sytem <FuncProgLinux>I think the source for gnome-keyring has this patch for /bin/sh <pastor>yes yes, I'm familiar with how to do that. The software is mine, this is the test we have (it's scheme): `(path-exists? (path "/bin" "sh"))' <podiki>and then old debate of what is the best shebang, posix, etc. <podiki>(guix system also has /usr/bin/env too) <pastor>We want to support Guix as a first class citizen, so I'm wondering if we should modify this test somehow <podiki>(not sure what is set in build environment) <podiki>but i think that would be more robust <pastor>Alright, thanks for the suggestions! <podiki>welcome, hope that helps! perhaps a better guix build environment/scheme expert has a good standard <pastor>Oh, I just realized that this test is a unit test for the `path-exists?' function, hum. I just need a file that will be present in normal systems as well as Guix environment. Chosing `/bin/sh' is arbitrary. Do you know of a file like that? <pastor>Obvious, haha. Thanks Rutherther <Rutherther>imo that's not a good unit test design though. You should rather make files in directory for tests and check those files, why depend on exernal environment if you can make your own <pastor>right, we have some utilities to do that. <Rutherther>you don't need any utilities for that, you can just keep it in the repository with the software <pastor>Rutherther: I cannot, the directory where the check runs can change <Rutherther>pastor: so the test script doesn't know path to itself? And if really not, why don't you pass it to it so it knows it? <pastor>Oh, no. Actually, I'm not sure, it's a Guile script, can I know what's the path to the current unit? <pastor>Rutherther: that seems to return #f for whatever module I'm in <Rutherther>you didn't say how you're running what in the first place... <pastor>My bad, I'm using `(srfi srfi-64)' <Rutherther>pastor: that's a library with test functions as far as I know, but how are you running the scripts with the library, that is the important question <pastor>Rutherther: It's quite involved but Guile runs another Guile subprocess to execute it. But don't worry, you've given me enough hints, I will look into it, thanks for your suggestion on not relying on the environment for a more reliable unit test. <jonsger>uff, fixing the guix-daemon security issue on a desktop system is hard. Can't get "guix system reconfigure" go through either a package is broken (qtwebengine) or profile conflict ( <pastor>jonsger: yes, I'm also quite blocked due to qtwebengine being broken... <podiki>sounds like i should send an email about ungrafting, i can take it on mesa-updates as that should be soon-ish to merge <Rutherther>... getting multiple pythons with unrelated packages not clobbering each other, in the same profile <sleepydog>ugh, Google's AI search answers hallucinate completely wrong answers for guix, like all the time. It's really annoying :( <Rutherther>Google's AI search answers hallucinate completely wrong answers for most stuff from my experience <sleepydog>yea i guess that's true. i'll just have to learn to ignore it <simendsjo>sleepydog: In DuckDuckGo, I can disable AI features to avoid getting all the confident lies. Maybe it's possible to remove it in google too? <Rutherther>you can of course use extensions for that, but it's not an officially supported feature to turn it off <ieure>I use SearxNG, both Google and DDG are awful IMO. <simendsjo>I'm quite tired getting force-fed AI down my throat in every product. <Rutherther>ieure: and what search engines do you use with searxng? <Rutherther>I have switched to brave search for some time now, but realized it's giving me even worse search results than ddg (and ddg is also usually not giving me results I would like to see) :( <ieure>Rutherther, Both those! But with an interface that doesn't have the AI garbage and copies the real link to the actual thing instead of a crapped up one that tracks when you click through. <podiki>if anyone wants to ungraft something, i'll take it on mesa-updates, let me know <ieure>Brave Search is just Homophobic Bing. <ieure>Because the company is founded and led by Brendan Eich. <identity>try asking brave search âwhat is a womanâ and the like, it will give you a certain kind of answers to such questions <ieure>Not defending Brave here, but many so-called "AI" systems have this kind of problem, because their training set is "whatever we could infringe from the whole internet," which is not a high-quality data source. <identity>ieure: pretty sure it was this way even before they started pushing their llm chatbot <FuncProgLinux>Is it possible to use a package on a channel in the channel's own manifest?