Skip to content

New dotfiles sync#20

Merged
baxyz merged 5 commits intomainfrom
new-dotfiles-sync
Apr 17, 2026
Merged

New dotfiles sync#20
baxyz merged 5 commits intomainfrom
new-dotfiles-sync

Conversation

@baxyz
Copy link
Copy Markdown
Contributor

@baxyz baxyz commented Apr 17, 2026

Description

Please include a summary of what this PR does and why it's needed.

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update
  • Refactoring
  • Test improvement

Related Issues

Closes #(issue number)

How Has This Been Tested?

Describe the tests you ran and how to reproduce them:

  • Test A
  • Test B

Checklist

  • My code follows the code style of this project
  • I have updated the documentation accordingly
  • I have added tests for my changes
  • All new and existing tests passed locally
  • My commits follow the conventional commit format

Screenshots (if applicable)

Add screenshots for UI changes.

Additional Context

Add any other context about the PR here.

baxyz added 2 commits April 17, 2026 20:57
- remove local-mounts feature
- add dotfiles-sync for merging config files
- create sync script with merge strategy
- add installation and runtime detection scripts
- implement tests for dotfiles-sync functionality
…ation

- update supported platforms in README
- improve merge strategy for cloud environments in sync script
- clarify GPG signing behavior on cloud platforms
Copilot AI review requested due to automatic review settings April 17, 2026 19:52
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 17, 2026

✅ PR Validation Passed

All checks passed!


📋 Pipeline Status

Job Status
🧾 Conventional Commits passing
🧪 Feature Tests passing
🐚 ShellCheck passing

🤖 Generated by @helpers4 CI • 2026-04-17

Copy link
Copy Markdown

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

This PR replaces the existing local-mounts devcontainer feature with a new dotfiles-sync feature that syncs developer dotfiles into the container using a merge (non-destructive) strategy and adds environment-aware behavior for cloud dev environments.

Changes:

  • Removed the local-mounts feature (scripts, metadata, docs, and test).
  • Added the new dotfiles-sync feature (install + runtime sync scripts, devcontainer feature definition, docs, and tests).
  • Updated repository docs and CI matrices / conventional-commit scopes to reference dotfiles-sync.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
test/local-mounts/test.sh Removed local-mounts feature test script.
test/dotfiles-sync/test.sh Added test script validating dotfiles-sync installation and runtime artifacts.
src/local-mounts/sync-files.sh Removed legacy runtime sync implementation.
src/local-mounts/install.sh Removed legacy build-time installer.
src/local-mounts/devcontainer-feature.json Removed feature definition for local-mounts.
src/local-mounts/README.md Removed feature documentation for local-mounts.
src/dotfiles-sync/sync-files.sh Added environment-aware merge-based sync logic for git/ssh/npm/gpg.
src/dotfiles-sync/install.sh Added feature installer that provisions directories and installs runtime/profile.d scripts.
src/dotfiles-sync/devcontainer-feature.json Added new feature definition + options + mounts + postStartCommand.
src/dotfiles-sync/README.md Added documentation describing merge strategy and platform behavior.
README.md Updated top-level docs to list dotfiles-sync and mark local-mounts removed; updated some feature links.
AGENTS.md Updated conventional-commit scopes and the feature list to include dotfiles-sync.
.github/workflows/test.yml Added dotfiles-sync to CI feature test matrix.
.github/workflows/pr-validation.yml Added dotfiles-sync to validation scopes and test matrix.

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

Comment thread src/dotfiles-sync/sync-files.sh
Comment thread README.md
Comment thread src/dotfiles-sync/sync-files.sh Outdated
Comment thread src/dotfiles-sync/devcontainer-feature.json Outdated
Comment thread src/dotfiles-sync/README.md
Comment thread src/dotfiles-sync/install.sh
Comment thread src/dotfiles-sync/sync-files.sh Outdated
Comment thread src/dotfiles-sync/sync-files.sh Outdated
baxyz added 2 commits April 17, 2026 22:11
- create directories for SSH, GPG, gitconfig, and npmrc
- update README and feature JSON to remove override options
- improve error messages in sync script
- add git availability check for smart merge
- improve test script output for git availability
Copy link
Copy Markdown

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

Copilot reviewed 13 out of 13 changed files in this pull request and generated 5 comments.

Comments suppressed due to low confidence (1)

src/dotfiles-sync/devcontainer-feature.json:34

  • mounts bind-mounts ~/.gitconfig, ~/.ssh, ~/.gnupg, and ~/.npmrc unconditionally. On Docker, a bind mount typically fails container startup if the host path doesn’t exist (and many users won’t have ~/.gnupg or ~/.npmrc). Consider changing the mounting approach to avoid hard failures (e.g., mount only $HOME/a staging dir, or document clearly that these paths must exist before starting the container).

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

Comment thread src/dotfiles-sync/sync-files.sh
Comment thread src/dotfiles-sync/sync-files.sh
Comment thread .github/workflows/pr-validation.yml
Comment thread src/dotfiles-sync/README.md
Comment thread README.md Outdated
@baxyz baxyz force-pushed the new-dotfiles-sync branch from a185822 to 8a33785 Compare April 17, 2026 21:08
@baxyz baxyz merged commit f91a357 into main Apr 17, 2026
23 checks passed
@baxyz baxyz deleted the new-dotfiles-sync branch April 17, 2026 21:12
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