340 Commits

Author SHA1 Message Date
laily f9e8a50bd9 Configure Vim for systemctl editing 2026-10-30 09:27:18 +08:00
laily 39cf5c6d19 fix: confirm SSH alias updates and keep key handling consistent 2026-10-19 16:57:44 +08:00
laily 59e2356f5c fix: pull ~/.dotfile automatically from ordinary ff commands
Daily ff subcommands never updated the repo; only `ff update` did.
Add a pouch-style interval auto-update at the ff entry (default 24h),
skip dirty/fail/timeout without aborting the current command, and
cover the skip/pull cases with a fish regression.
2026-10-13 16:25:05 +08:00
laily 2ede67d1c9 feat: add ff pouch to clone and install pouch
Clone https://git.yumee.top/laily/.pouch to ~/.pouch and run install.sh.
2026-10-13 16:01:34 +08:00
laily 4fc664d243 feat: split mise shared config from per-machine tools
Link mise/config.toml into ~/.config/mise/conf.d/dotfile.toml so
mise use -g writes the local config.toml instead of dirtying git.
2026-10-12 16:00:33 +08:00
laily 89ad569581 fix: select scan-ip network interface 2026-09-21 19:59:15 +08:00
laily cffe3f01f4 fix: 把 SSH config.d Include 写到 ~/.ssh/config 第一行
Include 落在 Host/Match 之后会被当成该块的条件引入。ssh2 与 ff ssh
改为检测顶层 Include,缺失时插入文件首行并去掉块内重复项。
2026-09-17 14:32:14 +08:00
laily 8c80e5b630 fix: 修正 server-security-check 的 SSH 误报并标注高风险
- PermitRootLogin: 接受 without-password 别名(OpenSSH -T 会输出该旧别名),
  避免把仅允许密钥的 root 登录误报为“无法确定安全状态”
- 检查未通过时列出配置文件中的相关设置行:sshd 只采用先读到的一条,
  主配置 Include 之前的 drop-in 以及 Match 块内的设置都会造成“改过但不生效”
- sshd -T 读取失败时同样给出配置文件设置,便于定位
- 参数匹配改为大小写不敏感
- 高风险整行红色、警告黄色,汇总同步着色;非 TTY 或 NO_COLOR 时禁用
2026-09-17 12:08:24 +08:00
laily 2060bbd23a feat: udpate fish 2026-09-16 21:44:25 +08:00
laily 0b2d2b6c6d feat(ff-ssh): add host from ssh args with ssh-copy-id
- ff ssh <ssh-args> parses target like ssh, runs ssh-copy-id, then
  writes ~/.ssh/config.d/<alias>.conf (HostName/User/Port/IdentityFile/
  ProxyJump/ProxyCommand); supports --no-copy, add and run subcommands
- record IdentityFile whenever -i / -o IdentityFile= is given and pass
  the same key to ssh-copy-id; omit it otherwise so ssh falls back to
  default identities
- ff ssh re-sources ff-ssh.fish each call, ff reload clears cached
  dotfile functions so edits take effect
- fix broken copy subcommand and ssh-arg parsing caused by
  --argument-names argv shadowing fish $argv
- fix ssh subcommand completion guards; wrap ssh completions for add/run
2026-09-16 15:51:48 +08:00
laily 0b04a4de50 feat: split git user identity by repo directory
Leave global name/email empty with useConfigOnly so unmatched repos cannot commit. Personal identity applies under ~/.dotfile, ~/code, and ~/.pouch; work identity stays in local ~/.gitconfig.work for ~/workrepo.
2026-09-14 14:55:44 +08:00
laily 097fce7827 fix: make git merge2 work across worktrees
Checkout of the target branch fails when it is already used by another
worktree. Detect that worktree and merge there instead.
2026-09-10 23:04:13 +08:00
laily a834c46b89 feat: update nvim dep 2026-09-08 14:35:58 +08:00
laily 2dedb9573c fix: invoke git credential helpers via absolute path
Apple Git osxkeychain exclusive-locks argv[0]. A relative name looks in
cwd and fails with "failed to lock git-credential-osxkeychain".
2026-09-08 11:39:25 +08:00
laily dc302bff1c fix: fail mise-install when curl pipeline errors
Do not print success after a failed curl | sh install; enable pipefail and verify mise is on PATH before continuing.
2026-09-08 11:34:46 +08:00
laily c95a1d70b1 fix: docker-install skip installed packages and suspend needrestart
Avoid upgrading already-installed packages and restarting unrelated
services on Ubuntu 24.04, where apt-pinvoke -m u overrides NEEDRESTART_MODE.
2026-08-29 14:37:36 +08:00
laily d6eee6465b feat: update mise 2026-08-28 14:49:34 +08:00
laily 2aba5d7162 feat: modify skiff to pouch 2026-08-25 15:32:09 +08:00
laily a0ea27099b feat: add upstream gitea 2026-08-10 12:22:52 +08:00
laily 8072e344ac feat: add ssh2 2026-08-04 14:59:54 +08:00
laily 4382de9ddc feat: improve scan-ip device identification 2026-07-28 15:47:24 +08:00
laily 8f2ebfc3de feat: add skiff to path 2026-07-27 17:48:01 +08:00
laily 6a92e31a90 feat: sudo by default 2026-07-25 22:16:38 +08:00
laily 045242e2c2 feat: sudo by default 2026-07-25 22:12:11 +08:00
laily 6e57abcec6 feat: sudo by default 2026-07-25 22:04:59 +08:00
laily 7654790973 feat: add ssh-harden 2026-07-25 21:57:16 +08:00
laily c974d858be feat: add ssh-harden 2026-07-25 21:49:20 +08:00
laily 5598ad5b3f feat: add ssh-harden 2026-07-25 21:33:52 +08:00
laily 9617bbbd27 feat: add ssh-harden 2026-07-25 21:27:49 +08:00
laily 1e12ae5c6e feat: add ssh-harden 2026-07-25 21:21:09 +08:00
laily b804e42ef1 feat: add ssh-harden 2026-07-25 21:13:15 +08:00
laily c5d99958d4 feat: add init.sh 2026-07-25 21:02:07 +08:00
laily db8a531b92 feat: add ssh-key-only 2026-07-25 20:58:38 +08:00
laily dc58f0c253 feat: modify scan-ip 2026-07-21 23:35:28 +08:00
laily a376995947 feat: update ghostty ssh term 2026-07-14 21:45:02 +08:00
laily ca88abbfc9 feat: add modify docker config 2026-07-02 12:33:40 +08:00
laily b08868cf16 feat: add sudo write 2026-06-27 14:28:18 +08:00
laily 8dcd6e3ac9 fix: add alias for script 2026-06-27 12:00:04 +08:00
laily a43e8bc885 feat: add git-setup 2026-06-27 11:55:41 +08:00
laily c12b212091 fix: init docker 2026-06-27 11:29:07 +08:00
laily 0548056ca4 fix: toggle-resion 2026-06-27 11:20:47 +08:00
laily acac6c3650 feat: update git credential 2026-06-26 11:18:08 +08:00
laily 783965d826 fix: make help.autocorrect compatible with old Git versions
Use numeric 0 in main config so legacy Git does not fail on parse; keep prompt in platform includes for Git 2.36+.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 11:15:24 +08:00
laily 9551225ee9 feat: update git credential 2026-06-26 11:10:23 +08:00
laily 84c7f37c53 docs: add AGENTS.md as shared dotfile maintenance conventions
Point Cursor and Claude rules at AGENTS.md for cross-tool agent guidance.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 15:19:25 +08:00
laily 67291a9a50 feat: add script catalog and -h help for all dotfile scripts
Introduce ff script -h with auto descriptions, shared help.sh, and usage flags across script/*.sh.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 15:09:35 +08:00
laily 1f6b042b26 feat: split git credential config by OS on Linux and macOS
Use includeIf so Linux prefers libsecret with cache fallback, while macOS keeps osxkeychain.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 11:04:15 +08:00
laily e8aae9738b feat: add nosudo 2026-06-25 10:46:07 +08:00
laily 0e7fe55474 fix: support ubuntu 2026-06-10 10:26:05 +08:00
laily ff420521ac feat: add script to change debian source 2026-06-04 15:32:13 +08:00