From 7e459811951f11b40e3cb66d9c8b72d6dafd7855 Mon Sep 17 00:00:00 2001 From: orignal Date: Fri, 23 Jan 2026 20:27:27 -0500 Subject: [PATCH] print correct directories in help depending on operating system --- libi2pd/Config.cpp | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/libi2pd/Config.cpp b/libi2pd/Config.cpp index d087380a..ddcc1e4b 100644 --- a/libi2pd/Config.cpp +++ b/libi2pd/Config.cpp @@ -28,17 +28,27 @@ namespace config { options_description m_OptionsDesc; variables_map m_Options; +#if defined(_WIN32) +#define path_to_file(file) "%appdata%\\i2pd\\" #file +#elif defined(MAC_OSX) +#define path_to_file(file) "~/Library/Application Support/i2pd/" #file +#elif defined(__HAIKU__) +#define path_to_file(file) "~/config/settings/i2pd/" #file +#else +#define path_to_file(file) "~/.i2pd/" #file " or /var/lib/i2pd/" #file +#endif + void Init() { options_description general("General options"); general.add_options() ("help", "Show this message") ("version", "Show i2pd version") - ("conf", value()->default_value(""), "Path to main i2pd config file (default: try ~/.i2pd/i2pd.conf or /var/lib/i2pd/i2pd.conf)") - ("tunconf", value()->default_value(""), "Path to config with tunnels list and options (default: try ~/.i2pd/tunnels.conf or /var/lib/i2pd/tunnels.conf)") - ("tunnelsdir", value()->default_value(""), "Path to extra tunnels' configs folder (default: ~/.i2pd/tunnels.d or /var/lib/i2pd/tunnels.d") - ("certsdir", value()->default_value(""), "Path to certificates used for verifying .su3, families (default: ~/.i2pd/certificates or /var/lib/i2pd/certificates") - ("pidfile", value()->default_value(""), "Path to pidfile (default: ~/i2pd/i2pd.pid or /var/lib/i2pd/i2pd.pid)") + ("conf", value()->default_value(""), "Path to main i2pd config file (default: try " path_to_file(i2pd.conf) ")") + ("tunconf", value()->default_value(""), "Path to config with tunnels list and options (default: try " path_to_file(tunnels.conf) ")") + ("tunnelsdir", value()->default_value(""), "Path to extra tunnels' configs folder (default: " path_to_file(tunnels.d)) + ("certsdir", value()->default_value(""), "Path to certificates used for verifying .su3, families (default: " path_to_file(certificates)) + ("pidfile", value()->default_value(""), "Path to pidfile (default: " path_to_file(i2pd.pid)) ("log", value()->default_value(""), "Logs destination: stdout, file, syslog (stdout if not set)") ("logfile", value()->default_value(""), "Path to logfile (stdout if not set, autodetect if daemon)") ("loglevel", value()->default_value("warn"), "Set the minimal level of log messages (debug, info, warn, error, none)")