aboutsummaryrefslogtreecommitdiff
path: root/manifest.json
blob: eda8c2ef3a8a23cdf6541f9c14ca1bf6413a3e43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
// SPDX-License-Identifier: CC0-1.0
//
// This is the manifest file of Haketilo.
//
// Copyright (C) 2021,2022 Wojtek Kosior <koszko@koszko.org>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the CC0 1.0 Universal License as published by
// the Creative Commons Corporation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// CC0 1.0 Universal License for more details.

#IF !MOZILLA && !CHROMIUM
#ERROR Target browser not selected! Please define 'MOZILLA' or 'CHROMIUM'.
#ENDIF

{
#IF MV2
    "manifest_version": 2,
#ELIF MV3
    "manifest_version": 3,
#ERROR Manifest version 3 is not yet supported! Please define 'MV2'.
#ELSE
#ERROR Manifest version not selected! Please define 'MV2'.
#ENDIF
    "name": "Haketilo",
    "short_name": "Haketilo",
    "version":
#IF CHROMIUM
    // Chromium requires version to "be between 1-4 dot-separated integers each
    // between 0 and 65536". Firefox does not impose such rules, hence, when we
    // make a beta release, we assign it the true version under Firefox
    // (e.g. "1.0-beta1") and a fake version with 1-lower major and maximal
    // allowed minor number under Chromium (e.g. 0.65536.1).
#INCLUDE_VERBATIM version_chromium
#ELSE
#INCLUDE_VERBATIM version
#ENDIF
    ,
    "author": "Wojtek Kosior & contributors",
    "description": "Control your \"Web\" browsing.",
#IF MOZILLA
    "applications": {
	"gecko": {
	    "id": "{6fe13369-88e9-440f-b837-5012fb3bedec}",
	    "strict_min_version": "60.0"
	}
    },
#ENDIF
    "icons":{
#COPY_FILE icons/haketilo128.png
	"128": "icons/haketilo128.png",
#COPY_FILE icons/haketilo64.png
	"64": "icons/haketilo64.png",
#COPY_FILE icons/haketilo48.png
	"48": "icons/haketilo48.png",
#COPY_FILE icons/haketilo32.png
	"32": "icons/haketilo32.png",
#COPY_FILE icons/haketilo16.png
	"16": "icons/haketilo16.png"
    },
    "permissions": [
	"webRequest",
	"webRequestBlocking",
	"tabs",
	"<all_urls>",
	"unlimitedStorage"
    ],
    "browser_action": {
	"browser_style": true,
	"default_icon": {
	    "128": "icons/haketilo128.png",
	    "64": "icons/haketilo64.png",
	    "48": "icons/haketilo48.png",
	    "32": "icons/haketilo32.png",
	    "16": "icons/haketilo16.png"
	},
	"default_title": "Haketilo",
	// Both popup.html and settings.html depend on file_preview.html.
#LOADHTML html/file_preview.html
#LOADHTML html/popup.html
	"default_popup": "html/popup.html"
    },
    "options_ui": {
#LOADHTML html/settings.html
	"page": "html/settings.html",
	"open_in_tab": true,
	"browser_style": false
    },
#IF CHROMIUM && MV2
#COPY_FILE dummy
    "web_accessible_resources": ["dummy"],
#ENDIF
    "background": {
	"persistent": true,
	"scripts": [
#LOADJS background/background.js
	]
    },
    "content_scripts": [
	{
	    "run_at": "document_start",
	    "matches": ["<all_urls>"],
	    "all_frames": true,
	    "js": [
#LOADJS content/content.js
	    ]
	}
    ]
}