id = "tripmode" name = "TripMode" homepage = "https://www.tripmode.ch" description = "Easily control your Mac's data usage on slow or expensive networks by blocking unwanted background updates." # TripMode ships no command-line tool, so `detect` is the bundle identifier. # The Homebrew cask signals ch.tripmode.TripMode # (`uninstall signal: ["TERM", "ch.tripmode.TripMode"]`); the Setapp build is a # second identifier, read from the copy installed on this Mac — # /usr/libexec/PlistBuddy -c 'Print :CFBundleIdentifier' # "/Applications/Setapp/TripMode.app/Contents/Info.plist" answers # ch.tripmode.TripMode-setapp. executables = [] platforms = ["macos"] [installation] macos_bundle_ids = ["ch.tripmode.TripMode", "ch.tripmode.TripMode-setapp"] [dotfiles] # From the Homebrew cask `tripmode`, whose `zap trash:` names the two things # TripMode keeps under the user's home directory: # ~/Library/Preferences/ch.tripmode.TripMode.plist and # ~/Library/Application Support/Tripmode (spelled with a lower-case m, unlike # the app). The per-app allow and block rules and the per-network profiles that # TripMode's homepage describes — "TripMode lists all the apps that are # requesting internet access and blocks them by default. You can choose which # apps get internet access" — are the settings worth carrying. # # The rest of what the cask zaps is outside the home directory or is state: # /Library/Application Support/Tripmode and # /Library/PrivilegedHelperTools/ch.tripmode.TripMode.HelperTool belong to the # privileged helper, and ~/Library/Caches/ch.tripmode.TripMode is cache. paths = [ "[preferences]/ch.tripmode.TripMode.plist", "[appData]/Tripmode/", ] # TripMode is licensed per machine and sold through Setapp as well; no file # among the paths above is a credential end to end. The subscription state for # the Setapp build belongs to Setapp, not to this directory. secret = [] # No machine_lines: these are property lists, which neither prefix nor key_path # matching can read. The machine-local part of them is the list of networks # TripMode has seen (SSIDs and interface identifiers) — a consumer that can # read plists should decide about those itself; the per-app rules beside them # are the reason to carry the file.