If config files don't exist in user specified directory copy files from default, not override user choice
This commit is contained in:
@@ -574,7 +574,8 @@ int apply_flags(const char *line) {
|
|||||||
|
|
||||||
void apply_config(std::unordered_map<std::string, std::string> &&vars) {
|
void apply_config(std::unordered_map<std::string, std::string> &&vars) {
|
||||||
if(!fs::exists(stream.file_apps.c_str())) {
|
if(!fs::exists(stream.file_apps.c_str())) {
|
||||||
stream.file_apps = SUNSHINE_DEFAULT_DIR "/" APPS_JSON;
|
std::string sunshine_apps_default = SUNSHINE_DEFAULT_DIR "/" APPS_JSON;
|
||||||
|
fs::copy_file(sunshine_apps_default.c_str(), stream.file_apps.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
for(auto &[name, val] : vars) {
|
for(auto &[name, val] : vars) {
|
||||||
@@ -759,7 +760,8 @@ int parse(int argc, char *argv[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(!fs::exists(sunshine.config_file.c_str())) {
|
if(!fs::exists(sunshine.config_file.c_str())) {
|
||||||
sunshine.config_file = SUNSHINE_DEFAULT_DIR "/sunshine.conf";
|
std::string sunshine_config_default = SUNSHINE_DEFAULT_DIR "/sunshine.conf";
|
||||||
|
fs::copy_file(sunshine_config_default.c_str(), sunshine.config_file.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
auto vars = parse_config(read_file(sunshine.config_file.c_str()));
|
auto vars = parse_config(read_file(sunshine.config_file.c_str()));
|
||||||
|
|||||||
@@ -250,8 +250,7 @@ void saveApp(resp_https_t response, req_https_t request) {
|
|||||||
fileTree.erase("apps");
|
fileTree.erase("apps");
|
||||||
fileTree.push_back(std::make_pair("apps", newApps));
|
fileTree.push_back(std::make_pair("apps", newApps));
|
||||||
}
|
}
|
||||||
std::string sunshine_apps_path = SUNSHINE_CONFIG_DIR "/" APPS_JSON;
|
pt::write_json(config::stream.file_apps, fileTree);
|
||||||
pt::write_json(sunshine_apps_path, fileTree);
|
|
||||||
}
|
}
|
||||||
catch(std::exception &e) {
|
catch(std::exception &e) {
|
||||||
BOOST_LOG(warning) << "SaveApp: "sv << e.what();
|
BOOST_LOG(warning) << "SaveApp: "sv << e.what();
|
||||||
@@ -361,8 +360,7 @@ void saveConfig(resp_https_t response, req_https_t request) {
|
|||||||
|
|
||||||
configStream << kv.first << " = " << value << std::endl;
|
configStream << kv.first << " = " << value << std::endl;
|
||||||
}
|
}
|
||||||
std::string sunshine_config_path = SUNSHINE_CONFIG_DIR "/sunshine.conf";
|
write_file(config::sunshine.config_file.c_str(), configStream.str());
|
||||||
write_file(sunshine_config_path.c_str(), configStream.str());
|
|
||||||
}
|
}
|
||||||
catch(std::exception &e) {
|
catch(std::exception &e) {
|
||||||
BOOST_LOG(warning) << "SaveConfig: "sv << e.what();
|
BOOST_LOG(warning) << "SaveConfig: "sv << e.what();
|
||||||
|
|||||||
Reference in New Issue
Block a user