Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,8 +112,9 @@ It works two ways:
### Upgrading and uninstalling

`brew upgrade --cask renacode/tap/cloudmachine` replaces the app without
restarting the Google Drive mount. (Use the full name: a second tap with a
`cloudmachine` cask, left over from testing, makes the short name ambiguous.)
restarting the Google Drive mount. The cask in the tap can be a version
behind the latest GitHub Release: it is updated by a pull request after each
release (see `packaging/README.md`).
When Homebrew reopens the app, it reloads the background agents so they run
the new version; `cloudmachine-agent drive-status` shows `Agents: OK`. Changes
to the mount itself wait for its next start. One such change is rclone's
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ final class BackupImageServiceTests: XCTestCase {
let points = [
"/",
"/Volumes/CloudMachine",
"/Users/mbeczynski/.cloudmachine/drive",
"/Users/someone/.cloudmachine/drive",
"/Volumes/.timemachine/mac-studio/2026-09-23-101500.backup/CloudMachine",
"/Volumes/.timemachine/mac-studio/2026-09-22-231500.backup/CloudMachine",
// Trap: a similar name, but NOT under the snapshot directory.
Expand Down
16 changes: 13 additions & 3 deletions packaging/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,14 @@ brew install --cask renacode/tap/cloudmachine

The cask lives in [RenaCode/homebrew-tap](https://github.com/RenaCode/homebrew-tap)
and is generated: `.github/workflows/release.yml` fills
`homebrew/cloudmachine.rb.in` with the version and the DMG's sha256 and pushes
it to the tap. Edit the template here, never the copy in the tap.
`homebrew/cloudmachine.rb.in` with the version and the DMG's sha256 and tries
to push it to the tap. Edit the template here, never the copy in the tap.

**Current state:** the release publishes the DMG, but the push of the cask to
the tap is rejected - `homebrew-tap` protects `main` with a ruleset that
requires a pull request (`GH013`). After each release the cask goes into the
tap through a pull request opened by hand (1.3.13 and 1.3.14 went that way), so
until it is merged the tap can be a version behind the latest release.

## Releases

Expand Down Expand Up @@ -95,7 +101,11 @@ grant Full Disk Access again.
is `renacode-tap` (since 2026-10-23; before that a fine-grained PAT).

Without the app the release is still published, but the job fails and
prints the cask, so a missing tap update cannot go unnoticed.
prints the cask, so a missing tap update cannot go unnoticed. The job also
fails while the tap's `main` ruleset rejects the push (`GH013`, see the top of this
file): the release and its DMG are there, only the tap is stale. Fill the
template with the release's version and the sha256 from its `.sha256` file and
open a pull request to `homebrew-tap` with the result.

## What the cask does and deliberately does not do

Expand Down
Loading