id = "mosaic" name = "Mosaic" homepage = "https://lightpillar.com/mosaic.html" description = "Mosaic allows you to effortlessly resize and re-position windows on your Mac with a simple Drag & Drop, seamlessly integrated into macOS." # Mosaic ships no command-line tool, so `detect` carries the bundle identifier. # Verified on a Mac that has Mosaic's data directory: # ~/Library/Application Support/com.lightpillar.Mosaic exists, and the Homebrew # cask `mosaic` uninstalls the pkgutil receipt com.lightpillar.Mosaic.pkg. executables = [] platforms = ["macos"] [installation] macos_bundle_ids = ["com.lightpillar.Mosaic"] [dotfiles] # The Homebrew cask's `zap trash:` list # (https://formulae.brew.sh/api/cask/mosaic.json) names the three locations # under the user's home: ~/Library/Application Support/com.lightpillar.Mosaic, # ~/Library/Caches/com.lightpillar.Mosaic and # ~/Library/Preferences/com.lightpillar.Mosaic.plist. # # On this machine the Application Support directory holds one file, # MosaicCoreData.storedata — an XML Core Data store, which is where a window # manager of this shape keeps the layouts and the regions the user drew. The # preferences domain is the ordinary NSUserDefaults settings beside it. paths = [ "[preferences]/com.lightpillar.Mosaic.plist", "[appData]/com.lightpillar.Mosaic/", ] # ~/Library/Caches/com.lightpillar.Mosaic is a cache and is not under either # path above, so there is nothing to carve out of what is. # Mosaic is a paid app, but nothing in the two locations above was identifiable # as a licence record, and asserting one that may not exist would be worse than # saying nothing. A consumer that content-scans what it syncs is the layer that # catches a licence key in a property list. secret = [] # No machine_lines: layouts and their shortcuts are what a user wants on the # next Mac, and neither a property list nor a Core Data store can be matched by # `prefix` or `key_path`.