settings.rs 1020 B

12345678910111213141516171819202122232425262728293031323334
  1. use std::net::SocketAddr;
  2. use serde::Deserialize;
  3. use structopt::StructOpt;
  4. use structopt_toml::StructOptToml;
  5. use darkfi::net::settings::SettingsOpt;
  6. pub const CONFIG_FILE: &str = "ircd_config.toml";
  7. pub const CONFIG_FILE_CONTENTS: &str = include_str!("../ircd_config.toml");
  8. /// ircd cli
  9. #[derive(Clone, Debug, Deserialize, StructOpt, StructOptToml)]
  10. #[serde(default)]
  11. #[structopt(name = "ircd")]
  12. pub struct Args {
  13. /// Sets a custom config file
  14. #[structopt(long)]
  15. pub config: Option<String>,
  16. /// JSON-RPC listen URL
  17. #[structopt(long = "rpc", default_value = "127.0.0.1:11055")]
  18. pub rpc_listen: SocketAddr,
  19. /// IRC listen URL
  20. #[structopt(long = "irc", default_value = "127.0.0.1:11066")]
  21. pub irc_listen: SocketAddr,
  22. /// Sets Datastore Path
  23. #[structopt(long, default_value = "~/.config/ircd")]
  24. pub datastore: String,
  25. #[structopt(flatten)]
  26. pub net: SettingsOpt,
  27. /// Increase verbosity
  28. #[structopt(short, parse(from_occurrences))]
  29. pub verbose: u8,
  30. }