From 8f829f86a3f6e3da47c85af3712f2888319fe5a3 Mon Sep 17 00:00:00 2001 From: Emir YILDIRIM Date: Tue, 9 Jun 2026 17:25:35 +0000 Subject: [PATCH 1/2] Add ENux Linux support (logo + Bedrock os-release detection) --- src/detection/os/os_linux.c | 18 +++++++++++++++--- src/logo/ascii/e.inc | 13 +++++++++++++ src/logo/ascii/e/enux.txt | 12 ++++++++++++ 3 files changed, 40 insertions(+), 3 deletions(-) create mode 100644 src/logo/ascii/e/enux.txt diff --git a/src/detection/os/os_linux.c b/src/detection/os/os_linux.c index fc653a3c64..4511c088f1 100644 --- a/src/detection/os/os_linux.c +++ b/src/detection/os/os_linux.c @@ -297,12 +297,24 @@ FF_A_UNUSED static bool detectFedoraVariant(FFOSResult* result) { return false; } -FF_A_UNUSED static bool detectBedrock(FFOSResult* os) { +static bool detectBedrock(FFOSResult* os) +{ const char* bedrockRestrict = getenv("BEDROCK_RESTRICT"); - if (bedrockRestrict && bedrockRestrict[0] == '1') { + if (bedrockRestrict && bedrockRestrict[0] == '1') return false; + + if (ffPathExists( + FASTFETCH_TARGET_DIR_ROOT "/bedrock/strata/enux", + FF_PATHTYPE_DIRECTORY)) + { + return parseOsRelease( + FASTFETCH_TARGET_DIR_ROOT "/bedrock/strata/enux/etc/os-release", + os); } - return parseOsRelease(FASTFETCH_TARGET_DIR_ROOT "/bedrock/strata/bedrock/etc/os-release", os); + + return parseOsRelease( + FASTFETCH_TARGET_DIR_ROOT "/bedrock/strata/bedrock/etc/os-release", + os); } FF_A_UNUSED static void detectDeepinEnhancement(FFOSResult* result) { diff --git a/src/logo/ascii/e.inc b/src/logo/ascii/e.inc index 3e5fd91081..efd795eed8 100644 --- a/src/logo/ascii/e.inc +++ b/src/logo/ascii/e.inc @@ -152,6 +152,19 @@ static const FFlogo E[] = { .colorTitle = FF_COLOR_FG_DEFAULT, }, #endif + #ifdef FASTFETCH_DATATEXT_LOGO_ENUX + // ENux + { + .names = { "enux" }, + .lines = FASTFETCH_DATATEXT_LOGO_ENUX, + // ENux renders entirely black: logo, keys, and title. + .colors = { + FF_COLOR_FG_BLACK, + }, + .colorKeys = FF_COLOR_FG_BLACK, + .colorTitle = FF_COLOR_FG_BLACK, + }, + #endif #ifdef FASTFETCH_DATATEXT_LOGO_ESHANIZEDOS // EshanizedOS { diff --git a/src/logo/ascii/e/enux.txt b/src/logo/ascii/e/enux.txt new file mode 100644 index 0000000000..457f287382 --- /dev/null +++ b/src/logo/ascii/e/enux.txt @@ -0,0 +1,12 @@ +eeeeeeeeeeeeeeeeeeeeeeee +eeeeeeeeeeeeeeeeeeeeeeee +eeeee +eeeee +eeeee +eeeeeeeeeeeeeeeeeeeeeeee +eeeeeeeeeeeeeeeeeeeeeeee +eeeee +eeeee +eeeee +eeeeeeeeeeeeeeeeeeeeeeee +eeeeeeeeeeeeeeeeeeeeeeee From 42c6a5a1d91ce10d02d6e345e7d02bc19312cc67 Mon Sep 17 00:00:00 2001 From: Emir YILDIRIM Date: Tue, 9 Jun 2026 17:51:11 +0000 Subject: [PATCH 2/2] Fall back to bedrock stratum if enux os-release fails to parse --- src/detection/os/os_linux.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/detection/os/os_linux.c b/src/detection/os/os_linux.c index 4511c088f1..52075ce7c2 100644 --- a/src/detection/os/os_linux.c +++ b/src/detection/os/os_linux.c @@ -305,11 +305,12 @@ static bool detectBedrock(FFOSResult* os) if (ffPathExists( FASTFETCH_TARGET_DIR_ROOT "/bedrock/strata/enux", - FF_PATHTYPE_DIRECTORY)) - { - return parseOsRelease( + FF_PATHTYPE_DIRECTORY) && + parseOsRelease( FASTFETCH_TARGET_DIR_ROOT "/bedrock/strata/enux/etc/os-release", - os); + os)) + { + return true; } return parseOsRelease(