dotfiles自動同期のlaunchdエージェント管理を行う。
auto-syncは毎時dotfilesの変更をGitHubに自動同期するlaunchdエージェント。
```bash
launchctl list | grep dotfiles
```
```bash
cat ~/Library/LaunchAgents/com.user.dotfiles-sync.plist
```
```bash
cat /Users/snkrheadz/ghq/github.com/snkrheadz/laptop/scripts/auto-sync.sh
```
```bash
cat ~/Library/Logs/dotfiles-sync.log | tail -50
```
```bash
tail -20 ~/Library/Logs/dotfiles-sync.log
```
```bash
launchctl unload ~/Library/LaunchAgents/com.user.dotfiles-sync.plist
```
```bash
launchctl load ~/Library/LaunchAgents/com.user.dotfiles-sync.plist
```
```bash
launchctl unload ~/Library/LaunchAgents/com.user.dotfiles-sync.plist && \
launchctl load ~/Library/LaunchAgents/com.user.dotfiles-sync.plist
```
```bash
/Users/snkrheadz/ghq/github.com/snkrheadz/laptop/scripts/auto-sync.sh
```
```bash
plutil -lint ~/Library/LaunchAgents/com.user.dotfiles-sync.plist
```
```xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "...">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.user.dotfiles-sync</string>
<key>ProgramArguments</key>
<array>
<string>/path/to/auto-sync.sh</string>
</array>
<key>StartInterval</key>
<integer>3600</integer>
<key>StandardOutPath</key>
<string>~/Library/Logs/dotfiles-sync.log</string>
<key>StandardErrorPath</key>
<string>~/Library/Logs/dotfiles-sync.log</string>
</dict>
</plist>
```
1. launchdエージェントの稼働状態確認
2. plistファイルの存在確認
3. 最新のログエントリを表示
1. エージェント状態確認
2. ログを確認して最後の実行結果を調査
3. 手動実行でスクリプトの動作確認
4. 必要に応じてエージェント再起動
1. dotfilesディレクトリに移動
2. `brew bundle dump --force` でBrewfile更新
3. `git add -A` で変更をステージ
4. 変更がある場合のみコミット
5. リモートにプッシュ
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/launchd-manage/raw