summaryrefslogtreecommitdiffstats
path: root/util
AgeCommit message (Collapse)AuthorFilesLines
2019-04-28A better new_project.sh (#5191)fauxpark2-70/+159
* 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 noninteractivemechmerlin1-1/+1
2019-04-19Travis CI - skip unit tests for documentation changes (#5267)zvecr1-0/+22
* 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 printzvecr1-4/+4
2019-04-12Add vendor and product arguments to atmega32a_program.pyzvecr1-19/+24
2019-04-12Fix build detection of keymap and board changeszvecr1-4/+6
2019-04-10Revert "Update build instructions and docker file to download submodules" ↵Konstantin Đorđević1-1/+1
(#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 Goncharov1-1/+1
2019-03-23ISP Flashing Guide - atmega32a info (#4993)wanleg1-0/+154
* update isp flashing page * update isp flashing page
2019-02-26Ask for your name when generating a new keyboard (#5214)fauxpark1-2/+6
* 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)zvecr3-0/+66
* 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)zvecr2-23/+11
2019-02-15docker_build.sh: Run container in interactive mode (#5088)Konstantin Đorđević1-1/+2
* docker_build.sh: Run container in interactive mode * Add message about QMK Toolbox * Update Docker docs
2019-02-13Fix travis_compiled_push.sh script issue (#5114)Drashna Jaelre1-1/+1
* Fix travis_compiled_push.sh script issue * fix typo * properly fix push script
2019-02-13Remove AUTOGEN and fix Travis Compiled Push scripts (#5077)Drashna Jaelre2-10/+9
* 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ć1-10/+8
* 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-26Improve diagnostics for build hashesYan-Fa Li1-3/+4
2018-12-11adjust install_avr function to use unzip for broader compatibility (#4596)Peter K. Cawley1-2/+3
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ć1-0/+49
* 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 Jaelre1-3/+5
2018-11-24fix diffutils arch package name (#4470)André Silva1-2/+2
2018-11-12convert to unix line-endings [skip ci]QMK Bot1-253/+253
2018-11-12Change hex file permission to 644 from 755Junya Ogura1-0/+0
2018-11-12Make sure that avr-gcc@7 gets linked into the path on MacOS.Michael Kaylan1-0/+1
2018-11-12Add missing arm gcc compiler for openSUSE 15.0 and Tumbleweed.Daniel Shields1-0/+3
2018-11-12Add support for slackware distribution (linux_install.sh) (#4369)Paco1-0/+22
* 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-12Improve new_project script (#4373)Yan-Fa Li1-15/+36
* 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)BK1-2/+15
* 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 Silberberg11-0/+0
2018-10-29Make linux_install.sh work with openSUSE Leap 15.0 (#4218)Daniel Shields1-1/+5
2018-10-29fixed broken linebreak in fedora part, and indentation in arch-partR4WBIT1-2/+2
2018-10-24Bug: Users had to be in the /util directory to run the script (#4228)MechMerlin1-1/+1
2018-10-22adds 'dfu-util' to macos_install.shColin T.A. Gray1-1/+1
2018-10-22Fixup the WSL installskullY2-9/+1
2018-10-22Add opensuse packages provided by @isolatedvirusskullY1-0/+14
2018-10-22Fold install_dependencies.sh into linux_install.sh and freebsd_install.shskullY4-151/+114
2018-10-03Enable support for Linux Mint 18 with linux_install.sh (#4042)Chris Johnston1-2/+2
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-26Pin avr-gcc in shell.nix pending release of 8.3.0 (#3922)Jack Henahan1-1/+3
* 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)MechMerlin1-0/+40
* 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-11Fix installation for linux finding ID:fedora in os_releaseMiguel Garcia Rodriguez1-1/+1
2018-09-11Add manjaro asn arch-based distroThomas Vandaele1-1/+1
2018-08-11Fix Typos in echoDrashna Jaelre1-1/+2
2018-08-11Add WSL support to scriptDrashna Jaelre1-3/+6
2018-08-11Add error message if config not detectedDrashna Jaelre1-0/+2
2018-08-11Add 32 bit MINGW support ....Drashna Jaelre1-1/+1
2018-08-11Fix minor typo in qmk_install.sh for MSYS/MINGW64 detectionDrashna Jaelre1-1/+1
2018-08-03Update ISP flashing guide with pre-compiled binary (#3217)Jack Humbert1-0/+362
* update flashing guide with pre-compiled binary * Add files via upload * Update isp_flashing_guide.md * update file and instructions * update instructions
2018-08-02Fix qmk_install.sh to properly target MSYS (#3455)Taylor Gonzalez1-1/+1
* qmk_install fix for windows users. * Updated wildcard to caputre both MSYS and MINGW64 in qmk_install * added OR to windows qmk_install
2018-07-15Added gentoo to installer (#3272)zjpxshade1-3/+17
* Added gentoo installer * Remove comments * Remove comments * Updating the layout * Revert "Remove comments" This reverts commit e348afa41a470d4b8f1865d92b85acd32ab14074. * Revert "Updating the layout" This reverts commit 181822d195f722f4981825ded7dd85fa268c3c56. * Undo erroneous revert
2018-07-08Instruct macos users to use avr-gcc@7 (#3337)Evan Travers1-1/+1
If you run `brew install avr-gcc`, you get a version that has compatibility issues with LUFA. I updated the getting started guide for osx, the qmk_install setup script, and added a section to the FAQ for folks like me who accidentally updated avr-gcc past 7.