fix: back up Docker Desktop config files only, not the whole ~/.docker dir

Docker Desktop checks that ~/.docker is a real directory and rejects it
if it is a symlink (Mackup's default when backing up a whole dir).

Solution: remove .docker from the skip list, add it to curated + selective.
Mackup will symlink only ~/.docker/config.json and ~/.docker/daemon.json —
the directory itself stays a real dir that Docker Desktop can manage.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-12 15:03:24 +02:00
parent 93c23c60a9
commit be9b37010e
+8 -1
View File
@@ -17,6 +17,7 @@ _SSR_MACKUP_CURATED=(
.codex # OpenAI Codex config
.easymcp # EasyMCP config
.factory # Factory AI config
.docker # Docker Desktop — selective files only (see _SSR_MACKUP_SELECTIVE)
.config/claude
.config/cursor
.config/gh # GitHub CLI (if not already in mackup)
@@ -39,6 +40,9 @@ _SSR_MACKUP_SELECTIVE=(
".vscode=settings.json,keybindings.json,snippets"
".vscode-insiders=settings.json,keybindings.json,snippets"
".factory=settings.json,droids"
# Docker Desktop rejects ~/.docker as a symlink — back up individual files
# only so ~/.docker/ stays a real directory that Docker Desktop can manage.
".docker=config.json,daemon.json"
)
# Dot-dirs/files to never auto-include.
@@ -47,7 +51,10 @@ _SSR_MACKUP_SKIP=(
.Trash .localized .DS_Store .CFUserTextEncoding
.cache .npm .yarn .pnpm .bun
.gradle .m2 .ivy2 .sbt
.docker .vagrant .minikube .kube .helm
# .docker is handled via _SSR_MACKUP_SELECTIVE (individual files only).
# Docker Desktop rejects ~/.docker being a symlink, so we never back up
# the whole directory — only config.json / daemon.json as file symlinks.
.vagrant .minikube .kube .helm
.local # runtime state, not config
.bash_history .zsh_history .zsh_sessions .sh_history
.lesshst .wget-hsts .python_history .node_repl_history