Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate mackup formula due to potential for silent loss of data #181706

Closed
wants to merge 1 commit into from

Conversation

chrisbloom7
Copy link

mackup works by moving config files to an off-disk backup location (usually a cloud storage provider like iCloud or Dropbox, etc.) and then replacing the original file with a symlink to the backed up version. The intended use is to make sure program configuration settings and preferences can be restored if you need to replace computers, factory reset, etc.

As documented here, here, here, and other mentions through the project repo and related repos, mackup backup no longer works on MacOS Sonoma (possibly due to security changes in the app sandbox in Sonoma) and running the command will result in the loss of all preference files. Users who backup to a storage provider that has versioning or backup snapshots may be able to restore preferences to an older version but will need to manually move the files back since mackup restore will fail for the same reason as the backup command. For users backing up to other storage providers that do not have a versioning or snapshot feature, such as iCloud, running the backup command results in total data loss. This issue has been known to the developer for over a year but there is no fix, no mention of the issue in the project README, no warning when running the command, and no indication in the program output that the backup process ran into an error.

  • Have you followed the guidelines for contributing?
  • Have you ensured that your commits follow the commit style guide?
  • Have you checked that there aren't other open pull requests for the same formula update/change?
  • Have you built your formula locally with HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>, where <formula> is the name of the formula you're submitting?
  • Is your test running fine brew test <formula>, where <formula> is the name of the formula you're submitting?
  • Does your build pass brew audit --strict <formula> (after doing HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>)? If this is a new formula, does it pass brew audit --new <formula>?

@github-actions github-actions bot added autosquash Automatically squash pull request commits according to Homebrew style. python Python use is a significant feature of the PR or issue formula deprecated Formula deprecated labels Aug 19, 2024
Copy link
Contributor

Thanks for contributing to Homebrew! 🎉 It looks like you're having trouble with a CI failure. See our contribution guide for help. You may be most interested in the section on dealing with CI failures. You can find the CI logs in the Checks tab of your pull request.

`mackup` works by moving config files to an
off-disk backup location (usually a cloud storage
provider like iCloud or Dropbox, etc.) and then
replacing the original file with a symlink to the
backed up version. The intended use is to make
sure program configuration settings and
preferences can be restored if you need to replace
computers, factory reset, etc.

As documented
[here](lra/mackup#2035),
[here](lra/mackup#1924),
[here](lra/mackup#1969 (reply in thread)),
`mackup backup` no longer works on MacOS Sonoma
(likely due to [security
changes](lra/mackup#1924 (comment))
in the app sandbox in Sonoma) and running either
the backup or restore commands on MacOS Sonoma
will result in the loss of all preference files.
Users who backup to a storage provider that has
versioning or backup snapshots may be able to
restore preferences to an older version. For users
backing up to other storage providers that do not
have this feature, such as iCloud, the command
results in total data loss. This issue has been
known to the developer for over a year but there
is no fix, no mention of the issue in the project
README, no warning when running the command, and
no indication in the program output that the
backup process may not have completed properly -
neither in the dry-run mode nor in live mode.
@SMillerDev
Copy link
Member

So is the project deprecated? Or you just shouldn't use it on Sonoma?

@github-actions github-actions bot added workflows PR modifies GitHub Actions workflow files automerge-skip `brew pr-automerge` will skip this pull request autobump and removed autosquash Automatically squash pull request commits according to Homebrew style. python Python use is a significant feature of the PR or issue formula deprecated Formula deprecated labels Aug 19, 2024
@chrisbloom7
Copy link
Author

Uh, don't know how that got closed nor why it's trying to 5k+ files... BRB

@chrisbloom7
Copy link
Author

I'm gonna just open a new PR with a fresh commit. Not sure what happened here

@SMillerDev I'll address your question over there

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autobump automerge-skip `brew pr-automerge` will skip this pull request workflows PR modifies GitHub Actions workflow files
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants