aboutsummaryrefslogtreecommitdiff
path: root/src/config_global.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/config_global.c')
-rw-r--r--src/config_global.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/config_global.c b/src/config_global.c
index 14f3a26..0c32ebb 100644
--- a/src/config_global.c
+++ b/src/config_global.c
@@ -164,6 +164,7 @@ void init_config_global(void) {
SPM_GLOBAL.config = NULL;
SPM_GLOBAL.verbose = 0;
SPM_GLOBAL.repo_target = NULL;
+ SPM_GLOBAL.mirror_list = NULL;
if (uname(&SPM_GLOBAL.sysinfo) != 0) {
fprintf(SYSERROR);
@@ -205,6 +206,18 @@ void init_config_global(void) {
SPM_GLOBAL.repo_target = normpath(item->value);
}
+ // Initialize mirror list filename
+ SPM_GLOBAL.mirror_config = join((char *[]) {SPM_GLOBAL.user_config_basedir, SPM_MIRROR_FILENAME, NULL}, DIRSEPS);
+ item = config_get(SPM_GLOBAL.config, "mirror_config");
+ if (item) {
+ free(SPM_GLOBAL.mirror_config);
+ SPM_GLOBAL.mirror_config = normpath(item->value);
+ }
+
+ if (SPM_GLOBAL.mirror_config != NULL) {
+ SPM_GLOBAL.mirror_list = mirror_list(SPM_GLOBAL.mirror_config);
+ }
+
// Initialize temp directory
item = config_get(SPM_GLOBAL.config, "tmp_dir");
if (item) {