Today I got tripped by some inconsistency in the syntax. Observe: - ~/.config/guix/channels.scm (list (channel (name 'guix) (url "https://example.org/my-guix.git") (branch "super-hacks"))) - /some/channel/with/deps/.guix-channel: (channel (version 0) (dependencies (channel (name some-collection) (url "https://example.org/first-collection.git")) (channel (name some-other-collection) (url "https://example.org/second-collection.git") (branch "testing")))) (Those are examples taken from the manual.) The former NAME field takes a quote while the latter does not. In the latter, when adding a quote we get the not-so-helpful error: --8<---------------cut here---------------start------------->8--- guix/channels.scm:326:22: Throw to key `match-error' with args `("match" "no matching pattern" #f)'. --8<---------------cut here---------------end--------------->8--- (Admittedly the backtrace gives a clue on what's happening, but still.) I haven't looked at the code and I guess that .guix-channel is only READ, not EVALed, while channels.scm is a first-class scheme code, right? Maybe we could match both 'SOME-NAME and SOME-NAME? Thoughts? -- Pierre Neidhardt https://ambrevar.xyz/