id = "gasmask" name = "Gas Mask" homepage = "https://github.com/2ndalpha/gasmask" description = "Hosts file manager for macOS" # The app's own macOS icon, from its repository. icon = "https://raw.githubusercontent.com/2ndalpha/gasmask/master/Assets.xcassets/AppIcon.appiconset/icon_256x256.png" # Gas Mask has no command-line tool and its bundle executable is "Gas Mask", # which this field cannot spell. The bundle identifier is used instead: # Gas Mask.xcodeproj/project.pbxproj sets # PRODUCT_BUNDLE_IDENTIFIER = ee.clockwise.gmask. executables = [] platforms = ["macos"] [installation] macos_bundle_ids = ["ee.clockwise.gmask"] [dotfiles] # Source/FileUtil.m builds the data directory from # NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask) # plus "/Gas Mask/", i.e. ~/Library/Gas Mask/ — not Application Support. That # is where the hosts files the user writes and switches between are kept; the # README says the same ("~/Library/Gas Mask"). The preferences plist beside it # is the app's own settings, under the bundle id from project.pbxproj. paths = [ "~/Library/Gas Mask/", "[preferences]/ee.clockwise.gmask.plist", ] # Hosts files: names mapped to addresses. Gas Mask has no credentials. The # remote hosts files it can subscribe to are plain URLs. secret = [] # No machine_lines: a hosts file is the point of the app and the user wants # the same one everywhere. The active file, which is the one piece of # per-machine state, is recorded in the preferences plist, which the catalog's # match syntaxes (TOML, YAML, JSON, line prefixes) cannot address. # # Also outside this entry: /etc/hosts, which Gas Mask rewrites from whichever # file is active, and ~/Library/Logs/Gas Mask.log.