> See SRFI-37 in Guile’s manual. Yeah, I've already checked it, but it's very brief.
I created a simple function to test command-line options, but I'm having
the same problems. Here is the function:
(define* (foo #:optional arg)
(if arg
(simple-format #t "Just ~a~%" arg)
(simple-format #t "Nothing~%")))
The following version works:
(option '("foo") #f #t
(lambda (opt name arg result)
(foo arg)
(exit 0)))
# ./pre-inst-env guix-package --foo=42
Just 42
# ./pre-inst-env guix-package --foo
Nothing
This one doesn't work at all:
(option '("foo") #f #t
(lambda (opt name arg result)
(alist-cons 'foo arg result)))
Actually, the above helped me to understand that we want '--roll-back'
to behave differently than '--foo'. '--roll-back' shouldn't accept any
options at all, but it should somehow get the argument of '--profile'.
How can I do it?
Nikita
pgpbqngyDC01O.pgp
Description: PGP signature
