configs-all 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +3 -0
- package/CLAUDE.md +94 -0
- package/README.md +424 -0
- package/TERMINAL_SHORTCUTS.md +96 -0
- package/WINDOWS_COMPATIBILITY.md +85 -0
- package/WINDOWS_MCP_SETUP.md +133 -0
- package/apps/RectangleConfig.plist +0 -0
- package/apps/Synergy +84 -0
- package/apps/iStat Menus Settings.ismp7 +0 -0
- package/claude/CLAUDE.md +228 -0
- package/claude/commands/changelog.md +36 -0
- package/claude/commands/commit.md +29 -0
- package/claude/commands/context.md +112 -0
- package/claude/commands/dash.md +37 -0
- package/claude/commands/deploy-check.md +37 -0
- package/claude/commands/deps.md +26 -0
- package/claude/commands/duplo.md +56 -0
- package/claude/commands/explain.md +43 -0
- package/claude/commands/fix-and-test.md +46 -0
- package/claude/commands/game-debug.md +66 -0
- package/claude/commands/games.md +53 -0
- package/claude/commands/go.md +147 -0
- package/claude/commands/guard.md +102 -0
- package/claude/commands/handoff.md +66 -0
- package/claude/commands/incident.md +144 -0
- package/claude/commands/init.md +78 -0
- package/claude/commands/k8s-debug.md +31 -0
- package/claude/commands/lint.md +27 -0
- package/claude/commands/merge-all.md +115 -0
- package/claude/commands/merge.md +129 -0
- package/claude/commands/mikpc.md +54 -0
- package/claude/commands/morning.md +72 -0
- package/claude/commands/partymode.md +105 -0
- package/claude/commands/plans.md +88 -0
- package/claude/commands/pr.md +41 -0
- package/claude/commands/prep.md +132 -0
- package/claude/commands/push-sync.md +82 -0
- package/claude/commands/push.md +34 -0
- package/claude/commands/research.md +73 -0
- package/claude/commands/retro.md +95 -0
- package/claude/commands/review-pr.md +96 -0
- package/claude/commands/review.md +41 -0
- package/claude/commands/scaffold-agent.md +45 -0
- package/claude/commands/setup.md +92 -0
- package/claude/commands/ship-prod.md +97 -0
- package/claude/commands/ship.md +82 -0
- package/claude/commands/simplify.md +42 -0
- package/claude/commands/spike.md +110 -0
- package/claude/commands/status.md +37 -0
- package/claude/commands/sync.md +72 -0
- package/claude/commands/test.md +29 -0
- package/claude/commands/triage.md +72 -0
- package/claude/desktop/claude_desktop_config.json +9 -0
- package/claude/hooks.json +15 -0
- package/claude/mcp-servers.duplo.json +8 -0
- package/claude/mcp-servers.json +62 -0
- package/claude/scripts/psdebug.ps1 +7 -0
- package/claude/settings.json +38 -0
- package/claude/settings.local.json +4 -0
- package/claude/statusline-command.sh +94 -0
- package/claude/templates/CLAUDE-k8s-devops.md +58 -0
- package/claude/templates/CLAUDE-python-agent.md +47 -0
- package/claude/templates/CLAUDE-typescript-frontend.md +50 -0
- package/docker/ai-stack/docker-compose.yml +76 -0
- package/docker/ai-stack/searxng/limiter.toml +3 -0
- package/docker/ai-stack/searxng/settings.yml +39 -0
- package/docker/cli/config.json.template +15 -0
- package/docker/cli/daemon.json +9 -0
- package/docker/cli/features.json +3 -0
- package/docker/mcp/catalog.json +9 -0
- package/docker/mcp/catalogs/docker-mcp.yaml +15107 -0
- package/docker/mcp/config.yaml +0 -0
- package/docker/mcp/registry.yaml +37 -0
- package/docker/mcp/tools.yaml +0 -0
- package/docs/context/.gitkeep +0 -0
- package/docs/context/2026-03-02-configs.md +142 -0
- package/docs/handoff/.gitkeep +0 -0
- package/docs/incidents/.gitkeep +0 -0
- package/docs/plans/2026-02-28-autonomous-command-suite-design.md +250 -0
- package/docs/plans/2026-02-28-autonomous-command-suite.md +682 -0
- package/docs/plans/2026-03-01-ai-stack-split-architecture.md +72 -0
- package/docs/plans/2026-03-02-ai-stack-expansion.md +33 -0
- package/docs/plans/2026-03-02-merge-commands-design.md +58 -0
- package/docs/plans/2026-03-02-merge-commands.md +354 -0
- package/docs/research/.gitkeep +0 -0
- package/docs/research/2026-03-02-configs-repo-architecture.md +152 -0
- package/docs/retros/.gitkeep +0 -0
- package/docs/retros/2026-03-01-ai-stack-split-architecture.md +38 -0
- package/docs/spikes/.gitkeep +0 -0
- package/gh/config.yml +16 -0
- package/gh/hosts.yml +5 -0
- package/gh/main.json +103 -0
- package/ghostty/config +90 -0
- package/git/config/base.gitconfig +46 -0
- package/git/config/chiefmikey.gitconfig +11 -0
- package/git/config/personal.gitconfig +10 -0
- package/git/config/work.gitconfig +14 -0
- package/ide/cursor/extensions.txt +111 -0
- package/ide/cursor/keybindings.json +307 -0
- package/ide/cursor/mcp.json +92 -0
- package/ide/cursor/settings.json +544 -0
- package/ide/vscode/extensions.txt +120 -0
- package/ide/vscode/insiders/extensions.txt +119 -0
- package/ide/vscode/insiders/keybindings.json +294 -0
- package/ide/vscode/insiders/settings.json +518 -0
- package/ide/vscode/keybindings.json +294 -0
- package/ide/vscode/settings.json +526 -0
- package/ide/vscode/vscode/extensions.txt +43 -0
- package/iterm/Mikey Pro.json +951 -0
- package/iterm/com.googlecode.iterm2.plist +5549 -0
- package/iterm/font/MesloLGS NF Bold Italic.ttf +0 -0
- package/iterm/font/MesloLGS NF Bold.ttf +0 -0
- package/iterm/font/MesloLGS NF Italic.ttf +0 -0
- package/iterm/font/MesloLGS NF Regular.ttf +0 -0
- package/package.json +15 -0
- package/scripts/ai/deploy-ai-stack.sh +119 -0
- package/scripts/ai/fix-ai-proxy.service +12 -0
- package/scripts/ai/fix-ai-proxy.sh +25 -0
- package/scripts/brew/search/brew-search-results.sh +19 -0
- package/scripts/brew/search/brew-search.sh +34 -0
- package/scripts/brew/upgrade/brew-upgrade-autoupdate.sh +5 -0
- package/scripts/brew/upgrade/brew-upgrade-full-auto.sh +89 -0
- package/scripts/brew/upgrade/brew-upgrade-full.sh +159 -0
- package/scripts/docker/cleanup/docker-cleanup-manage.sh +163 -0
- package/scripts/docker/cleanup/docker-cleanup.cron +12 -0
- package/scripts/docker/cleanup/docker-cleanup.sh +280 -0
- package/scripts/docker/install/README.md +23 -0
- package/scripts/docker/install/docker-al2.sh +7 -0
- package/scripts/docker/install/docker-compose-al2.sh +15 -0
- package/scripts/gh/auth/auth.sh +12 -0
- package/scripts/gh/config/gh-config.sh +3 -0
- package/scripts/gh/gist/gh-gist-create.sh +29 -0
- package/scripts/gh/gist/gh-gist-delete.sh +1 -0
- package/scripts/gh/gist/gh-gist-edit.sh +8 -0
- package/scripts/gh/gpg-key/gh-gpg-key-add.sh +3 -0
- package/scripts/gh/install/install.sh +7 -0
- package/scripts/gh/label/gh-label-clone.sh +0 -0
- package/scripts/gh/label/gh-label-create.sh +0 -0
- package/scripts/gh/label/gh-label-delete.sh +0 -0
- package/scripts/gh/label/gh-label-edit.sh +0 -0
- package/scripts/gh/label/gh-label-list.sh +0 -0
- package/scripts/gh/secret/gh-secret-delete.sh +24 -0
- package/scripts/gh/secret/gh-secret-set.sh +70 -0
- package/scripts/gh/ssh-key/gh-ssh-key-add.sh +8 -0
- package/scripts/git/add/git-add.sh +3 -0
- package/scripts/git/auth/README.md +11 -0
- package/scripts/git/auth/https.sh +20 -0
- package/scripts/git/auth/ssh-mac.sh +41 -0
- package/scripts/git/branch-delete/git-branch-delete.sh +16 -0
- package/scripts/git/checkout/git-checkout-stash.sh +32 -0
- package/scripts/git/temp/git-temp-pull.sh +6 -0
- package/scripts/git/temp/git-temp-push.sh +5 -0
- package/scripts/install/fresh.zsh +34 -0
- package/scripts/install/full-install.zsh +193 -0
- package/scripts/linux/codedeploy/README.md +19 -0
- package/scripts/linux/codedeploy/linux-codedeploy-al2.sh +13 -0
- package/scripts/linux/codedeploy/linux-codedeploy-index.sh +16 -0
- package/scripts/linux/codedeploy/linux-codedeploy-ubuntu.sh +14 -0
- package/scripts/linux/coredns/README.md +17 -0
- package/scripts/linux/coredns/linux-coredns-al2.sh +29 -0
- package/scripts/linux/wifi/01-netconf.yaml +21 -0
- package/scripts/linux/wifi/wifi-ubuntu.sh +17 -0
- package/scripts/mac/dock-sort/mac-dock-sort.sh +87 -0
- package/scripts/mac/dropbox-ignore/mac-dropbox-ignore.sh +12 -0
- package/scripts/mac/sudo-askpass/mac-sudo-askpass.sh +50 -0
- package/scripts/mac/sudo-askpass/setup-sudo-password.sh +49 -0
- package/scripts/mac/upgrade/mac-upgrade.sh +21 -0
- package/scripts/mac/vpn/mac-vpn.sh +4 -0
- package/scripts/mcp/aws-mcp-wrapper.ps1 +97 -0
- package/scripts/mcp/aws-mcp-wrapper.sh +53 -0
- package/scripts/mcp/duplo-mcp-wrapper.sh +31 -0
- package/scripts/mcp/filesystem-mcp-wrapper.ps1 +43 -0
- package/scripts/mcp/filesystem-mcp-wrapper.sh +34 -0
- package/scripts/mcp/git-mcp-wrapper.ps1 +42 -0
- package/scripts/mcp/git-mcp-wrapper.sh +33 -0
- package/scripts/mcp/github-mcp-wrapper.ps1 +43 -0
- package/scripts/mcp/github-mcp-wrapper.sh +19 -0
- package/scripts/mcp/kubernetes-mcp-wrapper.ps1 +22 -0
- package/scripts/mcp/kubernetes-mcp-wrapper.sh +16 -0
- package/scripts/mcp/mcp-launcher.ps1 +56 -0
- package/scripts/mcp/mcp-launcher.sh +71 -0
- package/scripts/mcp/mongodb-mcp-wrapper.ps1 +26 -0
- package/scripts/mcp/mongodb-mcp-wrapper.sh +17 -0
- package/scripts/mcp/notion-mcp-wrapper.ps1 +23 -0
- package/scripts/mcp/notion-mcp-wrapper.sh +14 -0
- package/scripts/mcp/postgres-mcp-wrapper.ps1 +23 -0
- package/scripts/mcp/postgres-mcp-wrapper.sh +16 -0
- package/scripts/npm/ncu/npm-ncu.sh +24 -0
- package/scripts/npm/upgrade/npm-upgrade.sh +51 -0
- package/scripts/qmk/build_reviung41.sh +28 -0
- package/scripts/qmk/sync_unicorne.sh +44 -0
- package/scripts/sync/README.md +64 -0
- package/scripts/sync/config-common.zsh +882 -0
- package/scripts/sync/pull-configs.ps1 +33 -0
- package/scripts/sync/pull-configs.zsh +278 -0
- package/scripts/sync/push-configs.ps1 +91 -0
- package/scripts/sync/push-configs.zsh +384 -0
- package/shell/alias/alias-d.zsh +333 -0
- package/shell/alias/alias.zsh +36 -0
- package/shell/alias/categories/development.zsh +157 -0
- package/shell/alias/categories/environment.zsh +13 -0
- package/shell/alias/categories/git.zsh +40 -0
- package/shell/alias/categories/github-functions.zsh +459 -0
- package/shell/alias/categories/network.zsh +46 -0
- package/shell/alias/categories/path.zsh +46 -0
- package/shell/alias/categories/system.zsh +78 -0
- package/shell/alias/categories/wolfe-server.zsh +11 -0
- package/shell/powershell/Microsoft.PowerShell_profile.ps1 +208 -0
- package/shell/zsh/.p10k.zsh +1832 -0
- package/shell/zsh/.zshrc +87 -0
- package/shell/zsh/config/completion.zsh +31 -0
- package/shell/zsh/config/functions.zsh +31 -0
- package/shell/zsh/config/keybindings.zsh +13 -0
- package/shell/zsh/config/options.zsh +56 -0
- package/shell/zsh/config/plugins.zsh +83 -0
- package/shell/zsh/config/variables.zsh +191 -0
- package/shell/zsh/powerlevel10k.zsh-theme +83 -0
- package/shell/zsh/zsh-autosuggestions.zsh +871 -0
- package/ssh/config +46 -0
- package/ssh/config.duplo +21 -0
- package/ssh/config.mikpc +35 -0
- package/ssh/personal_signing.pub +1 -0
- package/templates/.envrc.example +34 -0
- package/templates/.envrc.quickstart +17 -0
- package/wezterm/wezterm.lua +249 -0
- package/wsl/.wslconfig +3 -0
- package/wsl/wsl.conf +18 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#!/bin/zsh
|
|
2
|
+
|
|
3
|
+
# Postgres MCP Server Wrapper
|
|
4
|
+
# Sources ~/.secrets to get POSTGRES_CONNECTION_STRING if available
|
|
5
|
+
# Falls back to default if not set
|
|
6
|
+
|
|
7
|
+
# Source secrets if available
|
|
8
|
+
if [[ -f "${HOME}/.secrets" ]]; then
|
|
9
|
+
source "${HOME}/.secrets"
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
# Use POSTGRES_CONNECTION_STRING from .secrets, or default
|
|
13
|
+
export POSTGRES_CONNECTION_STRING="${POSTGRES_CONNECTION_STRING:-postgresql://localhost:5432/postgres}"
|
|
14
|
+
|
|
15
|
+
# Run Postgres MCP server
|
|
16
|
+
exec npx -y @modelcontextprotocol/server-postgres
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/bin/bash -v
|
|
2
|
+
|
|
3
|
+
set -x
|
|
4
|
+
brew update && brew upgrade && brew cleanup
|
|
5
|
+
export PATH1=package.json
|
|
6
|
+
export PATH2=package-lock.json
|
|
7
|
+
export MESSAGE='update dependencies'
|
|
8
|
+
cd ~/dropbox/dev/apps/auth-server && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
9
|
+
cd ~/dropbox/dev/apps/chalet-le-jar && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
10
|
+
cd ~/dropbox/dev/apps/chiefmikey && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
11
|
+
cd ~/dropbox/dev/apps/cloudy-nights && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
12
|
+
cd ~/dropbox/dev/apps/docker-images && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
13
|
+
cd ~/dropbox/dev/apps/eslint-plugin-disable-autofix && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
14
|
+
cd ~/dropbox/dev/apps/extra && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
15
|
+
cd ~/dropbox/dev/apps/gitlang && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
16
|
+
cd ~/dropbox/dev/apps/name-generator && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
17
|
+
cd ~/dropbox/dev/apps/secret-souls && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
18
|
+
cd ~/dropbox/dev/apps/stats && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
19
|
+
cd ~/dropbox/dev/apps/template-cemetery && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
20
|
+
cd ~/dropbox/dev/apps/the-myspace && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
21
|
+
cd ~/dropbox/dev/apps/tomorrow-night-darkly && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
22
|
+
cd ~/dropbox/dev/apps/view-master-3000 && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
23
|
+
cd ~/dropbox/dev/apps/you-got-this && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
24
|
+
cd ~/dropbox/dev/apps/zourdough && git pull --no-edit && ncu -u && npm i && git commit ${PATH1} ${PATH2} -m "${MESSAGE}" && git push
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
set -euo pipefail
|
|
3
|
+
|
|
4
|
+
# Check for required commands
|
|
5
|
+
command -v npm >/dev/null 2>&1 || { echo "npm is required but not installed"; exit 1; }
|
|
6
|
+
command -v jq >/dev/null 2>&1 || { echo "jq is required but not installed"; exit 1; }
|
|
7
|
+
|
|
8
|
+
echo "+ npm global upgrade"
|
|
9
|
+
cd "${HOME}" || exit 1
|
|
10
|
+
|
|
11
|
+
export STATUS=0
|
|
12
|
+
export NODE_NO_WARNINGS=1
|
|
13
|
+
|
|
14
|
+
# Get global packages, handle potential npm ls errors
|
|
15
|
+
PACKAGES=$(npm ls -g --json 2>/dev/null | jq -r '.dependencies | keys[]' 2>/dev/null) || {
|
|
16
|
+
echo "Error: Failed to list global packages"
|
|
17
|
+
exit 1
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
for package in ${PACKAGES}; do
|
|
21
|
+
# handle scoped packages
|
|
22
|
+
subPackage="${package}"
|
|
23
|
+
if [ -n "${subPackage##*/*}" ]; then
|
|
24
|
+
subPackage="${package##*/}"
|
|
25
|
+
fi
|
|
26
|
+
|
|
27
|
+
# Get current version from npm list
|
|
28
|
+
v1=$(npm list -g "${package}" --json 2>/dev/null | jq -r ".dependencies[\"${package}\"].version") || {
|
|
29
|
+
echo "Warning: Could not get current version of ${package}"
|
|
30
|
+
continue
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
# Get latest version, handle potential npm view errors
|
|
34
|
+
latest_version=$(npm view "${package}" version 2>/dev/null) || {
|
|
35
|
+
echo "Warning: Could not get latest version for ${package}"
|
|
36
|
+
continue
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if [ "${latest_version}" != "${v1}" ]; then
|
|
40
|
+
if npm i -gs "${package}"; then
|
|
41
|
+
v2=$(npm list -g "${package}" --json 2>/dev/null | jq -r ".dependencies[\"${package}\"].version")
|
|
42
|
+
echo "${package} (${v1} -> ${v2})"
|
|
43
|
+
STATUS=1
|
|
44
|
+
else
|
|
45
|
+
echo "Error: Failed to upgrade ${package}"
|
|
46
|
+
fi
|
|
47
|
+
fi
|
|
48
|
+
done
|
|
49
|
+
|
|
50
|
+
[ ${STATUS} -eq 0 ] && echo "Already up-to-date."
|
|
51
|
+
exit ${STATUS}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Build Reviung41 ZMK firmware
|
|
3
|
+
# This script builds the ZMK firmware for the Reviung41 keyboard
|
|
4
|
+
|
|
5
|
+
set -e # Exit on any error
|
|
6
|
+
|
|
7
|
+
PROJECT_DIR="${DEV}/reviung41/zmk"
|
|
8
|
+
BUILD_DIR="${PROJECT_DIR}/build/reviung41"
|
|
9
|
+
CONFIG_DIR="${PROJECT_DIR}/config"
|
|
10
|
+
BOARD="nice_nano_v2"
|
|
11
|
+
SHIELD="reviung41"
|
|
12
|
+
|
|
13
|
+
echo "🔨 Building Reviung41 ZMK firmware..."
|
|
14
|
+
|
|
15
|
+
cd "$PROJECT_DIR"
|
|
16
|
+
|
|
17
|
+
# Build the firmware
|
|
18
|
+
west build -p -d "$BUILD_DIR" -b "$BOARD" -- -DSHIELD="$SHIELD" -DZMK_CONFIG="$CONFIG_DIR"
|
|
19
|
+
|
|
20
|
+
echo "✅ Build complete!"
|
|
21
|
+
echo ""
|
|
22
|
+
echo "📦 Firmware location:"
|
|
23
|
+
echo " $BUILD_DIR/zephyr/zmk.uf2"
|
|
24
|
+
echo ""
|
|
25
|
+
echo "🚀 To flash:"
|
|
26
|
+
echo " 1. Put keyboard in bootloader mode"
|
|
27
|
+
echo " 2. Copy $BUILD_DIR/zephyr/zmk.uf2 to the keyboard"
|
|
28
|
+
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Sync Unicorne configs to QMK firmware directory
|
|
3
|
+
# This script copies our tracked keymap files to the global QMK directory for compilation
|
|
4
|
+
|
|
5
|
+
set -e # Exit on any error
|
|
6
|
+
|
|
7
|
+
QMK_DIR="$HOME/qmk_firmware/keyboards/boardsource/unicorne"
|
|
8
|
+
PROJECT_DIR="${DEV}/unicorne"
|
|
9
|
+
|
|
10
|
+
echo "🔄 Syncing Unicorne configs to QMK..."
|
|
11
|
+
|
|
12
|
+
# Create directory if it doesn't exist
|
|
13
|
+
mkdir -p "$QMK_DIR/keymaps"
|
|
14
|
+
|
|
15
|
+
# Copy keyboard config files
|
|
16
|
+
echo " 📋 Copying keyboard.json..."
|
|
17
|
+
cp "$PROJECT_DIR/keyboard.json" "$QMK_DIR/"
|
|
18
|
+
|
|
19
|
+
echo " ⚙️ Copying config.h..."
|
|
20
|
+
cp "$PROJECT_DIR/config.h" "$QMK_DIR/"
|
|
21
|
+
|
|
22
|
+
echo " 📝 Copying rules.mk..."
|
|
23
|
+
cp "$PROJECT_DIR/rules.mk" "$QMK_DIR/"
|
|
24
|
+
|
|
25
|
+
echo " 🔧 Copying unicorne.c..."
|
|
26
|
+
cp "$PROJECT_DIR/unicorne.c" "$QMK_DIR/"
|
|
27
|
+
|
|
28
|
+
echo " 🎛️ Copying halconf.h..."
|
|
29
|
+
cp "$PROJECT_DIR/halconf.h" "$QMK_DIR/"
|
|
30
|
+
|
|
31
|
+
echo " 🖥️ Copying mcuconf.h..."
|
|
32
|
+
cp "$PROJECT_DIR/mcuconf.h" "$QMK_DIR/"
|
|
33
|
+
|
|
34
|
+
# Copy keymaps
|
|
35
|
+
echo " ⌨️ Copying keymap files..."
|
|
36
|
+
cp -r "$PROJECT_DIR/keymaps/chiefmikey" "$QMK_DIR/keymaps/"
|
|
37
|
+
|
|
38
|
+
echo "✅ Unicorne configs synced to QMK directory"
|
|
39
|
+
echo ""
|
|
40
|
+
echo "🚀 Ready to compile:"
|
|
41
|
+
echo " qmk compile -kb boardsource/unicorne -km chiefmikey"
|
|
42
|
+
echo ""
|
|
43
|
+
echo "🚀 Ready to flash:"
|
|
44
|
+
echo " qmk flash -kb boardsource/unicorne -km chiefmikey"
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Configuration Management Scripts
|
|
2
|
+
|
|
3
|
+
This directory contains unified configuration management scripts that ensure push and pull operations handle the same files consistently with proper validation.
|
|
4
|
+
|
|
5
|
+
## Scripts
|
|
6
|
+
|
|
7
|
+
- **`config-common.zsh`** - Shared functions and configuration mappings
|
|
8
|
+
- **`push-configs.zsh`** - Pushes configurations from repo to system locations
|
|
9
|
+
- **`pull-configs.zsh`** - Pulls configurations from system locations to repo
|
|
10
|
+
|
|
11
|
+
## Features
|
|
12
|
+
|
|
13
|
+
### Unified File Handling
|
|
14
|
+
Both scripts now handle the exact same set of configuration files:
|
|
15
|
+
|
|
16
|
+
- **Shell configurations**: `.zshrc`, powerlevel10k theme
|
|
17
|
+
- **Git configurations**: `base.gitconfig`, host-specific git configs
|
|
18
|
+
- **VS Code configurations**: settings, keybindings for Code, Insiders, and Cursor
|
|
19
|
+
- **GitHub CLI**: `config.yml`, `hosts.yml`
|
|
20
|
+
- **SSH configuration**: `~/.ssh/config`
|
|
21
|
+
- **iTerm configuration**: `com.googlecode.iterm2.plist`
|
|
22
|
+
- **Rectangle configuration**: `com.knollsoft.Rectangle.plist`
|
|
23
|
+
|
|
24
|
+
### Validation
|
|
25
|
+
All configuration files are validated before being copied:
|
|
26
|
+
|
|
27
|
+
- **JSON files**: Validated with `jq` (if available)
|
|
28
|
+
- **YAML files**: Validated with `yq` (if available)
|
|
29
|
+
- **XML files**: Validated with `xmllint` (if available)
|
|
30
|
+
- **Shell scripts**: Validated with zsh (`zsh -n`)
|
|
31
|
+
|
|
32
|
+
### Safety Features
|
|
33
|
+
- **Centralized backups**: Existing files are backed up to `backups/` directory with timestamps before being overwritten
|
|
34
|
+
- **Backup rotation**: Automatically keeps only the 5 most recent backups per file to prevent disk bloat
|
|
35
|
+
- **Error handling**: Scripts exit on first error with detailed error messages
|
|
36
|
+
- **Validation**: Files are validated before copying to prevent malformed configurations
|
|
37
|
+
- **Directory creation**: All necessary directories are created automatically
|
|
38
|
+
|
|
39
|
+
## Usage
|
|
40
|
+
|
|
41
|
+
```zsh
|
|
42
|
+
# Push configurations from repo to system
|
|
43
|
+
./scripts/sync/push-configs.zsh
|
|
44
|
+
|
|
45
|
+
# Pull configurations from system to repo
|
|
46
|
+
./scripts/sync/pull-configs.zsh
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Host-Specific Behavior
|
|
50
|
+
|
|
51
|
+
The scripts automatically detect the hostname and apply appropriate configurations:
|
|
52
|
+
|
|
53
|
+
- **mikbook**: Uses `personal.gitconfig`
|
|
54
|
+
- **duplo**: Uses `work.gitconfig`
|
|
55
|
+
- **Other hosts**: Defaults to `personal.gitconfig`
|
|
56
|
+
|
|
57
|
+
## Dependencies
|
|
58
|
+
|
|
59
|
+
Optional validation tools (warnings shown if not available):
|
|
60
|
+
- `jq` - JSON validation
|
|
61
|
+
- `yq` - YAML validation
|
|
62
|
+
- `xmllint` - XML validation
|
|
63
|
+
- `brew` - For powerlevel10k theme management
|
|
64
|
+
- `code`, `code-insiders` - For VS Code extension management
|