Hi Tristan, On Thu, May 23 2024, Tristan Kohl via wrote:
> I did not even think about using Guile as the executable :D Congratulations! Maybe you will stop writing shell scripts altogether. > Wrong type to apply: #<unspecified> For me, that error often means an extra pair of parentheses, such as trying to evaluate a constant, but here the issue could be that http-get returns two values. [1] Maybe this works without an error? (use-module (gnu) (guix modules)) (use-package-modules tls) (define smartd-send-ntfy (program-file "smartd-send-ntfy" (with-extensions (list gnutls) (with-imported-modules (source-module-closure '((ice-9 receive) (web client))) #~((use-modules (ice-9 receive) (web client)) (receive (_ body) (http-get "https://example.com") body))))) Instead of the string body, you could return a success value via something like (not (string-null? body)) You can look at the values in the comfort of the Guile REPL, or in Emacs Geiser. Kind regards Felix [1] https://www.gnu.org/software/guile//manual/html_node/Multiple-Values.html