I hate to be that guy, but why not use pscal ?
It has all you want, plus moon phases!
It's admittedly harder to find these days, and someone should rewrite it in a decent language, but here it is:
https://www.panix.com/~mbh/pscal/