qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

commit 08e5fcfdf44c73fbbc8887b100fccd00006aa02e
parent 1322922c420e56ea45534d5fc74365168f5bf487
Author: psych3r <abdalrahman.mursi@gmail.com>
Date:   Sat,  6 Dec 2025 00:25:48 +0200

Fix USER_PATH resolution on case-insensitive filesystems (#25853)

When QMK_USERSPACE is empty, the wildcard check in build_keyboard.mk
incorrectly matches user home directories on case-insensitive filesystems
(macOS/Windows), causing USER_PATH to resolve to an absolute path instead
of a relative path.

This only affects users whose username matches their user directory name
(e.g., username 'psycher' with home '/Users/psycher' and QMK user dir
'users/psycher').

Fix by checking if QMK_USERSPACE is non-empty before performing the
wildcard check.
Diffstat:
Mbuilddefs/build_keyboard.mk | 6++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk @@ -474,8 +474,10 @@ ifneq ($(wildcard $(QMK_USERSPACE)),) endif # If the equivalent users directory exists in userspace, use that in preference to anything currently in the main repo -ifneq ($(wildcard $(QMK_USERSPACE)/$(USER_PATH)),) - USER_PATH := $(QMK_USERSPACE)/$(USER_PATH) +ifneq ($(QMK_USERSPACE),) + ifneq ($(wildcard $(QMK_USERSPACE)/$(USER_PATH)),) + USER_PATH := $(QMK_USERSPACE)/$(USER_PATH) + endif endif # Pull in user level rules.mk