mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-07-13 11:21:30 +00:00
Auto-detect userspace directory.
This commit is contained in:
parent
fb216c21fb
commit
b441da6a85
@ -8,7 +8,22 @@ from milc import cli
|
|||||||
|
|
||||||
# The root of the qmk_firmware tree.
|
# The root of the qmk_firmware tree.
|
||||||
QMK_FIRMWARE = Path.cwd()
|
QMK_FIRMWARE = Path.cwd()
|
||||||
QMK_USERSPACE = environ.get('QMK_USERSPACE') or cli.config.user.overlay_dir or QMK_FIRMWARE
|
|
||||||
|
|
||||||
|
# Helper to detect userspace
|
||||||
|
def _detect_qmk_userspace():
|
||||||
|
# If we're already in a directory with a Makefile and a keyboards or layouts directory, interpret it as userspace
|
||||||
|
current_dir = Path(environ['ORIG_CWD'])
|
||||||
|
while len(current_dir.parts) > 1:
|
||||||
|
if (current_dir / 'Makefile').is_file() and ((current_dir / 'keyboards').is_dir() or (current_dir / 'layouts').is_dir()):
|
||||||
|
return current_dir
|
||||||
|
current_dir = current_dir.parent
|
||||||
|
# Otherwise, use the environment variable or the configured default
|
||||||
|
return environ.get('QMK_USERSPACE') or cli.config.user.overlay_dir or QMK_FIRMWARE
|
||||||
|
|
||||||
|
|
||||||
|
# The detected userspace tree
|
||||||
|
QMK_USERSPACE = _detect_qmk_userspace()
|
||||||
|
|
||||||
# Upstream repo url
|
# Upstream repo url
|
||||||
QMK_FIRMWARE_UPSTREAM = 'qmk/qmk_firmware'
|
QMK_FIRMWARE_UPSTREAM = 'qmk/qmk_firmware'
|
||||||
|
Loading…
Reference in New Issue
Block a user