IRC channel logs

2024-07-27.log

back to list of logs

<mekeor>let's see if i can make my performant work-laptop (which runs debian-linux, with guix, and with guix-publish as systemd-service) as network-local substitute-server for my not-so-performant personal daily driver laptop, a thinkpad x200t, which runs guix system, so that i can more frequently build emacs from master :D
<bdju>sneek: later tell lfam thanks again! "wfetch" works now, also my api key started working so I can actually use it now.
<sneek>Okay.
<Gooberpatrol66>i think the "nls: update translations" commit in guix has made it impossible to build guix from git
<pjals>Hello! Why does Guix juggle around locks so much when reconfiguring the home? It seems silly to me that it should accquire a write lock and immediately downgrade it to a read lock a couple thousand times per second. What do the locks even do? Allow reading and writing data? Why not have 2 locks then?
<pjals>(asking because that's whats causing so many disk-related slowdowns on my system)
<pjals>Btw, what do I do if I have a bunch of newer versions of things like wlroots, meson, sway, wayland, and that sort of stuff, but they're inherited from original packages and I can't be bothered to make them into patch form? Can I still contribute them somehow?
<pjals>Is there *anything* to be done about locking? It is slowing down my entire system and going on for several minutes! I don't even have any low end specifications!
<pjals>What is even worse is that it doesn't say anything about it to the user except if you enable debug logging.
<pjals>Nevermind, seems like it terminated itself because of OOM
<pjals>(i have SIXTEEN gigabytes of memory?? what/??)
<pjals>I am now unable to reconfigure and update my system.. great..
<dgr>how to delete tty2 from service-type virtual-terminal in system config.scm?
<pjals>Yea, guix system reconfigure is using 21g of virtual memory, that doesn't seem right..
<pjals>You mean kmscon?
<dgr>I would like to put the info reader on tty2 (like in the installer) but it's already defined so I need to get rid of the predefined one
<pjals>Try doing something like (delete (lambda (x) (when (mingetty-configuration? (service-parameters x)) (eq? (mingetty-configuration-tty (service-parameters x)) 2))) %base-services)
<pjals>in place of %base-services in your services field of the operating-system
<pjals>That's the overcomplicated lispy way of doing it, I'm not sure if modify-services can do this in a simpler way.
<pjals>dgr: ^
<dgr>thx pjals will give it try
<pjals>It seems like Guix is having a memory leak of easily compressed data since my memory usage was 100.0/24.0GiB and I have compressed swap of 8GiB.
<pjals>Also the kernel wasn't giving Guix much CPU time, it was giving 1 minute of CPU time for 10 minutes of real time..
<pjals>Are there any maintainers who could potentially help me debug this? The problem is obviously in rapid unlocking and locking of read/write locks.
<pjals>Huh, I found the cause. It was my own package's bad code. When you do (native-inputs (append `("whatever" ,whatever) (package-native-inputs this-package)) it doesn't recognize a cyclic dependency and just keeps appending the deependency...
<dgr>thx it worked but now I get: guix system: error: more than one target service of type 'udev'
<dgr>maybe i can't just copy the code from the installer?
<pjals>you can't *blindly* copy code from the installer :P
<dgr>I had one eye open but I'm still not proficient with guix and guile
<dgr>maybe I'm now just mixing base and desktop-services and I get the error before it complains about tty2?
<Cessation>Having just installed guix on a new computer, my nm-applet  and nm-tray don't work because they can't find the right QT icons. Am I missing a package?
<mfg`>Is there a gcc-toolchain-wrapper package or something similar that makes "cc" available on PATH?
<futurile>mfg`: it makes gcc available if I recall - and if your package is lookng for CC you have to send an option to make in the package definition
<mfg`>kk
<ngz>Hello Guix
<spanko>Hello ngz
<h4>How to find manual of (channel ), like what it can take
<RavenJoad>Can I get the Guix revision I am using programmatically in a system service? I am trying to make xen-guest-agent send useful information, instead of the "unknown" version being sent now.
<RavenJoad>It could be embedded at build-time or discovered at run-time, either way. I just want to know if getting the version/commit revision through Scheme is possible.
<dariqq>h4: for creating your own channel (in .guix-channel file) or for adding a channel (channels.scm file)?
<h4>dariqq: adding
<dariqq>h4: https://git.savannah.gnu.org/cgit/guix.git/tree/guix/channels.scm#n131 here is the record definition
<PotentialUser-7>Hey i was wondering what is the main like selling point of guix i haven’t seen anyone talking about it in the past few years so im wondering since i was thinking of trying something new
<jaft``>PotentialUser-7: one of the main selling points that's often brought up is reproducibility. Guix takes a lot of effort to ensure that you can be guaranteed that what you're pulling down is the same thing, every time.
<jaft``>I'm sure there's /better/ sources for learning about it, out there, but here's a Reddit thread where people are discussing it: https://www.reddit.com/r/linux/comments/13lbn93/are_guix_and_nix_theoretically_the_best_possible/
<jaft``>From a user perspective, Guix's declarative nature means you can control everything from config. files. If you like config. files, that's great; it also means that moving to a different machine becomes easier because you can just copy the config. file over and basically /everything/ comes along with.
<jaft``>It depends on how much you like LISP/Scheme/Guile but that being the language used for your config. files can be a pull (it was, for me; it's a large reason I use Guix).
<jaft``>In addition to that, Guile being a full-fledged programming language (rather than a domain-specific one) means the sky's the limit in terms of what you can do. The capabilities are more extensive.
<jaft``>Again – from a user perspective –, I only ever used Ubuntu/Debian before this but I find that making packages with Guix is much easier to do. Which has made adding new software I want to try out or updating existing software in the repo.s /much/ easier for me to just go off and do on my own.
<jaft``>And the way that Guix saves installed packages means you can have the same package of different versions both available, which allows you to run packages which require older versions of a dependencies along with packages that need the latest.
<PotentialUser-54>Sorry the web client im using is kinda weird and im on this account now ig but it said its entirely configured through config files was what someone said so how what language does it use
<PotentialUser-54>Oh wait i see forwhateever reason some messages don’t show up unless i check the log
<jaft``>No worries; sounds like you can see all my messages, that way, but let me know if you have further questions or need me to repeat anything.
<PotentialUser-54>So how difficult is using lisp in guix I used it for a few things before but the syntax doesn’t really click with me from what i have tried of it. Its not that i don’t like lisp but everytime i try it i can’t really grasp what is going on as well
<PotentialUser-54>Also another quick question is how is the hardware support since i don’t know if certain things will actually work like my wifi card since i heard people have had issues with stuff like that
<jaft``>Yeah; that's fair. It /possibly/ could be a case of needing to use an editor that makes it easier but it could also just be a matter of getting used to it. A lot of people mention that Lisp feels weird to use up until they just get used to the syntax.
<jaft``>That said, – if you're just doing a basic config. – I don't find it that hard to grasp.
<jaft``>Like, a lot of the time it'll look like "(key value)" where, in most config.s, it'd look like "key: value,".
<jaft``>You'll just have to get used to remembering that the parentheses go around.
<PotentialUser-54>That sounds good im trying it on a laptop and not my main pc anyway so i have time to figure things out regardless. Also does it do a similar thing where it messes with the paths and stuff like how nix has those massive path names. Also thanks for telling me this stuff i really appreciate the information
<jaft``>Yup; it does. Guix was actually inspired by Nix and is based off of the same academic concepts that gave birth to Nix. In many ways (not all but many), it's Nix but with Guile for the config. language, instead of Nix-lang.
<jaft``>Of course! I'm always excited to see new Guix users and I feel like, often, the biggest hurdle to anyone joining something new is just having all their questions answered.
<freakingpenguin>RavenJoad: One option could be parsing /run/current-system/channels.scm.
<PotentialUser-54>So what is the reason to use guix over nix then if its like nix with guile?
<jaft``>Like I mentioned, you get a full-fledged programming language (whereas, I believe, Nix-lang. is more designed specifically to the task of configuring Nix so you have some limitations on what you can do with it). With Guile, you have access to /any/ module anyone's ever created for it.
<PotentialUser-54>That does seem cool how good is the documentation since nixes documentation can be very ehhh at times
<jaft``>Additionally, – if you like Lisps – you have access to things such as macros and the like. Guix tends to take reproducibility more seriously than Nix but, you know, not everyone cares about that as much.
<jaft``>Heh, I have heard that. I've never looked at Nix documentation so I can't speak to it but I've heard others say that Guix's is much better, in comparison, and a plus, for them, towards Guix.
<wizard>Hihi, I'm trying to package an emacs package (first time packaging something)
<wizard>running into an issue where the emacs-minimal pulled by the emacs-build-system doesn't provide track-changes.el
<wizard>only the emacs-next-* packages seem to do that
<wizard>and obv the package i want to package requires it (rust-parinfer-mode)
<wizard>any ideas on where i'm going wrong here
<PotentialUser-54>Thats good to hear thats part of the reason why i switched away from nix lol. Im going to try it and see how it goes i suppose.
<wizard>re: advantages of guix over nix: i can actually understand what the heck is happening
<wizard>i've never even tried to package anything for any other OS and i'm actually feeling good abt diving into it :)
<jaft``>wizard: 😆; that was one of the reasons I gave, too. It's so true.
<wizard>i tried so hard to work with nix for a good year but i swear im just not smart enough for it or smth lol
<PotentialUser-54>Yeah nix is not easy to understand one of its biggest issues imo is that it has 5 different ways to do the same thing and doesn’t meaningfully distinguish them in a lot of cases
<PotentialUser-54>Thats just my experience but i couldn’t figure out which approach makes sense for certain things like flakes and home manager if i even need to use it lol