I want to start developing emacs packages. I would like to use cask, so I did:

$ cask init --dev

It worked well, and generated the Cask file

tree -La 1 
├── .git
├── .gitignore
├── Cask
└── README.org    

Then when I try cask install, I always get the same error:

cask install                                                                  
Opening input file: No such file or directory, /Users/toni/learn/emacs/yamelcs/TODO

If I created the TODO file I get:

cask install
Package lacks a file header in file TODO

I do not know what to do next

  • You can populate the file with the usual elisp headers with M-x checkdoc
    – user66
    Nov 21 '18 at 20:23

You're supposed to fill in the "TODO" in the Cask file with the actual package file of your project.


Cask is complaining that a file called TODO is missing the Emacs documentation header and footer containing the file's metadata.

Emacs has a very convenient command which helps with generating those header and footer comments: M-x checkdoc.

Call this command in your file and complete the questions in the minibuffer until it's all done. Save the file and run Cask again.

This should resolve the problem.

Besides creating the documentation header and footer checkdoc is also capable of checking the grammar in the documentation string of your elisp functions. This isn't a real spell checker and only helps writing documentation closer to Emacs' development guidelines.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.