qmk_me

QMK Firmware userspace, keyboards, & keymaps
git clone git://git.pngu.org.org/qmk_me
Log | Files | Refs | Submodules | README | LICENSE

commit 3d69064553d5e66b42226bf0e59d5360a3d4c38d
parent 8352e26a04238daaecc565945cfbeeb8f1c229b3
Author: Jack Sangdahl <jack@pngu.org>
Date:   Sat, 20 Sep 2025 12:10:33 -0600

Improvements to script

Diffstat:
Mutil/link.sh | 49++++++++++---------------------------------------
1 file changed, 10 insertions(+), 39 deletions(-)

diff --git a/util/link.sh b/util/link.sh @@ -2,23 +2,6 @@ set -e -git_exclude() { - local subdir="$1" - local TARGET_DIR="$HOME/git/qmk_firmware" - local EXCLUDE_FILE="$TARGET_DIR/.git/info/exclude" - local EXCLUDE_PATTERN="keyboards/$subdir" - - if [[ ! -d "$TARGET_DIR/.git" ]]; then - printf "Warning: %s is not a git repository; skipping\n" $TARGET_DIR - return 0 - fi - - if ! grep -q "^$EXCLUDE_PATTERN" "$EXCLUDE_FILE" 2>/dev/null; then - printf "Excluding %s in .git/info/exclude\n" $EXCLUDE_PATTERN - echo "$EXCLUDE_PATTERN" >> "$EXCLUDE_FILE" - fi -} - link() { local subdir="$1" local SOURCE_DIR="$HOME/git/qmk_me" @@ -28,18 +11,11 @@ link() { printf "Linking: %s\n" $subdir - if [[ ! -d "$SOURCE_PATH" ]]; then - printf "Error: %s does not exist!\n" $SOURCE_PATH - return 1 - fi - if [[ ! -d "$TARGET_PATH" ]]; then mkdir -p "$TARGET_PATH" fi for item in "$SOURCE_PATH"/*; do - [[ ! -e "$item" ]] && continue - local item_name=$(basename "$item") local target_item="$TARGET_PATH/$item_name" @@ -58,21 +34,16 @@ link() { fi done - git_exclude "$subdir" -} - -link_keyboards() { - local good_cnt=0 - local fail_cnt=0 + local EXCLUDE_FILE="$TARGET_DIR/.git/info/exclude" + local EXCLUDE_PATTERN="keyboards/$subdir" - for subdir in "$@"; do - if link "$subdir"; then - ((good_cnt++)) - else - ((fail_cnt++)) - fi - done - return $fail_cnt + if ! grep -q "^$EXCLUDE_PATTERN" "$EXCLUDE_FILE" 2>/dev/null; then + printf "Excluding %s in .git/info/exclude\n" $EXCLUDE_PATTERN + echo "$EXCLUDE_PATTERN" >> "$EXCLUDE_FILE" + fi } -link_keyboards endgame locus sweep xyz60 +link endgame +link locus +link sweep +link xyz60