diff options
author | QMK Bot <hello@qmk.fm> | 2021-09-27 17:03:42 +0000 |
---|---|---|
committer | QMK Bot <hello@qmk.fm> | 2021-09-27 17:03:42 +0000 |
commit | bca7a99e7aad2ff0a4aaed2d0e755e2d6bd7cee6 (patch) | |
tree | 764b035dc6beebd5ced279f02d10b5b0e0720894 /lib/python | |
parent | a311514f43de7cf7bde758a691419a95367cebe2 (diff) | |
parent | fce9cb933845bf0b74d322eba02de3b76daaeb84 (diff) | |
download | qmk_firmware-bca7a99e7aad2ff0a4aaed2d0e755e2d6bd7cee6.tar.gz qmk_firmware-bca7a99e7aad2ff0a4aaed2d0e755e2d6bd7cee6.zip |
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'lib/python')
-rw-r--r-- | lib/python/qmk/cli/doctor/linux.py | 8 | ||||
-rwxr-xr-x | lib/python/qmk/cli/doctor/main.py | 9 | ||||
-rwxr-xr-x | lib/python/qmk/cli/generate/config_h.py | 2 | ||||
-rw-r--r-- | lib/python/qmk/cli/generate/dfu_header.py | 2 | ||||
-rwxr-xr-x | lib/python/qmk/cli/generate/keyboard_h.py | 2 | ||||
-rwxr-xr-x | lib/python/qmk/cli/generate/layouts.py | 2 | ||||
-rw-r--r-- | lib/python/qmk/info.py | 8 | ||||
-rw-r--r-- | lib/python/qmk/keymap.py | 4 |
8 files changed, 18 insertions, 19 deletions
diff --git a/lib/python/qmk/cli/doctor/linux.py b/lib/python/qmk/cli/doctor/linux.py index 6ce00f6ef..94683d330 100644 --- a/lib/python/qmk/cli/doctor/linux.py +++ b/lib/python/qmk/cli/doctor/linux.py | |||
@@ -118,10 +118,9 @@ def check_udev_rules(): | |||
118 | cli.log.warning("{fg_yellow}Found old, deprecated udev rules for '%s' boards. The new rules on https://docs.qmk.fm/#/faq_build?id=linux-udev-rules offer better security with the same functionality.", bootloader) | 118 | cli.log.warning("{fg_yellow}Found old, deprecated udev rules for '%s' boards. The new rules on https://docs.qmk.fm/#/faq_build?id=linux-udev-rules offer better security with the same functionality.", bootloader) |
119 | else: | 119 | else: |
120 | # For caterina, check if ModemManager is running | 120 | # For caterina, check if ModemManager is running |
121 | if bootloader == "caterina": | 121 | if bootloader == "caterina" and check_modem_manager(): |
122 | if check_modem_manager(): | 122 | cli.log.warning("{fg_yellow}Detected ModemManager without the necessary udev rules. Please either disable it or set the appropriate udev rules if you are using a Pro Micro.") |
123 | rc = CheckStatus.WARNING | 123 | |
124 | cli.log.warning("{fg_yellow}Detected ModemManager without the necessary udev rules. Please either disable it or set the appropriate udev rules if you are using a Pro Micro.") | ||
125 | rc = CheckStatus.WARNING | 124 | rc = CheckStatus.WARNING |
126 | cli.log.warning("{fg_yellow}Missing or outdated udev rules for '%s' boards. Run 'sudo cp %s/util/udev/50-qmk.rules /etc/udev/rules.d/'.", bootloader, QMK_FIRMWARE) | 125 | cli.log.warning("{fg_yellow}Missing or outdated udev rules for '%s' boards. Run 'sudo cp %s/util/udev/50-qmk.rules /etc/udev/rules.d/'.", bootloader, QMK_FIRMWARE) |
127 | 126 | ||
@@ -167,6 +166,5 @@ def os_test_linux(): | |||
167 | return CheckStatus.OK | 166 | return CheckStatus.OK |
168 | else: | 167 | else: |
169 | cli.log.info("Detected {fg_cyan}Linux{fg_reset}.") | 168 | cli.log.info("Detected {fg_cyan}Linux{fg_reset}.") |
170 | from .linux import check_udev_rules | ||
171 | 169 | ||
172 | return check_udev_rules() | 170 | return check_udev_rules() |
diff --git a/lib/python/qmk/cli/doctor/main.py b/lib/python/qmk/cli/doctor/main.py index 6a31ccdfd..ed20f46d3 100755 --- a/lib/python/qmk/cli/doctor/main.py +++ b/lib/python/qmk/cli/doctor/main.py | |||
@@ -79,12 +79,13 @@ def doctor(cli): | |||
79 | cli.log.info('CLI version: %s', cli.version) | 79 | cli.log.info('CLI version: %s', cli.version) |
80 | cli.log.info('QMK home: {fg_cyan}%s', QMK_FIRMWARE) | 80 | cli.log.info('QMK home: {fg_cyan}%s', QMK_FIRMWARE) |
81 | 81 | ||
82 | status = os_tests() | 82 | status = os_status = os_tests() |
83 | git_status = git_tests() | ||
83 | 84 | ||
84 | status = git_tests() | 85 | if git_status == CheckStatus.ERROR or (os_status == CheckStatus.OK and git_status == CheckStatus.WARNING): |
86 | status = git_status | ||
85 | 87 | ||
86 | venv = in_virtualenv() | 88 | if in_virtualenv(): |
87 | if venv: | ||
88 | cli.log.info('CLI installed in virtualenv.') | 89 | cli.log.info('CLI installed in virtualenv.') |
89 | 90 | ||
90 | # Make sure the basic CLI tools we need are available and can be executed. | 91 | # Make sure the basic CLI tools we need are available and can be executed. |
diff --git a/lib/python/qmk/cli/generate/config_h.py b/lib/python/qmk/cli/generate/config_h.py index ca7e14fe6..f16dca1de 100755 --- a/lib/python/qmk/cli/generate/config_h.py +++ b/lib/python/qmk/cli/generate/config_h.py | |||
@@ -173,7 +173,7 @@ def generate_config_h(cli): | |||
173 | kb_info_json = dotty(info_json(cli.args.keyboard)) | 173 | kb_info_json = dotty(info_json(cli.args.keyboard)) |
174 | 174 | ||
175 | # Build the info_config.h file. | 175 | # Build the info_config.h file. |
176 | config_h_lines = ['/* This file was generated by `qmk generate-config-h`. Do not edit or copy.' ' */', '', '#pragma once'] | 176 | config_h_lines = ['/* This file was generated by `qmk generate-config-h`. Do not edit or copy.', ' */', '', '#pragma once'] |
177 | 177 | ||
178 | generate_config_items(kb_info_json, config_h_lines) | 178 | generate_config_items(kb_info_json, config_h_lines) |
179 | 179 | ||
diff --git a/lib/python/qmk/cli/generate/dfu_header.py b/lib/python/qmk/cli/generate/dfu_header.py index 211ed9991..5a1b109f1 100644 --- a/lib/python/qmk/cli/generate/dfu_header.py +++ b/lib/python/qmk/cli/generate/dfu_header.py | |||
@@ -30,7 +30,7 @@ def generate_dfu_header(cli): | |||
30 | # Build the Keyboard.h file. | 30 | # Build the Keyboard.h file. |
31 | kb_info_json = dotty(info_json(cli.config.generate_dfu_header.keyboard)) | 31 | kb_info_json = dotty(info_json(cli.config.generate_dfu_header.keyboard)) |
32 | 32 | ||
33 | keyboard_h_lines = ['/* This file was generated by `qmk generate-dfu-header`. Do not edit or copy.' ' */', '', '#pragma once'] | 33 | keyboard_h_lines = ['/* This file was generated by `qmk generate-dfu-header`. Do not edit or copy.', ' */', '', '#pragma once'] |
34 | keyboard_h_lines.append(f'#define MANUFACTURER {kb_info_json["manufacturer"]}') | 34 | keyboard_h_lines.append(f'#define MANUFACTURER {kb_info_json["manufacturer"]}') |
35 | keyboard_h_lines.append(f'#define PRODUCT {cli.config.generate_dfu_header.keyboard} Bootloader') | 35 | keyboard_h_lines.append(f'#define PRODUCT {cli.config.generate_dfu_header.keyboard} Bootloader') |
36 | 36 | ||
diff --git a/lib/python/qmk/cli/generate/keyboard_h.py b/lib/python/qmk/cli/generate/keyboard_h.py index c9d7f549b..f05178ced 100755 --- a/lib/python/qmk/cli/generate/keyboard_h.py +++ b/lib/python/qmk/cli/generate/keyboard_h.py | |||
@@ -36,7 +36,7 @@ def generate_keyboard_h(cli): | |||
36 | has_layout_h = would_populate_layout_h(cli.args.keyboard) | 36 | has_layout_h = would_populate_layout_h(cli.args.keyboard) |
37 | 37 | ||
38 | # Build the layouts.h file. | 38 | # Build the layouts.h file. |
39 | keyboard_h_lines = ['/* This file was generated by `qmk generate-keyboard-h`. Do not edit or copy.' ' */', '', '#pragma once', '#include "quantum.h"'] | 39 | keyboard_h_lines = ['/* This file was generated by `qmk generate-keyboard-h`. Do not edit or copy.', ' */', '', '#pragma once', '#include "quantum.h"'] |
40 | 40 | ||
41 | if not has_layout_h: | 41 | if not has_layout_h: |
42 | keyboard_h_lines.append('#pragma error("<keyboard>.h is only optional for data driven keyboards - kb.h == bad times")') | 42 | keyboard_h_lines.append('#pragma error("<keyboard>.h is only optional for data driven keyboards - kb.h == bad times")') |
diff --git a/lib/python/qmk/cli/generate/layouts.py b/lib/python/qmk/cli/generate/layouts.py index 4de982f82..e44266e1c 100755 --- a/lib/python/qmk/cli/generate/layouts.py +++ b/lib/python/qmk/cli/generate/layouts.py | |||
@@ -38,7 +38,7 @@ def generate_layouts(cli): | |||
38 | kb_info_json = info_json(cli.config.generate_layouts.keyboard) | 38 | kb_info_json = info_json(cli.config.generate_layouts.keyboard) |
39 | 39 | ||
40 | # Build the layouts.h file. | 40 | # Build the layouts.h file. |
41 | layouts_h_lines = ['/* This file was generated by `qmk generate-layouts`. Do not edit or copy.' ' */', '', '#pragma once'] | 41 | layouts_h_lines = ['/* This file was generated by `qmk generate-layouts`. Do not edit or copy.', ' */', '', '#pragma once'] |
42 | 42 | ||
43 | if 'matrix_pins' in kb_info_json: | 43 | if 'matrix_pins' in kb_info_json: |
44 | if 'direct' in kb_info_json['matrix_pins']: | 44 | if 'direct' in kb_info_json['matrix_pins']: |
diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 7f3aabdc3..1b4c42ff4 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py | |||
@@ -29,10 +29,10 @@ def info_json(keyboard): | |||
29 | """Generate the info.json data for a specific keyboard. | 29 | """Generate the info.json data for a specific keyboard. |
30 | """ | 30 | """ |
31 | cur_dir = Path('keyboards') | 31 | cur_dir = Path('keyboards') |
32 | rules = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk') | 32 | root_rules_mk = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk') |
33 | if 'DEFAULT_FOLDER' in rules: | 33 | |
34 | keyboard = rules['DEFAULT_FOLDER'] | 34 | if 'DEFAULT_FOLDER' in root_rules_mk: |
35 | rules = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk', rules) | 35 | keyboard = root_rules_mk['DEFAULT_FOLDER'] |
36 | 36 | ||
37 | info_data = { | 37 | info_data = { |
38 | 'keyboard_name': str(keyboard), | 38 | 'keyboard_name': str(keyboard), |
diff --git a/lib/python/qmk/keymap.py b/lib/python/qmk/keymap.py index 2d5921e7a..6eec49cfd 100644 --- a/lib/python/qmk/keymap.py +++ b/lib/python/qmk/keymap.py | |||
@@ -149,8 +149,8 @@ def is_keymap_dir(keymap, c=True, json=True, additional_files=None): | |||
149 | for file in files: | 149 | for file in files: |
150 | if (keymap / file).is_file(): | 150 | if (keymap / file).is_file(): |
151 | if additional_files: | 151 | if additional_files: |
152 | for file in additional_files: | 152 | for additional_file in additional_files: |
153 | if not (keymap / file).is_file(): | 153 | if not (keymap / additional_file).is_file(): |
154 | return False | 154 | return False |
155 | 155 | ||
156 | return True | 156 | return True |