#!%GUILE% --no-auto-compile -*- scheme -*- !# ;;;; mcron -- run jobs at scheduled times ;;; Copyright © 2003, 2012, 2020, 2022 Dale Mellor ;;; Copyright © 2015, 2016, 2018 Mathieu Lirzin ;;; ;;; This file is part of GNU Mcron. ;;; ;;; GNU Mcron 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. ;;; ;;; GNU Mcron 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 GNU Mcron. If not, see . (unless (getenv "MCRON_UNINSTALLED") (set! %load-path (cons "%modsrcdir%" %load-path)) (set! %load-compiled-path (cons "%modbuilddir%" %load-compiled-path))) (use-modules (mcron scripts mcron) (mcron utils) (mcron command-line-processor)) (process-command-line (command-line) application "mcron" version "%VERSION%" usage "[OPTIONS ...] [FILES ...]" help-preamble "Run unattended jobs according to instructions in the FILES... " "(`-' for standard input), or use all the files in ~/.config/cron " "(or the deprecated ~/.cron) with .guile or .vixie extensions.\n" "Note that --daemon and --schedule are mutually exclusive." option (--daemon -d "run as a daemon process") option (--schedule=8 -s string->number "display the next N (or 8) jobs that will be run," "and then exit") option (--stdin=guile short-i (λ (in) (or (string=? in "guile") (string=? in "vixie"))) "format of data passed as standard input or file " "arguments, 'guile' or 'vixie' (default guile)") option (--log -l "write log messages to standard output") option (--log-format= "(ice-9 format) format string for log messages") option (--date-format= "(srfi srfi-19) date format for log messages") help-postamble "Mandatory or optional arguments to long options are also mandatory or " "optional for any corresponding short options." bug-address "%PACKAGE_BUGREPORT%" copyright "2003 - 2022 Free Software Foundation, Inc." license GPLv3) (catch-mcron-error (main --daemon --schedule --stdin --log --log-format --date-format --!))