From 1dd942a7b105b80f65ed7584cf860ed6c90a6fa5 Mon Sep 17 00:00:00 2001 From: Linus Dierheimer Date: Sun, 9 Oct 2022 10:39:57 +0200 Subject: [PATCH] TARGET_DIR_ETC --- CMakeLists.txt | 20 ++++++++++---------- src/common/init.c | 4 ++-- src/detection/font/font.h | 6 +++--- src/detection/os/os_linux.c | 6 +++--- src/detection/terminalfont/terminalfont.c | 4 ++-- src/fastfetch.c | 2 +- src/fastfetch_config.h.in | 2 ++ src/modules/locale.c | 6 +++--- src/modules/packages.c | 4 ++-- 9 files changed, 28 insertions(+), 26 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ad108cd95..7aa082288 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -123,7 +123,16 @@ if(NOT TARGET_DIR_HOME) endif() if(NOT TARGET_DIR_ETC) - set(TARGET_DIR_ETC "${CMAKE_INSTALL_SYSCONFDIR}") + set(TARGET_DIR_ETC "${TARGET_DIR_ROOT}/etc") +endif() + +#https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT.html +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${TARGET_DIR_USR}" CACHE PATH "..." FORCE) +endif() + +if(NOT CMAKE_INSTALL_SYSCONFDIR) + set(CMAKE_INSTALL_SYSCONFDIR "${TARGET_DIR_ETC}" CACHE PATH "..." FORCE) endif() ################# @@ -466,15 +475,6 @@ endif() # install target # ################## -#https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT.html -if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - set(CMAKE_INSTALL_PREFIX "${TARGET_DIR_USR}" CACHE PATH "..." FORCE) -endif() - -if(NOT CMAKE_INSTALL_SYSCONFDIR) - set(CMAKE_INSTALL_SYSCONFDIR "${TARGET_DIR_ROOT}/etc" CACHE PATH "..." FORCE) -endif() - include(GNUInstallDirs) install( diff --git a/src/common/init.c b/src/common/init.c index ec5dab5d3..c11c59103 100644 --- a/src/common/init.c +++ b/src/common/init.c @@ -76,12 +76,12 @@ static void initConfigDirs(FFstate* state) FFstrbuf* systemConfigHome = ffListAdd(&state->configDirs); ffStrbufInitA(systemConfigHome, 64); - ffStrbufAppendS(systemConfigHome, FASTFETCH_TARGET_DIR_ROOT"/etc/xdg/"); + ffStrbufAppendS(systemConfigHome, FASTFETCH_TARGET_DIR_ETC"/xdg/"); FF_ENSURE_ONLY_ONCE_IN_LIST(systemConfigHome) FFstrbuf* systemConfig = ffListAdd(&state->configDirs); ffStrbufInitA(systemConfig, 64); - ffStrbufAppendS(systemConfig, FASTFETCH_TARGET_DIR_ROOT"/etc/"); + ffStrbufAppendS(systemConfig, FASTFETCH_TARGET_DIR_ETC"/"); FF_ENSURE_ONLY_ONCE_IN_LIST(systemConfig) #undef FF_ENSURE_ONLY_ONCE_IN_LIST diff --git a/src/detection/font/font.h b/src/detection/font/font.h index fa02bbd37..de78e5a92 100644 --- a/src/detection/font/font.h +++ b/src/detection/font/font.h @@ -12,9 +12,9 @@ typedef struct FFFontResult FFstrbuf error; /** - * Linux / BSD: QT, GTK2, GTK3, GTK4 - * MacOS: System, User, Monospace, Application - * Other: Unset, Unset, Unset, Unset + * Linux / BSD: QT, GTK2, GTK3, GTK4 + * MacOS: System, User, Monospace, Application + * Other: Unset, Unset, Unset, Unset */ FFstrbuf fonts[FF_DETECT_FONT_NUM_FONTS]; } FFFontResult; diff --git a/src/detection/os/os_linux.c b/src/detection/os/os_linux.c index ecdb87fc8..73c513922 100644 --- a/src/detection/os/os_linux.c +++ b/src/detection/os/os_linux.c @@ -101,7 +101,7 @@ static void detectOS(FFOSResult* os, const FFinstance* instance) return; } - if(instance->config.escapeBedrock && parseFile(FASTFETCH_TARGET_DIR_ROOT"/bedrock/etc/bedrock-release", os)) + if(instance->config.escapeBedrock && parseFile(FASTFETCH_TARGET_DIR_ROOT"/bedrock"FASTFETCH_TARGET_DIR_ETC"/bedrock-release", os)) { if(os->id.length == 0) ffStrbufAppendS(&os->id, "bedrock"); @@ -115,7 +115,7 @@ static void detectOS(FFOSResult* os, const FFinstance* instance) return; } - parseFile(FASTFETCH_TARGET_DIR_ROOT"/etc/os-release", os); + parseFile(FASTFETCH_TARGET_DIR_ETC"/os-release", os); if(allRelevantValuesSet(os)) return; @@ -123,7 +123,7 @@ static void detectOS(FFOSResult* os, const FFinstance* instance) if(allRelevantValuesSet(os)) return; - parseFile(FASTFETCH_TARGET_DIR_ROOT"/etc/lsb-release", os); + parseFile(FASTFETCH_TARGET_DIR_ETC"/lsb-release", os); } void ffDetectOSImpl(FFOSResult* os, const FFinstance* instance) diff --git a/src/detection/terminalfont/terminalfont.c b/src/detection/terminalfont/terminalfont.c index 1eff1738f..2ecb332df 100644 --- a/src/detection/terminalfont/terminalfont.c +++ b/src/detection/terminalfont/terminalfont.c @@ -42,7 +42,7 @@ static void detectTTY(FFTerminalFontResult* terminalFont) FFstrbuf fontName; ffStrbufInit(&fontName); - ffParsePropFile(FASTFETCH_TARGET_DIR_ROOT"/etc/vconsole.conf", "Font =", &fontName); + ffParsePropFile(FASTFETCH_TARGET_DIR_ETC"/vconsole.conf", "Font =", &fontName); if(fontName.length == 0) { @@ -59,7 +59,7 @@ static void detectTTY(FFTerminalFontResult* terminalFont) if(fontName.length > 0) ffFontInitCopy(&terminalFont->font, fontName.chars); else - ffStrbufAppendS(&terminalFont->error, "Couldn't find Font in /etc/vconsole.conf"); + ffStrbufAppendS(&terminalFont->error, "Couldn't find Font in "FASTFETCH_TARGET_DIR_ETC"/vconsole.conf"); ffStrbufDestroy(&fontName); } diff --git a/src/fastfetch.c b/src/fastfetch.c index dd6f7ff86..c20bf5ba3 100644 --- a/src/fastfetch.c +++ b/src/fastfetch.c @@ -1308,7 +1308,7 @@ static void parseOption(FFinstance* instance, FFdata* data, const char* key, con static void parseConfigFileSystem(FFinstance* instance, FFdata* data) { - parseConfigFile(instance, data, FASTFETCH_TARGET_DIR_ETC"/fastfetch/config.conf"); + parseConfigFile(instance, data, FASTFETCH_TARGET_DIR_INSTALL_SYSCONF"/fastfetch/config.conf"); } static void parseConfigFileUser(FFinstance* instance, FFdata* data) diff --git a/src/fastfetch_config.h.in b/src/fastfetch_config.h.in index 982a5a313..40677fa6b 100644 --- a/src/fastfetch_config.h.in +++ b/src/fastfetch_config.h.in @@ -13,6 +13,8 @@ #define FASTFETCH_TARGET_DIR_HOME "@TARGET_DIR_HOME@" #define FASTFETCH_TARGET_DIR_ETC "@TARGET_DIR_ETC@" +#define FASTFETCH_TARGET_DIR_INSTALL_SYSCONF "@CMAKE_INSTALL_SYSCONFDIR@" + #define FASTFETCH_DATATEXT_STRUCTURE "@DATATEXT_STRUCTURE@" #define FASTFETCH_DATATEXT_CONFIG_SYSTEM "@DATATEXT_CONFIG_SYSTEM@" //Requires FASTFETCH_PROJECT_VERSION to be set #define FASTFETCH_DATATEXT_CONFIG_USER "@DATATEXT_CONFIG_USER@" //Requires FASTFETCH_PROJECT_VERSION and FASTFETCH_DATATEXT_STRUCTURE to be set diff --git a/src/modules/locale.c b/src/modules/locale.c index 1d1c27456..56ec93831 100644 --- a/src/modules/locale.c +++ b/src/modules/locale.c @@ -43,12 +43,12 @@ void ffPrintLocale(FFinstance* instance) //Ubuntu (and deriviates) use a non standard locale file. //Parse it first, because on distributions where it exists, it takes precedence. - //Otherwise use the standard /etc/locale.conf file. - ffParsePropFile(FASTFETCH_TARGET_DIR_ROOT"/etc/default/locale", "LANG =", &locale); + //Otherwise use the standard etc/locale.conf file. + ffParsePropFile(FASTFETCH_TARGET_DIR_ETC"/default/locale", "LANG =", &locale); if(locale.length == 0) { - ffParsePropFile(FASTFETCH_TARGET_DIR_ROOT"/etc/locale.conf", "LANG =", &locale); + ffParsePropFile(FASTFETCH_TARGET_DIR_ETC"/locale.conf", "LANG =", &locale); } if(locale.length == 0) diff --git a/src/modules/packages.c b/src/modules/packages.c index 5ddba446a..62d5b9344 100644 --- a/src/modules/packages.c +++ b/src/modules/packages.c @@ -379,7 +379,7 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack ffStrbufSubstrBefore(baseDir, baseDirLength); //pacman branch - ffStrbufAppendS(baseDir, "/etc/pacman-mirrors.conf"); + ffStrbufAppendS(baseDir, FASTFETCH_TARGET_DIR_ETC"/pacman-mirrors.conf"); if(ffParsePropFile(baseDir->chars, "Branch =", &packageCounts->pacmanBranch) && packageCounts->pacmanBranch.length == 0) ffStrbufAppendS(&packageCounts->pacmanBranch, "stable"); ffStrbufSubstrBefore(baseDir, baseDirLength); @@ -399,7 +399,7 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack ffStrbufAppendS(baseDir, "/var/db/pkg/local.sqlite"); packageCounts->pkg += (uint32_t) ffSettingsGetSQLite3Int(instance, baseDir->chars, "SELECT count(id) FROM packages"); ffStrbufSubstrBefore(baseDir, baseDirLength); - + #endif // __FreeBSD__ }