id = "moom" name = "Moom" homepage = "https://manytricks.com/moom/" description = "Move and zoom windows" # The app icon from the Moom product page. icon = "https://manytricks.com/moom/moomicon256.png" # Moom ships no command-line tool, so `detect` carries the bundle identifier. # Verified on a Mac with Moom installed: ~/Library/Preferences holds # com.manytricks.Moom.plist, and the Homebrew cask `moom` zaps that same # identifier's preferences file. executables = [] platforms = ["macos"] [installation] macos_bundle_ids = ["com.manytricks.Moom"] [dotfiles] # Moom is a direct download from Many Tricks as well as a Mac App Store title; # the direct build is not sandboxed and writes the ordinary preferences domain. # The Homebrew cask's `zap trash:` names the two locations under the user's # home (https://formulae.brew.sh/api/cask/moom.json): # ~/Library/Preferences/com.manytricks.Moom.plist and # ~/Library/Application Support/Many Tricks. # # Read back on this machine, the preferences domain is where the user's own # setup lives: "Custom Controls" is the array of saved window actions, each # with its Title, Relative Frame, Resize Size, Move Direction and Auto-Trigger # flags, alongside "Application Mode" and the update settings. paths = ["[preferences]/com.manytricks.Moom.plist"] exclude = [] # ~/Library/Application Support/Many Tricks/Receipts/com.manytricks.moom, seen # on this machine, is a signed binary purchase receipt rather than a setting — # the licence for a paid app. It is classified as a credential instead of being # synced as content; over-classifying costs a re-download of the receipt, # under-classifying publishes a licence. The directory is shared by every Many # Tricks app, which is why the file is named rather than the whole folder. # # The fixture copy is a plain-text stand-in: the real file is a binary blob no # fixture can carry, and nothing parses a whole-file secret. secret = ["[appData]/Many Tricks/Receipts/com.manytricks.moom"] # No machine_lines: the saved window layouts, their keyboard triggers and the # grid size are exactly what a user wants on their next Mac. The domain does # hold per-machine leftovers (Sparkle's update bookkeeping, the "Automatic News # Updates" counters), but this is a property list and `match` understands only # line-oriented files, TOML, YAML and JSON.