@@ -5,7 +5,7 @@ import Options.Applicative
55import ProjectM36.Daemon.Config
66
77parseArgs :: Parser DaemonConfig
8−parseArgs = DaemonConfig <$> parsePersistenceStrategy <*> parseDatabaseName
8+parseArgs = DaemonConfig <$> parsePersistenceStrategy <*> parseDatabaseName <*> parseHostname <*> parsePort
99
1010parsePersistenceStrategy :: Parser PersistenceStrategy
1111parsePersistenceStrategy = CrashSafePersistence <$> (dbdirOpt <* fsyncOpt) <|>
@@ -25,6 +25,18 @@ parseDatabaseName :: Parser DatabaseName
2525parseDatabaseName = strOption (short 'n' <>
2626 long "database" <>
2727 metavar "DATABASE_NAME")
28+
29+parseHostname :: Parser Hostname
30+parseHostname = strOption (short 'h' <>
31+ long "hostname" <>
32+ metavar "HOST_NAME" <>
33+ value (bindHost defaultDaemonConfig))
34+
35+parsePort :: Parser Port
36+parsePort = option auto (short 'p' <>
37+ long "port" <>
38+ metavar "PORT_NUMBER" <>
39+ value (bindPort defaultDaemonConfig))
2840
2941parseConfig :: IO DaemonConfig
3042parseConfig = execParser $ info parseArgs idm