IRC channel logs

2023-05-18.log

back to list of logs

<Zelphir>(working like ports: being able to write to them and read from them, without having to write all the data at once.)
<Zelphir>I think it would be great for non-text data to not need to be parsed again.
<bjc>this doesn't seem particularly guix-relevant. maybe try asking in #guile or #scheme?
<Zelphir>Ah wrong channel, sorry. Thought I was posting in #guile.
<Zelphir>Taking it there.
<bjc>feels weird that icecat can't load videos from fosdem
<ulfvonbelow>so I'm trying to 'guix system init' with gnu/system/install.scm and it's building things like gcc-cross-sans-libc-powerpc-linux-gnu-10.4.0 and gcc-cross-sans-libc-riscv64-linux-gnu-11.3.0... I'm curious why it's doing that - presumably it builds for the current system type by default, right? In my case that's x86-64, so not sure what it's up to.
<gcarlos>Hi guys, i was thinking in a project idea that consists of a platform for distributing free (as in freedom) games, something like steam (but free :) ). I'm stuck on thinking how can I distribute the games considering its dependencies. One of the first thing that I got in my mind was to use guix to package and manage the dependencies of the game. In that way the platform I will develop would be just
<gcarlos>an frontend for an specific type of guix packages. I want this platform to run in any free software OS, but I'm aiming first the GNU/Linux distros
<gcarlos>is my idea realiable or should I consider another way to do it?
<apteryx>it should be possible
<apteryx>instead of using 'guix pack' for each game, I'd package them as regular Guix packages and have them in a Guix channel
<apteryx>then your fancy frontend can automate installation/removal of these packages via Guix itself, and libraries can be reused between games, reducing the storage requirements
<gcarlos>apteryx: this is exactly what i'm thinking, but i don't know nothing about guix despite its conceptual design, so I'm here to clarify my doubts
<gcarlos>but, even if it's possible, is there a better way to do that? Using guix to do it is what I consider the most reasonable perfect possible. Other ways to distribute the games would be shipping some libs by a launcher, compile games statically and etc, that I consider a mess
<apteryx>other ways would be technologies somewhat similar to Guix, e.g. flatpaks, snaps, etc, I guess.
<apteryx>I'm not too knowledgeable about these, but I'd expect them to be more opaque and less hackable than Guix
<jackhill>I think a flatpak backend for guix pack would be pretty neat!
<jackhill>ACTION says while waiting on proot-static to finish its tests
<jackhill>(no substittute apparently)
<singpolyma>I think there's part of an AppImage exporters around somewhere
<ulfvonbelow>did they fix the "proot-static tests go forever" bug recently?
<jackhill>uh, I hope so…
<jackhill>ah, seems like not. Well, that explaines it! https://issues.guix.gnu.org/63284
<apteryx>jpoiret: hm, mumi created two issues for me instead of one
<apteryx>on 'mumi send-email' after 'mumi new'
<chomwitt>After instantiating a home config and i rebooted i cant start claws-mail. I get "/run/user/claws-mail:mkdir: no such file or directory . Error creating socket_dir /run/user/1000/claws-mail: No such file or directory"
<chomwitt>but i can start other apps thought
<jpoiret>apteryx: did it ever wait for the issue # from mumi?
<jpoiret>ulfvonbelow: not yet
<jpoiret>upstream released 5.4.0, but one of the tests is still broken
<itd>Hi, recent (since [1]?) cuirass seems to require channel auth.; I'd like to disable it for some channel but am unsure where/how. The error I'm seeing is: https://paste.debian.net/plainh/2cea09ba Any suggestions? [1]: https://git.savannah.gnu.org/cgit/guix/guix-cuirass.git/commit/?id=1c806cc64ea3a1fdc34a4cb332494f90c47c7f96
<muradm>hi guix
<muradm>sneek: later tell apteryx, could you have a chance to look at 63198?
<sneek>Okay.
<janneke>jpoiret civodul: so, we have rumpdisk! \o/
<janneke>ACTION goes to cleanup patches and send a v3 patchset
<janneke>(and do a final recheck, hehe)
<jpoiret>janneke: do you mean that it works?
<janneke>yep
<jpoiret>i'm going back to getting native compilation to work today, and maybe netdde as well
<janneke>that would be amazing!
<jpoiret>i'll first try to use newer headers and see if that solves the problem for the m4 tests
<jpoiret>janneke: well done!
<jpoiret>maybe we could add a Hurd team at some point
<janneke>thanks, yes i had a lot of help!
<janneke>jpoiret: guess we have an informal Hurd team anyway ;)
<cbaines>any idea how to get coredumps on a Guix system?
<cbaines>I've been trying on bayfront, I'm seeing segfaults but I can't find the coredumps if there are any
<ngz>Hello Guix.
<rekado>apteryx, efraim We still need to adjust the DNS server and reply to the GNU sysadmins. I’m still sick, so I don’t think I can do it.
<efraim>I don't have access to bayfront or berlin
<ennoausberlin>Hi GUIX. Is there a way to bind the hyper key as Shift modifier in config.scm?
<PotentialUser-43>hi guys. i have the following packages installed
<PotentialUser-43>Generation 2 May 17 2023 23:25:46
<PotentialUser-43> + openfortivpn 1.17.3 out /gnu/store/k8ccwj5chh01pl1dhs7l1dd0hw8vcwdv-openfortivpn-1.17.3
<PotentialUser-43>Generation 3 May 18 2023 10:31:47 (current)
<PotentialUser-43> + network-manager-fortisslvpn 1.4.0 out /gnu/store/jnk0aj1ahmfyqiww5bmk5jifr2pb3ysy-network-manager-fortisslvpn-1.4.0
<PotentialUser-43>When i try to add a connection via the nm-applet i don't get an option for a Forti VPN. Any idea how to enable the plugin?
<efraim>PotentialUser-43: I see the bot kicked in after you pasted a few lines
<efraim> https://guix.gnu.org/en/manual/devel/en/html_node/Networking-Setup.html#Networking-Setup
<efraim>and then scroll down to network-manager-configuration, it looks like yoiu need to add network-manager-fortisslvpn to vpn-plugins
<chomwitt>After instantiating a home config during login i see a warning: ' XDG_RUNTIME_DIR doesnt exist . on_first_login script wont execute anything'. But $XDG_RUNTIME_DIR -> /run/user/1000 . And claws-main wont start complaining that cant find /run/user/1000/claws-mail.
<chomwitt>ACTION starts reading guix manual about home config.. :-)
<PotentialUser-43>thanks efraim. will try it
<efraim>hopefully it works, I haven't used the vpn plugins before
<PotentialUser-43>what is a bit confusing for me is that guix goes about it by creating an entry in the system config. i was expecting to add some [plugins] section in some /etc config or something
<cbaines>rekado, efraim I can have a go at the DNS changes, although I'll be making it up as I go
<efraim>I'll make sure to let everyone know if you break it :D
<efraim>without having looked at how it's setup, I'd start by adding the new entry "at the top" and then figuring out how to test it
<ngz>rekado: Do you know why, e.g., texlive-hyphen-uppersorbian doesn't import all the files expected by TeXLive, such as "tex/generic/hyph-utf8/loadhyph/loadhyph-hsb.tex"?
<rekado>ngz: probably because it’s old
<rekado>ngz: when we started out packaging texlive we just made it up as we went along
<ngz>rekado: No, actually, I just noticed the `texlive-hyphen-package' just generates them, so we do not need the loadhyph sub-directory.
<rekado>only after building the tlpdb importer we paid closer attention to what should go into and come out of our packages.
<rekado>cbaines: thank you!
<ngz>Sorry for the noise, I'm just trying to find my way in the bootstrap story of our texlive packages.
<unfroq>Hey Guix! I am trying to setup guix home. I had a .profile which had a lot of important things included like loading additional Guix profiles. With guix home, the .profile gets written with certain defaults, and I'd like to know how add something to .profile. It is not obvious to me how to extend home-shell-profile-configuration. Any hints?
<lilyp>there sadly isn't a service for managing multiple profiles with guix home, but adding to your .profile should be simple enough
<unfroq>lilyp: Until there will be a service to manage multiple profiles, I will manage them seperately from guix home. The manual is pretty short regarding home-shell-profile and says "Extend home-shell-profile service only if you really know what you do." I think I - almost - know what I'm doing there, but I don't know how to extend it. Do you have an example to add a line like 'source ~/.bashrc' to .profile?
<unfroq>lilyp: Here is a minimum example: https://paste.debian.net/hidden/645eddba/
<ulfvonbelow>in the filesystems section of the manual, the following note is included: When the source of a file system is a mapped device (*note Mapped Devices::), its ‘device’ field _must_ refer to the mapped device name—e.g., ‘"/dev/mapper/root-partition"’. This is required so that the system knows that mounting the file system depends on having the corresponding device mapping established.
<ulfvonbelow>given that filesystems can take a list of dependencies, is this still necessary?
<ulfvonbelow>I ask because the lvm man page says to not rely on the form of filenames for lvm volumes under /dev/mapper and instead use /dev/<volumegroup>/<logicalvolume> IIRC
<lilyp>unfroq: sorry, I only got what the manual has, not using guix home myself because I don't like it littering, but home-bash-configuration is the thing to edit
<unfroq>lilyp: Hmm. My problem is, I do not want to extend bash config, since I'd like all kinds of environments to catch the environment setup. E.g. sway fetches its environment from .profile via greetd.
<ennoausberlin>Hi. What is the best way to create a subdirectory under /var/log from within systems config.scm?
<Kabouik_>gnome-tweaks used to install fine on aarch64 about two weeks ago, but now I got this failure to build deps: https://0x0.st/HNk5.txt
<lilyp>interesting, tracker itself was last touched in march or the c-u merge
<apteryx>jpoiret: I guess not, but it's supposed to work that way, I think
<sneek>Welcome back apteryx, you have 1 message!
<sneek>apteryx, muradm says: could you have a chance to look at 63198?
<PotentialUser-75>hello! Please help will be appreciated.
<PotentialUser-75>So I have a problem
<janneke>jpoiret: finally reconfigured to master after the core-updates merge, and havy my childhurd running nicely :) :)
<PotentialUser-75>So trying to instlal guix through the shell and the 'graphical installer' fails. Firstly displays two warnings: loading copiled file /gnu/store/somecharacters-guile-3.0.8/lib/guile/3.0/ccache/srfi/srfi-69.go failed: In procedure load-thunk-from-memory: missing DT_GUILE_ENTRY then guix system returns a error: 'guix system: error: failed to connect
<PotentialUser-75>to '/var/guix/daemon-socket/socket': Protocol error.
<apoorv569[m]>How to stop a backup job from CLI?
<PotentialUser-75>Been looking for a way to fix this for 2 weeks
<PotentialUser-75>No idea
<apoorv569[m]>Sorry wrong chat room.
<PotentialUser-75>nevermind
<PotentialUser-75>ok i feel like I'm never gonna get a answer
<janneke>PotentialUser-75: what installer are you using, ie, which download?
<PotentialUser-75>the guix/gnu system one the iso one
<PotentialUser-75>and then i tried using the shell with a reading the docs
<janneke>ACTION just installed guix 1.4 (the standard iso latest option on the guix download page) for i686 and it worked ok
<PotentialUser-75>for amd64
<janneke>PotentialUser-75: there are several ones, i guess; notably a stable and a "latest"
<PotentialUser-75>stable of course stable, update it got worse now the installer fails immediately
<unfroq>PotentialUser-75: Are you sure, that you don't have hardware issues? Did you try to setup a VM first?
<PotentialUser-75>yes, even used guix on my nix system
<PotentialUser-75>so it basically became the undefeatable distro, nix package manager, guix package manager, flatpak, snap, brew and sdkman needed a package chance is some package mnager has it in its repo
<PotentialUser-75>but i felt again i needed to challenge myself and i wanted to try out the distro but now i don't have any os to fallback to or another os i could boot, one flashdrive (yes i tried to use ventoy but every single time it just was stuck at the balck screen with a line like a input field but no just didn't work, tried MBR and GPT (no secure boot) and
<PotentialUser-75>just didn't work
<PotentialUser-75>sorry of topic
<apteryx>PotentialUser-75: at what point does the error appear? Did you try the manual install following the reference manual? This usually works when the graphical installer fails.
<PotentialUser-75>yes i tried each time a guix command is issued literally anything logical can be put after it and it just craps out this
<PotentialUser-75>so like guix pull returns this
<apteryx>does 'ping gnu.org' work?
<PotentialUser-75>yes
<PotentialUser-75>i do have internet access, ethernet to be exact
<apteryx>so e.g. 'guix shell hello' fails?
<PotentialUser-75>yes
<apteryx>are you able to share the full backtrace with context?
<apteryx>perhaps 'herd start ssh', then grab the output by scp from another machine if you have one
<PotentialUser-75>no other machine and runnig from the web from an iphone
<apteryx>OK :-)
<PotentialUser-75>yeah the only apple thing i have is an iPhone
<PotentialUser-75>will try tho
<apteryx>did you do anything special since booting?
<PotentialUser-75>no
<apteryx>this is 1.4.0 stable for x86_64?
<PotentialUser-75>yes
<PotentialUser-75>i hope so bc I've trying to fix this for 2 weeks now
<PotentialUser-75>but should be stable
<PotentialUser-75>but my suspicion is the srfi-69.go warning
<PotentialUser-75>which pops after booting from grub before the graphical installer shows up and before guix return the error
<unfroq>I'll try again, since now there is more chatter here: I need some help with extending home-shell-profile-service to craft a custom .profile. I would keep all defaults and add one line to it. Here is a non-working example: https://paste.debian.net/hidden/a415e3ff/.
<apteryx>PotentialUser-75: what does 'herd status' says?
<apteryx>sneek later tell civodul if you are hacking on shepherd, you might want to take a look at #53580, which I've marked 'important'
<sneek>Okay.
<apteryx>PotentialUser-75: without more info, it seems the init system (Shepherd) deleted its socket, possible due to a problem bringing up one of the services and #53580
<PotentialUser-75>Started: avahi-daemon , console-font-tty1-6 , dbus-system , file-system-/dev/pts , file-system-/dev/shm , file-system-/gnu/store , file-system-/sys/firmware/efi/efivars , file-system-/tmp , file-systems , gpm , guix-daemon , loopback , mcron , networking , nscd , root , root-file-system , syslogd , term-tty1-6 , udev , user-file-systems ,
<PotentialUser-75>user-processes , virtual-terminal , wpa-supplicant
<PotentialUser-75>Stopped: cow-store ssh-daemon
<apteryx>OK, this looks normal
<PotentialUser-75>one-shot: host-name , maybe-uvesafb , user-homes
<apteryx>perhaps try 'herd restart guix-daemon'
<apteryx>and then try 'guix shell hello' again
<PotentialUser-75>ok
<PotentialUser-75>same error
<PotentialUser-75>the same warnings
<apteryx>can you share a photo of what you are seeing?
<apteryx>since you're stuck on a phone
<PotentialUser-75>though of that
<PotentialUser-75>yeah how to share picture
<PotentialUser-75>through imgur or smth like that
<apteryx>yeah, I don't know of a free javascript alternative
<ae_chep>tel/win 11
<PotentialUser-55>it me again like before
<ae_chep>I know I keep doing this, but apologies again
<PotentialUser-55>sorry different name should make a actual nick
<PotentialUser-55> https://imgur.com/a/1jgzL2U heres what I'm seeing
<apteryx>ACTION peeks
<PotentialUser-55>is it too blurry, if yes i will take another one
<chomwitt>i think home config needs elogid to manage XDG related stuff. But reading about elogind it's not something i want. is there an alternative regarding XDG setup ?
<chomwitt>s/elogid/elogind
<apteryx>PotentialUser-55: the udevd error has to do with your ethernet interface, could be related?
<apteryx>PotentialUser-55: not sure what's going on :-/
<apteryx>I'm asking in #guile in case they know something about the DT_GUILE_ENTRY warning
<apteryx>PotentialUser-92: have you tried a different install media (different USB key?)
<apteryx>or ran a memcheck test for your memory? it seems an exotic problem (perhaps hardware related?)
<oat>Hello everyone, Does guix support installing packages via package.el?
<cbaines>oat, are you asking if it might/will work, or whether it's supported?
<ulfvonbelow>hey uh, can I get a quick sanity check in the code for 'package-mapping'? It's not doing any build-system transforming in the case where 'cut?' returns true for a package and 'deep?' is also true.
<oat>cbaines: both them?
<cbaines>oat, I believe it works, and supported to the extent that any of the software provided through Guix is
<efraim>apteryx, PotentialUser-92: cow-store hasn't been started yet
<efraim>it's been a while since I've installed, don't remember how well the daemon runs before that happens
<efraim>also, why do we have mcron running in the installer? off-hand it doesn't seem like something we'd need
<oat>cbaines: Thanks. Do you know where I can get information about it?
<oat>How I can get the latest emacs version 29+, currently Guix has emacs 28.2?
<bjc>emacs-next, though i don't know if it's been updated to the pre-releases yet
<oat>bjc: Thanks, let me try.
<oat>Do you someone knows where I can get information about package.el?
<cbaines>oat, not really, is package.el covered in the Emacs docs or does it have it's own documentation?
<oat>cbaines: I'll read the emacs package section to be sure.
<unfroq>oat: I am using use-package to install packages. Under Emacs 29 I can juse do (use-package foo) with emacs-foo guix package installed and it just works.
<unfroq>oat: Not sure, but I remember something about having emacs and the emacs-* packages installed in the same profile.
<lilyp>emacs-next is currently one release candidate behind but I submitted a patch for that, like, today
<apteryx>almost 3 minutes to redeploy a system that barely changed; it's a bit on the slow side of things
<ulfvonbelow>I just realized, package transformations, even with #:deep? #t, won't work with any build system whose bag->derivation builder introduces inputs that weren't in {build,host,target}-inputs.
<ulfvonbelow>for example, qt-build-system introduces a package into its build gexp from the #:qtbase argument
<ulfvonbelow>and if that's not specified, it pulls a default out of thin air. How is a transformation supposed to reach that, when it's only added into the derivation at the last minute?
<ulfvonbelow>do we have a way to use python-cryptography without pulling in rust?
<lilyp>this looks like one of those packages that require rust to build their core
<acrow>Tried to do a routine 'guix pull' this morning and it failed with "WARNING: loading compiled file /gnu/store....gnutls.go failed". I rebooted the system and still got this error sequence. After going backwards two generations I still could not successfully guix pull (and other problems too). I was able to switch back to my most recent generation and I was able to guix pull using /run/current-system/profile/bin/guix. I thought this
<acrow>would reconcile things but plain old vanilla 'guix pull` still issues that WARNING about gnutls.go. I thought that a successful guix pull would update guix but that appears to not be the case. What am I missing?
<lfam>acrow: You said that it fails. But the messages are only warnings. Is it really failing based on warnings, or is there an error message?
<lfam>Since the core-updates merge, a lot of the applications I run on Debian crash whenever I try using the file chooser dialog. I used to be able to work around this by unsetting XDG_DATA_DIRS and GIO_EXTRA_MODULES, but that's not sufficient anymore. Does anyone know a workaround?
<ulfvonbelow>if it spits out an error message complaining about not recognizing a "file-missing" icon, that's happened some on guix system too
<ulfvonbelow>in the stderr
<acrow>No, it really fails. With a longer debug depending on what I try to do. The message above is the just the error on startup. Further errors are triggered later in processing.
<lfam>Okay acrow. Easier to debug with those error messages
<acrow>Example on the way.
<lfam>I'm guessing that your different Guix profiles (system and user) are on different sides of the core-updates merge, and thus have some incompatible core libraries
<lfam>The warnings are expected in that case, but shouldn't cause a crash
<lfam>ulfvonbelow: Is there anything to fix it?
<ulfvonbelow>when it happened to me, pulling and upgrading my profile seemed to fix it
<acrow> https://paste.debian.net/1280580/
<lfam>guix pull: error: gnutls-guile-eintr-eagain.patch: patch not found
<lfam>That's the error
<acrow>Ok, but how can that happen?
<acrow>Or, more practically how can I reacquire this patch file?
<lfam>The distribution of Guix that you are using (that is, the Git commit revision) is broken.
<lfam>It's a bug in Guix
<lfam>What does `guix describe` say?
<acrow>That works..
<lfam>What does it say
<acrow> https://paste.debian.net/1280581/
<lfam>Huh
<lfam>It's weird, but it looks like it worked?
<lfam>The first paste says that Guix 5b70094 is being built
<lfam>The second paste shows that Guix 5b70094 is current
<acrow>Well, when I used the /run/current-system/guix/profile/bin/guix it worked.
<acrow>But it didn't seem to replace the failing copy of guix. I tried hash guix and that also failed to fix it.
<lfam>Something is very wrong
<acrow>I checked on that gnutls.go file at the start (it was there). The new errors point to a different store version of that file. Which I imagine is also there courtesy of the successful 'full_path_to_good_guix pull' run.
<acrow>Maybe 'full_path_to_good_guix build guix' and then 'fptg_guix package -i guix.drv' would succeed?
<lfam>Generally, you shouldn't ever install Guix with `guix package`
<acrow>I say that because 'guix package -s guix' hangs after reporting..
<acrow>;;; WARNING: loading compiled file /gnu/store/hdjad65d869026hlv8d5npa93f4m72ni-guix-module-union/lib/guile/3.0/site-ccache/gnutls.go failed:
<acrow>;;; In procedure load-thunk-from-file: Invalid argument
<acrow>name: guix
<acrow>version: 1.4.0-6.dc5430c
<lfam>Only use `guix pull` to manage Guix itself
<acrow>outputs:
<acrow>+ out: everything
<acrow>
<lfam>If you've installed Guix with `guix package`, go ahead and remove it
<acrow>That is what I normally first do...
<acrow>No, I didn't do what I offered above. That was just speculating and saying that the package definition for guix appears to be updated.
<lfam>I see
<lfam>It's a bit confusing
<lfam>It might be possible to debug, but I don't think I can figure it out now
<lfam>Hopefully someone else can jump in!
<acrow>Hah, no kidding. I saw the core-update a week or so ago and thought that I had already successfully upgraded through it. But this makes me think otherwise.
<lfam>Did you update both your user and the system?
<acrow>No, just a user update.
<lfam>Ah. I recommend always doing both for a core update. At least to avoid those WARNINGS, which are typically harmless
<acrow>In what order? Should the root user be updated first?
<acrow>Or are you saying do a system reconfigure immediately after a core-update pull?
<acrow>'guix system describe' may be from before the core-update.. not sure... see soon to come.
<acrow> https://paste.debian.net/1280583/
<mirai>is there some procedure that can check whether or not the hurd is being used within a shepherd service gexp?
<mirai>the hurd kernel*
<lfam>acrow: The order doesn't matter. I'm just suggesting to do both
<lfam>And yeah, if you pull, then do a reconfigure to make it effective
<_graywolf>Hi, probably dumb question, but I have guile installed via guix (command -v guile -> /home/wolf/.guix-profile/bin/guile), but when I try guile -c '(use-modules (guix build utils))', it complains about no code for module (guix build utils); What would be best way to get guix' libraries onto the load path?
<apteryx>_graywolf: you can run your script via 'guix repl'
<_graywolf>apteryx: That does not seem to support -e :/
<apteryx>it supports a script provided after --
<_graywolf>Yeah, but it's not clear to me how to specify which procedure from the script to run (my current exec line is: exec guile -e main -s "$0" "$@")
<_graywolf>I guess I could have some wrapper script
<apteryx>on Guix System 'guix' is in the GUILE_LOAD_PATH
<apteryx>provided by the system it seems: /run/current-system/profile/share/guile/site/3.0
<apteryx>mirai: I don't think so directly, but Hurd uses an older 0.8 version
<apteryx>so you could test for things added in 0.9.0 such as make-inetd-constructor
<_graywolf>Ah, so it's just a temporary problem until I migrate to GuixSD, good :)
<apteryx>eh :-)
<mirai>apteryx: I'm interested in knowing if it's running under linux or hurd at runtime
<mirai>say mpd-configuration endpoints field has '("@mpd" "/var/my/socket")
<mirai>@mpd is fine under linux, not so much in hurd (abstract sockets)
<apteryx>how can I check if a shepherd service is running without causing it to start?
<lfam>Hm, my offloads are failing with this bug: https://issues.guix.gnu.org/62213
<lfam>"Throw to key `guile-ssh-error' with args `("write_to_channel_port" "Parent session is not connected""
<mirai>apteryx: see this <https://paste.centos.org/view/3791b0e1>
<mirai>it pollutes syslog though since there's a shepherd eval somewhere buried
<mirai>but try peeking at (shepherd) and (shepherd services)
<mirai>I think there's some built-in procedures that can be used
<apteryx>seems like something that should be easy to use provided by the Shepherd API (service-running? 'name)
<apteryx>will do, thanks
<ryan77627>Curious, does anyone have any solutions for dealing with packages installed as flatpaks? I'd love to have a way to declaratively install them as well, but I do not know if that is possible
<apteryx>ryan77627: nope, unless flatpak reinvented the manifest idea
<ryan77627>apteryx: Ah darn, that's a shame. Figured i'd ask if anyone had anything. Thanks!
<apteryx>do you have a lot of packages from flatpaks? you may be able to find channels that have them as true Guix packages
<apteryx>or convince someone (you?) to package them :-)
<apteryx>mirai: the live-service concept of Shepherd feels a bit awkward to me
<apteryx>we already have service objects, I'm not sure why we need another representation for live-services
<ryan77627>Nothing particularly I can't install manually, however I use Librewolf because icecat's screensharing functionality in sway with pipewire is sorta broken and I do not know why. Ungoogled-chromium works fine, as does obs, so its definitely a icecat issue
<apteryx>s/representation/type/
<ryan77627>apteryx: If I can figure out the issue, you can expect a patch from me :)
<acrow>After getting an older version of guix to successfully do guix pull's on this machine I wanted to do a system reconfigure to try and git it normalized. When I try I get this: https://paste.debian.net/1280594/ This isn't really a downgrade. Should I do this?
<apteryx>ryan77627: OK; IceCat is based on the older Firefox ESR, so you could try ESR and see if it has the same problem
<apteryx>mirai: ah, the shepherd-service record is the declarative part
<ryan77627>Oops, I did not realize that. Firefox itself was _just_ on 112.1 and I saw 102.11 and put them together, read too fast. Let me take a look at the ESR release
<apteryx>while live-service is the stateful/introspective part
<spiderbit>hmm there seems to be very bad support for webdav/nextcloud in guix
<spiderbit>I can't define filesystems as webdav in the config as far as I can tell
<spiderbit>I can't use gnomes online account outside gnome apparently
<spiderbit>and I can't try to setup webdav mount in nautilus
<spiderbit>the only thing that might work is using the nextcloud client but that clones all files as far as I can tell so no real mounting but syncing
<acrow>Alright, "He who will not risk, cannot win!" -- John Paul Jones
<spiderbit> https://packages.guix.gnu.org/search/?query=dav
<spiderbit>why does that not list davfs2?
<spiderbit>it's there?
<spiderbit> https://packages.guix.gnu.org/packages/davfs2/1.6.1/
<spiderbit>wtf
<mirai>spiderbit: perhaps you need to add davfs2 to the packages field?
<spiderbit>yes but why does the package list
<spiderbit>not list it
<mirai>idk, I haven't used fuse with guix
<mirai>no idea
<apteryx>mirai: ah, there's service-running? from (shepherd service)
<apteryx>"Return true if @var{service} is not stopped."
<mirai>apteryx: you can use them within a (start / stop) shepherd-service record
<mirai>(shepherd service) is within %default-modules
<mirai>what are you working on that involves querying a service status though?
<apteryx>how can I get the <service> object corresponding to a service name (a symbol) ?
<mirai>I think it might work with symbols as well
<acrow> https://paste.debian.net/1280599/ Would simply pointing ${HOME}/.config/guix/current/bin/guix point to the same place as the known good /run/current-system/profile/bin/guix be a resonable fix for this problem?
<apteryx>mirai: this: https://issues.guix.gnu.org/63402#7
<mirai>ah, yes I remember this
<apteryx>I want to replace the (when (start-service service-name) line with something that won't cause a stopped service to start
<acrow>I'm reluctant bc one points to <hash>-guix-command and the other points to <other_hash>-guix-1.4.0-4.01fd830/bin/guix. Which seems to me means they have different purposes.
<mirai>apteryx: I think a simple (running? 'the-service) should do the trick
<acrow>There are so many different hashes of guix-command on my system. If only there was a way to identify the most recent (in-time) version. but without {c|m}time is there a way?
<apteryx>mirai: strange, running is a 'generic': (shepherd service): running? #<<generic> running? (1)>
<apteryx>(running? 'mcron) -> no applicable method for #<<generic> running? ...
<spiderbit>ok now that is extremely slow
<spiderbit>mount.davfs: warning: the server does not support locks
<spiderbit>like 5 minuten fuer 10 thumbnails oder so
<apteryx>mirai: I'm trying (lookup-services 'mcron) but it always seem to return '() except for 'root
<f1refly>is someone here running alacritty + sway?
<f1refly>I just updated and now alacritty wont launch anymore :(
<f1refly>[wayland-client error] Attempted to dispatch unknown opcode 0 for wl_shm, aborting.
<mirai>apteryx: within a repl?
<apteryx>yeah
<apteryx>ah! it connects to my user shepherd
<apteryx>^^'
<mirai>^
<mirai>:)
<apteryx>no way to easily connect to a running shepherd (REPL) ?
<apteryx>I'm not finding the right sudo incantation
<mirai>easy? there is, with sudo
<mirai>sudo -E
<apteryx>(lookup-services 'mcron) still reports '()
<apteryx>sudo -E guix shell shepherd guile guile-fibers
<gnucode>hey friends, i have access to a power9 machine today. Is there some package that you want me to test that it works? (I'm on a talos II) machine.
<apteryx>then guile -> ,use (shepherd service) then (lookup-services 'mcron) -> $1 = ()
<mirai>hmmm... no idea
<mirai>maybe bjc or civodul can weigh in
<apteryx>gnucode: neat!
<apteryx>mirai: the repl feature I was thinking about: https://www.gnu.org/software/shepherd/manual/shepherd.html#REPL-Service
<apteryx>in 0.10.0, (lookup-service 'anything) throws: Throw to key `match-error' with args `("match" "no matching pattern" #f)'.
<apteryx>civodul: any idea? ^
<civodul>apteryx: where/how do you run that code?
<sneek>Welcome back civodul, you have 1 message!
<sneek>civodul, apteryx says: if you are hacking on shepherd, you might want to take a look at #53580, which I've marked 'important'
<civodul>for example, this works well for me: sudo herd eval root "(lookup-service 'nscd)"
<apteryx>civodul: hi! I run this via sudo -E guix shell shepherd guile guile-fibers -> guile -> ,use (shepherd service) -> (lookup-services 'mcron)
<apteryx>the eval way works for me too; I wonder why it fails in a 'sudo -E guile repl'
<apteryx>*'sudo -E guix shell guile ...' repl
<civodul>apteryx: 'lookup-service' and in fact all the other procedures documented in the Shepherd manual are meant to be called within a running shepherd process
<civodul>so what you describe above cannot work
<civodul>instead, you may want to use a client: either the 'herd' command or the (gnu services herd) module
<civodul>it seems to be a common source of confusion so i guess we should adjust the manual to clarify that
<apteryx>I failed to get that from reading the manual indeed :-)
<apteryx>perhaps the API could even hint when it's used in the wrong environment
<apteryx>*when not used in the expected environment
<civodul>yeah
<apteryx>in our (gnu services herd) client, it'd be nice to have an easier way to check if a service is up
<apteryx>similar to (lookup-running? 'name) from (shepherd service)
<mirai>apteryx: be prepared for this kind of (nearly unusable) /var/log/message output <https://paste.centos.org/view/9c09b971>
<mirai>if you start using ¿anything? from (gnu services herd)
<mirai>I wish there was a non spammy way to get shepherd information (that isn't parsing 'herd status' output line by line)
<apteryx>I think there was a bug of mine about the strange/unhelpful Shepherd output, but I can't find it
<apteryx>this one? https://issues.guix.gnu.org/55857
<mirai>the UTF-8 comment is throwing me off a bit
<mirai>it happens in syslog and in a terminal?
<mirai>I thought it should already be UTF-8 aware no? It's displaying other non-ascii symbols correctly
<apteryx>the last comment/suggestion was to make use of syslog to flag the priority of messages
<mirai>syslog is not really equivalent to python's logging though
<mirai>given the context of the reply
<apteryx>I'm only becoming a syslog-aware person, but it seems pretty capable. Can it have multiple "handlers", such as not only sending to the syslogd, but also to the console?
<apteryx>the console of the application emitting the messages ?
<apteryx>if yes, then it seems it should be possible to specify: warning and above to the console + syslogd; the rest to syslogd only
<bjc>syslog can do just about whatever you want. it can send messages to one place, lots of places, or no place, based on a number of selection criteria
<bjc>its only real constraint is that it's strictly line based, so complex logging isn't really something it handles well
<apteryx>how to handle output of messages to stdout + stdout with syslog? or you have to reinvent your own framework for the local output?
<apteryx>*stdout + stderr
<bjc>local output needs to be sent there explicitly. there's often a /dev/log that can be used for redirection purposes
<apteryx>so that means a lot of yak shaving to get something nice to use for the local application, no?
<bjc>but it's better to just use syslog directly so you can control more directly how it logs, such as the level of particular messages
<apteryx>*local application's output
<bjc>i mean, "foo > /dev/log" doesn't seem like a lot of yak shaving to me?
<apteryx>I'll have to read on that one
<apteryx>I'd want errors and above to go stderr for example
<apteryx>lower to go stdout
<bjc>if this is happening through a framework like shepherd, it'd be better to have shepherd talk to syslog directly, though
<bjc>syslog has more than info/error levels, although admittedly, that may be more than you need
<apteryx>talking to syslogd directly seems easy, my main interrogation is with regard to the application's own output, e.g. a user running 'shepherd' manually and expecting to see its output to the console
<bjc>ah, i see. you can't do that with syslog. while it can log to the console, it won't necessarily be the one you're using
<apteryx>I guess that's why logging framework sitting that can send to syslog exists, such as https://www.nongnu.org/guile-lib/doc/ref/logging.logger/
<apteryx>I think it'd make sense to use these instead of reinventing the wheel, and refine it to the point it can be part of guile proper :-)
<apteryx>*logging frameworks that can send to syslog
<bjc>i hear good things about python's frequently emulated logging framework, but i'm not particularly familiar with it
<apteryx>it's good. particularly so because it comes as a standard library
<bjc>that's always a benefit. logging should be regarded as infrastructure
<apteryx>mirai: I'm curious why (memq sym (live-service-provision x)) is needed in your is-service-running?
<apteryx>isn't (live-service-running x) enough?
<apteryx>ah, I see it now
<apteryx>it needs to be running and matching the right name
<ternary>So I needed a couple extra modules for httpd on my server and made a derived package for it. It all works, but I ended up needing to pass the path to some dependent libraries as configure flags. I feel like the G-expressions I came up with are probably a super uverkill way of doing it, so can somebody look at it and tell me if there's a more straightforward way or if I'm even doing the right thing?
<ternary> https://p.twil.cx/vak.lsp
<civodul>apteryx: if 'live-service-running' returns a truth value, then the service is running
<civodul>you can see it used in 'wait-for-service', for instance
<apteryx>thanks
<maddo>hello
<maddo>I'm about to install guix for my first time as a nix user. I wanted to ask, what are some of the hot stuff currently being worked on guix and what is something that you wish was there in guix that was there in nix?