<lfam>When I try to reconfigure my GuixSD system from a desktop environment to something else, I can't complete the reconfiguration, because the X server is killed, killing the terminal emulator and reconfiguration process as well
<lfam>I can't even do anything on a TTY after the X server is stopped, because the keyboard doesn't work. The kernel registers a USB keyboard when I connect it, but the keystrokes don't show up on the console
<ajgrf`>lfam: that is pretty weird. is it still stuck or did you reboot since then?
<lfam>I've rebooted several times. I've done several hard reboots and attempts at workarounds
<lfam>The reconfiguration mechanism is trying to start and stop services without requiring the user to reboot, but obviously it would be better if it didn't try to do that
<ajgrf`>you could try running your commands from screen or tmux so that it doesn't matter if X gets killed. also enter your reboot command at the same time so it doesn't matter if you lose the keyboard
<Acou_Bass>lfam: have you tried running the reconfigure in a console? or that ^
<ADFENO>Hey! I also try to study Esperanto sometimes, but I find that it's often difficult to find good and shareable materials. So far I found a free software called Kurso de Esperanto, that I'm liking very much. :D
<kyamashita>quiliro: goblinrefuge is an instance of MediaGoblin. I believe ADFENO added one of my posts to a list of theirs.
<ADFENO>I use Trisquel. And perhaps I remember you there too :D
<ADFENO>quiliro: In my case, I didn't try to instal Kurso de Esperanto (actually, since I lost my copy, I must get a new one), but I remember that I had to edit the Bash script responsible for starting it to correct some minor mistakes.
<mark_weaver>kyamashita: 'wrap-program' renames the program to something else, and then creates a shell script with the original program name that sets environment variables before running the program.
<mark_weaver>kyamashita: on a GuixSD system, 'guix' itself is wrapped, so you can see what the generated shell scripts look like.
<kyamashita>mark_weaver: Hm. I'm looking for a way to run my binary from within the /gnu/store directory.
<kyamashita>mark_weaver: It does not appear that the wrappers launch the binary from within the /gnu/store directory. Red Eclipse is looking for folders in its relative path.
<mark_weaver>kyamashita: do you mean that the current directory needs to be set to something specific before running the program?
<kyamashita>mark_weaver: Yes. Specifically, one needs to be in the same directory or the directory just above that of the binary for it to run.
<mark_weaver>you'll probably need to make your own wrapper to accomplish that.
<mark_weaver>but that seems very unusual. usually programs will look at argv, and the wrappers generated by 'make-wrapper' take care to preserve argv
<mark_weaver>(that's the purpose of the -a "$0" arguments to 'exec')
<kyamashita>Right. Red Eclipse seems to be hard-coded to use those relative paths unless I run "make system-install", but the system-install doesn't run.
<mark_weaver>ah, but typically argv will not contain the full path, and PATH will contain something like $HOME/.guix-profile/bin which isn't what the program wants.
<mark_weaver>kyamashita: the best solution might be to patch the relevant code from a custom phase, to hardcode the /gnu/store directory where the files are located, replacing the logic to figure it out dynamically.
<kyamashita>Is there a custom wrapper that I can base this one on?
<mark_weaver>kyamashita: see the 'wrap-program' phase in the 'brdf-explorer' package in gnu/packages/graphics.scm
<mark_weaver>although instead of using #!/bin/sh in the shebang, better to do what done in the 'conkeror' package in conkeror.scm, where the shebang is #!~a/bin/bash with the ~a replaced with (assoc-ref inputs "bash")
<mark_weaver>iyzsong: I very much appreciate your work on gnome-updates, but I would have preferred to wait a bit longer before merging it. there are still over 2200 builds to do, and new failures such as inkscape that are needed to build systems.
<mark_weaver>I would prefer to find and fix problems like that before merging
<iyzsong>mark_weaver: fair enough. I should be more careful.. thanks.
<mark_weaver>iyzsong: gjs failed to build on x86_64. I've asked hydra to try again, in case it was a non-deterministic failure.
<mark_weaver>paroneayea: the thing is, our existing popen API can't really accommodate this. We need a new API.
<mark_weaver>the current popen API combines the input and output pipes into a single bidirectional scheme port, which is a bad idea on many levels, but one reason it's bad is because it cannot be generalized to more than two ports.
<mark_weaver>another reason is that it's not possible to close the input pipe before closing the output pipe
<mark_weaver>that latter problem could be addressed by adding new procedures to close half of the combined port, but it still wouldn't generalize to more than two ports.
<mark_weaver>also, the combined bidirectional port is very slow, because it's implemented in terms of guile's legacy "soft ports" which are terrible and need to be deprecated and replaced with something better.
<mark_weaver>the soft ports are textual only and work one character at a time, because of the nature of the API
<ajgrf>gedit just failed to build for me because "gspell library not found or too old"
<mark_weaver>sorry, I was confused by the client-side vs build-side code distinction. the build side manipulates these expressions as data before they are macro-expanded and compiled for the build-side
<janneke>do you know how i can clean-up the ;; FIXME line
<mark_weaver>janneke: yes, I know how to clean it. give me a minute.
<Dumitru_Nicolaev>OS kernel is a very special package. It's pointless to install it to users profile, it could be installed only systemwide.
<Dumitru_Nicolaev>Maybe I should include mylinux.scm in my system configuration and do "guix system reconfigure"?
<ADFENO>When reading the "Invoking guix system" section, this is exactly what comes to my mind.
<Dumitru_Nicolaev>I'm not good at Scheme. How do I include mylinux.scm into /etc/config.scm?
<ajgrf>Dumitru_Nicolaev: make sure that mylinux.scm is in $GUIX_PACKAGE_PATH (you will have to set that environment variable). then in /etc/config.scm, add (use-modules (mylinux)) to the top and (kernel mylinux) somewhere within (operating-system ...)
<ajgrf>most people here probably run their system from a git checkout where they do their customizations, but that adds a bit more complexity to the process