mirror of
https://github.com/gorhill/uBlock.git
synced 2024-11-13 02:14:17 +01:00
Firefox: update manifest files when building
This commit is contained in:
parent
ec69a50101
commit
45137c2be9
5 changed files with 84 additions and 81 deletions
|
@ -1,32 +1 @@
|
||||||
content ublock ./
|
content ublock ./
|
||||||
locale ublock en ./locale/en/
|
|
||||||
locale ublock ar ./locale/ar/
|
|
||||||
locale ublock cs ./locale/cs/
|
|
||||||
locale ublock da ./locale/da/
|
|
||||||
locale ublock de ./locale/de/
|
|
||||||
locale ublock el ./locale/el/
|
|
||||||
locale ublock es ./locale/es/
|
|
||||||
locale ublock et ./locale/et/
|
|
||||||
locale ublock fi ./locale/fi/
|
|
||||||
locale ublock fil ./locale/fil/
|
|
||||||
locale ublock fr ./locale/fr/
|
|
||||||
locale ublock he ./locale/he/
|
|
||||||
locale ublock hi ./locale/hi/
|
|
||||||
locale ublock hr ./locale/hr/
|
|
||||||
locale ublock hu ./locale/hu/
|
|
||||||
locale ublock id ./locale/id/
|
|
||||||
locale ublock it ./locale/it/
|
|
||||||
locale ublock ja ./locale/ja/
|
|
||||||
locale ublock mr ./locale/mr/
|
|
||||||
locale ublock nb ./locale/nb/
|
|
||||||
locale ublock nl ./locale/nl/
|
|
||||||
locale ublock pl ./locale/pl/
|
|
||||||
locale ublock pt-BR ./locale/pt-BR/
|
|
||||||
locale ublock pt-PT ./locale/pt-PT/
|
|
||||||
locale ublock ro ./locale/ro/
|
|
||||||
locale ublock ru ./locale/ru/
|
|
||||||
locale ublock sv ./locale/sv/
|
|
||||||
locale ublock tr ./locale/tr/
|
|
||||||
locale ublock uk ./locale/uk/
|
|
||||||
locale ublock vi ./locale/vi/
|
|
||||||
locale ublock zh-CN ./locale/zh-CN/
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<r:RDF xmlns:r="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.mozilla.org/2004/em-rdf#">
|
<r:RDF xmlns:r="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.mozilla.org/2004/em-rdf#">
|
||||||
<r:Description about="urn:mozilla:install-manifest">
|
<r:Description about="urn:mozilla:install-manifest">
|
||||||
<id>{2b10c1c8-a11f-4bad-fe9c-1c11e82cac42}</id>
|
<id>{{2b10c1c8-a11f-4bad-fe9c-1c11e82cac42}}</id>
|
||||||
<version>0.7.2.0</version>
|
<version>{version}</version>
|
||||||
<name>µBlock</name>
|
<name>{name}</name>
|
||||||
<description>Finally, an efficient blocker. Easy on CPU and memory.</description>
|
<description>{description}</description>
|
||||||
<homepageURL>https://github.com/gorhill/uBlock</homepageURL>
|
<homepageURL>https://github.com/gorhill/uBlock</homepageURL>
|
||||||
<creator>Raymond Hill</creator>
|
<creator>{author}</creator>
|
||||||
<type>2</type>
|
<type>2</type>
|
||||||
<bootstrap>true</bootstrap>
|
<bootstrap>true</bootstrap>
|
||||||
<multiprocessCompatible>true</multiprocessCompatible>
|
<multiprocessCompatible>true</multiprocessCompatible>
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
<!-- Firefox -->
|
<!-- Firefox -->
|
||||||
<targetApplication>
|
<targetApplication>
|
||||||
<r:Description>
|
<r:Description>
|
||||||
<id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id>
|
<id>{{ec8030f7-c20a-464f-9b0e-13a3a9e97384}}</id>
|
||||||
<minVersion>29.0</minVersion>
|
<minVersion>29.0</minVersion>
|
||||||
<maxVersion>37.0</maxVersion>
|
<maxVersion>37.0</maxVersion>
|
||||||
</r:Description>
|
</r:Description>
|
||||||
|
@ -25,7 +25,7 @@
|
||||||
<!-- SeaMonkey -->
|
<!-- SeaMonkey -->
|
||||||
<targetApplication>
|
<targetApplication>
|
||||||
<r:Description>
|
<r:Description>
|
||||||
<id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</id>
|
<id>{{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}}</id>
|
||||||
<minVersion>2.26</minVersion>
|
<minVersion>2.26</minVersion>
|
||||||
<maxVersion>2.34</maxVersion>
|
<maxVersion>2.34</maxVersion>
|
||||||
</r:Description>
|
</r:Description>
|
||||||
|
|
75
tools/make-firefox-meta.py
Normal file
75
tools/make-firefox-meta.py
Normal file
|
@ -0,0 +1,75 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import os
|
||||||
|
import json
|
||||||
|
import sys
|
||||||
|
from shutil import rmtree
|
||||||
|
from collections import OrderedDict
|
||||||
|
|
||||||
|
if not sys.argv[1]:
|
||||||
|
raise SystemExit('Build dir missing.')
|
||||||
|
|
||||||
|
|
||||||
|
def mkdirs(path):
|
||||||
|
try:
|
||||||
|
os.makedirs(path)
|
||||||
|
finally:
|
||||||
|
return os.path.exists(path)
|
||||||
|
|
||||||
|
pj = os.path.join
|
||||||
|
|
||||||
|
build_dir = os.path.abspath(sys.argv[1])
|
||||||
|
source_locale_dir = pj(build_dir, '_locales')
|
||||||
|
target_locale_dir = pj(build_dir, 'locale')
|
||||||
|
language_codes = []
|
||||||
|
description = ''
|
||||||
|
|
||||||
|
for alpha2 in os.listdir(source_locale_dir):
|
||||||
|
locale_path = pj(source_locale_dir, alpha2, 'messages.json')
|
||||||
|
with open(locale_path, encoding='utf-8') as f:
|
||||||
|
string_data = json.load(f, object_pairs_hook=OrderedDict)
|
||||||
|
|
||||||
|
if alpha2 == 'en':
|
||||||
|
description = string_data['extShortDesc']['message']
|
||||||
|
|
||||||
|
alpha2 = alpha2.replace('_', '-')
|
||||||
|
|
||||||
|
language_codes.append(alpha2)
|
||||||
|
|
||||||
|
mkdirs(pj(target_locale_dir, alpha2))
|
||||||
|
|
||||||
|
locale_path = pj(target_locale_dir, alpha2, 'messages.properties')
|
||||||
|
with open(locale_path, 'wt', encoding='utf-8', newline='\n') as f:
|
||||||
|
for string_name in string_data:
|
||||||
|
f.write(string_name)
|
||||||
|
f.write('=')
|
||||||
|
f.write(string_data[string_name]['message'].replace('\n', r'\n'))
|
||||||
|
f.write('\n')
|
||||||
|
|
||||||
|
# generate chrome.manifest file
|
||||||
|
chrome_manifest = pj(build_dir, 'chrome.manifest')
|
||||||
|
|
||||||
|
with open(chrome_manifest, 'at', encoding='utf-8', newline='\n') as f:
|
||||||
|
f.write('\n')
|
||||||
|
|
||||||
|
for alpha2 in language_codes:
|
||||||
|
f.write('locale ublock ' + alpha2 + ' ./locale/' + alpha2 + '/\n')
|
||||||
|
|
||||||
|
rmtree(source_locale_dir)
|
||||||
|
|
||||||
|
# update install.rdf
|
||||||
|
proj_dir = pj(os.path.split(os.path.abspath(__file__))[0], '..')
|
||||||
|
chromium_manifest = pj(proj_dir, 'platform', 'chromium', 'manifest.json')
|
||||||
|
|
||||||
|
with open(chromium_manifest, encoding='utf-8') as m:
|
||||||
|
manifest = json.load(m)
|
||||||
|
|
||||||
|
manifest['description'] = description
|
||||||
|
|
||||||
|
install_rdf = pj(build_dir, 'install.rdf')
|
||||||
|
|
||||||
|
with open(install_rdf, 'r+t', encoding='utf-8', newline='\n') as f:
|
||||||
|
install_rdf = f.read()
|
||||||
|
f.seek(0)
|
||||||
|
|
||||||
|
f.write(install_rdf.format(**manifest))
|
|
@ -24,6 +24,6 @@ cp platform/firefox/chrome.manifest $DES/
|
||||||
cp platform/firefox/install.rdf $DES/
|
cp platform/firefox/install.rdf $DES/
|
||||||
|
|
||||||
echo "*** uBlock_xpi: Generating locales"
|
echo "*** uBlock_xpi: Generating locales"
|
||||||
python tools/make-locale-firefox.py $DES/
|
python tools/make-firefox-meta.py $DES/
|
||||||
|
|
||||||
echo "*** uBlock_xpi: Package done."
|
echo "*** uBlock_xpi: Package done."
|
||||||
|
|
|
@ -1,41 +0,0 @@
|
||||||
#!/usr/bin/env python3
|
|
||||||
|
|
||||||
import os
|
|
||||||
import json
|
|
||||||
import sys
|
|
||||||
from shutil import rmtree
|
|
||||||
from collections import OrderedDict
|
|
||||||
|
|
||||||
if not sys.argv[1]:
|
|
||||||
raise SystemExit('Build dir missing.')
|
|
||||||
|
|
||||||
|
|
||||||
def mkdirs(path):
|
|
||||||
try:
|
|
||||||
os.makedirs(path)
|
|
||||||
finally:
|
|
||||||
return os.path.exists(path)
|
|
||||||
|
|
||||||
|
|
||||||
build_dir = os.path.abspath(sys.argv[1])
|
|
||||||
source_locale_dir = os.path.join(build_dir, '_locales')
|
|
||||||
target_locale_dir = os.path.join(build_dir, 'locale')
|
|
||||||
|
|
||||||
for alpha2 in os.listdir(source_locale_dir):
|
|
||||||
locale_path = os.path.join(source_locale_dir, alpha2, 'messages.json')
|
|
||||||
with open(locale_path, encoding='utf-8') as f:
|
|
||||||
string_data = json.load(f, object_pairs_hook=OrderedDict)
|
|
||||||
|
|
||||||
alpha2 = alpha2.replace('_', '-')
|
|
||||||
|
|
||||||
mkdirs(os.path.join(target_locale_dir, alpha2))
|
|
||||||
|
|
||||||
locale_path = os.path.join(target_locale_dir, alpha2, 'messages.properties')
|
|
||||||
with open(locale_path, 'wt', encoding='utf-8', newline='\n') as f:
|
|
||||||
for string_name in string_data:
|
|
||||||
f.write(string_name)
|
|
||||||
f.write('=')
|
|
||||||
f.write(string_data[string_name]['message'].replace('\n', r'\n'))
|
|
||||||
f.write('\n')
|
|
||||||
|
|
||||||
rmtree(source_locale_dir)
|
|
Loading…
Reference in a new issue