In your README.md you state this module has the limitation that it "currently does not set default printers." Then later in the OSX-specifics section you mention "If you want to set the default printer, you cannot use lpoptions or lpadmin to do it." While I don't have an OSX and won't contest anything you've said there, I do see that the lp(1) man page has:
CUPS provides many ways to set the default destination. The "LPDEST" and "PRINTER"
environment variables are consulted first. If neither are set, the current default set using the
lpoptions(1) command is used, followed by the default set using the lpadmin(8) command.
Likewise, lpoptions(1) states:
-d destination[/instance]
Sets the user default printer to destination. If instance is supplied then that particular
instance is used. This option overrides the system default printer for the current user.
Indeed the "loptions -d foo" approach works for me in Fedora. It seems to me that this should be relatively easy to implement. Or am I missing something here?