summaryrefslogtreecommitdiff
path: root/util
AgeCommit message (Collapse)Author
2019-09-17Enforce clang-format (#6293)skullydazed
* Enforce clang-format on commit for core files * forgot about tests
2019-08-28Add an alternative method for keyboard discovery to speed up build (#6073)Joel Challis
* Add an alternative method for keyboard discovery to speed up build * Chain MAKEFLAGS for docker_build.sh * Slight improvement to number of items sent to sort * Remove debug line * Fix line escape
2019-08-13Fix qmk_install.sh on Windows dropping to command prompt (#6488)fauxpark
2019-07-19Configure 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-19QMK 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-19Update docker util script and travis to use new base containerzvecr
2019-07-10Add copyright year placeholders to new keyboard script (#6280)fauxpark
* Add copyright year placeholders to new keyboard script * More copyright header tweaks
2019-07-10Fix linux_install.sh script for OpenSuse v 15.1 (#6251)Kenny Hung
2019-06-20Change from avr-gcc@7 to @8 for MacDanny Nguyen
2019-06-04Fix up scripts for ZSA repoDrashna Jaelre
2019-06-04Initial attempt to fix docker creating files as rootzvecr
2019-06-04Use qmk docker image for travis CI buildszvecr
2019-06-04Add Solus support to linux_install.sh scriptchax
Add Solus support to linux_install.sh script added update-repo command before install command
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-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-12Streamline Travis CI scriptingDrashna Jaelre
We don't need anything fancy, just a few tests, and that's it. All of the QMK Firmware stuff is excessive for what we need.
2019-04-09Update 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
2018-10-22adds 'dfu-util' to macos_install.shColin T.A. Gray
2018-10-22Fixup the WSL installskullY
2018-10-22Add opensuse packages provided by @isolatedvirusskullY
2018-10-22Fold install_dependencies.sh into linux_install.sh and freebsd_install.shskullY
2018-10-02Enable support for Linux Mint 18 with linux_install.sh (#4042)Chris Johnston
Enable support for ubuntu-derived linux-es in installer Checks /etc/os-release for mention of ubuntu and debian. Linux Mint uses ID_LIKE=ubuntu, not ID_LIKE=debian (as seen in Ubuntu 16.04, unsure about others)
2018-09-25Pin avr-gcc in shell.nix pending release of 8.3.0 (#3922)Jack Henahan
* Pin avr-gcc in shell.nix pending release of 8.3.0 There's apparently a critical bug in 8.2.0, which is now the nixpkgs default. This change overrides that default in favor of the known good version. Once 8.3.0 is the default, the override can be dropped. * Arch/Manjaro fix
2018-09-13Add an easy way to create new keymaps for your favorite keyboard (#3868)MechMerlin
* initial commit of keymap creation script * create default keymap * pass shellcheck * provide a better usage message * change printf string to more accurately reflect the path * make it more easily understood * found another typo * add documentation regarding the new_keymap script * enforce lowercase for userinputs
2018-09-10Fix installation for linux finding ID:fedora in os_releaseMiguel Garcia Rodriguez
2018-09-10Add manjaro asn arch-based distroThomas Vandaele