#!/usr/bin/env sh # -*- mode: scheme; -*- exec guile --no-auto-compile -e main -s "$0" "$@" !# ;;; gn-guile --- GN Guile web service ;;; Copyright © 2026 Frederick M. Muriithi ;;; ;;; This file is part of gn-guile ;;; ;;; gn-guile is free software: you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation, either version 3 of the License, or ;;; (at your option) any later version. ;;; ;;; gn-guile is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;;; General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with gn-guile. If not, see . (use-modules (config) (web config) (web gn-uri) (web webserver)) (define (main args) (write (string-append "Starting Guile REST API " get-version " server!")) (write args) (newline) (let* ((options (parse-cli-options args)) (listen (option-ref options 'port))) (when (option-ref options 'write) (options-write options)) (display `("listening on" ,listen)) (start-web-server "127.0.0.1" listen (cli-options->gn-guile-config options))))