commit a9d906a98b1e67de7156a93b6c5e6e9e86e3cda3
parent 304c446cb01f7d37aa004bae05030534e0a3fe15
Author: mtmn <miro@haravara.org>
Date: Thu, 23 Apr 2026 00:09:34 +0200
chore: add host to app config
Diffstat:
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/Config.purs b/src/Config.purs
@@ -43,6 +43,7 @@ type UserEntry =
type AppConfig =
{ port :: Int
+ , host :: String
, metricsEnabled :: Boolean
, users :: Array UserEntry
}
@@ -80,6 +81,7 @@ loadConfig path = do
Left msg -> throwError (error msg)
Right users -> pure users
portStr <- liftEffect $ lookupEnv "PORT"
+ hostStr <- liftEffect $ lookupEnv "HOST"
lastfmApiKey <- liftEffect $ lookupEnv "LASTFM_API_KEY"
discogsToken <- liftEffect $ lookupEnv "DISCOGS_TOKEN"
cosineApiKey <- liftEffect $ lookupEnv "COSINE_API_KEY"
@@ -110,8 +112,9 @@ loadConfig path = do
}
let
port = fromMaybe 8000 (portStr >>= Data.Int.fromString)
+ host = fromMaybe "127.0.0.1" hostStr
metricsEnabled = metricsEnabledStr == Just "true"
- fullConfig = { port, metricsEnabled, users: map (\u -> u { config = fillCreds u.config }) rawUsers }
+ fullConfig = { port, host, metricsEnabled, users: map (\u -> u { config = fillCreds u.config }) rawUsers }
case validateConfig fullConfig of
Left msg -> throwError (error msg)
Right cfg -> pure cfg
diff --git a/src/Main.purs b/src/Main.purs
@@ -350,7 +350,7 @@ main = do
let netServer = Server.toNetServer server
netServer # on_ listeningH do
- Log.info $ "Server is running on port " <> show appConfig.port
+ Log.info $ "Server is running on " <> appConfig.host <> ":" <> show appConfig.port
- listenTcp netServer { host: "127.0.0.1", port: appConfig.port, backlog: 128 }
+ listenTcp netServer { host: appConfig.host, port: appConfig.port, backlog: 128 }