Hi, "pelzflorian (Florian Pelz)" writes: > Arnaud Daby-Seesaram writes: >>> Normally scm->go is probably unneeded here, because guile will find the compiled >>> .go file. However program-file seems to add --no-auto-compile. Not >>> sure now. >> I do not know why the flag --no-auto-compile is passed either. >> > > I am not sure if program-file or scheme-file should be preferred. I think that in our use case, program-file is better, because it does not require to call Guile explicitly in the Sway configuration (all we care about is that the serialised script "behaves like a menu program"). >>> Another more thing. I try (bar (sway-bar)), but it prints an empty bar >>> configuration to .config/sway/config. In patch 6, you added >>> no-serialization. Did this break it? >> >> Hmmm, I am not sure. >> It is normal that `(sway-bar)' is an empty bar configuration (as all bar >> fields are now optional or empty by default). > > Ooops, the identifier is not written, of course. > > (bar (sway-bar > (position 'top))) > > is fine. Not sure what defaults are best. Yes, this is arbitrary in my code. Rationale behind my choice: At first, I wanted to make the default value match that of the default Sway configuration file. However, this would force some fields to be mandatory (namely status-command, colors and position). As users may not want to specify these fields in their Sway configuration, IĀ preferred to make everything optional. > Arnaud Daby-Seesaram writes: >>>> (receive (from to pid) >>>> ((@@ (ice-9 popen) open-process) OPEN_BOTH wmenu) >>> >>> Better use @ instead of @@. >> Unfortunately, `open-process' is not exported in `(ice-9 popen)', so I >> kept @@. >> > > Not sure if exported open-pipe* would be better. open-process is > checked in guile tests, but not exported, that is right. But maybe a > red flag not to use it. I first tried to use (open-pipe wmenu OPEN_BOTH). However, I needed to close the port to wmenu before reading its output. I do not know how to do that with `open-pipe'. Best, -- Arnaud