id = "shimo" name = "Shimo" homepage = "https://www.shimovpn.com/" # The vendor's own words, from the homepage: "Shimo – the most sophisticated # VPN client for Mac – enables with its lean design access and control in a # simple and easy way", trimmed. description = "The most sophisticated VPN client for Mac, supporting every major VPN protocol currently available." # The app icon, from the largest apple-touch-icon shimovpn.com publishes. icon = "https://www.shimovpn.com/apple-touch-icon-180x180.png" # Shimo ships no command-line tool, so `detect` carries the bundle identifier. # The Homebrew cask zaps ~/Library/Preferences/com.feingeist.Shimo.plist and # ~/Library/Caches/com.feingeist.Shimo (Casks/s/shimo.rb), and the vendor's own # uninstall guide names the same domain. executables = [] platforms = ["macos"] [installation] macos_bundle_ids = ["com.feingeist.Shimo"] [dotfiles] # Shimo's own "How to completely uninstall Shimo" support article lists what it # leaves under the user's home: ~/Library/Application Support/Shimo/, # ~/Library/Preferences/com.feingeist.Shimo.plist, ~/Library/Caches/ # com.feingeist.Shimo, ~/Library/Cookies/com.feingeist.Shimo.binarycookies and # ~/Library/Logs/Shimo. # # Only the preferences domain is synced here. It is the app's settings — the # menu-bar and notification options, the automation triggers Shimo documents # under /support/automation/, and the update settings. [preferences] is # ~/Library/Preferences, and the entry is macOS-only, so there is no other # platform for that root to stand for. paths = ["[preferences]/com.feingeist.Shimo.plist"] # ~/Library/Application Support/Shimo is the VPN account store, and it is # deliberately kept out. Two reasons, both from Shimo's own documentation: # "Syncing Shimo VPN accounts across multiple computers" tells the user to # "select your cloud drive folder as Storage Directory on all your computers", # after which Shimo "will sync all your VPN accounts and auxiliary files across # your computers" — the app already owns moving this directory between Macs — # and the directory holds VPN accounts, which are credential-bearing. Shimo # does not document the file names inside it, so there is no path here to name # as a `secret` either; the honest statement is that it must not sync as # ordinary content. exclude = ["[appData]/Shimo/"] # No whole-file credential *among the paths above* — the preferences domain is # app settings. This is not a statement about the account store excluded above. secret = [] # No machine_lines: the preferences are the user's own options, and a property # list has no matcher in this schema anyway — `format` covers toml, yaml and # json only.