Compare commits

...

2 commits

Author SHA1 Message Date
nerf van nerfingen
85344c0867 added stuff to readme 2022-11-14 12:25:00 +01:00
nerf van nerfingen
cbc22ea207 made the config file format a bit more sensible 2022-11-14 12:13:42 +01:00
2 changed files with 16 additions and 14 deletions

View file

@ -16,12 +16,13 @@ The config file is a toml file, even though it as of now makes not really use
of any toml features.
```toml
mailDomain = "the domain of the smtp server to send messages with"
mailUser = "the username on the smtp server"
mailPassword = "the passwond on the smtp server"
mailTo = "the mail to send to"
mailFrom = "the sender of the mail"
mailErrorTo = "the address to send a mail to in case of error"
[mail]
domain = "the domain of the smtp server to send messages with"
user = "the username on the smtp server"
password = "the passwond on the smtp server"
to = "the mail to send to"
from = "the sender of the mail"
errorTo = "the address to send a mail to in case of error"
```
## Develop
@ -33,4 +34,5 @@ this depends on your local cabal cache.
- Add the nix modules to the flake
- Better Error handling
- Find out which exceptions the SMTP module throws
- Split config into secrets and non secret config
- make the pad url configurable

View file

@ -16,13 +16,13 @@ data Config = Config {
} deriving Show
configCodec :: TomlCodec Config
configCodec = Config
<$> Toml.string "mailDomain" .= mailDomain
<*> Toml.string "mailUser" .= mailUsername
<*> Toml.string "mailPassword" .= mailPassword
<*> Toml.text "mailTo" .= mailTo
<*> Toml.text "mailFrom" .= mailFrom
<*> Toml.text "mailErrorTo" .= mailErrorTo
configCodec = flip Toml.table "mail" $ Config
<$> Toml.string "domain" .= mailDomain
<*> Toml.string "user" .= mailUsername
<*> Toml.string "password" .= mailPassword
<*> Toml.text "to" .= mailTo
<*> Toml.text "from" .= mailFrom
<*> Toml.text "errorTo" .= mailErrorTo
parseConfigFile :: (MonadIO m, MonadFail m) => String -> m Config
parseConfigFile path = do