IRC channel logs

2023-01-29.log

back to list of logs

<herman>my pip3 reported attribute error: module contextlib has no attribute AbstractContextManager. I checked /gnu/store/ (seems that's where everything resides) and found 5 python-3.9.9 with different prefix like "12juh2khrkglgugfusgfiluf-". in 1 of them, the contextlib.py file holds content, and AbstractContextManager is there, the others' empty.
<herman>does anyone know what mechnism is used to specify which python is used?
<herman>I guess there's something to do with the profile concept
<a12l>lechner: Sorry for late reply, but thanks for the link!
<PotentialUser-43>Hello. I'm trying to build llhttp 8.1.0 in a guix package. Nominally, this should just be "npm install && make" but the build phase fails with "npm ERR! network This is a problem related to network connectivity." Is there something I have to do to give network access to the package's build phase?
<apteryx>why are there manpages not found by M-x man, that are found by M-x woman? E.g.: M-x woman RET qsort RET
<pcdood>Is this the spot for guix nerds?
<pcdood>I just did a script install on Devuan base and had to install daemonize, daemon, and socket. Rebooted and guix pull went off without a hitch
<pcdood>but, I haven't found anything that indicates this is part of the guix manager installations.
<pcdood>this being installing: daemonize daemon socket
<fr33zing>Hi, does anyone know if it's possible to get Mesa 23 working on guix?
<fr33zing>The guix package for mesa seems to be pinned to major version 21, can I change it to use 23 without significant effort? I'm still learning guile and finding it quite difficult
<mirai>my emacs is missing site-start.el / guix-emacs.el , what do I need to do to get them?
<Maya[m]1>hi, is there something blocking the updates of gnome beyond 42? I have tried to search it but i cannot find anything
<unmatched-paren>hello guix :)
<unmatched-paren>gonna work on dissecting guix a bit more
<futurile>herman: did you solve your pip3 problem?
<sneek>wb civodul!!
<civodul>sneek has become talkative
<tedium>I'm trying to build llhttp 8.1.0 in a guix package, and its makefile relies on npm which fails with "npm ERR! network request failed" because it can't find registry.npmjs.org. Is there a way to give network access to a package's build phase?
<nckx>Hi tedium.
<nckx>Nope.
<nckx>Guix builds are not allowed to use the network.
<nckx>The only exceptions are ‘fixed-output’ derivations, that is, the exact result (hash) is known in advance and this is enforced by Guix. This is how source tarballs and repositories are downloaded.
<nckx>NPM is a hellscape of infinite dependencies that are all downloaded from the Internet. This jives very poorly with Guix.
<nckx>You'll notice a distinct lack of npm (as opposed to ‘the npm/node’) packages in Guix for that reason. Sorry.
<tedium>well that sucks, but thanks for the reply
<nckx>civodul: Just reminding you how empty their hungry hungry mouth is.
<nckx>tedium: It's very old, but <https://dustycloud.org/blog/javascript-packaging-dystopia/> is still, unfortunately, true. As is the fact that Guix won't change a fundamental feature to cater to npm. Sorry, again ☹
<nckx>ACTION AFK.
<Guest46>is it possible to remove swap on the installer? I don't understand how I can delete that partition
<seninha>hi, can i download pre-compiled binaries rather than compiling them locally? I use guix on a very old machine, and compilation takes lots of time there.
<Guest46>normally guix uses substitutes which basically shouldnt have a need to compile stuff
<seninha>running `guix pull` compiles this `compute-guix-derivation`, and then Computes it. This step takes lots of time.
<Guest46>ah you mean this
<Guest46>in that case i am not sure but i would say there is no shortcut to that.
<seninha>What this step does, actually?
<Guest46>would ask again tomorrow, since nckx and rekado know basically an answer for every question but there are afk
<Guest46>basically like apt update
<Guest46> https://guix.gnu.org/manual/en/html_node/Invoking-guix-pull.html if you wan to know more
<singpolyma>Strictly speaking it updates your copy of guix to the latest version
<singpolyma>Which has an effect similar to apt update
<tedium>When I try to run `guix import json packages.json` for a JS package, I get an exception:
<tedium>`In guix/import/utils.scm:
<tedium>    528:7 0 (alist->package (("dependencies" ("semver" . "^…") …) …) …)
<tedium>guix/import/utils.scm:528:7: In procedure alist->package:
<tedium>In procedure string->symbol: Wrong type argument in position 1 (expecting string): #f`
<tedium>The offending line of packages.json appears to be
<tedium>`"dependencies": {
<nckx>seninha: There's a hac^Whelper called (channel-with-substitutes-available CHANNEL SERVER) to work around this. Basically, the CI sees Guix updates as soon as other users do, so it's possible to pull to a commit that hasn't finished building yet. Or… the commit was built on CI and you didn't get it for other reasons, that's also possible, but harder to answer.
<nckx>tedium: You got quieted by the local bot after "dependencies". You can share buff hunks of text using a paste service like paste.debian.net.
<tedium>@nckw sorry, https://paste.debian.net/1268880/ I'm not sure what the error with guix import json means, it says it expected a string but didn't get one and everything looks like strings to me.
<tedium>maybe `guix import json` isn't meant to be used with JS package.json files?
<nckx>Oh, extremely so. It imports Guix packages from a JSON representation of a Guix package (so, re-import, one could say). It can't import just anything else that happens to use .json structure. <https://guix.gnu.org/en/manual/devel/en/html_node/Invoking-guix-import.html#Invoking-guix-import>
<tedium>lmao
<tedium>thanks
<nckx>It could have been called ‘guix-json’ instead of ‘json’ but I think the assumption was that ‘json’ is such a meaningless generic term that it can't conflict with anything more specific, which is… also true. A packages.json importer would be called ‘npm’ or ‘node’.
<nckx>tedium: I won't say I didn't chuckle, but also sorry for the disappoint :)
<nckx>There was actually an npm importer written, but it was never merged AFAICT: https://lists.gnu.org/archive/html/guix-devel/2017-03/msg00814.html
<nckx>janneke: Am I reading that right?
<tedium>@nckx oh, that's interesting! maybe that will work, thanks!
<nckx>ACTION points out the year in that URL tho'.
<tedium>oh dear
<nckx>I'm just a fountain of good news tonight :(
<nckx>Also very unfamiliar with JS in general so can't really give you pointers.
<tedium>It's not your fault, I blame myself for trying to use JS for anything complicated lol
<PurpleSym>That NPM importer works pretty well: https://github.com/guix-science/guix-science/blob/master/guix-science/packages/rstudio-node.scm
<PurpleSym>(If you don’t mind checking out the respective branch and building Guix from source.)
<civodul>there've been several calls to merge the npm importer
<civodul>we should prolly do it, even if it has limitations
<civodul>something to discuss next week in Brussels i guess?
<civodul>ACTION looks at jlicht
<tedium>@PurpleSym thanks, I might try that, tho I imagine that build would take quite a while
<tedium>looking at it a bit furhter, it might be a case of adding the guix science channel, so maybe not that bad
<PurpleSym>tedium: Yeah, it takes a while, but you’ll only have to do it once, so …
<tedium>I'm giving it a shot right now
<janneke>nckx: yeah, i guess so
<nckx>Thanks. I guess there was more discussion than just that smol thread.
<janneke>it was very incomplete, tho
<nckx>I just realised I've never considered importers in the context of the FSDG. Wouldn't that be a problem (is it already)? Or is that somehow addressed?
<nckx>Or do we not talk about that?
<joe11>hi when i booted in to the guix live iso i got a message saying that my gpu isnt supported, and i have a amd hd7950, arent the drivers for amd gpus built in the kernal?
<nckx>janneke: Sure, but I agree with your reasoning that it won't help for it to sit bitrotting in an ML/branch.
<janneke>one of the many problems with the npm imorter was that for about ~100 dependencies of the ~6000 packages you need for a non-trivial npm package, the license field was/is missing
<janneke>afaik, the whole npm "ecosystem" is essentially non-free
<janneke>or, tainted/ambivalent/undecided at best
<nckx>joe11: Drivers are, yes, but the ‘free drivers’ used as a tricksy marketing ploy require ‘non-free firmware’ that isn't. Linux-Libre does not include non-free code no matter where it will run.
<nckx>ACTION imagines a rusty ‘free drivers!’ van parked outside FOSDEM.
<nckx>janneke: Well, as they say, oof. I had no idea.
<janneke>fwiw, my work on the npm importer for guix made us decide to sloowwwly back away from the javascript trap
<janneke>nixos has an npm imported, it just downloads binary packages
<janneke>*importer
<joe11>what about nouveau?
<janneke>"just like npm does"
<nckx>Yep, I read that in cwebber's evergreen article.
<nckx>Which could have theoretically been outdated, I guess, but I'm not surprised at all that it's still the case.
<nckx>joe11: I'm not sure, but I think the situation is dire with al{most al}l ‘modern’ GPUs. ‘Even’ Intel's. But I can't say much more without risking lies.
<nckx>janneke: The ‘trap’ of packaging them in Guix? Or the whole FSF concept?
<joe11>nckx is there a list of supported gpus for the libre kernel?
<elevenkb>joe11 https://h-node.org/videocards/catalogue/en
<nckx>H-node has many flaws, in quantity and quality of submissions, but ☝ was going to be my answer too.
<janneke>nckx: the `drop all your programming languages, NPM is the future, hop onto our banwagon'-trap
<nckx>For example, a non-free Wi-Fi card is (AFAIK!) still listed there ‘because it worked with Guix’, but Guix removed the driver because we found non-free files in it. Later someone asked to add it back because ‘it's on H-node’ :) Whee.
<janneke>at the time, npm had about 4x more packages than, e.g., python, ~250.000 iirc
<janneke>*~250,000
<nckx>Ah.
<nckx>janneke: Wonder what the total LoC of both was though.
<nckx>ACTION sighs, another unsatisfied customer :-/
<elevenkb>hey y'all's i can connect to my bluetooth speakers using `bluetoothctl` but I can't find them in `pauvcontrol`.
<tedium>elevenkb to make bluetooth work, I had to modify the guix services to look like this https://paste.debian.net/1268886/
<elevenkb>thanks tedium.
<janneke>nckx: ah yes, metrics -- fun!
<janneke>ACTION has no idea
<tedium>elevenkb you're welcome, hope that helps
<Nathan-web>I'm getting an error updating my kernel. the build log shows: "guix perform-download: error: /gnu/store/xdhbsg10hkz5kyafvl8vkaqfk131w3cr-linux-libre-6.1.8-guix.tar.xz.drv is not a fixed-output derivation"
<Nathan-web>Google hasn't shown anything. Is this a problem with my setup, or a packaging issue?
<nckx>Hi Nathan-web. This is a problem with a third-party channel. I thought they had fixed it already, but maybe not. Make sure you've run ‘guix pull’, otherwise ask in their (IRC) channel.
<Nathan-web>nckx: Okay, Thank you
<seninha>nckx: thanks. I'm reading «7.5. Channels with Substitutes» now. That snipped must go into /etc/guix/channels.scm, doesn't it?
<nckx>Yep. (Or ~/.config/guix/channels.scm, for completeness.)
<nckx>And it's very limited: it only checks for substitutes for Guix itself, not all packages. Just to set expectations.
<seninha>I want it to work for all users. Is /etc/guix/channels.scm read even when a user has a .config/guix/channels.scm?
<seninha>Or dos the local one overrides the system one?
<nckx>~ overrides /etc, yes, although a savvy user could load the latter explicitly.
<nckx>Maybe we could provide a convenience function to do so. If you're interested in writing one :)
<seninha>I have no knowledge on guix nor guile, sorry. That's my first time playing with both.
<seninha>nckx: thanks for the help!
<elevenkb>i'm getting a weird error when i try to run `guix system reconfigure` with `install-bootloader`.
<elevenkb>so i can't run the new system, but happily guix keeps the old system configs around.
<seninha>Last question: i have set (guix-configuration ... (guix (current-guix)) ...) and it seems that `guix system reconfigure` calls `guix pull` (or at least outputs the same messages), is that the case?
<seninha>i'm running guix on a vm and I copied the vm-image.tmpl template to use in it. But idk what that (guix (current-guix)) line does.
<seninha>it seems that (guix (current-guix)) makes i use the last, bleeding-edge commit of guix, is it?
<elevenkb>the error is: `guix system: warning: exception caught while executing 'eval' service on 'root'`
<elevenkb>`error: remove: unbound variable`
<nckx>seninha: Yes, well spotted, that will cause a ‘guix pull’ as part of the build (isolated, so it won't change anything outside of the build). It solves a particular problem: Guix contains a ‘guix’ package, but since this is a regular Guix package with a source hash etc., it must by definition be an older commit of Guix. This can sometimes cause trouble, or simply waste space, so ‘(current-guix)’ is a little hack to refer to the ‘surrounding Guix’ tha
<nckx>t is actually performing the build as a package. I hope that makes sense; it sounds esoteric written down :)
<seninha>elevenkb: it seems that it does not know where `remove` comes from, you probably should use the proper modules
<seninha>try to include (srfi srfi-1) in your use-modules
<nckx>seninha: So no, not ’last available commit’, just ‘the same commit you've just invoked from the CLI, rather than an older one nested inside of it’.
<seninha>elevenkb: like (use-modules (gnu) (guix) (srfi srfi-1) ...)
<elevenkb>got it `seninha`.
<elevenkb>the issue is that i presently have no idea what the `eval` service would be.
<nckx>elevenkb: Do you use ‘remove’ anywhere?
<elevenkb>nope.
<nckx>Ehk.
<nckx>Could you share your system configuration, ideally unmodified (or as little as possible)? Also the error output, although I hope to be able to reproduce that myself.
<seninha>nckx: thanks again!
<nckx>Is the current system particularly old, elevenkb?
<nckx>seninha: If my ramblings helped, I'm happy.
<seninha>nckx: do you know why is that line on `gnu/system/examples/vm-image.tmpl` template (and not on others)
<seninha>Like, it's only on the vm template.
<elevenkb>nckx, nope it is something like 2-3 days old.
<nckx>Not really (I'm not a VM person and have never used that image). I know why it's used in the installer: so that ‘guix system init my-shiny-new-system’ doesn't install older packages than the ones actually on the image.
<nckx>If the idea is that people will use the VM image without pulling, that would be the same reasoning.
<elevenkb>nckx: the issue is that my system configuration isn't self contained. just ignore me for now until i find a minimally complex and maximally self-contained reproducing example for this error.
<nckx>(I bet this will be in the commit log…)
<nckx>(Hm, no, it makes the change to the installer for the exact reason I gave above, but does not explicitly mention the VM image. Still, I guess one expected use case is that people will use Guix in the VM without pulling for some reason.)
<elevenkb>Yah sorry, I overstated... my last sucessfully rebooted generation was produced on Jan 14.
<nckx>elevenkb: Does this happen if you ‘guix system vm’ your configuration, assuming that works?
<nckx>elevenkb: That's recent enough in my book. Recent enough that there should be no weird missed API incompatibilities in Shepherd or Guix 👍
<ae_chep>oh you just used the ellipsis character instead of 3 dots. I'm used to seeing it elsewhere but that was a first for me in IRC
<nckx>TyPoGrApHy Is mY PaSsIoN (but like, kind of actually).
<elevenkb>nckx: i'm running guix system vm right nw.
<nckx>Mock me for my capitalisation & punctuation, but stay away from my … :)
<nckx>Thanks!
<elevenkb>nckx: do you read libre graphics magazine?
<ae_chep>nckx: no it's lovely! I'm not gonna take it away from you, don't worry
<nckx>elevenkb: Oh dear. I have actually read it, although I had to look it up to remember.
<elevenkb>nckx: yep a serious typographer here... :p. `guix system vm` doesn't output the error about remove while building the image.
<civodul>nckx: re "is not a fixed-output derivation" error, i'm curious what that other channel was doing
<civodul>i guess it has to do with 5d24e57a611b43ff68700379338b899f62d198cc
<tasty-sandwich> https://git.savannah.gnu.org/cgit/guix.git/commit/?id=5d24e57a611b43ff68700379338b899f62d198cc
<nckx>elevenkb: I didn't expect the build alone alone to trigger it. The reason I suggested a VM instead of ‘guix system build’ was to see what happens when you launch it (it should print a .sh script).
<elevenkb>nckx: yep, i ran the .sh script.
<elevenkb>i'm busy waiting for entropy generation
<nckx>But then, civodul is the Shepherd expert here, I'll glance at them first 👀
<nckx>(guix system: warning: exception caught while executing 'eval' service on 'root')
<nckx>Although I guess that doesn't look all that Shepherdy.
<civodul>oh, we'd need to see a more detailed log
<civodul>but yeah, "guix system reconfigure" evaluates code in the shepherd to upgrade services
<civodul>and so that suggests something didn't work as intended
<nckx>It's also a warning, so I'd expect the reconfiguration to still complete.
<civodul>right
<nckx>elevenkb: Not sure if that works in a VM, but mash the keyboard (with focus on the QEMU window) if it seems to hang.
<civodul>at worst, one or more services weren't upgraded and you'll need a reboot
<nckx>ACTION nods.
<elevenkb>nckx civodul: it completes i just can't boot into the system b.c. i get stuck at the populating etc stage.
<nckx>I thought you meant this happened during the reconfiguration itself.
<civodul>you mentioned entropy generation; that's something that requires keyboard or mouse events, typically
<elevenkb>nah the error about executing the eval service happens on reconfiguration.
<nckx>civodul: That was about the VM I asked them to start, not their bare metal machine.
<elevenkb>reconfiguration completes with that warning and a note that tells that certain services could not be upgraded.
<nckx>elevenkb: Gotcha.
<nckx>And then boot fails with a different error, or just appears to hang?
<elevenkb>nckx: boot hangs after a message that says `populating etc...`
<nckx>I've got to step away for a while; will be back.
<elevenkb>see yah nckx. thanks.
<elevenkb>after mashing my keyboard for quite a bit i don't seem to be able to type more characters.
<elevenkb>so yah the thing i'm going to be working on right now is to pare down my configuration to a bare minimum and then hopefully file a bug report.
<nckx>I can't suggest anything better.
<luishgh>hi guix, i was trying to add a native-search-path for emacs' new treesit module and i have a question. when i add something like (search-path-specification (variable "TREE_SITTER_GRAMMARS") (files '("lib/tree-sitter"))) to a package, in this case emacs-next, does it mean that automatically any files produced by packages included in the profile that have the path like "$output/lib/tree-sitter/foo" would be added to that environment
<luishgh>variable? Or does that package need to increment the variable itself?
<nckx>I am requesting a DuckDuckGo ‘bang’ (‘Please test your bang’—OK) search command for Guix.
<nckx>‘☑ This bang would be useful to more than around 500 people.’
<nckx>Hmm.
<nckx>Sure, right?
<nckx>luishgh: It should be automatic, but I don't know what you mean by ‘increment’.
<nckx>What you describe is certainly what is supposed to happen.
<luishgh>nckx: sorry, i wasn't really specific. what i mean is that the $out/lib/tree-sitter from the other package will be added to the variable using the delimiter ":". so, in the example, TREE_SITTER_GRAMMARS would have a value like "/gnu/store/hash-foo/lib/tree-sitter/foo:"
<nckx>You can change the separator, but yes.
<nckx>Is this something you want or something you don't want?
<nckx>Note that it won't be ‘added’ to an existing value, AFAIK; the variable will be set.
<terrified-user>Hi, I restarted my Guix System and was welcomed to GRUB with this error:
<terrified-user>error: file /boot/grub/x86_64-efi/normal.mod not found
<terrified-user>Entering rescue mode...
<terrified-user>grub rescue>
<terrified-user>So, I'm scared and don't know what to do.
<terrified-user>Before this, the last system reconfigure was simply to add docker-service-type and that's all.
<nckx>Hi terrified-user. Sorry this happened! Did you make any other changes before the last reboot (a previous ‘guix system reconfigure’, perhaps)? Anything that could have changed your storage layout?
<terrified-user>ACTION is luis-felipe
<nckx>Oh, hai :)
<terrified-user>nckx: Nothing like that. I used my regular production system config.
<terrified-user>:)
<nckx>Let me first reassure you that it is extremely unlikely that you've lost any data, so while you're definitely a very-inconvenienced-user, I wouldn't be terrified yet.
<nckx>Do you have access to a (ideally Guix, but could be any) rescue medium you could boot from?
<terrified-user>I'm glad to hear that.
<nckx>(I can't promise anything, but in your shoes I'd be annoyed but not worried about data. Still, I don't want to preach at this time, but consider setting up backups later if you really are worried now.)
<terrified-user>nckx: I have backups, but from three days ago, so I'm not sure if I could lose something important. And most important things are in public repositories.
<nckx>👍
<terrified-user>ACTION reads Introduction to Grub Rescue
<nckx>If you don't have such a rescue medium, you can try ‘search --file /boot/grub/x86_64-efi/normal.mod’.
<luishgh>nckx: that's exactly what i want. i've added this native-search-path to emacs-next on my guix checkout, but when i run `./pre-inst-env guix shell emacs-next tree-sitter-c --search-paths' (tree-sitter-c is a package from a patch series still not applied on guix: https://issues.guix.gnu.org/49946), only PATH, EMACSLOADPATH and INFOPATH appear :/.
<luishgh>
<tasty-sandwich>"[PATCH 00/31] Tree-sitter, node-gyp addon support and emacs-tree-sitter" https://issues.guix.gnu.org/49946
<nckx>I think the GRUB rescue mode also supports ‘ls’, so you can look at your drives & partitions (‘ls’) and what's on them (e.g., ‘ls (hd0,gpt1)/’, or without any ‘/’ to print file system info).
<nckx>I'm not sure if the rescue ‘ls’ supports all features though.
<terrified-user>Unknown command "search"
<nckx>OK, then you'll have to manually find it (if it exists) using ‘ls’.
<nckx>You should recognise your partition layout, even if the names look different here.
<nckx>Also, no * support or anything fancy, so don't try that.
<terrified-user>One courious thing is that while I'm on this grub rescue, the computer fans are very noisy
<terrified-user>Okay, "ls (hd,gpt3)/" lists familiar folders: home, var, boot, etc.
<terrified-user>ACTION keeps looking
<nckx>terrified-user: That's ‘normal’: lots of firmware is lazy^Wcautious, and spins the fans at their higher setting when there's no real OS to do real thermal management.
<nckx>OK, does (hd,gpt3)/boot/grub/x86_64-efi/normal.mod not exist?
<nckx>If not, does ‘ls (hd,gpt3)/boot/grub/x86_64-efi’ list anything at all?
<luishgh>nckx, just letting you know, i managed to solve my issue. thanks a lot for the help! good luck luis-felipe, hope you manage to restore your system!
<terrified-user>nckx: From what I can see, all files in x86_64-efi are backup files (named something.mod~)
<terrified-user>luishgh: Thanks :)
<nckx>luishgh: Well poop, I'd just made a reproducer (because applying 31 patches was no-time). So what was it?
<nckx>(Read and weep: https://paste.debian.net/plainh/2e6f4035 — but it worked.)
<luishgh>nckx: i needed to use a file-pattern to match the .so files inside those paths
<nckx>terrified-user: OK, I've never seen that behaviour before. I don't think GRUB does that.
<nckx>luishgh: Ah.
<nckx>I'll be faster next time.
<luishgh>now i just need to figure out how to use this variable inside emacs
<terrified-user>nckx: And there is a normal.mod~ but not a normal.mod
<nckx>terrified-user: Did you miss my message about a rescue medium (USB, CD, …) earlier or is that really not an option? If the file isn't there, bootstrapping GRUB from rescue mode is hard to impossible.
<nckx>Right, but I'm not sure if there's a way to get GRUB to load a mod~ file when it expects mod.
<nckx>Unless insmod takes absolute file names?
<terrified-user>nckx: I have a Guix System installation USB around.
<nckx>Oh please let's :)
<terrified-user>nckx: So I plulgged the USB and rebooted. I'm at grub rescue again.
<nckx>Well, you'll have to ask your firmware (sometimes called ‘BIOS’) to bring up a boot menu. It sounds like it's still booting from your internal drive?
<ArneBab>Is this the right way to update my system from a local checkout with changes? /path/to/guix/pre-inst-env guix pull -c 12 -M 24 -k --branch=core-updates --allow-downgrades --url=/path/to/guix --disable-authentication
<terrified-user>ACTION looks for boot list...
<nckx>ArneBab: That looks correct. Using the built guix (./pre-inst-env) is probably not needed but can't hurt either.
<nckx>Assuming you have a regular ‘guix’ that is, of course.
<civodul>ArneBab: ./pre-inst-env can "hurt" in that it could carry wrong values for sysconfdir, etc.
<civodul>so in general, prefer "guix pull" over "./pre-inst-env guix pull"
<nckx>Fine.
<nckx>s/can't hurt/& if you did everything right/
<terrified-user>nckx: I'm in GNU GRUB in the installer. I have 2 options there: GNU Guix installation or Firmware setup
<nckx>Just ‘installation’, even though we're not going to reinstall Guix.
<terrified-user>TUI installer started
<nckx>Which we will promptly ignore. Switch to a different tty with C-M-F3.
<nckx>(And ‘log in’.)
<terrified-user>Done
<nckx>I'm being very cautious, but I'd start by running a fsck on each file system you have. Probably just your root device, but maybe you have more.
<nckx>What that looks like depends on the file system type and partition name.
<nckx>If you want to skip that, we can.
<terrified-user>Let's skip it
<terrified-user>:)
<nckx>All right. Mount your root partition at /mnt.
<terrified-user>If only I knew how to do that :)
<terrified-user>I'm seriusly ignorant about mounting things
<nckx>OK, no problem.
<nckx>If you run ‘lsblk -f’, you'll see all your partitions. I hope it's obvious from that layout which one is your root partition (the one with all your files, you saw from the rescue shell earlier). Or maybe you know it. Something like /dev/sda1.
<ArneBab>civodul: thank you!
<nckx>Then, ‘mount /dev/sda1 /mnt’. Simple!
<ArneBab>nckx: I always start with the notion that I did at least something wrong … bad experiences :-)
<nckx>Hehe.
<ArneBab>my current setup contains an update to linux-libre 6.1 and a fix to tcsh (the latter already sent as a patch for a bug-report)
<nckx>terrified-user: Do you have any other partitions, like a separate /home etc., basically anything added to the file-system fields of your operating-system?
<nckx>Actually, you mentioned ‘git back-ups’ earlier. Is your system configuration on-line?
<ArneBab>I’m kind of afraid, but I need it to finally be able to switch my CPU to the Ryzen whose box has been gathering dust here for weeks, because I need Mesa 22 and Linux 6 :-)
<nckx>terrified-user: (We don't actually care about /home here, but I do want to make sure we do everything right the first time.)
<terrified-user>nckx: The disk has 3 partitions: sda1 is vfat; sda2 is swap and sda3 is ext4. I don't have a separate partition for home.
<nckx>All right, just checking. So we'll ‘mount /dev/sda3 /mnt’ and then ‘mount /dev/sda1 /mnt/boot/efi’. That is delightfully simple.
<nckx>Stop if anything throws an error.
<terrified-user>"mount /dev/sda3 /mnt" finished without errors
<nckx>👍
<terrified-user>Adn the other one finished without errors too
<seninha>Hi, which module provides `authorized-keys`? I'm setting up openssh and it says it that the `authorized-keys` variable is unbound.
<nckx>terrified-user: Wonderful. One last question: does /sys/firmware/efi exist? (No /mnt/.)
<seninha>btw, how can I get the module providing a given variable?
<terrified-user>nckx: Yes
<nckx>seninha: It's part of the record definition of openssh-configuration, so (gnu services ssh). It is not itself a variable.
<seninha>nckx: so that's weird, because I already have (use-service-modules … ssh …) at my /etc/config.scm
<nckx>Yeah, I don't think this is a module error, but some (possibly unrelated) syntax error. Share your configuration, but I'll focus on terrified-user for now.
<nckx>terrified-user: OK, I think we're ready to install GRUB: ‘grub-install --boot-directory /mnt/boot --bootloader-id=Guix --efi-directory /mnt/boot/efi’.
<nckx>I hope I didn't typo anything, but you'll just get an error if I did.
<seninha>nckx: np, im gonna double check my config here
<nckx>[Actually, ‘for now’—I'm going to bed right after, sorry, need to get up in 5h :-/ ]
<terrified-user>nckx: grub-install: error: /gnu/store/...grub-2.06/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory
<nckx>OK, no worries, let me boot a VM.
<nckx>This is because grub-install [apparently] defaults to non-EFI GRUB.
<terrified-user>Okay
<nckx>terrified-user: Do you have network access in the installer?
<nckx>grub-efi seems to be missing :-/
<terrified-user>Let me check
<nckx>Otherwise, you'll have to temporarily switch back to the installer UI and set up networking (then stop), we need it to download the right GRUB.
<nckx>I'll make a note to add it to the installer later, to make it more useful as a rescue system.
<terrified-user>Okay
<terrified-user>nckx: I don't want to keep you up though. Should we  pause here and leave the rest for tomorrow?
<lechner>nckx / i may be able to help further with Grub, if needed
<nckx>I'd like to continue this part, we should be almost done with some luck.
<terrified-user>Okay, thanks.
<nckx>If the next reboot fails, we'll pause or lechner can take the night shift :)
<terrified-user>:)
<nckx>We just got slowed down by the absence of grub-efi, pity.
<lechner>ACTION sees 2.55 PM on his clock
<nckx>It's almost the spooking hour here.
<lechner>yeah, in Cali we have ghosts even during daytime
<nckx>Although I doubt that terrified-user can be spooked any more than they already are.
<lechner>there is always rm -rf
<nckx>--no-preserve-mnt
<lechner>-x
<lechner>nvm
<nckx>--preserve-efi-variables, very modern.