guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 3/3] gnu: Add guile-daemon.


From: Alex Kost
Subject: Re: [PATCH 3/3] gnu: Add guile-daemon.
Date: Sun, 24 Jul 2016 09:13:21 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Ludovic Courtès (2016-07-23 14:07 +0300) wrote:

> Alex Kost <address@hidden> skribis:
>
>> * gnu/packages/guile.scm (guile-daemon): New variable.
>
> OK!
>
>> +    (home-page "https://github.com/alezost/guile-daemon";)
>> +    (synopsis "Evaluate code in a running Guile process")
>> +    (description
>> +     "Guile-Daemon is a small Guile program that loads your initial
>> +configuration file, and then reads and evaluates Guile expressions that
>> +you send to a FIFO file.")
>
> This looks a lot like ‘guile --listen’, except without the REPL prompt
> and stuff, right?

Sorry, I don't understand what «without the REPL prompt and stuff» means :-)

I wrote Guile-Daemon because I needed a general-purpose guile process
running all the time to which I can send expressions for evaluating.

So I run 'guile-daemon', and then I can do something like this:

  echo '(something #:useful? #t)' > /path/to/daemon-fifo-file

Actually there is 'gdpipe' shell script that does this redirection:

  gdpipe '(something #:useful? #t)'

As for 'guile --listen', yes, Guile-Daemon also starts a socket to which
you can connect with "M-x geiser-connect-local" or alike.

If anyone is interested, I use it as an OSD daemon, particularly to set
sound volume/muteness and to display it using Guile-XOSD.  Here is a
small demo:

https://raw.github.com/alezost/guile-daemon-config/master/sound-volume-demo.gif

My Guile-Daemon config:
<https://github.com/alezost/guile-daemon-config>.

-- 
Alex



reply via email to

[Prev in Thread] Current Thread [Next in Thread]