{ "manifest_version": 3, "name": "Holesail Browser", "version": "1.0.0", "description": "P2P Holesail tunnels in the browser via native messaging host — open hs:// URLs with valid certificates", "key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmpSyoCuwrSnyspandk7hcQ3rTVegPWPyABcn9qX9EMleN7FIPRN81Z31IPXnbMDfXavnAnUc0vEH1ujtv/PAjew58kN4CFUTE1opU15v6dzn+ltrtG1aX+9dwYAOBsxKFU5TzfXI4SvixWzEGjJ1Irh4QEYJh4/C1A8mOdF+VvIA4y5ko7npH+7SRmCnxQ+c4Jh7gmG7qvblEHZzvM5VxT0H4gXivxD7+ABDQFnlet8ojVgyN6azND4BuPER5672vRdzjr4Emd9bL1L3N9QzQzvT7tUdFkJ2Giph9Bog9yyymnxbb8S4u0u8OlDdLBQlCWrERoYxHG9QGZse1EFWsQIDAQAB", "permissions": [ "nativeMessaging", "notifications", "tabs", "declarativeNetRequest", "proxy" ], "commands": { "_execute_action": { "suggested_key": { "default": "Alt+Shift+H", "mac": "Alt+Shift+H" }, "description": "Open Holesail Dashboard" } }, "action": { "default_title": "Holesail Dashboard", "default_icon": { "16": "icons/16.png", "32": "icons/32.png", "48": "icons/48.png", "128": "icons/128.png" } }, "background": { "service_worker": "background.js" }, "content_scripts": [ { "matches": [ "http://*/*", "https://*/*" ], "js": [ "content.js" ], "run_at": "document_start" } ], "web_accessible_resources": [ { "resources": [ "vendor/xterm.js", "vendor/xterm-addon-fit.js", "vendor/xterm.css", "vendor/novnc.js", "wrong-domain.html", "dashboard/dashboard.html", "dashboard/manifest.webmanifest", "dashboard/screenshots/*.png", "dashboard/dashboard.css", "dashboard/data/*.js", "dashboard/core/*.js", "dashboard/ui/*.js", "dashboard/pages/*.js", "dashboard/refresh.js", "dashboard/events.js", "background/*.js" ], "matches": [ "chrome-extension://*/*" ] } ], "icons": { "16": "icons/16.png", "32": "icons/32.png", "48": "icons/48.png", "128": "icons/128.png" }, "browser_specific_settings": { "gecko": { "id": "holesail-browser-58514e5bbfe0d5e3@example.org", "strict_min_version": "109.0" } }, "host_permissions": [ "*://*.host.local/*", "*://*.hole.sail/*" ], "optional_host_permissions": [ "*://*/*" ] }