IRC channel logs

2023-06-27.log

back to list of logs

<johnabs[m]>Trying it now, don't know why all the extra quotes and \n's became necessary, but here's hoping!
<johnabs[m]>No dice
<johnabs[m]>Trying to take out the first entry, final shot here
<johnabs[m]>Okay, seems like it was the backlight controller! No idea why it broke, but commenting it out fixed it
<atka>#~(job "5 0 * * *" "/path/to/some/script")), is this proper mcron syntax to run a bash script in some user's homedir?
<atka>adding as a simple service
<atka>well mcron/vixie that is
<dadinn[m]>hi all
<dadinn[m]>I would like to install Emacs 27.1 but guix show emacs seems to say there is only 28.2 available
<dadinn[m]>since semantic versioning is cool these days, version 28 dutifully crippled my entire Emacs environment (a.k.a. LIFE) after a Debian upgrade from Bullseye to Bookworm. I am looking to cover the losses so decided to bite the bullet and go real geeksy. But it looks like there is no way out! It's 28.2!
<ChocolettePalett>You might find "guix time-machine" useful, it is stated there that it can help install older packages via accessing an older GNU/Guix distribution
<ChocolettePalett> https://guix.gnu.org/manual/en/html_node/Invoking-guix-time_002dmachine.html
<ChocolettePalett>(But I haven't used it yet, so I don't really know whether it is the best solution or what to do next)
<dadinn[m]>thx, will have a look!
<dadinn[m]>I thought this is some basic stuff in Guix, that you can have multiple versions of the same package installed on a system, and use different one in different profiles.
<dadinn[m]>That sounds quite pointless when you can only install one specific version of everything! 🤔
<mirai>I think they can exist within guix shells
<mirai>you're always free to "duplicate" the package by inheriting it and changing name & version used
<atka>hi guix, so I created an mcron job, I can see it via ps ax | grep mcron and via herd schedule mcron. my job is supposed to run an executable script from a directory in a a user's home, however, the script doesn't appear to run. I've tried giving the path to the script which didn't work. I've added the script to the user's path (probably incorrectly) and changed the mcron job to execute as that user.
<atka>still no luck and I'm not sure how to get access to mcron's log. any ideas?
<mirai>Try checking syslog
<mirai> /var/log/messages
<atka>mirai: thanks, nothing useful unfortunately
<dadinn[m]>when I try to run guix install emacs@27.1 it fails with error "package not found"
<dadinn[m]>Not sure I understand how that time-machine stuff is supposed to work. I would understand that if I went back 2 years with the time-machine, then in that Guix repo there wouldn't be emacs@28.2, only emacs@27.1. I could accept that in the current up-to-date Guix repo emacs@27.1 recipe would be different than in the past time-machined one, but I definitely wouldn't expect it to be removed
<atka>if my script starts with "#!/usr/bin/env bash" do I need to change it to "#!/run/current-system/profile/env bash" for use with mcron? this script runs fine with cron on other distros, and when executed directly as my user with guix but fails to exectute via mcron
<AwesomeAdam54321>atka: Would it work if you did (system* "bash" "my-script") instead? https://paste.debian.net/1284212
<atka>AwesomeAdam54321: thanks, I'll give it a try
<atka>AwesomeAdam54321: no luck
<AwesomeAdam54321>did you specify the full path to the script?
<atka>AwesomeAdam54321: yes, here is my original definition https://paste.debian.net/1284213/
<atka>I have tried your example as well
<AwesomeAdam54321>sorry, maybe someone else can help
<atka>AwesomeAdam54321: thanks for your time
<atka>hi guix, so I have mcron running my ddns script which uses curl. when I run it as my user it works fine, when I run it as root script works fine, if the script is run via mcron it fails with curl: (60) server certificate verification failed. CAfile: none CRLfile: none
<atka>how can I tell the script where certs are when mcron runs it?
<MatoHota-work>Hi
<sughosha>Hi! I am trying to update gnome packages. I am doing this on gnome-team branch. Would it be fine to submit patches for gnome-team branch?
<jpoiret>dadinn[m]: we don't usually keep around older package versions unless there's a good reason to
<jpoiret>guix time-machine lets you use an older guix and older packages
<jpoiret>i'm not sure other distributions keep emacs 27 either
<clemens3>it happens i install emacs from source and am on 27.2.. but i am not on guix either
<clemens3>saw no reason to update
<janneke>jpoiret: did you find some time to look at the three squash! commits i created on hurd-team?
<janneke>iwbn to push what started out as our two patch sets that were reviewed
<janneke>we can look at the ~67 newer commits later
<jpoiret>janneke: I'll have a look this evening
<jpoiret>haven't been able to make time for guix these days, except reading my mail and low-hanging fruits
<janneke>jpoiret: np, great
<dadinn[m]>jpoiret: I've found this QA about using inferiors, but haven't managed to test it yet.
<dadinn[m]>Can you confirm that it would indeed be doable this way?
<dadinn[m]>I am quite noob, fortunately reasonably good with Guile, so the code looks familiar. On a vanilla Debian system with Guile 3, and the guix package installed, would I have those guix modules on my load path by default?
<efraim>tons of test failures but I made it past the build phase for node-12 without llhttp
<cbaines>dadinn[m], you can see the last revision of Guix with emacs@27.1 here https://data.guix.gnu.org/repository/1/branch/master/package/emacs
<cbaines>it looks to be ac29d37e2ffd7a85adfcac9be4d5bce018289bec, so if you wanted to install emacs@27.1, you'd do: guix time-machine --commit=ac29d37e2ffd7a85adfcac9be4d5bce018289bec -- install emacs@27.1
<cbaines>(I think)
<futurile>Morning Guixers
<dadinn[m]>cbaines: oh, that's neat! Is it possible to pick and choose packages from different guix revisions in the same profile?
<cbaines>yes, to some extent. Sometimes packages might not agree with each other, although you can always use multiple profiles
<aitzkora>Hi, I'm looking for a recipe with copy-build-system, does anybodey know an example ?
<janneke>aitzkora: git grep copy-build-system?
<aitzkora>janneke: i could use git grep but i do not know where to download the main channel
<janneke>aitzkora: https://guix.gnu.org/manual/en/html_node/Building-from-Git.html
<janneke>=> git clone https://git.savannah.gnu.org/git/guix.git
<aitzkora>thx
<aitzkora>I was not able to find it on the website
<futurile>aitzkora: also if it's a compiled binary the nonguix builder has some nice functions
<futurile>aitzkora: but you need to ask in the nonguix channel as the announcement in this channel points out
<aitzkora>I looked at curl.scm and I could follow the example
<futurile>cool
<sozuba>As per what i've read so far, patches for grub to support luks2 pbkdf is already implemented in grub 2.06 -> https://git.savannah.gnu.org/cgit/grub.git/commit/?id=365e0cc3e7e44151c14dd29514c2f870b49f9755. While guix has grub 2.06, why is it not able to detect or decrypt luks2 with pbkdf? Luks1works without issue.
<kreved>>
<jpoiret>sozuba: grub's userspace tools do not understand luks2 in 2.06
<jpoiret>next release will have this fixed
<jpoiret>this is the same in other distributions, although they might carry custom patches to fix this behavior
<jpoiret>basically grub-install doesn't understand that it needs to include the cryptodisk modules in the grub image
<sozuba>jpoiret: ah okay, I need to understand how grub-install works,in detail:)
<sozuba>Thanksman
<drakonis>oh, this is a good gsoc i see
<oriansj>I noticed guix has avr-toolchain and arm-none-eabi-toolchain but not one for xtensa-esp32; is there any reason for that?
<tobtoht[m]>Why does guix pack glibc produce a pack that includes two glibc store items and is it possible to prevent it from doing that?
<civodul>tobtoht[m]: hi! not really; in general that's ok because you don't explicitly add glibc to the profile
<civodul>instead you would add gcc-toolchain (which pulls in the "right" glibc), or nothing like that
<civodul>if you do want to have the "right" glibc, you can do: guix pack -e '(@@ (gnu packages commencement) glibc-final)'
<civodul>oriansj: hi! i suppose it's just because nobody needed it so far
<Parnikkapore_m>is it possible to use Guix to (reproducibly) build traditional tarballs, without libraries and accessing files from the usual FHS paths?
<AwesomeAdam54321>Parnikkapore_m: Yes, as a matter of fact it's a bug if it doesn't work
<AwesomeAdam54321>You can get the package source with `guix build -S package`
<AwesomeAdam54321>If you mean prebuilt packages, then no
<madage>guix pack -f tarball -S /bin=bin <package>
<madage>but libraries will be packed together
<Cairn>ekaitz: Most of your RISC-V blog posts go over my head, but I'm learning a little. Super interesting.
<Cairn>I really like your company model.
<ekaitz>Cairn: thank you
<ekaitz>I appreciate it a lot
<podiki[m]>hi guix
<podiki[m]>is there a better way to inherit a phase and then remove just part of an "invoke" call? how is phases represented?
<podiki[m]>thinking for this patch https://issues.guix.gnu.org/64213
<juliana[m]>hey y'all. after my latest system update, it seems my system freezes and I have to hard reboot. I've rolled back and things seem to be okay, but where are the logs I might look at to see what's going on?
<juliana[m]>hmm, /var/log/secure seems to suggest this is something related to polkit?
<juliana[m]>let me see if i can reproduce and if so i'll open a bug
<ekaitz>podiki[m]: you probably know way more than I do about this, but they are calls like that in the build-system
<ekaitz>and most of the build systems I visited are inheriting form the gnu one and then replacing steps with another lambda that makes an invoke
<podiki[m]>ekaitz: I know of some for things like configure-flags (just a simple list) but wasn't sure for the full build phases part and I'm not handy enough at the repl to look directly....hrm
<sozuba>people with a nick[m] are mods or chatting through matrix bridge?
<ekaitz>podiki[m]: take a look to the chicken build system if that helps: guix/build/chicken-build-system.scm
<ekaitz>podiki[m]: you'll see that everything is just invokes under the hood, so probably that patch is all you can do
<juliana[m]>sozuba chatting through matrix
<juliana[m]>took me a while to figure it out at first, too
<sozuba>hahaha, got it,thanks for the info, otherwise it wuold be a while for me too :D
<podiki[m]>ekaitz: thanks but I don't think it has what I want. I guess in the end "build" is a procedure so if I want to modify the guts that would be a macro? (overkill here), unless within a package definition it is still a list/string/something still
<ekaitz>podiki[m]: not sure! i gotta go, you can follow this further via email if nobody follows up
<podiki[m]>no worries, thanks! i'll keep looking if there is some example already, i would think it exists....
<podiki[m]>ekaitz: ah, actually in repl is easy enough, just calling package-arguments on a package, is a keyworded list...should be something here then
<podiki[m]>anyone else use lightdm and pam-limits?
<efraim>ekaitz: I got node-12 building without llhttp, so now I need to backport riscv support from node-16 to node-12 instead of to node-10
<ngz>sneek later tell cbaines would it be possible to start building the "tex-team-next" branch? Or should I start a merge request for it?
<sneek>Okay.
<ekaitz>efraim: yeeeeah baby!
<ekaitz>podiki[m]: did you find an answer to your questions?
<podiki[m]>ekaitz: I did not, though I can imagine how it might go I just asked on guix-devel; roughly want to modify the gexp that is the phases argument of a package and I'm not sure more than that
<ekaitz>podiki[m]: and what's that you don't like of just removing and adding phases?
<podiki[m]>sneek: later tell apteryx adding lightdm in 'pam-limits-service-type' fixes pam-limits in lightdm for me, lightdm tests still pass so I'll push the change
<sneek>Got it.
<podiki[m]>ekaitz: in this case I just want to remove one argument given (in the apply invoke) so it would be nice to just delete that string rather than copy/paste the full phase to just manually remove that line
<podiki[m]>you can see what I mean here https://issues.guix.gnu.org/64213
<ekaitz>podiki[m]: oooh i see
<podiki[m]>not super common I guess but not unheard of I would think for some package inheritance
<podiki[m]>maybe I should check things like gcc, ghc, etc. that have long chains of inheriting and making changes
<ekaitz>podiki[m]: i played around with gcc a lot and I think they do the same
<podiki[m]>obviously this is possible with a lisp language, but maybe is not so easy in our build systems? or with gexps? (without just going full macro)
<mirai>is this a autotools project?
<podiki[m]>maybe something we can add, some sort of 'modify-phase' where you get the phase as some easy to work with structure if this isn't the case already
<mirai>or is it all manual invocations
<ekaitz>podiki[m]: i'm reading gcc-2.95 and they do the same you did, but maybe there's something else you can do
<podiki[m]>mirai: in this case it is for imgui, just manual invoking (typically used as a source library in projects)
<podiki[m]>yeah, I'm not sure, in the end it seems it is gexps (build phases) so I don't know what to do there
<podiki[m]>so maybe I'm not missing anything obvious then
<mirai>you could use a custom phase that accepts #:configure-flags or #:make-flags and repurpose that
<mirai>then for the versioned packages you do a simple keyword argument substitution
<podiki[m]>that's an idea
<podiki[m]>though bit much for the little fix I need here but is a clever workaround
<podiki[m]>this is really why one does want configure- or make-flags since that is the better way to do these changes
<podiki[m]>actually, normally a 'build will call make with #:make-flags right? so really that should be emulated here and that's how we make the change
<podiki[m]>ACTION realizes he has done just this in other package definitions
<ekaitz>oh that's a good one
<bmildh>I can start a repl with "guix repl" , and this has pre-loaded guix namespace/package. But how do you import the guix namespace when you start a generic guile repl?
<juliana[m]>(use-modules (gnu))
<juliana[m]>etc
<bmildh>oh, Im using guix as a package manager on void linux
<juliana[m]>wait they got Guile 3? they finally updated their gcc??
<juliana[m]>but uh, yeah so you'll need to either install guile through guix or pass in the appropriate search paths to the void installation of Guile
<juliana[m]>oh, void did update gcc but not guile... tragic. i wonder if it's still because of concerns about powerpc maintenance...
<bmildh>I installed guix on void with the installer script. I then installed guile 3, from guix package manager
<juliana[m]>then the use-modules form above should work
<bmildh>I've been trying to import the guix namespace into a generic guile repl, mostly my effort has been to add-to-path, but no sure which path to select, like is it in a share dir under ~/.guix-profile, or under ~/.config/guix or directly from /gnu/store/*
<bmildh>(add-to-load-path "some/path/here")
<lilyp>the canonical response to that is don't
<juliana[m]>there you have it
<apteryx>podiki[m]: cool, thanks for working on it
<sneek>Welcome back apteryx, you have 1 message!
<sneek>apteryx, podiki[m] says: adding lightdm in 'pam-limits-service-type' fixes pam-limits in lightdm for me, lightdm tests still pass so I'll push the change
<podiki[m]>apteryx: as a known lightdm user let me know if anything goes wonky
<podiki[m]>I did run into the problem I had before when switching login managers the /var/lib/lightdm directory permissions get messed up (lightdm user removed then when going back to lightdm isn't properly chown-ed?)
<podiki[m]>I had to manually remove /var/lib/lightdm* and reconfigure
<mirai>if the data stored under that directory isn't important I'd mount it as a tmpfs instead
<mirai>kinda what gdm service does
<podiki[m]>i haven't had a problem going to/from gdm though
<podiki[m]>does that not have a separate user?
<apteryx>gdm uses a tempfs directory that gets wiped each reboot to avoid state/problems
<apteryx>but the issue of user id being recycled in Guix causing problems has been reported before
<podiki[m]>if one wants to set a flag (make-flag in this case) and it needs the source directory what is the best way?
<podiki[m]>(string-append (getcwd) "/source") works but seems hacky
<cbaines>ngz, if you want QA to start building the tex-team-next branch, please go ahead and create a guix-patches issue like you did before
<sneek>cbaines, you have 1 message!
<sneek>cbaines, ngz says: would it be possible to start building the "tex-team-next" branch? Or should I start a merge request for it?
<cbaines>(I always forget to poke sneek before replying)
<cbaines>currently the QA frontpage will only submit builds for the first branch, but we should change that to build the first two branches
<ngz>cbaines: OK. Thanks. What is the syntax to specify the branch at the top of the pile? I can't find it in the manual.
<podiki[m]>mirai: thanks for the idea (about using the flags in the custom phase), basically did that in the end
<rekado>blender crashes immediately when I select a subsurf modifier
<rekado>any blender users here who could reproduce this?
<HexMachina>hi guix - I'm trying to debug a failure in "guix shell -C" on a foreign distro: I get " error: mount: mount "none" on "/tmp/guix-directory.MxeYC3/proc": Operation not permitted"
<HexMachina>I suspect this is a configuration change problem on my host, as guix shell definitely used to work, but I"m having a hard time debugging the issue.
<HexMachina>strace isn't that helpful becuase the operations are really being peformed by the guix daemon, AFAIK, not my local guix... does the daemon log error messages anywhere?
<HexMachina>journalctl -u guix-daemon doesn't show anything helpful
<juliana[m]>/etc/var/log/guix-daemon on the Guix System, but idk how to get a nice interface to it or if that's also where it goes on a foreign host
<juliana[m]>hang on, typo
<juliana[m]>/var/log/guix-daemon
<juliana[m]>er, /var/log/guix-daemon.log
<rekado>HexMachina: can you reproduce this when using “guix shell -C” from a different directory?
<HexMachina>rekado: yeah, doesn't matter what my cwd is, I'm not in /tmp, that tmp path I believe is the daemon setting up the filesystem root for the container process
<rekado>to answer my blender question: the crash disappears after unchecking “GPU SubDivision” in Preferences>Viewport>Subdivision
<HexMachina>juliana[m]: /var/log/guix-daemon doesn't exist for me. I'm on Ubuntu 18.04, not guix system
<rekado>HexMachina: yes, it’s about mounting the procfs in the container.
<rekado>what distro is this?
<rekado>oh, Ubuntu 18.04
<rekado>are user namespaces enabled?
<HexMachina>yeah. FWIW I also use docker and have no problem launching shells in docker containers
<HexMachina>this all used to work, but our IT department has been rolling out some changes lately and I suspect some policy change they made broke guix
<HexMachina>I'm not really sure what they did though and I'm trying to debug myself
<rekado>you can check if the sysctl value kernel.unprivileged_userns_clone is 1
<HexMachina>yeah, it's 1