config: fix generateConfig loop (#8164)

* config: fix generateConfig loop

* config: cleanup getMainConfigPath
This commit is contained in:
Maximilian Seidler 2024-10-19 14:49:56 +00:00 committed by GitHub
parent 0e630e9e74
commit e5d3a71263
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -688,14 +688,13 @@ std::string CConfigManager::getMainConfigPath() {
if (const auto CFG_ENV = getenv("HYPRLAND_CONFIG"); CFG_ENV) if (const auto CFG_ENV = getenv("HYPRLAND_CONFIG"); CFG_ENV)
return CFG_ENV; return CFG_ENV;
Debug::log(TRACE, "Seems as if HYPRLAND_CONFIG isn't set, let's see what we can do with HOME.");
static const auto paths = Hyprutils::Path::findConfig(ISDEBUG ? "hyprlandd" : "hyprland"); const auto PATHS = Hyprutils::Path::findConfig(ISDEBUG ? "hyprlandd" : "hyprland");
if (paths.first.has_value()) { if (PATHS.first.has_value()) {
return paths.first.value(); return PATHS.first.value();
} else if (paths.second.has_value()) { } else if (PATHS.second.has_value()) {
auto configPath = Hyprutils::Path::fullConfigPath(paths.second.value(), ISDEBUG ? "hyprlandd" : "hyprland"); const auto CONFIGPATH = Hyprutils::Path::fullConfigPath(PATHS.second.value(), ISDEBUG ? "hyprlandd" : "hyprland");
return generateConfig(configPath).value(); return generateConfig(CONFIGPATH).value();
} else } else
throw std::runtime_error("Neither HOME nor XDG_CONFIG_HOME are set in the environment. Could not find config in XDG_CONFIG_DIRS or /etc/xdg."); throw std::runtime_error("Neither HOME nor XDG_CONFIG_HOME are set in the environment. Could not find config in XDG_CONFIG_DIRS or /etc/xdg.");
} }