No description
Find a file
Peter K. Cawley 3bef186ea6 adjust install_avr function to use unzip for broader compatibility (#4596)
On a laptop with god knows what mandatory security software (Cylance?), running up-to-date Windows 10 with msys2 mingw-64, attempting to install the AVR toolkit results in the following error:

```
1 [main] 7z (13316) C:\msys32\usr\lib\p7zip\7z.exe: *** fatal error - cygheap base mismatch detected - 0x612A5410/0x2375410.
This problem is probably due to using incompatible versions of the cygwin DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version.  The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution.  Rebooting is also suggested if you
are unable to find another cygwin DLL.
```

This appears to be related in some way, based on my research, to ASLR functionality in security software. Since I'm unable to override whatever is enforcing ASLR on my system, after trying several other approaches (removing other copies of msys-2.0.dll, which is what this is apparently actually referencing, rebasing that file in Windows to address 0x61000000, a few other things) I simply edited the installation shell script to use `unzip` instead of 7zip; `unzip`'s binary does not provoke a mismatch error and the installation proceeds as it should.

I'm not aware of the reason why some parts of the install script use `unzip` (e.g. `install_arm`) and others use 7zip, but it seems that for broader compatibility and sparing users on locked down machines the 120 minutes or so of futzing this took me to fix, it might be better to just use `unzip` in all cases.

Note: There is another function that uses 7zip, `extract_flip`. The line is `7z -oflip x FlipInstaller.exe`. I'm not sure what this is doing, or whether it's possible to do it with `unzip`, but it produces the same error. I haven't attempted to fix that in this PR, but it might be good to fix it for the same reason.
2018-12-10 16:15:15 -08:00
.github Add support for PR and Issue templates to QMK_firmware GitHub (#4494) 2018-12-07 16:51:27 -08:00
.vscode
docs docs typo (#4584) 2018-12-09 14:26:09 -08:00
drivers adding Hadron v3 keyboard, QWIIC devices support, haptic feedback support (#4462) 2018-12-04 08:04:57 -08:00
keyboards Fix the LFKeyboards so they work with the QMK Configurator (#4591) 2018-12-10 11:38:57 -08:00
layouts Keyboard: Add dz60 tsangan hhkb (#4529) 2018-12-05 09:02:26 -08:00
lib Revert changes to chibiOS-contrib (#4176) 2018-10-19 12:42:28 -07:00
quantum Keymap: Hacker Dvorak (#4514) 2018-12-05 08:12:35 -08:00
tests
tmk_core Bringing Massdrop keyboard hardware configuration to keyboard level (#4593) 2018-12-10 11:28:06 -08:00
users Keymap: Keymap update (#4579) 2018-12-09 08:28:46 -08:00
util adjust install_avr function to use unzip for broader compatibility (#4596) 2018-12-10 16:15:15 -08:00
.clang_complete
.editorconfig
.gitattributes
.gitignore
.gitmodules
.travis.yml
autocomplete.sh
book.json
bootloader.mk
build_full_test.mk
build_keyboard.mk Fix LAYOUT define generation (#4148) 2018-10-16 14:14:52 -04:00
build_layout.mk
build_test.mk
CODE_OF_CONDUCT.md
common.mk
common_features.mk adding Hadron v3 keyboard, QWIIC devices support, haptic feedback support (#4462) 2018-12-04 08:04:57 -08:00
Dockerfile Add a better Docker build script + update Dockerfile (#4222) 2018-12-08 09:42:46 -08:00
Doxyfile
doxygen-todo
LICENSE
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
Makefile improve looks like hang up when first time execute make git-submodule (#3846) 2018-09-10 16:21:54 -07:00
message.mk Treat too-large firmwares as an error, not a warning (#3956) 2018-09-27 13:32:01 -07:00
readme.md
secrets.tar.enc
shell.nix Pin avr-gcc in shell.nix pending release of 8.3.0 (#3922) 2018-09-25 15:16:35 -07:00
testlist.mk
Vagrantfile Update the installation script PR (#4167) 2018-10-22 13:24:43 -07:00

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

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 hosted on Gitbook and GitHub (they are synced). You can request changes by making a fork and pull request, or by clicking the "suggest an edit" link on any page of the docs.

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 Erez Zukerman, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.

Official website

http://qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.