Skip to content

refactor: rename deploy target to link#360

Merged
himkt merged 1 commit into
mainfrom
refactor/rename-deploy-to-link
May 31, 2026
Merged

refactor: rename deploy target to link#360
himkt merged 1 commit into
mainfrom
refactor/rename-deploy-to-link

Conversation

@himkt
Copy link
Copy Markdown
Owner

@himkt himkt commented May 31, 2026

What

Renames the deploy Make target to link, so it forms a symmetric pair with the existing unlink target and precisely names what it does (it symlinks dotfiles into the working tree — the script even prints LINK ...).

Changes

  • Makefile: deploy target → link (both link/unlink now call bin/link.py)
  • bin/deploy.pybin/link.py: deploy()link(), DEPLOY_MAPLINK_MAP, argparse description and error string updated
  • .github/workflows/deploy.yml.github/workflows/link.yml: job deploylink, step names and make deploymake link
  • README.md: structure tree, setup steps, deployment note, and targets table all updated

git grep -in deploy returns no matches — the repo reads as if deploy never existed.

Note

The CI job is now named link instead of deploy. If a branch-protection rule requires a status check named deploy, update it to link.

🤖 Generated with Claude Code

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Renames the dotfiles “deploy” mechanism to “link” across the repo to better reflect that the script creates symlinks (and to pair with the existing unlink target).

Changes:

  • Renamed the Makefile target from deploy to link and updated unlink to use bin/link.py.
  • Renamed/refactored the Python script API and constants from deploy terminology to link terminology.
  • Renamed the GitHub Actions workflow/job and updated CI steps to run make link, plus updated README references.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.

File Description
README.md Updates setup instructions and targets table to use link/unlink terminology.
Makefile Replaces deploy target with link and points unlink at bin/link.py.
bin/link.py Renames internal deploy naming to link naming and updates CLI text.
.github/workflows/link.yml Renames CI job/steps from deploy to link and updates Make invocation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md
Comment on lines +68 to +70
> **Dotfiles linking.** `make switch` manages packages and system settings only. Configuration files (git, mise, nvim, tmux, uv, ghostty, sheldon, zsh, and `~/.claude`) are linked separately by `make link`, which symlinks them directly to the working tree so edits take effect immediately without a rebuild.
>
> **Migrating an existing machine.** If these files were previously managed by Home Manager (symlinks into `/nix/store`), run `make switch` first — Home Manager removes the old store symlinks on activation — then `make deploy`. `deploy` is strict: it aborts if a destination already exists. Resolve any reported conflicts and re-run. Use `make unlink` to remove the symlinks.
> **Migrating an existing machine.** If these files were previously managed by Home Manager (symlinks into `/nix/store`), run `make switch` first — Home Manager removes the old store symlinks on activation — then `make link`. `link` is strict: it aborts if a destination already exists. Resolve any reported conflicts and re-run. Use `make unlink` to remove the symlinks.
Comment thread README.md
Comment on lines +80 to 84
| `link` | Link dotfiles as working-tree symlinks (run after `switch`) |
| `unlink` | Remove the dotfile symlinks created by `link` |
| `update` | Update flake inputs |
| `gc` | Delete old generations (keep last 7) and run garbage collection |
| `brew-install` | Install Homebrew |
@himkt himkt merged commit 1fbe5bd into main May 31, 2026
4 checks passed
@himkt himkt deleted the refactor/rename-deploy-to-link branch May 31, 2026 01:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants