Add ssh to gitlab

This commit is contained in:
2026-04-28 15:21:29 -04:00
parent bac8eda5a4
commit cf3be894d3
12 changed files with 97 additions and 52 deletions

View File

@@ -25,3 +25,9 @@ fi
if [ -d "$HOME/.local/bin" ] ; then if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH" PATH="$HOME/.local/bin:$PATH"
fi fi
# Reset KDE wallet to blank template at each login.
if [ -f "$HOME/.local/share/kwalletd/kdewallet.kwl.blank" ]; then
cp "$HOME/.local/share/kwalletd/kdewallet.kwl.blank" "$HOME/.local/share/kwalletd/kdewallet.kwl"
cp "$HOME/.local/share/kwalletd/kdewallet.salt.blank" "$HOME/.local/share/kwalletd/kdewallet.salt"
fi

View File

@@ -0,0 +1,13 @@
- [Build system](feedback_build.md) — Use build.py c++, not Unreal's standard scripts
- [UEWingman batch inputs](feedback_uewingman_batch_inputs.md) — Use FWingJsonArray for batch/array params, not multi-line FString or TArray
- [Desktop environment](user_environment.md) — KDE Plasma on X11 (Unreal incompatible with Wayland), 175% scale on high-DPI
- [Luprex DLL polling model](project_luprex_polling.md) — DLL doesn't emit events; gamemode tick must poll, don't refactor to delegates across that boundary
- [UserWidget enhanced input](feedback_widget_enhanced_input.md) — IA event-graph nodes fire even when widget is hidden; no need for InputComponent bindings
- [Graph entry/exit node positioning](feedback_graph_entry_exit_position.md) — After BlueprintGraph_Add, reposition FunctionEntry/FunctionResult to frame the body nodes left-to-right
- [Batch UEWingman search/lookups](feedback_wingman_batch_searchtypes.md) — Pack all GraphNode_SearchTypes queries into one call; group read-only dumps via Sequence
- [Don't get ahead of the user](feedback_pacing.md) — Do the requested step, report, stop. No volunteered "here's what I'll do next."
- [Concise explanations](feedback_concise_explanations.md) — Lead with the shortest accurate answer; expand only when asked
- [Verify before asserting](feedback_verify_before_asserting.md) — Don't present guesses as facts; look it up or flag uncertainty
- [Project tools directory](reference_tools.md) — `tools/clangd-query.py` for engine-symbol lookup; other helpers in `tools/`
- [Don't open VSCode unprompted](feedback_vscode_windows.md) — Only open VSCode when user explicitly asks to see a file
- [Parens in conditions](feedback_parens_in_conditions.md) — Parenthesize sub-expressions in if-statements with logical operators

View File

@@ -62,6 +62,7 @@
], ],
"defaultMode": "acceptEdits" "defaultMode": "acceptEdits"
}, },
"theme": "light", "model": "sonnet",
"effortLevel": "high" "effortLevel": "medium",
"theme": "light"
} }

View File

@@ -1,16 +1,29 @@
model = "gpt-5.4" model = "gpt-5.4"
model_reasoning_effort = "medium"
[features] [features]
use_legacy_landlock = true use_legacy_landlock = true
[sandbox_workspace_write]
writable_roots = ["/home/jyelon/integration.UE"]
network_access = true
[projects."/home/jyelon/integration"] [projects."/home/jyelon/integration"]
trust_level = "trusted" trust_level = "trusted"
[projects."/home/jyelon/pacman"]
trust_level = "trusted"
[mcp_servers.ue-wingman] [mcp_servers.ue-wingman]
command = "python3" command = "python3"
args = ["/home/jyelon/integration/Plugins/UEWingman/ue-wingman-mcp.py"] args = ["/home/jyelon/integration/Plugins/UEWingman/ue-wingman-mcp.py"]
[mcp_servers.ue-wingman.tools.unreal]
approval_mode = "approve"
[notice.model_migrations] [notice.model_migrations]
"gpt-5.3-codex" = "gpt-5.4" "gpt-5.3-codex" = "gpt-5.4"
[mcp_servers.ue-wingman.tools.unreal] [tui.model_availability_nux]
approval_mode = "approve" "gpt-5.5" = 2

48
install.py Executable file
View File

@@ -0,0 +1,48 @@
#!/usr/bin/env python3
from pathlib import Path
import shutil
REPO_DIR = Path.home() / "jbashrc"
BACKUP_DIR = Path.home() / ".orig-config"
def install(src, dst):
src_path = REPO_DIR / src
dst_path = Path(dst).expanduser()
backup_path = BACKUP_DIR / src
if not backup_path.exists() and dst_path.exists() and not dst_path.is_symlink():
backup_path.parent.mkdir(parents=True, exist_ok=True)
if dst_path.is_dir():
shutil.copytree(dst_path, backup_path)
else:
shutil.copy2(dst_path, backup_path)
print(f"Backed up {dst_path}")
dst_path.parent.mkdir(parents=True, exist_ok=True)
if dst_path.is_dir() and not dst_path.is_symlink():
shutil.rmtree(dst_path)
elif dst_path.exists() or dst_path.is_symlink():
dst_path.unlink()
dst_path.symlink_to(src_path)
print(f"Linked {dst_path} -> {src_path}")
install("bash/dot-bashrc", "~/.bashrc")
install("bash/dot-profile", "~/.profile")
install("claude/CLAUDE.md", "~/.claude/CLAUDE.md")
install("claude/settings.json", "~/.claude/settings.json")
install("claude/integration-memory", "~/.claude/projects/-home-jyelon-integration/memory")
install("emacs/dot-emacs", "~/.emacs")
install("git/dot-gitconfig", "~/.gitconfig")
install("vscode/chatLanguageModels.json", "~/.config/Code/User/chatLanguageModels.json")
install("vscode/keybindings.json", "~/.config/Code/User/keybindings.json")
install("vscode/settings.json", "~/.config/Code/User/settings.json")
install("codex/config.toml", "~/.codex/config.toml")
install("codex/default.rules", "~/.codex/rules/default.rules")
install("codex/AGENTS.md", "~/.codex/AGENTS.md")
install("kwalletd/kdewallet.kwl.blank", "~/.local/share/kwalletd/kdewallet.kwl.blank")
install("kwalletd/kdewallet.salt.blank", "~/.local/share/kwalletd/kdewallet.salt.blank")
install("ssh/config", "~/.ssh/config")
install("bin/clean-vscode.sh", "~/bin/clean-vscode.sh")

View File

@@ -1,47 +0,0 @@
#!/bin/bash
#
# Installs config files from this repo by creating symlinks.
# On first run, backs up originals to ~/.orig-config.
#
REPO_DIR="$HOME/jbashrc"
# The list of config files: "repo-relative-path:absolute-target"
FILES=(
"bash/dot-bashrc:$HOME/.bashrc"
"bash/dot-profile:$HOME/.profile"
"claude/CLAUDE.md:$HOME/.claude/CLAUDE.md"
"claude/settings.json:$HOME/.claude/settings.json"
"claude/integration-memory:$HOME/.claude/projects/-home-jyelon-integration/memory"
"emacs/dot-emacs:$HOME/.emacs"
"git/dot-gitconfig:$HOME/.gitconfig"
"vscode/chatLanguageModels.json:$HOME/.config/Code/User/chatLanguageModels.json"
"vscode/keybindings.json:$HOME/.config/Code/User/keybindings.json"
"vscode/settings.json:$HOME/.config/Code/User/settings.json"
"bin/clean-vscode.sh:$HOME/bin/clean-vscode.sh"
"codex/config.toml:$HOME/.codex/config.toml"
"codex/default.rules:$HOME/.codex/rules/default.rules"
"codex/AGENTS.md:$HOME/.codex/AGENTS.md"
)
# Back up originals that haven't been backed up yet.
mkdir -p "$HOME/.orig-config"
for entry in "${FILES[@]}"; do
src_rel="${entry%%:*}"
target="${entry#*:}"
backup="$HOME/.orig-config/$src_rel"
if [ ! -e "$backup" ] && [ -e "$target" ] && [ ! -L "$target" ]; then
mkdir -p "$(dirname "$backup")"
cp -r "$target" "$backup"
echo "Backed up $target"
fi
done
# Create symlinks.
for entry in "${FILES[@]}"; do
src="$REPO_DIR/${entry%%:*}"
target="${entry#*:}"
mkdir -p "$(dirname "$target")"
ln -sfn "$src" "$target"
echo "Linked $target -> $src"
done

2
kwalletd/README.txt Normal file
View File

@@ -0,0 +1,2 @@
This is an empty, no password wallet called kdewallet.
I use it as a means to periodically empty out my wallet.

Binary file not shown.

View File

@@ -0,0 +1,2 @@
¬ôjÞ1(:G
<EFBFBD>9;IÞtÙß«‚·4Fi‡44¹”œèa¨…”×DšéÜàø©—Ánž(Gá

4
ssh/config Normal file
View File

@@ -0,0 +1,4 @@
Host gitlab.com
IdentityFile ~/.ssh/id_gitlab
IdentitiesOnly yes
AddKeysToAgent 8h

2
ssh/gen-gitlab-key.sh Executable file
View File

@@ -0,0 +1,2 @@
#!/usr/bin/env bash
ssh-keygen -t ed25519 -a 100 -f ~/.ssh/id_gitlab -C "jyelon@gmail.com"

View File

@@ -25,6 +25,7 @@
"editor.renderWhitespace": "boundary", "editor.renderWhitespace": "boundary",
"files.autoSave": "afterDelay", "files.autoSave": "afterDelay",
"editor.suggest.filterGraceful": false, "editor.suggest.filterGraceful": false,
"extensions.ignoreRecommendations": true "extensions.ignoreRecommendations": true,
"diffEditor.renderSideBySide": false
} }