IRC channel logs

2024-07-19.log

back to list of logs

<jfred>You know I'm also looking forward to Goblins Shepherd because I've had some annoying stability issues with Shepherd lately that really feel like they're related to blocking reads
<jfred>I haven't fully tracked down what's going on but that's what my gut is telling me
<jfred>I could see an asynchronous Goblins-based version helping
<dthompson>hmm really? interesting. the current architecture is mostly good about async i/o stuff. its built on fibers and even has a actor-like model
<jfred>Oh interesting
<dthompson>but that doesn't mean there aren't still issues ;)
<jfred>:P
<dthompson>but ludovic had the forethought to move to something resembling actors in the hopes that it would one day be fully actorized
<jfred>It's this: https://issues.guix.gnu.org/72166
<jfred>...and I'm having similar things happen with my user Shepherd on a foreign distro. At least with user Shepherd I can kill and restart it, that's harder when it's PID 1
<dthompson>innnnteresting
<jfred>It's possible it's related to something in my system or home config since similar things have happened on several machines
<civodul>dthompson: it’s structured as a set of “actors”, though it’s CSP semantics (no inbox, etc.)
<civodul> https://www.gnu.org/software/shepherd/manual/html_node/Service-Internals.html
<civodul>(hi! :-))
<dthompson>right! thanks for the link
<civodul>ACTION looks at the bug report
<dthompson>ah right, only one thread is used.
<dthompson>jfred: so yeah something could be misbehaving and blocking the thread
<jfred>I initially thought it might have been related to my custom Kanshi service (which I later realized works when Shepherd is started after Sway but gets very unhappy when started before) - it's weird that it's happened on both Shepherd instances on the one machine though
<jfred>I should dig into the Shepherd code some more, it has been very nice to work with (current bug notwithstanding)
<dthompson>same
<dthompson>I had more familiarity with a much older version of it, before fibers even
<jfred>I've been using it (+Guix) to run a newer version of Pipewire on my work machine since the version that shipped with the installed distro is too old to support screen sharing in Sway
<dthompson>oh neat
<dthompson>that's a cool use-case
<jfred>So nice that it runs just the same on foreign distros as on Guix System
<dthompson>pipewire is pretty darn good
<dthompson>I can use ardour *and* watch videos in my web browser at the same time
<jfred>It is, and as someone who's never used JACK before this qpwgraph is fun to play around with
<jfred>Some of my coworkers have tried to play music on our video conferences before with limited success, and though I haven't tried this yet it looks relatively straightforward to pipe audio from a media player into the conferencing app
<dthompson>so I actually did this on a spritely call once
<dthompson>and then I forgot to unhook stuff for another call and it played audio at an inopportune time lol
<jfred>😆
<dthompson>it was during the solar eclipse. I opened up NASA's livestream during a meeting to have it on in the background and it blasted the meeting with audio lol
<jfred>Good thing to remember if I ever do this haha
<civodul>jfred: just replied to https://issues.guix.gnu.org/72166, curious to see what shepherd version is running!
<civodul>crossing fingers in the hope the bug has already been fixed ;-)
<dthompson>🤞
<dthompson>ACTION just got (ice-9 vlist) to import and compile with hoot
<dthompson>many shims and stubs along the way to do it, but it works!
<civodul>quite an achievement!
<dthompson>:)
<dthompson>the bulk of the work is because (ice-9 vlist) imports (ice-9 format)
<dthompson>which imports (ice-9 pretty-print) and (ice-9 i18n), which import (ice-9 binary-ports) and so on
<civodul>oh, the rabbit hole
<dthompson>adding true guile compatibility to hoot has been quite the rabbit hole lol
<dthompson>quite a bit of "fake it 'til you make it" going on
<jfred>civodul: Thanks for taking a look!
<jfred>dthompson: If you fake it and it works, are you really faking it? ;P
<dthompson>:)
<dthompson>there's a good amount of (raise (make-unimplemented-error 'foo)) going on right now
<jfred>Aha
<dthompson>we're very focused on finding and fixing all the issues with compiling goblins using hoot
<dthompson>so if goblins doesn't absolutely need it at runtime I usually stub it like that
<Zarutian_iPad>sneek, botsnack.
<sneek>:)