]> Untitled Git - lemmy.git/blob - src/main.rs
detailed error message for blocked domains (#3698) (#3701)
[lemmy.git] / src / main.rs
1 use lemmy_server::{init_logging, start_lemmy_server};
2 use lemmy_utils::{error::LemmyError, settings::SETTINGS};
3
4 #[tokio::main]
5 pub async fn main() -> Result<(), LemmyError> {
6   init_logging(&SETTINGS.opentelemetry_url)?;
7   #[cfg(not(feature = "embed-pictrs"))]
8   start_lemmy_server().await?;
9   #[cfg(feature = "embed-pictrs")]
10   {
11     let pictrs_port = &SETTINGS
12       .pictrs_config()
13       .unwrap_or_default()
14       .url
15       .port()
16       .unwrap_or(8080);
17     let pictrs_address = ["127.0.0.1", &pictrs_port.to_string()].join(":");
18     pict_rs::ConfigSource::memory(serde_json::json!({
19         "server": {
20             "address": pictrs_address
21         },
22         "old_db": {
23             "path": "./pictrs/old"
24         },
25         "repo": {
26             "type": "sled",
27             "path": "./pictrs/sled-repo"
28         },
29         "store": {
30             "type": "filesystem",
31             "path": "./pictrs/files"
32         }
33     }))
34     .init::<&str>(None)
35     .expect("initialize pictrs config");
36     let (lemmy, pictrs) = tokio::join!(start_lemmy_server(), pict_rs::run());
37     lemmy?;
38     pictrs.expect("run pictrs");
39   }
40   Ok(())
41 }