Le 10 novembre 2017 15:47:37 GMT+01:00, myglc2 <myg...@gmail.com> a écrit : >On 11/10/2017 at 00:04 Ludovic Courtès writes: >> >> Thrilled by this idea, I pushed an unbound-variable handler that can >> provide hints, such as: >> >> configuration.scm:88:19: zip: unbound variable >> hint: Try adding `(use-modules (gnu packages compression))'. >> >> Feedback welcome! > >I built and played with this. If I follow some of the hints literally >they lead me astray. Here are some suggested hint rewording. > >Note: You can reproduce the errors/hints below with the attached files. > >HTH - George > >HINT REWORDING SUGGESTIONS: > >*** test2: "NON EXISTANT PACKAGE MODULE (qemu) for qemu PACKAGE >SPECIFIED" > >The error messages ... > >/root/ctest/test2:4:0: error: module (gnu packages qemu) not found >hint: Try adding `(use-package-modules virtualization)'. > >... are followed literally in test2.fix, which does not fix the >problem because the stale and non-existant 'qemu' package module >reference also needs to be removed. > >Maybe a better hint would be ... > >hint: Remove the reference to the pachage module that was not >hint: found and add `(use-package-modules virtualization)'. > > *** test3: 'NON EXISTANT (openssh) SERVICE MODULE specified' > >This has the same conceptual problem as test2 above. > >The error messages ... > >/root/ctest/test3:3:0: error: module (gnu services openssh) not found >hint: Try adding `(use-service-modules ssh)'. > >... are followed literally in test3.fix, which does not fix the >problem because the non-existant 'openssh' service module >reference also needs to be removed. > >Maybe a better hint would be ... > >hint: Remove the reference to the service module that was not >hint: found and add `(use-service-modules ssh)'. > >*** test4: "SERVICE MODULE (ssh) for openssh-service-type SERVICE >MISSING" > >A more helpful hint here ... > >/root/ctest/test4:46:19: /root/ctest/test4:46:19: openssh-service-type: >unbound variable >hint: Did you forget a `use-modules' form? > >... would be ... > >hint: Try adding `(use-service-modules ssh)'. > > *** > >VERSION INFO: > >74bea6a03 gnu: linux-libre: Update to 4.13.12. > >make check failed as reported in bug#29245 but I don't think those >errors affect what I am seeing here. > >TEST FILES:
I saw that last hint today buveuse I misspelled a type name (dovecot-configurtation). I understand the hint is great when you forget to import a service module, but it's not so great when the error is misspelling. Maybe the solution would be: if the unbound variable is the name of a service, propose using that module, otherwise don't show any hint.