* shell.nix: Update `tomlkit` to 0.11.4 using a Nixpkgs overlay The used Nixpkgs snapshot contains `tomlkit` version 0.7.0, which is affected by https://www.github.com/sdispater/tomlkit/issues/148; that bug is triggered by `pyproject.toml` from `jsonschema` >= 4.11.0, preventing the build of that module. Just adding `tomlkit = "*"` to the `[tool.poetry.dev-dependencies]` section of `nix/pyproject.toml` does not fix the `jsonschema` build, because `makeRemoveSpecialDependenciesHook` inside `poetry2nix` is not affected by `nix/pyproject.toml`. Add a Nixpkgs overlay which updates the `tomlkit` Python module globally, so that `poetry2nix` would also use the updated version internally. * shell.nix: Bump `poetry2nix` to the most recent version The new `poetry2nix` version includes overrides which are required for recent versions of some Python packages (in particular, `jsonschema` and `dotty-dict`). * shell.nix: Bump QMK CLI to 1.1.1; update other Python deps Update `pyproject.toml` to match `requirements*.txt`: - add `pyserial = "*"` - replace `qmk-dotty-dict = "*"` with `dotty-dict = "*"` (#18117, also required for compatibility with `qmk` 1.1.1, where this replacement had already been performed) Add build dependencies of various Python modules to `pyproject.toml`: - `hatchling`, `hatch-vcs`, `hatch-fancy-pypi-readme` (required by `jsonschema` >= 4.11.0) - `pytest` (a newer version is required to solve the dependency conflict with the `hatchling` module due to the upper bound on `pluggy`) - `flit-core` (a more recent version is required to build `tomli`) - `poetry-core` (required for `dotty-dict` >= 1.3.1, and the version from Nixpkgs does not build on Darwin due to NixOS/nix#4758) Update `poetry.lock` to use the most recent versions of Python modules. The complete list of Python module updates as listed in `poetry.lock` (note that other modules might be present in the Python environment, e.g., if they come from Nixpkgs): - `atomicwrites`: none -> 1.4.1 (but this module is not actually used, because the corresponding dependency of `pytest` is win32-only) - `attrs`: 21.4.0 -> 22.1.0 - `colorama`: 0.4.4 -> 0.4.5 - `coverage`: 6.4 -> none - `dotty-dict`: none -> 1.3.1 (used instead of `qmk-dotty-dict`) - `editables`: none -> 0.3 - `flake8`: 4.0.1 -> 5.0.4 - `flake8-polyfill`: 1.0.2 -> none - `flit-core`: none -> 3.7.1 - `hatch-fancy-pypi-readme`: none -> 22.3.0 - `hatch-vcs`: none -> 0.2.0 - `hatchling`: none -> 1.8.0 - `hjson`: 3.0.2 -> 3.1.0 - `importlib-resources`: 5.7.1 -> 5.9.0 - `iniconfig`: none -> 1.1.1 - `jsonschema`: 4.5.1 -> 4.14.0 - `mccabe`: 0.6.1 -> 0.7.0 - `nose2`: 0.11.0 -> 0.12.0 - `packaging`: none -> 21.3 - `pathspec`: none -> 0.9.0 - `pep8-naming`: 0.12.1 -> 0.13.2 - `pillow`: 9.1.1 -> 9.2.0 - `pkgutil-resolve-name`: none -> 1.3.10 - `pluggy`: none -> 1.0.0 - `poetry-core`: none -> 1.0.8 - `py`: none -> 1.11.0 - `pycodestyle`: 2.8.0 -> 2.9.1 - `pyflakes`: 2.4.0 -> 2.5.0 - `pygments`: 2.12.0 -> 2.13.0 - `pyparsing`: none -> 3.0.9 - `pyserial`: none -> 3.5 - `pytest`: none -> 7.1.2 - `qmk`: 1.1.0 -> 1.1.1 - `qmk-dotty-dict`: 1.3.0.post1 -> none (replaced by `dotty-dict`) - `setuptools-scm`: none -> 7.0.5 - `tomli`: none -> 2.0.1 - `typing-extensions`: none -> 4.3.0 - `zipp`: 3.8.0 -> 3.8.1 |
3 years ago | |
---|---|---|
.github | Merge remote-tracking branch 'origin/master' into develop | 3 years ago |
.vscode | remove Bracket Pair Colorizer recommendation (#14816) | 4 years ago |
builddefs | Swap F4x1 default board files away from blackpill (#17522) | 3 years ago |
data | Merge remote-tracking branch 'origin/master' into develop | 3 years ago |
docs | Merge remote-tracking branch 'origin/master' into develop | 3 years ago |
drivers | Add led matrix support for CKLED2001 (#17643) | 3 years ago |
keyboards | Merge remote-tracking branch 'origin/master' into develop | 3 years ago |
layouts | RESET -> QK_BOOT user keymaps (#17940) | 3 years ago |
lib | Fix PID value for the Keyboardio Atreus 2 bootloader (#18116) | 3 years ago |
platforms | Use the correct bootloader definition. (#18102) | 3 years ago |
quantum | Fix DV_SCLN and DV_COLN in keymap_spanish_dvorak.h (#18043) | 3 years ago |
tests | [Bug] Add key event check to `is_tap_record` and remove `is_tap_key` (#18063) | 3 years ago |
tmk_core | Remove tmk_core 'serial' code (#17866) | 3 years ago |
users | Merge remote-tracking branch 'origin/master' into develop | 3 years ago |
util | Nix shell updates for `develop` (#18131) | 3 years ago |
.clang-format | Clang-format tweaks (#15906) | 3 years ago |
.editorconfig | QMK CLI and JSON keymap support (#6176) | 6 years ago |
.gitattributes | eol=lf, where appropriate (#15752) | 3 years ago |
.gitignore | Add .orig to .gitignore (#17626) | 3 years ago |
.gitmodules | [Core] Add Raspberry Pi RP2040 support (#14877) | 3 years ago |
Dockerfile | move everything from qmkfm/base_container to qmkfm/qmk_cli (#14230) | 4 years ago |
Doxyfile | Internal docs generation updates (#16411) | 3 years ago |
LICENSE | add an explicit lisence file for github to pickup | 8 years ago |
Makefile | Merge remote-tracking branch 'origin/master' into develop | 3 years ago |
Vagrantfile | move everything from qmkfm/base_container to qmkfm/qmk_cli (#14230) | 4 years ago |
doxygen-todo | Remove SERIAL_LINK feature (#14727) | 4 years ago |
license_GPLv2.md | Clarify the quantum license (#1042) | 8 years ago |
license_GPLv3.md | Clarify the quantum license (#1042) | 8 years ago |
license_Modified_BSD.md | Clarify the quantum license (#1042) | 8 years ago |
nose2.cfg | Setup a python test framework | 6 years ago |
paths.mk | Migrate more makefile utilities to builddefs sub-directory (#16002) | 3 years ago |
readme.md | Branch point after 2022-05-28 Breaking Change. | 3 years ago |
requirements-dev.txt | Macros in JSON keymaps (#14374) | 4 years ago |
requirements.txt | Align CLI requirements (#18117) | 3 years ago |
setup.cfg | Quantum Painter (#10174) | 3 years ago |
shell.nix | Nix shell updates for `develop` (#18131) | 3 years ago |
readme.md
This is the develop
branch!
See the Breaking Changes document for more information.
Quantum Mechanical Keyboard Firmware
This is a keyboard firmware based on the tmk_keyboard firmware with some useful features for Atmel AVR and ARM controllers, and more specifically, the OLKB product line, the ErgoDox EZ keyboard, and the Clueboard product line.
Documentation
The docs are powered by Docsify and hosted on GitHub. They are also viewable offline; see Previewing the Documentation for more details.
You can request changes by making a fork and opening a pull request, or by clicking the "Edit this page" link at the bottom of any page.
Supported Keyboards
The project also includes community support for lots of other keyboards.
Maintainers
QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, Hasu. The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by ZSA Technology Labs, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.
Official Website
qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.