summaryrefslogtreecommitdiff
path: root/util
AgeCommit message (Collapse)Author
2019-07-16Configure Vagrant to use qmk_base_container (#6194)Joel Challis
* Initial conversion of vagrant to use qmkfm/base_container * Fix vagrant when using docker provider * Workaround for VirtualBox VM restarts * Generalise Vagrant docs slightly and add FAQ
2019-07-15QMK CLI and JSON keymap support (#6176)skullydazed
* Script to generate keymap.c from JSON file. * Support for keymap.json * Add a warning about the keymap.c getting overwritten. * Fix keymap generating * Install the python deps * Flesh out more of the python environment * Remove defunct json2keymap * Style everything with yapf * Polish up python support * Hide json keymap.c into the .build dir * Polish up qmk-compile-json * Make milc work with positional arguments * Fix a couple small things * Fix some errors and make the CLI more understandable * Make the qmk wrapper more robust * Add basic QMK Doctor * Clean up docstrings and flesh them out as needed * remove unused compile_firmware() function
2019-07-14Update docker util script and travis to use new base containerzvecr
2019-07-11Switch version incrementing to the command put together by @noroadsleft. (#6310)skullydazed
* Switch version incrementing to the command put together by @noroadsleft. * Update util/travis_compiled_push.sh Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
2019-07-10Fix typo in Gentoo docstring (#6303)zjp
2019-07-08Add copyright year placeholders to new keyboard script (#6280)fauxpark
* Add copyright year placeholders to new keyboard script * More copyright header tweaks
2019-07-05Fix linux_install.sh script for OpenSuse v 15.1 (#6251)Kenny Hung
2019-06-15Install avrdude in Arch/Manjaro Linux (#6132)Yusuke Nakamura
avrdude is require package but not installed by script when arch linux.
2019-06-05Change from avr-gcc@7 to @8 for MacDanny Nguyen
2019-05-31Initial attempt to fix docker creating files as rootzvecr
2019-05-31Use qmk docker image for travis CI buildszvecr
2019-05-28Clean up duped filenames om qmk.fm (#5822)Mikkel Jeppesen
Removes all binaries that don't correspond to an entry in the .keyboards file
2019-05-26Add Solus support to linux_install.sh scriptchax
added update-repo command before install command
2019-05-26Add Solus support to linux_install.sh scriptchax
2019-05-14Fix arch installs as 8.1 is unavailable and #5456 has been merged (#5857)zvecr
2019-05-06Make python a required build dependency (#5784)skullydazed
* Make python a required build dependency * Add missing color * fixup sabayon linux per @BlitzKraft
2019-05-03docker_build.sh: Docker requires access to hosts devices (#5063)Robin Hallabro-Kokko
* docker_build.sh: Docker requires access to hosts devices This also runs the container interactively which allows the user to interupt the build with Ctrl-C. * docker_build.sh: Mount /dev via $usb_args instead
2019-05-02If RGBLIGHT_EFFECT_BREATHE_CENTER is undefined, use fixed breathe table ↵Takeshi ISHII
instead of exp() and sin() (#5484) * If RGBLIGHT_EFFECT_BREATHE_CENTER is undefined, use fixed breathe table instead of exp() and sin() * Change rgblight breathing table size to be easily selectable. add RGBLIGHT_BREATHE_TABLE_SIZE macro for customize breathing effect.
2019-04-27A better new_project.sh (#5191)fauxpark
* A better new_project.sh * Fix docstrings * Use single quotes for anything not shown to user * Missed this docstring * Simplify get_git_username() Thanks @vomindoraan * chmod +x * Add docstring for print_error() * Break up git username call into multiple lines * Use with statement here * Conform to PEP 8 even more * Turn it back into a shell script * chmod +x again * Update docs to reflect new keyboard generator usage * Tweak wording slightly * Trim trailing whitespace * Don't actually need to escape the newlines here * As I suspected, you can pass shift a number * Prepend ./ to match the other code block * Minor syntax tweaks * The username token has changed * Replace name in the readme too * Make some reasonable assumptions about the presence of Git
2019-04-19add -yq flags to actually make it noninteractivemechmerlin
2019-04-19Travis CI - skip unit tests for documentation changes (#5267)zvecr
* Add script to skip tests on non master branches with only docs changes * Review comments - Use 'grep -c' instead of 'wc -l'
2019-04-12Add vendor and product arguments to atmega32a_program.py - fix hex printzvecr
2019-04-12Add vendor and product arguments to atmega32a_program.pyzvecr
2019-04-12Fix build detection of keymap and board changeszvecr
2019-04-10Revert "Update build instructions and docker file to download submodules" ↵Konstantin Đorđević
(#5533) * Revert "Update build instructions and Dockerfile to download submodules" This reverts commit 93210547bd1bfbbb1ffd56801bb81af46af350a5. * Update build tools docs based on feedback * Fix bad link in build tools docs
2019-03-30Update build instructions and Dockerfile to download submodulesMikhail Goncharov
2019-03-22ISP Flashing Guide - atmega32a info (#4993)wanleg
* update isp flashing page * update isp flashing page
2019-02-26Ask for your name when generating a new keyboard (#5214)fauxpark
* Ask for your name when generating a new keyboard * Update docs * Apply suggestions from code review Co-Authored-By: fauxpark <fauxpark@gmail.com>
2019-02-18 Relocate usb_detach to utils (#5121)zvecr
* Relocate usb_detach to utils * Relocate usb_detach to utils - fix up files after move
2019-02-15Remove duplication of ssh keys and fix usage on PR builds (#5013)zvecr
2019-02-15docker_build.sh: Run container in interactive mode (#5088)Konstantin Đorđević
* docker_build.sh: Run container in interactive mode * Add message about QMK Toolbox * Update Docker docs
2019-02-12Fix travis_compiled_push.sh script issue (#5114)Drashna Jaelre
* Fix travis_compiled_push.sh script issue * fix typo * properly fix push script
2019-02-12Remove AUTOGEN and fix Travis Compiled Push scripts (#5077)Drashna Jaelre
* Grab HEX and BIN files from autogen And push them to qmk.fm/compiled * Make autogen copy extension agnostic This way, when travis cl scrpit looks for hex files, it will actually grab bin files, and not hex files for ARM boards * Handle the AUTOGEN in :bin target to properly handle edge cases Both the TADA68 and ATSAM boards generate the hex file and then convert it to a bin file. The changes I made does not handle this well, at all. This removes the hex and replaces it with a bin, if a bin is normally generated. * Revert hex target to original copy command * Check hex and bin separately in compile push script Since I don't know how to script this, well * Simplify push to compiled folder * Further simplify compiled push script * Move AUTOGEN parsing to a more sane location to prevent tech debt Thanks to skully! * Remove AUTOGEN completely, as it's not needed This has the benefit of making everything super simple, since we can pull every hex and bin from the root of the qmk_firmware folder, and move that to th compiled folder. This also removes old and unneeded code, and removes some tech debt that has been accrued, without adding more, in theory.
2018-12-26Read user input properly in linux_install.sh for Gentoo (#4395)Konstantin Đorđević
* Change spaces to tabs on two lines The rest of the file uses tabs * Read user input in a non-terrible, non-hacky way * Remove unnecessary tee call * read -p is not POSIX * Add missing $ to echo GENTOO_WARNING * Replace non-POSIX echo -n with printf * Use cd ... || exit 1 in case git clone fails * Add missing sudo Thanks @snortwolf * Undo replacing tee with >>
2018-12-25Improve diagnostics for build hashesYan-Fa Li
2018-12-10adjust install_avr function to use unzip for broader compatibility (#4596)Peter K. Cawley
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-08Add a better Docker build script + update Dockerfile (#4222)Konstantin Đorđević
* Add a Docker build script * Add usage and error messages * Add -r to reads Thanks mechmerlin * Add keyboard:keymap form, improve script * Add target argument, change usage forms in script * Add check for more than 3 args in keyboard:keymap:target form * Change Docker base image to debian, use community repo This matches what qmk_compiler uses (https://github.com/qmk/qmk_compiler/blob/master/Dockerfile#L1). I've removed the maintainer as we now have a community build on Docker Hub (https://hub.docker.com/r/qmkfm/qmk_firmware). This Dockerfile will also be maintained by the community. * Change build command format to keyboard:keymap * Call make directly in container run command * Simplify script, remove 3-arg form * Add COPY to Dockerfile so images are usable in and of themselves Also change WORKDIR from /qmk to /qmk_firmware * Add USB pass-through for Linux and docker-machine hosts * Read directly into variables instead of array * Alphabetically sort dependencies in Dockerfile * Set executable bit on util/docker_build.sh * Update Docker docs * Add warning about Docker on Windows * Expand comment in docs * Check docker-machine exit code instead of string * Only match --help with whole arguments * Make script POSIX-compliant * Convert script indentation to tabs
2018-11-27Update MSYS to use the 5.4.0 toolchain (#4106)Drashna Jaelre
2018-11-24fix diffutils arch package name (#4470)André Silva
2018-11-12convert to unix line-endings [skip ci]QMK Bot
2018-11-12Change hex file permission to 644 from 755Junya Ogura
2018-11-12Make sure that avr-gcc@7 gets linked into the path on MacOS.Michael Kaylan
2018-11-12Add missing arm gcc compiler for openSUSE 15.0 and Tumbleweed.Daniel Shields
2018-11-12Add support for slackware distribution (linux_install.sh) (#4369)Paco
* Add support for slackware distribution (linux_install.sh) The required packages are not provided by the official repository. The packages need to be installed from slackbuilds.org either manually or with the help of third party tools like sbotools. * Modify linux_install.sh according to code review Modifies the Slackware section of the linux_install.sh script based on the suggestions from the code review. * Modify utils/linux_install.sh according to suggestions
2018-11-11Improve new_project script (#4373)Yan-Fa Li
* Improve new_project script - use git user.name if available to replace the boilerplate name in files we generate - fix shellshock warnings * Test for git repo Suggestion by @skullydazed * Fix shellshock warning * Incorporate feedback from reviewers - thanks @vomindoraan - use a heredoc instead of echo for console - factor out common paths
2018-11-03Add distro support for sabayon (#4320)BK
* Add distro support for sabayon Sabayon is a gentoo based distro with a different package manager. Does not need any use flags or masking for the required packages. * Add missing backslash * Put echo string in quotes, remove extra newline * Order gentoo/sabayon packages alphabetically.
2018-11-02Set the executable bit for sh scripts under util.Fredric Silberberg
2018-10-29Make linux_install.sh work with openSUSE Leap 15.0 (#4218)Daniel Shields
2018-10-29fixed broken linebreak in fedora part, and indentation in arch-partR4WBIT
2018-10-24Bug: Users had to be in the /util directory to run the script (#4228)MechMerlin