Backed out changeset f4a2094a00c5 (bug 1437942) as requested by pascalc. a=backout
authorNarcis Beleuzu <nbeleuzu@mozilla.com>
Wed, 06 Jun 2018 10:57:52 +0300
changeset 421461 78c1a9ad32c674dc272490993c7ec5a259ac84f5
parent 421460 da28b92efe6f6acaf79545697415b82038143338
child 421462 715e3f81f67c5fb9f9810fd80690b429888ae86e
push id34094
push usernbeleuzu@mozilla.com
push dateWed, 06 Jun 2018 07:59:17 +0000
treeherdermozilla-central@715e3f81f67c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbackout
bugs1437942
milestone62.0a1
backs outf4a2094a00c5afbc6571bfc38f3e0e8c4b550b7d
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out changeset f4a2094a00c5 (bug 1437942) as requested by pascalc. a=backout
browser/base/content/test/static/browser_all_files_referenced.js
browser/base/jar.mn
browser/components/search/content/search.xml
browser/components/search/jar.mn
browser/components/search/searchplugins/allaannonser-sv-SE.xml
browser/components/search/searchplugins/allegro-pl.xml
browser/components/search/searchplugins/amazon-au.xml
browser/components/search/searchplugins/amazon-br.xml
browser/components/search/searchplugins/amazon-ca.xml
browser/components/search/searchplugins/amazon-en-GB.xml
browser/components/search/searchplugins/amazon-france.xml
browser/components/search/searchplugins/amazon-in.xml
browser/components/search/searchplugins/amazon-it.xml
browser/components/search/searchplugins/amazon-jp.xml
browser/components/search/searchplugins/amazon-mx.xml
browser/components/search/searchplugins/amazon-nl.xml
browser/components/search/searchplugins/amazondotcn.xml
browser/components/search/searchplugins/amazondotcom-de.xml
browser/components/search/searchplugins/amazondotcom.xml
browser/components/search/searchplugins/atlas-sk.xml
browser/components/search/searchplugins/azerdict.xml
browser/components/search/searchplugins/azet-sk.xml
browser/components/search/searchplugins/baidu.xml
browser/components/search/searchplugins/bbc-alba.xml
browser/components/search/searchplugins/bing.xml
browser/components/search/searchplugins/bok-NO.xml
browser/components/search/searchplugins/bolcom-fy-NL.xml
browser/components/search/searchplugins/bolcom-nl.xml
browser/components/search/searchplugins/bookplus-fi.xml
browser/components/search/searchplugins/buscape.xml
browser/components/search/searchplugins/ceneji.xml
browser/components/search/searchplugins/chambers-en-GB.xml
browser/components/search/searchplugins/cnrtl-tlfi-fr.xml
browser/components/search/searchplugins/coccoc.xml
browser/components/search/searchplugins/danawa-kr.xml
browser/components/search/searchplugins/daum-kr.xml
browser/components/search/searchplugins/ddg.xml
browser/components/search/searchplugins/diccionariu-alla.xml
browser/components/search/searchplugins/dict-enlv.xml
browser/components/search/searchplugins/diec2.xml
browser/components/search/searchplugins/drae.xml
browser/components/search/searchplugins/ebay-at.xml
browser/components/search/searchplugins/ebay-au.xml
browser/components/search/searchplugins/ebay-be.xml
browser/components/search/searchplugins/ebay-ca.xml
browser/components/search/searchplugins/ebay-ch.xml
browser/components/search/searchplugins/ebay-de.xml
browser/components/search/searchplugins/ebay-es.xml
browser/components/search/searchplugins/ebay-fr.xml
browser/components/search/searchplugins/ebay-ie.xml
browser/components/search/searchplugins/ebay-it.xml
browser/components/search/searchplugins/ebay-nl.xml
browser/components/search/searchplugins/ebay-uk.xml
browser/components/search/searchplugins/ebay.xml
browser/components/search/searchplugins/ecosia.xml
browser/components/search/searchplugins/eki-ee.xml
browser/components/search/searchplugins/elebila.xml
browser/components/search/searchplugins/eudict.xml
browser/components/search/searchplugins/faclair-beag.xml
browser/components/search/searchplugins/flip.xml
browser/components/search/searchplugins/freelang.xml
browser/components/search/searchplugins/google-2018.xml
browser/components/search/searchplugins/google.xml
browser/components/search/searchplugins/gujaratilexicon.xml
browser/components/search/searchplugins/gulesider-NO.xml
browser/components/search/searchplugins/heureka-cz.xml
browser/components/search/searchplugins/hoepli.xml
browser/components/search/searchplugins/hotline-ua.xml
browser/components/search/searchplugins/images/amazon.ico
browser/components/search/searchplugins/images/ebay.ico
browser/components/search/searchplugins/images/wikipedia.ico
browser/components/search/searchplugins/images/yandex-en.ico
browser/components/search/searchplugins/images/yandex-ru.ico
browser/components/search/searchplugins/kannadastore.xml
browser/components/search/searchplugins/kaz-kk.xml
browser/components/search/searchplugins/klask.xml
browser/components/search/searchplugins/leit-is.xml
browser/components/search/searchplugins/leo_ende_de-rm.xml
browser/components/search/searchplugins/leo_ende_de.xml
browser/components/search/searchplugins/list-am.xml
browser/components/search/searchplugins/list.json
browser/components/search/searchplugins/longdo.xml
browser/components/search/searchplugins/mailru.xml
browser/components/search/searchplugins/mapy-cz.xml
browser/components/search/searchplugins/marktplaats-fy-NL.xml
browser/components/search/searchplugins/marktplaats-nl.xml
browser/components/search/searchplugins/mercadolibre-ar.xml
browser/components/search/searchplugins/mercadolibre-cl.xml
browser/components/search/searchplugins/mercadolibre-mx.xml
browser/components/search/searchplugins/mercadolivre.xml
browser/components/search/searchplugins/meta-ua.xml
browser/components/search/searchplugins/morfix-dic.xml
browser/components/search/searchplugins/najdi-si.xml
browser/components/search/searchplugins/naver-kr.xml
browser/components/search/searchplugins/neti-ee.xml
browser/components/search/searchplugins/odpiralni.xml
browser/components/search/searchplugins/olx.xml
browser/components/search/searchplugins/oshiete-goo.xml
browser/components/search/searchplugins/osta-ee.xml
browser/components/search/searchplugins/ozonru.xml
browser/components/search/searchplugins/palasprint.xml
browser/components/search/searchplugins/paroledigenova-lij.xml
browser/components/search/searchplugins/pazaruvaj.xml
browser/components/search/searchplugins/pledarigrond.xml
browser/components/search/searchplugins/pogodak.xml
browser/components/search/searchplugins/portalbgdict.xml
browser/components/search/searchplugins/priberam.xml
browser/components/search/searchplugins/priceru.xml
browser/components/search/searchplugins/prisjakt-sv-SE.xml
browser/components/search/searchplugins/pwn-pl.xml
browser/components/search/searchplugins/qwant.xml
browser/components/search/searchplugins/qxl-NO.xml
browser/components/search/searchplugins/rakuten.xml
browser/components/search/searchplugins/readmoo.xml
browser/components/search/searchplugins/rediff.xml
browser/components/search/searchplugins/reta-vortaro.xml
browser/components/search/searchplugins/salidzinilv.xml
browser/components/search/searchplugins/sapo.xml
browser/components/search/searchplugins/seznam-cz.xml
browser/components/search/searchplugins/slovnik-sk.xml
browser/components/search/searchplugins/sslv.xml
browser/components/search/searchplugins/sztaki-en-hu.xml
browser/components/search/searchplugins/tearma.xml
browser/components/search/searchplugins/termau.xml
browser/components/search/searchplugins/twitter-ja.xml
browser/components/search/searchplugins/twitter.xml
browser/components/search/searchplugins/tyda-sv-SE.xml
browser/components/search/searchplugins/vatera.xml
browser/components/search/searchplugins/webdunia.xml
browser/components/search/searchplugins/wikipedia-NN.xml
browser/components/search/searchplugins/wikipedia-NO.xml
browser/components/search/searchplugins/wikipedia-af.xml
browser/components/search/searchplugins/wikipedia-an.xml
browser/components/search/searchplugins/wikipedia-ar.xml
browser/components/search/searchplugins/wikipedia-as.xml
browser/components/search/searchplugins/wikipedia-ast.xml
browser/components/search/searchplugins/wikipedia-az.xml
browser/components/search/searchplugins/wikipedia-be-tarask.xml
browser/components/search/searchplugins/wikipedia-be.xml
browser/components/search/searchplugins/wikipedia-bg.xml
browser/components/search/searchplugins/wikipedia-bn.xml
browser/components/search/searchplugins/wikipedia-br.xml
browser/components/search/searchplugins/wikipedia-bs.xml
browser/components/search/searchplugins/wikipedia-ca.xml
browser/components/search/searchplugins/wikipedia-crh.xml
browser/components/search/searchplugins/wikipedia-cy.xml
browser/components/search/searchplugins/wikipedia-cz.xml
browser/components/search/searchplugins/wikipedia-da.xml
browser/components/search/searchplugins/wikipedia-de.xml
browser/components/search/searchplugins/wikipedia-dsb.xml
browser/components/search/searchplugins/wikipedia-el.xml
browser/components/search/searchplugins/wikipedia-eo.xml
browser/components/search/searchplugins/wikipedia-es.xml
browser/components/search/searchplugins/wikipedia-et.xml
browser/components/search/searchplugins/wikipedia-eu.xml
browser/components/search/searchplugins/wikipedia-fa.xml
browser/components/search/searchplugins/wikipedia-fi.xml
browser/components/search/searchplugins/wikipedia-fr.xml
browser/components/search/searchplugins/wikipedia-fy-NL.xml
browser/components/search/searchplugins/wikipedia-ga-IE.xml
browser/components/search/searchplugins/wikipedia-gd.xml
browser/components/search/searchplugins/wikipedia-gl.xml
browser/components/search/searchplugins/wikipedia-gn.xml
browser/components/search/searchplugins/wikipedia-gu.xml
browser/components/search/searchplugins/wikipedia-he.xml
browser/components/search/searchplugins/wikipedia-hi.xml
browser/components/search/searchplugins/wikipedia-hr.xml
browser/components/search/searchplugins/wikipedia-hsb.xml
browser/components/search/searchplugins/wikipedia-hu.xml
browser/components/search/searchplugins/wikipedia-hy.xml
browser/components/search/searchplugins/wikipedia-ia.xml
browser/components/search/searchplugins/wikipedia-id.xml
browser/components/search/searchplugins/wikipedia-is.xml
browser/components/search/searchplugins/wikipedia-it.xml
browser/components/search/searchplugins/wikipedia-ja.xml
browser/components/search/searchplugins/wikipedia-ka.xml
browser/components/search/searchplugins/wikipedia-kab.xml
browser/components/search/searchplugins/wikipedia-kk.xml
browser/components/search/searchplugins/wikipedia-km.xml
browser/components/search/searchplugins/wikipedia-kn.xml
browser/components/search/searchplugins/wikipedia-kr.xml
browser/components/search/searchplugins/wikipedia-lij.xml
browser/components/search/searchplugins/wikipedia-lo.xml
browser/components/search/searchplugins/wikipedia-lt.xml
browser/components/search/searchplugins/wikipedia-ltg.xml
browser/components/search/searchplugins/wikipedia-lv.xml
browser/components/search/searchplugins/wikipedia-mk.xml
browser/components/search/searchplugins/wikipedia-ml.xml
browser/components/search/searchplugins/wikipedia-mr.xml
browser/components/search/searchplugins/wikipedia-ms.xml
browser/components/search/searchplugins/wikipedia-my.xml
browser/components/search/searchplugins/wikipedia-ne.xml
browser/components/search/searchplugins/wikipedia-nl.xml
browser/components/search/searchplugins/wikipedia-oc.xml
browser/components/search/searchplugins/wikipedia-or.xml
browser/components/search/searchplugins/wikipedia-pa.xml
browser/components/search/searchplugins/wikipedia-pl.xml
browser/components/search/searchplugins/wikipedia-pt.xml
browser/components/search/searchplugins/wikipedia-rm.xml
browser/components/search/searchplugins/wikipedia-ro.xml
browser/components/search/searchplugins/wikipedia-ru.xml
browser/components/search/searchplugins/wikipedia-si.xml
browser/components/search/searchplugins/wikipedia-sk.xml
browser/components/search/searchplugins/wikipedia-sl.xml
browser/components/search/searchplugins/wikipedia-sq.xml
browser/components/search/searchplugins/wikipedia-sr.xml
browser/components/search/searchplugins/wikipedia-sv-SE.xml
browser/components/search/searchplugins/wikipedia-ta.xml
browser/components/search/searchplugins/wikipedia-te.xml
browser/components/search/searchplugins/wikipedia-th.xml
browser/components/search/searchplugins/wikipedia-tl.xml
browser/components/search/searchplugins/wikipedia-tr.xml
browser/components/search/searchplugins/wikipedia-uk.xml
browser/components/search/searchplugins/wikipedia-ur.xml
browser/components/search/searchplugins/wikipedia-uz.xml
browser/components/search/searchplugins/wikipedia-vi.xml
browser/components/search/searchplugins/wikipedia-wo.xml
browser/components/search/searchplugins/wikipedia-zh-CN.xml
browser/components/search/searchplugins/wikipedia-zh-TW.xml
browser/components/search/searchplugins/wikipedia.xml
browser/components/search/searchplugins/wiktionary-oc.xml
browser/components/search/searchplugins/wiktionary-te.xml
browser/components/search/searchplugins/wolnelektury-pl.xml
browser/components/search/searchplugins/yahoo-jp-auctions.xml
browser/components/search/searchplugins/yahoo-jp.xml
browser/components/search/searchplugins/yandex-az.xml
browser/components/search/searchplugins/yandex-by.xml
browser/components/search/searchplugins/yandex-en.xml
browser/components/search/searchplugins/yandex-kk.xml
browser/components/search/searchplugins/yandex-ru.xml
browser/components/search/searchplugins/yandex-tr.xml
browser/components/search/searchplugins/zoznam-sk.xml
browser/components/search/test/browser.ini
browser/locales/Makefile.in
browser/locales/jar.mn
browser/locales/moz.build
browser/locales/search/list.json
browser/locales/searchplugins/allaannonser-sv-SE.xml
browser/locales/searchplugins/allegro-pl.xml
browser/locales/searchplugins/amazon-au.xml
browser/locales/searchplugins/amazon-br.xml
browser/locales/searchplugins/amazon-ca.xml
browser/locales/searchplugins/amazon-en-GB.xml
browser/locales/searchplugins/amazon-france.xml
browser/locales/searchplugins/amazon-in.xml
browser/locales/searchplugins/amazon-it.xml
browser/locales/searchplugins/amazon-jp.xml
browser/locales/searchplugins/amazon-mx.xml
browser/locales/searchplugins/amazon-nl.xml
browser/locales/searchplugins/amazondotcn.xml
browser/locales/searchplugins/amazondotcom-de.xml
browser/locales/searchplugins/amazondotcom.xml
browser/locales/searchplugins/atlas-sk.xml
browser/locales/searchplugins/azerdict.xml
browser/locales/searchplugins/azet-sk.xml
browser/locales/searchplugins/baidu.xml
browser/locales/searchplugins/bbc-alba.xml
browser/locales/searchplugins/bing.xml
browser/locales/searchplugins/bok-NO.xml
browser/locales/searchplugins/bolcom-fy-NL.xml
browser/locales/searchplugins/bolcom-nl.xml
browser/locales/searchplugins/bookplus-fi.xml
browser/locales/searchplugins/buscape.xml
browser/locales/searchplugins/ceneji.xml
browser/locales/searchplugins/chambers-en-GB.xml
browser/locales/searchplugins/cnrtl-tlfi-fr.xml
browser/locales/searchplugins/coccoc.xml
browser/locales/searchplugins/danawa-kr.xml
browser/locales/searchplugins/daum-kr.xml
browser/locales/searchplugins/ddg.xml
browser/locales/searchplugins/diccionariu-alla.xml
browser/locales/searchplugins/dict-enlv.xml
browser/locales/searchplugins/diec2.xml
browser/locales/searchplugins/drae.xml
browser/locales/searchplugins/ebay-at.xml
browser/locales/searchplugins/ebay-au.xml
browser/locales/searchplugins/ebay-be.xml
browser/locales/searchplugins/ebay-ca.xml
browser/locales/searchplugins/ebay-ch.xml
browser/locales/searchplugins/ebay-de.xml
browser/locales/searchplugins/ebay-es.xml
browser/locales/searchplugins/ebay-fr.xml
browser/locales/searchplugins/ebay-ie.xml
browser/locales/searchplugins/ebay-it.xml
browser/locales/searchplugins/ebay-nl.xml
browser/locales/searchplugins/ebay-uk.xml
browser/locales/searchplugins/ebay.xml
browser/locales/searchplugins/ecosia.xml
browser/locales/searchplugins/eki-ee.xml
browser/locales/searchplugins/elebila.xml
browser/locales/searchplugins/eudict.xml
browser/locales/searchplugins/faclair-beag.xml
browser/locales/searchplugins/flip.xml
browser/locales/searchplugins/freelang.xml
browser/locales/searchplugins/google-2018.xml
browser/locales/searchplugins/google.xml
browser/locales/searchplugins/gujaratilexicon.xml
browser/locales/searchplugins/gulesider-NO.xml
browser/locales/searchplugins/heureka-cz.xml
browser/locales/searchplugins/hoepli.xml
browser/locales/searchplugins/hotline-ua.xml
browser/locales/searchplugins/images/amazon.ico
browser/locales/searchplugins/images/ebay.ico
browser/locales/searchplugins/images/wikipedia.ico
browser/locales/searchplugins/images/yandex-en.ico
browser/locales/searchplugins/images/yandex-ru.ico
browser/locales/searchplugins/kannadastore.xml
browser/locales/searchplugins/kaz-kk.xml
browser/locales/searchplugins/klask.xml
browser/locales/searchplugins/leit-is.xml
browser/locales/searchplugins/leo_ende_de-rm.xml
browser/locales/searchplugins/leo_ende_de.xml
browser/locales/searchplugins/list-am.xml
browser/locales/searchplugins/longdo.xml
browser/locales/searchplugins/mailru.xml
browser/locales/searchplugins/mapy-cz.xml
browser/locales/searchplugins/marktplaats-fy-NL.xml
browser/locales/searchplugins/marktplaats-nl.xml
browser/locales/searchplugins/mercadolibre-ar.xml
browser/locales/searchplugins/mercadolibre-cl.xml
browser/locales/searchplugins/mercadolibre-mx.xml
browser/locales/searchplugins/mercadolivre.xml
browser/locales/searchplugins/meta-ua.xml
browser/locales/searchplugins/morfix-dic.xml
browser/locales/searchplugins/najdi-si.xml
browser/locales/searchplugins/naver-kr.xml
browser/locales/searchplugins/neti-ee.xml
browser/locales/searchplugins/odpiralni.xml
browser/locales/searchplugins/olx.xml
browser/locales/searchplugins/oshiete-goo.xml
browser/locales/searchplugins/osta-ee.xml
browser/locales/searchplugins/ozonru.xml
browser/locales/searchplugins/palasprint.xml
browser/locales/searchplugins/paroledigenova-lij.xml
browser/locales/searchplugins/pazaruvaj.xml
browser/locales/searchplugins/pledarigrond.xml
browser/locales/searchplugins/pogodak.xml
browser/locales/searchplugins/portalbgdict.xml
browser/locales/searchplugins/priberam.xml
browser/locales/searchplugins/priceru.xml
browser/locales/searchplugins/prisjakt-sv-SE.xml
browser/locales/searchplugins/pwn-pl.xml
browser/locales/searchplugins/qwant.xml
browser/locales/searchplugins/qxl-NO.xml
browser/locales/searchplugins/rakuten.xml
browser/locales/searchplugins/readmoo.xml
browser/locales/searchplugins/rediff.xml
browser/locales/searchplugins/reta-vortaro.xml
browser/locales/searchplugins/salidzinilv.xml
browser/locales/searchplugins/sapo.xml
browser/locales/searchplugins/seznam-cz.xml
browser/locales/searchplugins/slovnik-sk.xml
browser/locales/searchplugins/sslv.xml
browser/locales/searchplugins/sztaki-en-hu.xml
browser/locales/searchplugins/tearma.xml
browser/locales/searchplugins/termau.xml
browser/locales/searchplugins/twitter-ja.xml
browser/locales/searchplugins/twitter.xml
browser/locales/searchplugins/tyda-sv-SE.xml
browser/locales/searchplugins/vatera.xml
browser/locales/searchplugins/webdunia.xml
browser/locales/searchplugins/wikipedia-NN.xml
browser/locales/searchplugins/wikipedia-NO.xml
browser/locales/searchplugins/wikipedia-af.xml
browser/locales/searchplugins/wikipedia-an.xml
browser/locales/searchplugins/wikipedia-ar.xml
browser/locales/searchplugins/wikipedia-as.xml
browser/locales/searchplugins/wikipedia-ast.xml
browser/locales/searchplugins/wikipedia-az.xml
browser/locales/searchplugins/wikipedia-be-tarask.xml
browser/locales/searchplugins/wikipedia-be.xml
browser/locales/searchplugins/wikipedia-bg.xml
browser/locales/searchplugins/wikipedia-bn.xml
browser/locales/searchplugins/wikipedia-br.xml
browser/locales/searchplugins/wikipedia-bs.xml
browser/locales/searchplugins/wikipedia-ca.xml
browser/locales/searchplugins/wikipedia-crh.xml
browser/locales/searchplugins/wikipedia-cy.xml
browser/locales/searchplugins/wikipedia-cz.xml
browser/locales/searchplugins/wikipedia-da.xml
browser/locales/searchplugins/wikipedia-de.xml
browser/locales/searchplugins/wikipedia-dsb.xml
browser/locales/searchplugins/wikipedia-el.xml
browser/locales/searchplugins/wikipedia-eo.xml
browser/locales/searchplugins/wikipedia-es.xml
browser/locales/searchplugins/wikipedia-et.xml
browser/locales/searchplugins/wikipedia-eu.xml
browser/locales/searchplugins/wikipedia-fa.xml
browser/locales/searchplugins/wikipedia-fi.xml
browser/locales/searchplugins/wikipedia-fr.xml
browser/locales/searchplugins/wikipedia-fy-NL.xml
browser/locales/searchplugins/wikipedia-ga-IE.xml
browser/locales/searchplugins/wikipedia-gd.xml
browser/locales/searchplugins/wikipedia-gl.xml
browser/locales/searchplugins/wikipedia-gn.xml
browser/locales/searchplugins/wikipedia-gu.xml
browser/locales/searchplugins/wikipedia-he.xml
browser/locales/searchplugins/wikipedia-hi.xml
browser/locales/searchplugins/wikipedia-hr.xml
browser/locales/searchplugins/wikipedia-hsb.xml
browser/locales/searchplugins/wikipedia-hu.xml
browser/locales/searchplugins/wikipedia-hy.xml
browser/locales/searchplugins/wikipedia-ia.xml
browser/locales/searchplugins/wikipedia-id.xml
browser/locales/searchplugins/wikipedia-is.xml
browser/locales/searchplugins/wikipedia-it.xml
browser/locales/searchplugins/wikipedia-ja.xml
browser/locales/searchplugins/wikipedia-ka.xml
browser/locales/searchplugins/wikipedia-kab.xml
browser/locales/searchplugins/wikipedia-kk.xml
browser/locales/searchplugins/wikipedia-km.xml
browser/locales/searchplugins/wikipedia-kn.xml
browser/locales/searchplugins/wikipedia-kr.xml
browser/locales/searchplugins/wikipedia-lij.xml
browser/locales/searchplugins/wikipedia-lo.xml
browser/locales/searchplugins/wikipedia-lt.xml
browser/locales/searchplugins/wikipedia-ltg.xml
browser/locales/searchplugins/wikipedia-lv.xml
browser/locales/searchplugins/wikipedia-mk.xml
browser/locales/searchplugins/wikipedia-ml.xml
browser/locales/searchplugins/wikipedia-mr.xml
browser/locales/searchplugins/wikipedia-ms.xml
browser/locales/searchplugins/wikipedia-my.xml
browser/locales/searchplugins/wikipedia-ne.xml
browser/locales/searchplugins/wikipedia-nl.xml
browser/locales/searchplugins/wikipedia-oc.xml
browser/locales/searchplugins/wikipedia-or.xml
browser/locales/searchplugins/wikipedia-pa.xml
browser/locales/searchplugins/wikipedia-pl.xml
browser/locales/searchplugins/wikipedia-pt.xml
browser/locales/searchplugins/wikipedia-rm.xml
browser/locales/searchplugins/wikipedia-ro.xml
browser/locales/searchplugins/wikipedia-ru.xml
browser/locales/searchplugins/wikipedia-si.xml
browser/locales/searchplugins/wikipedia-sk.xml
browser/locales/searchplugins/wikipedia-sl.xml
browser/locales/searchplugins/wikipedia-sq.xml
browser/locales/searchplugins/wikipedia-sr.xml
browser/locales/searchplugins/wikipedia-sv-SE.xml
browser/locales/searchplugins/wikipedia-ta.xml
browser/locales/searchplugins/wikipedia-te.xml
browser/locales/searchplugins/wikipedia-th.xml
browser/locales/searchplugins/wikipedia-tl.xml
browser/locales/searchplugins/wikipedia-tr.xml
browser/locales/searchplugins/wikipedia-uk.xml
browser/locales/searchplugins/wikipedia-ur.xml
browser/locales/searchplugins/wikipedia-uz.xml
browser/locales/searchplugins/wikipedia-vi.xml
browser/locales/searchplugins/wikipedia-wo.xml
browser/locales/searchplugins/wikipedia-zh-CN.xml
browser/locales/searchplugins/wikipedia-zh-TW.xml
browser/locales/searchplugins/wikipedia.xml
browser/locales/searchplugins/wiktionary-oc.xml
browser/locales/searchplugins/wiktionary-te.xml
browser/locales/searchplugins/wolnelektury-pl.xml
browser/locales/searchplugins/yahoo-jp-auctions.xml
browser/locales/searchplugins/yahoo-jp.xml
browser/locales/searchplugins/yandex-az.xml
browser/locales/searchplugins/yandex-by.xml
browser/locales/searchplugins/yandex-en.xml
browser/locales/searchplugins/yandex-kk.xml
browser/locales/searchplugins/yandex-ru.xml
browser/locales/searchplugins/yandex-tr.xml
browser/locales/searchplugins/zoznam-sk.xml
browser/modules/ContentSearch.jsm
mobile/android/chrome/jar.mn
mobile/android/components/moz.build
mobile/android/components/search/jar.mn
mobile/android/components/search/moz.build
mobile/android/components/search/searchplugins/amazon-au.xml
mobile/android/components/search/searchplugins/amazon-br.xml
mobile/android/components/search/searchplugins/amazon-ca.xml
mobile/android/components/search/searchplugins/amazon-co-uk.xml
mobile/android/components/search/searchplugins/amazon-de.xml
mobile/android/components/search/searchplugins/amazon-fr.xml
mobile/android/components/search/searchplugins/amazon-in.xml
mobile/android/components/search/searchplugins/amazon-it.xml
mobile/android/components/search/searchplugins/amazon-jp.xml
mobile/android/components/search/searchplugins/amazon-mx.xml
mobile/android/components/search/searchplugins/amazon-nl.xml
mobile/android/components/search/searchplugins/amazondotcom.xml
mobile/android/components/search/searchplugins/azerdict.xml
mobile/android/components/search/searchplugins/azet-sk.xml
mobile/android/components/search/searchplugins/baidu.xml
mobile/android/components/search/searchplugins/bing.xml
mobile/android/components/search/searchplugins/bolcom-fy-NL.xml
mobile/android/components/search/searchplugins/bolcom-nl.xml
mobile/android/components/search/searchplugins/ceneje.xml
mobile/android/components/search/searchplugins/coccoc.xml
mobile/android/components/search/searchplugins/danawa-kr.xml
mobile/android/components/search/searchplugins/daum-kr.xml
mobile/android/components/search/searchplugins/ddg.xml
mobile/android/components/search/searchplugins/diec2.xml
mobile/android/components/search/searchplugins/drae.xml
mobile/android/components/search/searchplugins/duckduckgo.xml
mobile/android/components/search/searchplugins/elebila.xml
mobile/android/components/search/searchplugins/faclair-beag.xml
mobile/android/components/search/searchplugins/google-2018.xml
mobile/android/components/search/searchplugins/google.xml
mobile/android/components/search/searchplugins/gulesider-mobile-NO.xml
mobile/android/components/search/searchplugins/heureka-cz.xml
mobile/android/components/search/searchplugins/hotline-ua.xml
mobile/android/components/search/searchplugins/leit-is.xml
mobile/android/components/search/searchplugins/leo_ende_de.xml
mobile/android/components/search/searchplugins/list-am.xml
mobile/android/components/search/searchplugins/list.json
mobile/android/components/search/searchplugins/mapy-cz.xml
mobile/android/components/search/searchplugins/mercadolibre-ar.xml
mobile/android/components/search/searchplugins/mercadolibre-cl.xml
mobile/android/components/search/searchplugins/mercadolibre-mx.xml
mobile/android/components/search/searchplugins/naver-kr.xml
mobile/android/components/search/searchplugins/odpiralni.xml
mobile/android/components/search/searchplugins/pazaruvaj.xml
mobile/android/components/search/searchplugins/pledarigrond.xml
mobile/android/components/search/searchplugins/prisjakt-sv-SE.xml
mobile/android/components/search/searchplugins/qwant.xml
mobile/android/components/search/searchplugins/rediff.xml
mobile/android/components/search/searchplugins/reta-vortaro.xml
mobile/android/components/search/searchplugins/salidzinilv.xml
mobile/android/components/search/searchplugins/seznam-cz.xml
mobile/android/components/search/searchplugins/skroutz.xml
mobile/android/components/search/searchplugins/slovnik-sk.xml
mobile/android/components/search/searchplugins/sslv.xml
mobile/android/components/search/searchplugins/sztaki-en-hu.xml
mobile/android/components/search/searchplugins/taobao.xml
mobile/android/components/search/searchplugins/tearma.xml
mobile/android/components/search/searchplugins/twitter-ja.xml
mobile/android/components/search/searchplugins/twitter.xml
mobile/android/components/search/searchplugins/vatera.xml
mobile/android/components/search/searchplugins/wikipedia-NN.xml
mobile/android/components/search/searchplugins/wikipedia-NO.xml
mobile/android/components/search/searchplugins/wikipedia-an.xml
mobile/android/components/search/searchplugins/wikipedia-ar.xml
mobile/android/components/search/searchplugins/wikipedia-as.xml
mobile/android/components/search/searchplugins/wikipedia-ast.xml
mobile/android/components/search/searchplugins/wikipedia-az.xml
mobile/android/components/search/searchplugins/wikipedia-be.xml
mobile/android/components/search/searchplugins/wikipedia-bg.xml
mobile/android/components/search/searchplugins/wikipedia-bn.xml
mobile/android/components/search/searchplugins/wikipedia-br.xml
mobile/android/components/search/searchplugins/wikipedia-bs.xml
mobile/android/components/search/searchplugins/wikipedia-ca.xml
mobile/android/components/search/searchplugins/wikipedia-cy.xml
mobile/android/components/search/searchplugins/wikipedia-cz.xml
mobile/android/components/search/searchplugins/wikipedia-da.xml
mobile/android/components/search/searchplugins/wikipedia-de.xml
mobile/android/components/search/searchplugins/wikipedia-dsb.xml
mobile/android/components/search/searchplugins/wikipedia-el.xml
mobile/android/components/search/searchplugins/wikipedia-eo.xml
mobile/android/components/search/searchplugins/wikipedia-es.xml
mobile/android/components/search/searchplugins/wikipedia-et.xml
mobile/android/components/search/searchplugins/wikipedia-eu.xml
mobile/android/components/search/searchplugins/wikipedia-fa.xml
mobile/android/components/search/searchplugins/wikipedia-fi.xml
mobile/android/components/search/searchplugins/wikipedia-fr.xml
mobile/android/components/search/searchplugins/wikipedia-fy-NL.xml
mobile/android/components/search/searchplugins/wikipedia-ga-IE.xml
mobile/android/components/search/searchplugins/wikipedia-gd.xml
mobile/android/components/search/searchplugins/wikipedia-gl.xml
mobile/android/components/search/searchplugins/wikipedia-gn.xml
mobile/android/components/search/searchplugins/wikipedia-gu.xml
mobile/android/components/search/searchplugins/wikipedia-he.xml
mobile/android/components/search/searchplugins/wikipedia-hi.xml
mobile/android/components/search/searchplugins/wikipedia-hr.xml
mobile/android/components/search/searchplugins/wikipedia-hsb.xml
mobile/android/components/search/searchplugins/wikipedia-hu.xml
mobile/android/components/search/searchplugins/wikipedia-hy-AM.xml
mobile/android/components/search/searchplugins/wikipedia-ia.xml
mobile/android/components/search/searchplugins/wikipedia-id.xml
mobile/android/components/search/searchplugins/wikipedia-is.xml
mobile/android/components/search/searchplugins/wikipedia-it.xml
mobile/android/components/search/searchplugins/wikipedia-ja.xml
mobile/android/components/search/searchplugins/wikipedia-ka.xml
mobile/android/components/search/searchplugins/wikipedia-kab.xml
mobile/android/components/search/searchplugins/wikipedia-kk.xml
mobile/android/components/search/searchplugins/wikipedia-km.xml
mobile/android/components/search/searchplugins/wikipedia-kn.xml
mobile/android/components/search/searchplugins/wikipedia-lij.xml
mobile/android/components/search/searchplugins/wikipedia-lo.xml
mobile/android/components/search/searchplugins/wikipedia-lt.xml
mobile/android/components/search/searchplugins/wikipedia-ltg.xml
mobile/android/components/search/searchplugins/wikipedia-lv.xml
mobile/android/components/search/searchplugins/wikipedia-ml.xml
mobile/android/components/search/searchplugins/wikipedia-mr.xml
mobile/android/components/search/searchplugins/wikipedia-ms.xml
mobile/android/components/search/searchplugins/wikipedia-my.xml
mobile/android/components/search/searchplugins/wikipedia-ne.xml
mobile/android/components/search/searchplugins/wikipedia-nl.xml
mobile/android/components/search/searchplugins/wikipedia-oc.xml
mobile/android/components/search/searchplugins/wikipedia-or.xml
mobile/android/components/search/searchplugins/wikipedia-pa.xml
mobile/android/components/search/searchplugins/wikipedia-pl.xml
mobile/android/components/search/searchplugins/wikipedia-pt.xml
mobile/android/components/search/searchplugins/wikipedia-rm.xml
mobile/android/components/search/searchplugins/wikipedia-ro.xml
mobile/android/components/search/searchplugins/wikipedia-ru.xml
mobile/android/components/search/searchplugins/wikipedia-sk.xml
mobile/android/components/search/searchplugins/wikipedia-sl.xml
mobile/android/components/search/searchplugins/wikipedia-sq.xml
mobile/android/components/search/searchplugins/wikipedia-sr.xml
mobile/android/components/search/searchplugins/wikipedia-sv-SE.xml
mobile/android/components/search/searchplugins/wikipedia-ta.xml
mobile/android/components/search/searchplugins/wikipedia-te.xml
mobile/android/components/search/searchplugins/wikipedia-th.xml
mobile/android/components/search/searchplugins/wikipedia-tr.xml
mobile/android/components/search/searchplugins/wikipedia-uk.xml
mobile/android/components/search/searchplugins/wikipedia-ur.xml
mobile/android/components/search/searchplugins/wikipedia-uz.xml
mobile/android/components/search/searchplugins/wikipedia-vi.xml
mobile/android/components/search/searchplugins/wikipedia-wo.xml
mobile/android/components/search/searchplugins/wikipedia-zh-CN.xml
mobile/android/components/search/searchplugins/wikipedia-zh-TW.xml
mobile/android/components/search/searchplugins/wikipedia.xml
mobile/android/components/search/searchplugins/wiktionary-kn.xml
mobile/android/components/search/searchplugins/wiktionary-oc.xml
mobile/android/components/search/searchplugins/wiktionary-or.xml
mobile/android/components/search/searchplugins/wiktionary-ta.xml
mobile/android/components/search/searchplugins/wiktionary-te.xml
mobile/android/components/search/searchplugins/yahoo-jp.xml
mobile/android/components/search/searchplugins/yandex-en.xml
mobile/android/components/search/searchplugins/yandex-ru.xml
mobile/android/components/search/searchplugins/yandex-tr.xml
mobile/android/components/search/searchplugins/yandex.by.xml
mobile/android/components/search/searchplugins/yandex.xml
mobile/android/installer/allowed-dupes.mn
mobile/locales/Makefile.in
mobile/locales/search/list.json
mobile/locales/searchplugins/amazon-au.xml
mobile/locales/searchplugins/amazon-br.xml
mobile/locales/searchplugins/amazon-ca.xml
mobile/locales/searchplugins/amazon-co-uk.xml
mobile/locales/searchplugins/amazon-de.xml
mobile/locales/searchplugins/amazon-fr.xml
mobile/locales/searchplugins/amazon-in.xml
mobile/locales/searchplugins/amazon-it.xml
mobile/locales/searchplugins/amazon-jp.xml
mobile/locales/searchplugins/amazon-mx.xml
mobile/locales/searchplugins/amazon-nl.xml
mobile/locales/searchplugins/amazondotcom.xml
mobile/locales/searchplugins/azerdict.xml
mobile/locales/searchplugins/azet-sk.xml
mobile/locales/searchplugins/baidu.xml
mobile/locales/searchplugins/bing.xml
mobile/locales/searchplugins/bolcom-fy-NL.xml
mobile/locales/searchplugins/bolcom-nl.xml
mobile/locales/searchplugins/ceneje.xml
mobile/locales/searchplugins/coccoc.xml
mobile/locales/searchplugins/danawa-kr.xml
mobile/locales/searchplugins/daum-kr.xml
mobile/locales/searchplugins/ddg.xml
mobile/locales/searchplugins/diec2.xml
mobile/locales/searchplugins/drae.xml
mobile/locales/searchplugins/duckduckgo.xml
mobile/locales/searchplugins/elebila.xml
mobile/locales/searchplugins/faclair-beag.xml
mobile/locales/searchplugins/google-2018.xml
mobile/locales/searchplugins/google.xml
mobile/locales/searchplugins/gulesider-mobile-NO.xml
mobile/locales/searchplugins/heureka-cz.xml
mobile/locales/searchplugins/hotline-ua.xml
mobile/locales/searchplugins/leit-is.xml
mobile/locales/searchplugins/leo_ende_de.xml
mobile/locales/searchplugins/list-am.xml
mobile/locales/searchplugins/mapy-cz.xml
mobile/locales/searchplugins/mercadolibre-ar.xml
mobile/locales/searchplugins/mercadolibre-cl.xml
mobile/locales/searchplugins/mercadolibre-mx.xml
mobile/locales/searchplugins/naver-kr.xml
mobile/locales/searchplugins/odpiralni.xml
mobile/locales/searchplugins/pazaruvaj.xml
mobile/locales/searchplugins/pledarigrond.xml
mobile/locales/searchplugins/prisjakt-sv-SE.xml
mobile/locales/searchplugins/qwant.xml
mobile/locales/searchplugins/rediff.xml
mobile/locales/searchplugins/reta-vortaro.xml
mobile/locales/searchplugins/salidzinilv.xml
mobile/locales/searchplugins/seznam-cz.xml
mobile/locales/searchplugins/skroutz.xml
mobile/locales/searchplugins/slovnik-sk.xml
mobile/locales/searchplugins/sslv.xml
mobile/locales/searchplugins/sztaki-en-hu.xml
mobile/locales/searchplugins/taobao.xml
mobile/locales/searchplugins/tearma.xml
mobile/locales/searchplugins/twitter-ja.xml
mobile/locales/searchplugins/twitter.xml
mobile/locales/searchplugins/vatera.xml
mobile/locales/searchplugins/wikipedia-NN.xml
mobile/locales/searchplugins/wikipedia-NO.xml
mobile/locales/searchplugins/wikipedia-an.xml
mobile/locales/searchplugins/wikipedia-ar.xml
mobile/locales/searchplugins/wikipedia-as.xml
mobile/locales/searchplugins/wikipedia-ast.xml
mobile/locales/searchplugins/wikipedia-az.xml
mobile/locales/searchplugins/wikipedia-be.xml
mobile/locales/searchplugins/wikipedia-bg.xml
mobile/locales/searchplugins/wikipedia-bn.xml
mobile/locales/searchplugins/wikipedia-br.xml
mobile/locales/searchplugins/wikipedia-bs.xml
mobile/locales/searchplugins/wikipedia-ca.xml
mobile/locales/searchplugins/wikipedia-cy.xml
mobile/locales/searchplugins/wikipedia-cz.xml
mobile/locales/searchplugins/wikipedia-da.xml
mobile/locales/searchplugins/wikipedia-de.xml
mobile/locales/searchplugins/wikipedia-dsb.xml
mobile/locales/searchplugins/wikipedia-el.xml
mobile/locales/searchplugins/wikipedia-eo.xml
mobile/locales/searchplugins/wikipedia-es.xml
mobile/locales/searchplugins/wikipedia-et.xml
mobile/locales/searchplugins/wikipedia-eu.xml
mobile/locales/searchplugins/wikipedia-fa.xml
mobile/locales/searchplugins/wikipedia-fi.xml
mobile/locales/searchplugins/wikipedia-fr.xml
mobile/locales/searchplugins/wikipedia-fy-NL.xml
mobile/locales/searchplugins/wikipedia-ga-IE.xml
mobile/locales/searchplugins/wikipedia-gd.xml
mobile/locales/searchplugins/wikipedia-gl.xml
mobile/locales/searchplugins/wikipedia-gn.xml
mobile/locales/searchplugins/wikipedia-gu.xml
mobile/locales/searchplugins/wikipedia-he.xml
mobile/locales/searchplugins/wikipedia-hi.xml
mobile/locales/searchplugins/wikipedia-hr.xml
mobile/locales/searchplugins/wikipedia-hsb.xml
mobile/locales/searchplugins/wikipedia-hu.xml
mobile/locales/searchplugins/wikipedia-hy-AM.xml
mobile/locales/searchplugins/wikipedia-ia.xml
mobile/locales/searchplugins/wikipedia-id.xml
mobile/locales/searchplugins/wikipedia-is.xml
mobile/locales/searchplugins/wikipedia-it.xml
mobile/locales/searchplugins/wikipedia-ja.xml
mobile/locales/searchplugins/wikipedia-ka.xml
mobile/locales/searchplugins/wikipedia-kab.xml
mobile/locales/searchplugins/wikipedia-kk.xml
mobile/locales/searchplugins/wikipedia-km.xml
mobile/locales/searchplugins/wikipedia-kn.xml
mobile/locales/searchplugins/wikipedia-lij.xml
mobile/locales/searchplugins/wikipedia-lo.xml
mobile/locales/searchplugins/wikipedia-lt.xml
mobile/locales/searchplugins/wikipedia-ltg.xml
mobile/locales/searchplugins/wikipedia-lv.xml
mobile/locales/searchplugins/wikipedia-ml.xml
mobile/locales/searchplugins/wikipedia-mr.xml
mobile/locales/searchplugins/wikipedia-ms.xml
mobile/locales/searchplugins/wikipedia-my.xml
mobile/locales/searchplugins/wikipedia-ne.xml
mobile/locales/searchplugins/wikipedia-nl.xml
mobile/locales/searchplugins/wikipedia-oc.xml
mobile/locales/searchplugins/wikipedia-or.xml
mobile/locales/searchplugins/wikipedia-pa.xml
mobile/locales/searchplugins/wikipedia-pl.xml
mobile/locales/searchplugins/wikipedia-pt.xml
mobile/locales/searchplugins/wikipedia-rm.xml
mobile/locales/searchplugins/wikipedia-ro.xml
mobile/locales/searchplugins/wikipedia-ru.xml
mobile/locales/searchplugins/wikipedia-sk.xml
mobile/locales/searchplugins/wikipedia-sl.xml
mobile/locales/searchplugins/wikipedia-sq.xml
mobile/locales/searchplugins/wikipedia-sr.xml
mobile/locales/searchplugins/wikipedia-sv-SE.xml
mobile/locales/searchplugins/wikipedia-ta.xml
mobile/locales/searchplugins/wikipedia-te.xml
mobile/locales/searchplugins/wikipedia-th.xml
mobile/locales/searchplugins/wikipedia-tr.xml
mobile/locales/searchplugins/wikipedia-uk.xml
mobile/locales/searchplugins/wikipedia-ur.xml
mobile/locales/searchplugins/wikipedia-uz.xml
mobile/locales/searchplugins/wikipedia-vi.xml
mobile/locales/searchplugins/wikipedia-wo.xml
mobile/locales/searchplugins/wikipedia-zh-CN.xml
mobile/locales/searchplugins/wikipedia-zh-TW.xml
mobile/locales/searchplugins/wikipedia.xml
mobile/locales/searchplugins/wiktionary-kn.xml
mobile/locales/searchplugins/wiktionary-oc.xml
mobile/locales/searchplugins/wiktionary-or.xml
mobile/locales/searchplugins/wiktionary-ta.xml
mobile/locales/searchplugins/wiktionary-te.xml
mobile/locales/searchplugins/yahoo-jp.xml
mobile/locales/searchplugins/yandex-en.xml
mobile/locales/searchplugins/yandex-ru.xml
mobile/locales/searchplugins/yandex-tr.xml
mobile/locales/searchplugins/yandex.by.xml
mobile/locales/searchplugins/yandex.xml
toolkit/components/search/nsSearchService.js
toolkit/components/search/tests/xpcshell/data/list.json
toolkit/components/search/tests/xpcshell/head_search.js
toolkit/components/search/tests/xpcshell/test_list_json_locale.js
toolkit/components/search/tests/xpcshell/xpcshell.ini
--- a/browser/base/content/test/static/browser_all_files_referenced.js
+++ b/browser/base/content/test/static/browser_all_files_referenced.js
@@ -7,16 +7,17 @@
 
 // Slow on asan builds.
 requestLongerTimeout(5);
 
 var isDevtools = SimpleTest.harnessParameters.subsuite == "devtools";
 
 var gExceptionPaths = [
   "chrome://browser/content/defaultthemes/",
+  "chrome://browser/locale/searchplugins/",
   "resource://app/defaults/settings/blocklists/",
   "resource://app/defaults/settings/main/",
   "resource://app/defaults/settings/pinning/",
   "resource://app/defaults/preferences/",
   "resource://gre/modules/commonjs/",
   "resource://gre/defaults/pref/",
 
   // These resources are referenced using relative paths from html files.
@@ -30,19 +31,16 @@ var gExceptionPaths = [
   "resource://activity-stream/prerendered/",
 
   // browser/extensions/pdfjs/content/build/pdf.js#1999
   "resource://pdf.js/web/images/",
 
   // Exclude all the metadata paths under the country metadata folder because these
   // paths will be concatenated in FormAutofillUtils.jsm based on different country/region.
   "resource://formautofill/addressmetadata/",
-
-  // Exclude all search-plugins because they aren't referenced by filename
-  "resource://search-plugins/",
 ];
 
 // These are not part of the omni.ja file, so we find them only when running
 // the test on a non-packaged build.
 if (AppConstants.platform == "macosx")
   gExceptionPaths.push("resource://gre/res/cursors/");
 
 var whitelist = [
--- a/browser/base/jar.mn
+++ b/browser/base/jar.mn
@@ -112,8 +112,9 @@ browser.jar:
         content/browser/blockedSite.xhtml               (content/blockedSite.xhtml)
 
 % override chrome://global/content/netError.xhtml chrome://browser/content/aboutNetError.xhtml
 
 # L10n resources and overrides.
 % override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties
 % override chrome://global/locale/netError.dtd chrome://browser/locale/netError.dtd
 % override chrome://mozapps/locale/downloads/settingsChange.dtd chrome://browser/locale/downloads/settingsChange.dtd
+% resource search-plugins chrome://browser/locale/searchplugins/
--- a/browser/components/search/content/search.xml
+++ b/browser/components/search/content/search.xml
@@ -62,17 +62,16 @@
     </content>
 
     <implementation implements="nsIObserver">
       <constructor><![CDATA[
         if (this.parentNode.parentNode.localName == "toolbarpaletteitem")
           return;
 
         Services.obs.addObserver(this, "browser-search-engine-modified");
-        Services.obs.addObserver(this, "browser-search-service");
 
         this._initialized = true;
 
         (window.delayedStartupPromise || Promise.resolve()).then(() => {
           window.requestIdleCallback(() => {
             Services.search.init(aStatus => {
               // Bail out if the binding's been destroyed
               if (!this._initialized)
@@ -110,17 +109,16 @@
       ]]></destructor>
 
       <method name="destroy">
         <body><![CDATA[
         if (this._initialized) {
           this._initialized = false;
 
           Services.obs.removeObserver(this, "browser-search-engine-modified");
-          Services.obs.removeObserver(this, "browser-search-service");
         }
 
         // Make sure to break the cycle from _textbox to us. Otherwise we leak
         // the world. But make sure it's actually pointing to us.
         // Also make sure the textbox has ever been constructed, otherwise the
         // _textbox getter will cause the textbox constructor to run, add an
         // observer, and leak the world too.
         if (this._textboxInitialized && this._textbox.mController.input == this)
@@ -180,18 +178,17 @@
         ]]></body>
       </method>
 
       <method name="observe">
         <parameter name="aEngine"/>
         <parameter name="aTopic"/>
         <parameter name="aVerb"/>
         <body><![CDATA[
-          if (aTopic == "browser-search-engine-modified" ||
-              (aTopic == "browser-search-service" && aVerb == "init-complete")) {
+          if (aTopic == "browser-search-engine-modified") {
             // Make sure the engine list is refetched next time it's needed
             this._engines = null;
 
             // Update the popup header and update the display after any modification.
             this._textbox.popup.updateHeader();
             this.updateDisplay();
           }
         ]]></body>
@@ -1304,17 +1301,16 @@
         menu.addEventListener("popuphidden", aEvent => {
           this._ignoreMouseEvents = false;
           aEvent.stopPropagation();
         });
 
         // Add weak referenced observers to invalidate our cached list of engines.
         Services.prefs.addObserver("browser.search.hiddenOneOffs", this, true);
         Services.obs.addObserver(this, "browser-search-engine-modified", true);
-        Services.obs.addObserver(this, "browser-search-service", true);
 
         // Rebuild the buttons when the theme changes.  See bug 1357800 for
         // details.  Summary: On Linux, switching between themes can cause a row
         // of buttons to disappear.
         Services.obs.addObserver(this, "lightweight-theme-changed", true);
       ]]></constructor>
 
       <!-- This handles events outside the one-off buttons, like on the popup
--- a/browser/components/search/jar.mn
+++ b/browser/components/search/jar.mn
@@ -1,12 +1,8 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 browser.jar:
         content/browser/search/search.xml                           (content/search.xml)
         content/browser/search/searchReset.xhtml                    (content/searchReset.xhtml)
         content/browser/search/searchReset.js                       (content/searchReset.js)
-
-        searchplugins/                                              (searchplugins/**)
-
-% resource search-plugins %searchplugins/
--- a/browser/components/search/test/browser.ini
+++ b/browser/components/search/test/browser.ini
@@ -19,18 +19,21 @@ support-files =
 [browser_addEngine.js]
 [browser_amazon.js]
 [browser_bing.js]
 [browser_contextmenu.js]
 [browser_contextSearchTabPosition.js]
 skip-if = os == "mac" # bug 967013
 [browser_ddg.js]
 [browser_eBay.js]
+skip-if = artifact # bug 1315953
 [browser_google.js]
+skip-if = artifact # bug 1315953
 [browser_google_behavior.js]
+skip-if = artifact # bug 1315953
 [browser_healthreport.js]
 [browser_hiddenOneOffs_cleanup.js]
 [browser_hiddenOneOffs_diacritics.js]
 [browser_oneOffContextMenu.js]
 [browser_oneOffContextMenu_setDefault.js]
 [browser_oneOffHeader.js]
 skip-if = os == "mac" #1421238
 [browser_private_search_perwindowpb.js]
--- a/browser/locales/Makefile.in
+++ b/browser/locales/Makefile.in
@@ -34,39 +34,58 @@ ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOL
 MOZ_PKG_MAC_DSSTORE=$(ABS_DIST)/branding/dsstore
 MOZ_PKG_MAC_BACKGROUND=$(ABS_DIST)/branding/background.png
 MOZ_PKG_MAC_ICON=$(ABS_DIST)/branding/disk.icns
 MOZ_PKG_MAC_EXTRA=--symlink '/Applications:/ '
 endif
 
 MOZ_SFX_PACKAGE=$(topsrcdir)/other-licenses/7zstub/firefox/7zSD.sfx
 
+SEARCHPLUGINS_FILENAMES := $(or $(shell $(call py_action,output_searchplugins_list,$(srcdir)/search/list.json $(AB_CD))), $(error Missing search plugins))
+SEARCHPLUGINS_PATH := .deps/generated_$(AB_CD)
+SEARCHPLUGINS_TARGET := libs searchplugins
+SEARCHPLUGINS := $(foreach plugin,$(addsuffix .xml,$(SEARCHPLUGINS_FILENAMES)),$(or $(wildcard $(srcdir)/searchplugins/$(plugin)),$(error Missing searchplugin: $(plugin))))
+# Some locale-specific search plugins may have preprocessor directives, but the
+# default en-US ones do not.
+SEARCHPLUGINS_FLAGS := --silence-missing-directive-warnings
+PP_TARGETS += SEARCHPLUGINS
+
+list-json = $(SEARCHPLUGINS_PATH)/list.json
+GARBAGE += $(list-json)
+
+libs:: searchplugins
+
 # Required for l10n.mk - defines a list of app sub dirs that should
 # be included in langpack xpis.
 DIST_SUBDIRS = $(DIST_SUBDIR)
 
 include $(topsrcdir)/config/rules.mk
 
 include $(topsrcdir)/toolkit/locales/l10n.mk
 
+$(list-json): $(call mkdir_deps,$(SEARCHPLUGINS_PATH)) $(if $(IS_LANGUAGE_REPACK),FORCE)
+	$(call py_action,generate_searchjson,$(srcdir)/search/list.json $(AB_CD) $(list-json))
+searchplugins:: $(list-json)
+
 libs-%: AB_CD=$*
 libs-%:
 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
 	$(NSINSTALL) -D $(DIST)/install
 	@$(MAKE) -C ../../toolkit/locales libs-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
 	@$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
 ifneq (,$(wildcard ../extensions/formautofill/locales))
 	@$(MAKE) -C ../extensions/formautofill/locales AB_CD=$* XPI_NAME=locale-$*
 endif
 	@$(MAKE) -C ../extensions/onboarding/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../extensions/pocket/locale AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../extensions/webcompat-reporter/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../../devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
 	@$(MAKE) -C ../../devtools/startup/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+	@$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR)
 	@$(MAKE) multilocale.txt-$* AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
 
 chrome-%: AB_CD=$*
 chrome-%: IS_LANGUAGE_REPACK=1
 chrome-%:
 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
--- a/browser/locales/jar.mn
+++ b/browser/locales/jar.mn
@@ -55,16 +55,28 @@
     locale/browser/feeds/subscribe.dtd              (%chrome/browser/feeds/subscribe.dtd)
     locale/browser/feeds/subscribe.properties       (%chrome/browser/feeds/subscribe.properties)
     locale/browser/migration/migration.dtd         (%chrome/browser/migration/migration.dtd)
     locale/browser/migration/migration.properties  (%chrome/browser/migration/migration.properties)
     locale/browser/preferences/preferences.properties     (%chrome/browser/preferences/preferences.properties)
     locale/browser/preferences/security.dtd           (%chrome/browser/preferences/security.dtd)
     locale/browser/syncBrand.dtd                (%chrome/browser/syncBrand.dtd)
     locale/browser/syncSetup.properties         (%chrome/browser/syncSetup.properties)
+#if BUILD_FASTER
+    locale/browser/searchplugins/               (searchplugins/*.xml)
+    locale/browser/searchplugins/list.json      (search/list.json)
+#else
+    locale/browser/searchplugins/               (.deps/generated_@AB_CD@/*.xml)
+    locale/browser/searchplugins/list.json      (.deps/generated_@AB_CD@/list.json)
+#endif
+    locale/browser/searchplugins/images/amazon.ico     (searchplugins/images/amazon.ico)
+    locale/browser/searchplugins/images/ebay.ico       (searchplugins/images/ebay.ico)
+    locale/browser/searchplugins/images/wikipedia.ico  (searchplugins/images/wikipedia.ico)
+    locale/browser/searchplugins/images/yandex-en.ico  (searchplugins/images/yandex-en.ico)
+    locale/browser/searchplugins/images/yandex-ru.ico  (searchplugins/images/yandex-ru.ico)
 % locale browser-region @AB_CD@ %locale/browser-region/
     locale/browser-region/region.properties        (%chrome/browser-region/region.properties)
 # the following files are browser-specific overrides
     locale/browser/netError.dtd                (%chrome/overrides/netError.dtd)
     locale/browser/appstrings.properties       (%chrome/overrides/appstrings.properties)
     locale/browser/downloads/settingsChange.dtd  (%chrome/overrides/settingsChange.dtd)
 % locale pdf.js @AB_CD@ %locale/pdfviewer/
     locale/pdfviewer/viewer.properties             (%pdfviewer/viewer.properties)
--- a/browser/locales/moz.build
+++ b/browser/locales/moz.build
@@ -39,10 +39,16 @@ with Files("**"):
     BUG_COMPONENT = ("Firefox Build System", "General")
 
 with Files("all-locales"):
     BUG_COMPONENT = ("Core", "Localization")
 
 with Files("en-US/**"):
     BUG_COMPONENT = ("Core", "Localization")
 
+with Files("search/**"):
+    BUG_COMPONENT = ("Firefox", "Search")
+
+with Files("searchplugins/**"):
+    BUG_COMPONENT = ("Firefox", "Search")
+
 with Files("shipped-locales"):
     BUG_COMPONENT = ("Core", "Localization")
rename from browser/components/search/searchplugins/list.json
rename to browser/locales/search/list.json
rename from browser/components/search/searchplugins/allaannonser-sv-SE.xml
rename to browser/locales/searchplugins/allaannonser-sv-SE.xml
rename from browser/components/search/searchplugins/allegro-pl.xml
rename to browser/locales/searchplugins/allegro-pl.xml
rename from browser/components/search/searchplugins/amazon-au.xml
rename to browser/locales/searchplugins/amazon-au.xml
rename from browser/components/search/searchplugins/amazon-br.xml
rename to browser/locales/searchplugins/amazon-br.xml
rename from browser/components/search/searchplugins/amazon-ca.xml
rename to browser/locales/searchplugins/amazon-ca.xml
rename from browser/components/search/searchplugins/amazon-en-GB.xml
rename to browser/locales/searchplugins/amazon-en-GB.xml
rename from browser/components/search/searchplugins/amazon-france.xml
rename to browser/locales/searchplugins/amazon-france.xml
rename from browser/components/search/searchplugins/amazon-in.xml
rename to browser/locales/searchplugins/amazon-in.xml
rename from browser/components/search/searchplugins/amazon-it.xml
rename to browser/locales/searchplugins/amazon-it.xml
rename from browser/components/search/searchplugins/amazon-jp.xml
rename to browser/locales/searchplugins/amazon-jp.xml
rename from browser/components/search/searchplugins/amazon-mx.xml
rename to browser/locales/searchplugins/amazon-mx.xml
rename from browser/components/search/searchplugins/amazon-nl.xml
rename to browser/locales/searchplugins/amazon-nl.xml
rename from browser/components/search/searchplugins/amazondotcn.xml
rename to browser/locales/searchplugins/amazondotcn.xml
rename from browser/components/search/searchplugins/amazondotcom-de.xml
rename to browser/locales/searchplugins/amazondotcom-de.xml
rename from browser/components/search/searchplugins/amazondotcom.xml
rename to browser/locales/searchplugins/amazondotcom.xml
rename from browser/components/search/searchplugins/atlas-sk.xml
rename to browser/locales/searchplugins/atlas-sk.xml
rename from browser/components/search/searchplugins/azerdict.xml
rename to browser/locales/searchplugins/azerdict.xml
rename from browser/components/search/searchplugins/azet-sk.xml
rename to browser/locales/searchplugins/azet-sk.xml
rename from browser/components/search/searchplugins/baidu.xml
rename to browser/locales/searchplugins/baidu.xml
rename from browser/components/search/searchplugins/bbc-alba.xml
rename to browser/locales/searchplugins/bbc-alba.xml
rename from browser/components/search/searchplugins/bing.xml
rename to browser/locales/searchplugins/bing.xml
rename from browser/components/search/searchplugins/bok-NO.xml
rename to browser/locales/searchplugins/bok-NO.xml
rename from browser/components/search/searchplugins/bolcom-fy-NL.xml
rename to browser/locales/searchplugins/bolcom-fy-NL.xml
rename from browser/components/search/searchplugins/bolcom-nl.xml
rename to browser/locales/searchplugins/bolcom-nl.xml
rename from browser/components/search/searchplugins/bookplus-fi.xml
rename to browser/locales/searchplugins/bookplus-fi.xml
rename from browser/components/search/searchplugins/buscape.xml
rename to browser/locales/searchplugins/buscape.xml
rename from browser/components/search/searchplugins/ceneji.xml
rename to browser/locales/searchplugins/ceneji.xml
rename from browser/components/search/searchplugins/chambers-en-GB.xml
rename to browser/locales/searchplugins/chambers-en-GB.xml
rename from browser/components/search/searchplugins/cnrtl-tlfi-fr.xml
rename to browser/locales/searchplugins/cnrtl-tlfi-fr.xml
rename from browser/components/search/searchplugins/coccoc.xml
rename to browser/locales/searchplugins/coccoc.xml
rename from browser/components/search/searchplugins/danawa-kr.xml
rename to browser/locales/searchplugins/danawa-kr.xml
rename from browser/components/search/searchplugins/daum-kr.xml
rename to browser/locales/searchplugins/daum-kr.xml
rename from browser/components/search/searchplugins/ddg.xml
rename to browser/locales/searchplugins/ddg.xml
rename from browser/components/search/searchplugins/diccionariu-alla.xml
rename to browser/locales/searchplugins/diccionariu-alla.xml
rename from browser/components/search/searchplugins/dict-enlv.xml
rename to browser/locales/searchplugins/dict-enlv.xml
rename from browser/components/search/searchplugins/diec2.xml
rename to browser/locales/searchplugins/diec2.xml
rename from browser/components/search/searchplugins/drae.xml
rename to browser/locales/searchplugins/drae.xml
rename from browser/components/search/searchplugins/ebay-at.xml
rename to browser/locales/searchplugins/ebay-at.xml
rename from browser/components/search/searchplugins/ebay-au.xml
rename to browser/locales/searchplugins/ebay-au.xml
rename from browser/components/search/searchplugins/ebay-be.xml
rename to browser/locales/searchplugins/ebay-be.xml
rename from browser/components/search/searchplugins/ebay-ca.xml
rename to browser/locales/searchplugins/ebay-ca.xml
rename from browser/components/search/searchplugins/ebay-ch.xml
rename to browser/locales/searchplugins/ebay-ch.xml
rename from browser/components/search/searchplugins/ebay-de.xml
rename to browser/locales/searchplugins/ebay-de.xml
rename from browser/components/search/searchplugins/ebay-es.xml
rename to browser/locales/searchplugins/ebay-es.xml
rename from browser/components/search/searchplugins/ebay-fr.xml
rename to browser/locales/searchplugins/ebay-fr.xml
rename from browser/components/search/searchplugins/ebay-ie.xml
rename to browser/locales/searchplugins/ebay-ie.xml
rename from browser/components/search/searchplugins/ebay-it.xml
rename to browser/locales/searchplugins/ebay-it.xml
rename from browser/components/search/searchplugins/ebay-nl.xml
rename to browser/locales/searchplugins/ebay-nl.xml
rename from browser/components/search/searchplugins/ebay-uk.xml
rename to browser/locales/searchplugins/ebay-uk.xml
rename from browser/components/search/searchplugins/ebay.xml
rename to browser/locales/searchplugins/ebay.xml
rename from browser/components/search/searchplugins/ecosia.xml
rename to browser/locales/searchplugins/ecosia.xml
rename from browser/components/search/searchplugins/eki-ee.xml
rename to browser/locales/searchplugins/eki-ee.xml
rename from browser/components/search/searchplugins/elebila.xml
rename to browser/locales/searchplugins/elebila.xml
rename from browser/components/search/searchplugins/eudict.xml
rename to browser/locales/searchplugins/eudict.xml
rename from browser/components/search/searchplugins/faclair-beag.xml
rename to browser/locales/searchplugins/faclair-beag.xml
rename from browser/components/search/searchplugins/flip.xml
rename to browser/locales/searchplugins/flip.xml
rename from browser/components/search/searchplugins/freelang.xml
rename to browser/locales/searchplugins/freelang.xml
rename from browser/components/search/searchplugins/google-2018.xml
rename to browser/locales/searchplugins/google-2018.xml
rename from browser/components/search/searchplugins/google.xml
rename to browser/locales/searchplugins/google.xml
rename from browser/components/search/searchplugins/gujaratilexicon.xml
rename to browser/locales/searchplugins/gujaratilexicon.xml
rename from browser/components/search/searchplugins/gulesider-NO.xml
rename to browser/locales/searchplugins/gulesider-NO.xml
rename from browser/components/search/searchplugins/heureka-cz.xml
rename to browser/locales/searchplugins/heureka-cz.xml
rename from browser/components/search/searchplugins/hoepli.xml
rename to browser/locales/searchplugins/hoepli.xml
rename from browser/components/search/searchplugins/hotline-ua.xml
rename to browser/locales/searchplugins/hotline-ua.xml
rename from browser/components/search/searchplugins/images/amazon.ico
rename to browser/locales/searchplugins/images/amazon.ico
rename from browser/components/search/searchplugins/images/ebay.ico
rename to browser/locales/searchplugins/images/ebay.ico
rename from browser/components/search/searchplugins/images/wikipedia.ico
rename to browser/locales/searchplugins/images/wikipedia.ico
rename from browser/components/search/searchplugins/images/yandex-en.ico
rename to browser/locales/searchplugins/images/yandex-en.ico
rename from browser/components/search/searchplugins/images/yandex-ru.ico
rename to browser/locales/searchplugins/images/yandex-ru.ico
rename from browser/components/search/searchplugins/kannadastore.xml
rename to browser/locales/searchplugins/kannadastore.xml
rename from browser/components/search/searchplugins/kaz-kk.xml
rename to browser/locales/searchplugins/kaz-kk.xml
rename from browser/components/search/searchplugins/klask.xml
rename to browser/locales/searchplugins/klask.xml
rename from browser/components/search/searchplugins/leit-is.xml
rename to browser/locales/searchplugins/leit-is.xml
rename from browser/components/search/searchplugins/leo_ende_de-rm.xml
rename to browser/locales/searchplugins/leo_ende_de-rm.xml
rename from browser/components/search/searchplugins/leo_ende_de.xml
rename to browser/locales/searchplugins/leo_ende_de.xml
rename from browser/components/search/searchplugins/list-am.xml
rename to browser/locales/searchplugins/list-am.xml
rename from browser/components/search/searchplugins/longdo.xml
rename to browser/locales/searchplugins/longdo.xml
rename from browser/components/search/searchplugins/mailru.xml
rename to browser/locales/searchplugins/mailru.xml
rename from browser/components/search/searchplugins/mapy-cz.xml
rename to browser/locales/searchplugins/mapy-cz.xml
rename from browser/components/search/searchplugins/marktplaats-fy-NL.xml
rename to browser/locales/searchplugins/marktplaats-fy-NL.xml
rename from browser/components/search/searchplugins/marktplaats-nl.xml
rename to browser/locales/searchplugins/marktplaats-nl.xml
rename from browser/components/search/searchplugins/mercadolibre-ar.xml
rename to browser/locales/searchplugins/mercadolibre-ar.xml
rename from browser/components/search/searchplugins/mercadolibre-cl.xml
rename to browser/locales/searchplugins/mercadolibre-cl.xml
rename from browser/components/search/searchplugins/mercadolibre-mx.xml
rename to browser/locales/searchplugins/mercadolibre-mx.xml
rename from browser/components/search/searchplugins/mercadolivre.xml
rename to browser/locales/searchplugins/mercadolivre.xml
rename from browser/components/search/searchplugins/meta-ua.xml
rename to browser/locales/searchplugins/meta-ua.xml
rename from browser/components/search/searchplugins/morfix-dic.xml
rename to browser/locales/searchplugins/morfix-dic.xml
rename from browser/components/search/searchplugins/najdi-si.xml
rename to browser/locales/searchplugins/najdi-si.xml
rename from browser/components/search/searchplugins/naver-kr.xml
rename to browser/locales/searchplugins/naver-kr.xml
rename from browser/components/search/searchplugins/neti-ee.xml
rename to browser/locales/searchplugins/neti-ee.xml
rename from browser/components/search/searchplugins/odpiralni.xml
rename to browser/locales/searchplugins/odpiralni.xml
rename from browser/components/search/searchplugins/olx.xml
rename to browser/locales/searchplugins/olx.xml
rename from browser/components/search/searchplugins/oshiete-goo.xml
rename to browser/locales/searchplugins/oshiete-goo.xml
rename from browser/components/search/searchplugins/osta-ee.xml
rename to browser/locales/searchplugins/osta-ee.xml
rename from browser/components/search/searchplugins/ozonru.xml
rename to browser/locales/searchplugins/ozonru.xml
rename from browser/components/search/searchplugins/palasprint.xml
rename to browser/locales/searchplugins/palasprint.xml
rename from browser/components/search/searchplugins/paroledigenova-lij.xml
rename to browser/locales/searchplugins/paroledigenova-lij.xml
rename from browser/components/search/searchplugins/pazaruvaj.xml
rename to browser/locales/searchplugins/pazaruvaj.xml
rename from browser/components/search/searchplugins/pledarigrond.xml
rename to browser/locales/searchplugins/pledarigrond.xml
rename from browser/components/search/searchplugins/pogodak.xml
rename to browser/locales/searchplugins/pogodak.xml
rename from browser/components/search/searchplugins/portalbgdict.xml
rename to browser/locales/searchplugins/portalbgdict.xml
rename from browser/components/search/searchplugins/priberam.xml
rename to browser/locales/searchplugins/priberam.xml
rename from browser/components/search/searchplugins/priceru.xml
rename to browser/locales/searchplugins/priceru.xml
rename from browser/components/search/searchplugins/prisjakt-sv-SE.xml
rename to browser/locales/searchplugins/prisjakt-sv-SE.xml
rename from browser/components/search/searchplugins/pwn-pl.xml
rename to browser/locales/searchplugins/pwn-pl.xml
rename from browser/components/search/searchplugins/qwant.xml
rename to browser/locales/searchplugins/qwant.xml
rename from browser/components/search/searchplugins/qxl-NO.xml
rename to browser/locales/searchplugins/qxl-NO.xml
rename from browser/components/search/searchplugins/rakuten.xml
rename to browser/locales/searchplugins/rakuten.xml
rename from browser/components/search/searchplugins/readmoo.xml
rename to browser/locales/searchplugins/readmoo.xml
rename from browser/components/search/searchplugins/rediff.xml
rename to browser/locales/searchplugins/rediff.xml
rename from browser/components/search/searchplugins/reta-vortaro.xml
rename to browser/locales/searchplugins/reta-vortaro.xml
rename from browser/components/search/searchplugins/salidzinilv.xml
rename to browser/locales/searchplugins/salidzinilv.xml
rename from browser/components/search/searchplugins/sapo.xml
rename to browser/locales/searchplugins/sapo.xml
rename from browser/components/search/searchplugins/seznam-cz.xml
rename to browser/locales/searchplugins/seznam-cz.xml
rename from browser/components/search/searchplugins/slovnik-sk.xml
rename to browser/locales/searchplugins/slovnik-sk.xml
rename from browser/components/search/searchplugins/sslv.xml
rename to browser/locales/searchplugins/sslv.xml
rename from browser/components/search/searchplugins/sztaki-en-hu.xml
rename to browser/locales/searchplugins/sztaki-en-hu.xml
rename from browser/components/search/searchplugins/tearma.xml
rename to browser/locales/searchplugins/tearma.xml
rename from browser/components/search/searchplugins/termau.xml
rename to browser/locales/searchplugins/termau.xml
rename from browser/components/search/searchplugins/twitter-ja.xml
rename to browser/locales/searchplugins/twitter-ja.xml
rename from browser/components/search/searchplugins/twitter.xml
rename to browser/locales/searchplugins/twitter.xml
rename from browser/components/search/searchplugins/tyda-sv-SE.xml
rename to browser/locales/searchplugins/tyda-sv-SE.xml
rename from browser/components/search/searchplugins/vatera.xml
rename to browser/locales/searchplugins/vatera.xml
rename from browser/components/search/searchplugins/webdunia.xml
rename to browser/locales/searchplugins/webdunia.xml
rename from browser/components/search/searchplugins/wikipedia-NN.xml
rename to browser/locales/searchplugins/wikipedia-NN.xml
rename from browser/components/search/searchplugins/wikipedia-NO.xml
rename to browser/locales/searchplugins/wikipedia-NO.xml
rename from browser/components/search/searchplugins/wikipedia-af.xml
rename to browser/locales/searchplugins/wikipedia-af.xml
rename from browser/components/search/searchplugins/wikipedia-an.xml
rename to browser/locales/searchplugins/wikipedia-an.xml
rename from browser/components/search/searchplugins/wikipedia-ar.xml
rename to browser/locales/searchplugins/wikipedia-ar.xml
rename from browser/components/search/searchplugins/wikipedia-as.xml
rename to browser/locales/searchplugins/wikipedia-as.xml
rename from browser/components/search/searchplugins/wikipedia-ast.xml
rename to browser/locales/searchplugins/wikipedia-ast.xml
rename from browser/components/search/searchplugins/wikipedia-az.xml
rename to browser/locales/searchplugins/wikipedia-az.xml
rename from browser/components/search/searchplugins/wikipedia-be-tarask.xml
rename to browser/locales/searchplugins/wikipedia-be-tarask.xml
rename from browser/components/search/searchplugins/wikipedia-be.xml
rename to browser/locales/searchplugins/wikipedia-be.xml
rename from browser/components/search/searchplugins/wikipedia-bg.xml
rename to browser/locales/searchplugins/wikipedia-bg.xml
rename from browser/components/search/searchplugins/wikipedia-bn.xml
rename to browser/locales/searchplugins/wikipedia-bn.xml
rename from browser/components/search/searchplugins/wikipedia-br.xml
rename to browser/locales/searchplugins/wikipedia-br.xml
rename from browser/components/search/searchplugins/wikipedia-bs.xml
rename to browser/locales/searchplugins/wikipedia-bs.xml
rename from browser/components/search/searchplugins/wikipedia-ca.xml
rename to browser/locales/searchplugins/wikipedia-ca.xml
rename from browser/components/search/searchplugins/wikipedia-crh.xml
rename to browser/locales/searchplugins/wikipedia-crh.xml
rename from browser/components/search/searchplugins/wikipedia-cy.xml
rename to browser/locales/searchplugins/wikipedia-cy.xml
rename from browser/components/search/searchplugins/wikipedia-cz.xml
rename to browser/locales/searchplugins/wikipedia-cz.xml
rename from browser/components/search/searchplugins/wikipedia-da.xml
rename to browser/locales/searchplugins/wikipedia-da.xml
rename from browser/components/search/searchplugins/wikipedia-de.xml
rename to browser/locales/searchplugins/wikipedia-de.xml
rename from browser/components/search/searchplugins/wikipedia-dsb.xml
rename to browser/locales/searchplugins/wikipedia-dsb.xml
rename from browser/components/search/searchplugins/wikipedia-el.xml
rename to browser/locales/searchplugins/wikipedia-el.xml
rename from browser/components/search/searchplugins/wikipedia-eo.xml
rename to browser/locales/searchplugins/wikipedia-eo.xml
rename from browser/components/search/searchplugins/wikipedia-es.xml
rename to browser/locales/searchplugins/wikipedia-es.xml
rename from browser/components/search/searchplugins/wikipedia-et.xml
rename to browser/locales/searchplugins/wikipedia-et.xml
rename from browser/components/search/searchplugins/wikipedia-eu.xml
rename to browser/locales/searchplugins/wikipedia-eu.xml
rename from browser/components/search/searchplugins/wikipedia-fa.xml
rename to browser/locales/searchplugins/wikipedia-fa.xml
rename from browser/components/search/searchplugins/wikipedia-fi.xml
rename to browser/locales/searchplugins/wikipedia-fi.xml
rename from browser/components/search/searchplugins/wikipedia-fr.xml
rename to browser/locales/searchplugins/wikipedia-fr.xml
rename from browser/components/search/searchplugins/wikipedia-fy-NL.xml
rename to browser/locales/searchplugins/wikipedia-fy-NL.xml
rename from browser/components/search/searchplugins/wikipedia-ga-IE.xml
rename to browser/locales/searchplugins/wikipedia-ga-IE.xml
rename from browser/components/search/searchplugins/wikipedia-gd.xml
rename to browser/locales/searchplugins/wikipedia-gd.xml
rename from browser/components/search/searchplugins/wikipedia-gl.xml
rename to browser/locales/searchplugins/wikipedia-gl.xml
rename from browser/components/search/searchplugins/wikipedia-gn.xml
rename to browser/locales/searchplugins/wikipedia-gn.xml
rename from browser/components/search/searchplugins/wikipedia-gu.xml
rename to browser/locales/searchplugins/wikipedia-gu.xml
rename from browser/components/search/searchplugins/wikipedia-he.xml
rename to browser/locales/searchplugins/wikipedia-he.xml
rename from browser/components/search/searchplugins/wikipedia-hi.xml
rename to browser/locales/searchplugins/wikipedia-hi.xml
rename from browser/components/search/searchplugins/wikipedia-hr.xml
rename to browser/locales/searchplugins/wikipedia-hr.xml
rename from browser/components/search/searchplugins/wikipedia-hsb.xml
rename to browser/locales/searchplugins/wikipedia-hsb.xml
rename from browser/components/search/searchplugins/wikipedia-hu.xml
rename to browser/locales/searchplugins/wikipedia-hu.xml
rename from browser/components/search/searchplugins/wikipedia-hy.xml
rename to browser/locales/searchplugins/wikipedia-hy.xml
rename from browser/components/search/searchplugins/wikipedia-ia.xml
rename to browser/locales/searchplugins/wikipedia-ia.xml
rename from browser/components/search/searchplugins/wikipedia-id.xml
rename to browser/locales/searchplugins/wikipedia-id.xml
rename from browser/components/search/searchplugins/wikipedia-is.xml
rename to browser/locales/searchplugins/wikipedia-is.xml
rename from browser/components/search/searchplugins/wikipedia-it.xml
rename to browser/locales/searchplugins/wikipedia-it.xml
rename from browser/components/search/searchplugins/wikipedia-ja.xml
rename to browser/locales/searchplugins/wikipedia-ja.xml
rename from browser/components/search/searchplugins/wikipedia-ka.xml
rename to browser/locales/searchplugins/wikipedia-ka.xml
rename from browser/components/search/searchplugins/wikipedia-kab.xml
rename to browser/locales/searchplugins/wikipedia-kab.xml
rename from browser/components/search/searchplugins/wikipedia-kk.xml
rename to browser/locales/searchplugins/wikipedia-kk.xml
rename from browser/components/search/searchplugins/wikipedia-km.xml
rename to browser/locales/searchplugins/wikipedia-km.xml
rename from browser/components/search/searchplugins/wikipedia-kn.xml
rename to browser/locales/searchplugins/wikipedia-kn.xml
rename from browser/components/search/searchplugins/wikipedia-kr.xml
rename to browser/locales/searchplugins/wikipedia-kr.xml
rename from browser/components/search/searchplugins/wikipedia-lij.xml
rename to browser/locales/searchplugins/wikipedia-lij.xml
rename from browser/components/search/searchplugins/wikipedia-lo.xml
rename to browser/locales/searchplugins/wikipedia-lo.xml
rename from browser/components/search/searchplugins/wikipedia-lt.xml
rename to browser/locales/searchplugins/wikipedia-lt.xml
rename from browser/components/search/searchplugins/wikipedia-ltg.xml
rename to browser/locales/searchplugins/wikipedia-ltg.xml
rename from browser/components/search/searchplugins/wikipedia-lv.xml
rename to browser/locales/searchplugins/wikipedia-lv.xml
rename from browser/components/search/searchplugins/wikipedia-mk.xml
rename to browser/locales/searchplugins/wikipedia-mk.xml
rename from browser/components/search/searchplugins/wikipedia-ml.xml
rename to browser/locales/searchplugins/wikipedia-ml.xml
rename from browser/components/search/searchplugins/wikipedia-mr.xml
rename to browser/locales/searchplugins/wikipedia-mr.xml
rename from browser/components/search/searchplugins/wikipedia-ms.xml
rename to browser/locales/searchplugins/wikipedia-ms.xml
rename from browser/components/search/searchplugins/wikipedia-my.xml
rename to browser/locales/searchplugins/wikipedia-my.xml
rename from browser/components/search/searchplugins/wikipedia-ne.xml
rename to browser/locales/searchplugins/wikipedia-ne.xml
rename from browser/components/search/searchplugins/wikipedia-nl.xml
rename to browser/locales/searchplugins/wikipedia-nl.xml
rename from browser/components/search/searchplugins/wikipedia-oc.xml
rename to browser/locales/searchplugins/wikipedia-oc.xml
rename from browser/components/search/searchplugins/wikipedia-or.xml
rename to browser/locales/searchplugins/wikipedia-or.xml
rename from browser/components/search/searchplugins/wikipedia-pa.xml
rename to browser/locales/searchplugins/wikipedia-pa.xml
rename from browser/components/search/searchplugins/wikipedia-pl.xml
rename to browser/locales/searchplugins/wikipedia-pl.xml
rename from browser/components/search/searchplugins/wikipedia-pt.xml
rename to browser/locales/searchplugins/wikipedia-pt.xml
rename from browser/components/search/searchplugins/wikipedia-rm.xml
rename to browser/locales/searchplugins/wikipedia-rm.xml
rename from browser/components/search/searchplugins/wikipedia-ro.xml
rename to browser/locales/searchplugins/wikipedia-ro.xml
rename from browser/components/search/searchplugins/wikipedia-ru.xml
rename to browser/locales/searchplugins/wikipedia-ru.xml
rename from browser/components/search/searchplugins/wikipedia-si.xml
rename to browser/locales/searchplugins/wikipedia-si.xml
rename from browser/components/search/searchplugins/wikipedia-sk.xml
rename to browser/locales/searchplugins/wikipedia-sk.xml
rename from browser/components/search/searchplugins/wikipedia-sl.xml
rename to browser/locales/searchplugins/wikipedia-sl.xml
rename from browser/components/search/searchplugins/wikipedia-sq.xml
rename to browser/locales/searchplugins/wikipedia-sq.xml
rename from browser/components/search/searchplugins/wikipedia-sr.xml
rename to browser/locales/searchplugins/wikipedia-sr.xml
rename from browser/components/search/searchplugins/wikipedia-sv-SE.xml
rename to browser/locales/searchplugins/wikipedia-sv-SE.xml
rename from browser/components/search/searchplugins/wikipedia-ta.xml
rename to browser/locales/searchplugins/wikipedia-ta.xml
rename from browser/components/search/searchplugins/wikipedia-te.xml
rename to browser/locales/searchplugins/wikipedia-te.xml
rename from browser/components/search/searchplugins/wikipedia-th.xml
rename to browser/locales/searchplugins/wikipedia-th.xml
rename from browser/components/search/searchplugins/wikipedia-tl.xml
rename to browser/locales/searchplugins/wikipedia-tl.xml
rename from browser/components/search/searchplugins/wikipedia-tr.xml
rename to browser/locales/searchplugins/wikipedia-tr.xml
rename from browser/components/search/searchplugins/wikipedia-uk.xml
rename to browser/locales/searchplugins/wikipedia-uk.xml
rename from browser/components/search/searchplugins/wikipedia-ur.xml
rename to browser/locales/searchplugins/wikipedia-ur.xml
rename from browser/components/search/searchplugins/wikipedia-uz.xml
rename to browser/locales/searchplugins/wikipedia-uz.xml
rename from browser/components/search/searchplugins/wikipedia-vi.xml
rename to browser/locales/searchplugins/wikipedia-vi.xml
rename from browser/components/search/searchplugins/wikipedia-wo.xml
rename to browser/locales/searchplugins/wikipedia-wo.xml
rename from browser/components/search/searchplugins/wikipedia-zh-CN.xml
rename to browser/locales/searchplugins/wikipedia-zh-CN.xml
rename from browser/components/search/searchplugins/wikipedia-zh-TW.xml
rename to browser/locales/searchplugins/wikipedia-zh-TW.xml
rename from browser/components/search/searchplugins/wikipedia.xml
rename to browser/locales/searchplugins/wikipedia.xml
rename from browser/components/search/searchplugins/wiktionary-oc.xml
rename to browser/locales/searchplugins/wiktionary-oc.xml
rename from browser/components/search/searchplugins/wiktionary-te.xml
rename to browser/locales/searchplugins/wiktionary-te.xml
rename from browser/components/search/searchplugins/wolnelektury-pl.xml
rename to browser/locales/searchplugins/wolnelektury-pl.xml
rename from browser/components/search/searchplugins/yahoo-jp-auctions.xml
rename to browser/locales/searchplugins/yahoo-jp-auctions.xml
rename from browser/components/search/searchplugins/yahoo-jp.xml
rename to browser/locales/searchplugins/yahoo-jp.xml
rename from browser/components/search/searchplugins/yandex-az.xml
rename to browser/locales/searchplugins/yandex-az.xml
rename from browser/components/search/searchplugins/yandex-by.xml
rename to browser/locales/searchplugins/yandex-by.xml
rename from browser/components/search/searchplugins/yandex-en.xml
rename to browser/locales/searchplugins/yandex-en.xml
rename from browser/components/search/searchplugins/yandex-kk.xml
rename to browser/locales/searchplugins/yandex-kk.xml
rename from browser/components/search/searchplugins/yandex-ru.xml
rename to browser/locales/searchplugins/yandex-ru.xml
rename from browser/components/search/searchplugins/yandex-tr.xml
rename to browser/locales/searchplugins/yandex-tr.xml
rename from browser/components/search/searchplugins/zoznam-sk.xml
rename to browser/locales/searchplugins/zoznam-sk.xml
--- a/browser/modules/ContentSearch.jsm
+++ b/browser/modules/ContentSearch.jsm
@@ -102,17 +102,16 @@ var ContentSearch = {
   _destroyedPromise: null,
 
   // The current controller and browser in _onMessageGetSuggestions.  Allows
   // fetch cancellation from _cancelSuggestions.
   _currentSuggestion: null,
 
   init() {
     Services.obs.addObserver(this, "browser-search-engine-modified");
-    Services.obs.addObserver(this, "browser-search-service");
     Services.obs.addObserver(this, "shutdown-leaks-before-check");
     Services.prefs.addObserver("browser.search.hiddenOneOffs", this);
     this._stringBundle = Services.strings.createBundle("chrome://global/locale/autocomplete.properties");
   },
 
   get searchSuggestionUIStrings() {
     if (this._searchSuggestionUIStrings) {
       return this._searchSuggestionUIStrings;
@@ -129,17 +128,16 @@ var ContentSearch = {
   },
 
   destroy() {
     if (this._destroyedPromise) {
       return this._destroyedPromise;
     }
 
     Services.obs.removeObserver(this, "browser-search-engine-modified");
-    Services.obs.removeObserver(this, "browser-search-service");
     Services.obs.removeObserver(this, "shutdown-leaks-before-check");
 
     this._eventQueue.length = 0;
     this._destroyedPromise = Promise.resolve(this._currentEventPromise);
     return this._destroyedPromise;
   },
 
   /**
@@ -181,20 +179,16 @@ var ContentSearch = {
       type: "Message",
       data: msg,
     });
     this._processEventQueue();
   },
 
   observe(subj, topic, data) {
     switch (topic) {
-    case "browser-search-service":
-      if (data != "init-complete") {
-        break;
-      }
     case "nsPref:changed":
     case "browser-search-engine-modified":
       this._eventQueue.push({
         type: "Observe",
         data,
       });
       this._processEventQueue();
       break;
--- a/mobile/android/chrome/jar.mn
+++ b/mobile/android/chrome/jar.mn
@@ -82,8 +82,10 @@ chrome.jar:
 % override chrome://global/locale/global.dtd chrome://browser/locale/overrides/global.dtd
 % override chrome://global/locale/AccessFu.properties chrome://browser/locale/overrides/AccessFu.properties
 % override chrome://global/locale/dom/dom.properties chrome://browser/locale/overrides/dom/dom.properties
 % override chrome://global/locale/plugins.properties chrome://browser/locale/overrides/plugins.properties
 
 # mobile/locales/jar.mn resources and overrides
 % override chrome://global/locale/netError.dtd    chrome://browser/locale/netError.dtd
 % override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties
+% resource search-plugins chrome://browser/locale/searchplugins/
+
--- a/mobile/android/components/moz.build
+++ b/mobile/android/components/moz.build
@@ -46,10 +46,9 @@ EXTRA_COMPONENTS += [
 EXTRA_PP_COMPONENTS += [
     'MobileComponents.manifest',
 ]
 
 DIRS += [
     'extensions',
     'build',
     'geckoview',
-    'search',
 ]
deleted file mode 100644
--- a/mobile/android/components/search/jar.mn
+++ /dev/null
@@ -1,8 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-chrome.jar:
-        searchplugins/                                              (searchplugins/**)
-
-% resource search-plugins %searchplugins/
deleted file mode 100644
--- a/mobile/android/components/search/moz.build
+++ /dev/null
@@ -1,10 +0,0 @@
-# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-# vim: set filetype=python:
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-JAR_MANIFESTS += ['jar.mn']
-
-with Files('**'):
-    BUG_COMPONENT = ('Firefox for Android', 'Awesomescreen')
--- a/mobile/android/installer/allowed-dupes.mn
+++ b/mobile/android/installer/allowed-dupes.mn
@@ -43,12 +43,8 @@ res/table-remove-column-active.gif
 res/table-remove-column-hover.gif
 res/table-remove-column.gif
 res/table-remove-row-active.gif
 res/table-remove-row-hover.gif
 res/table-remove-row.gif
 res/multilocale.txt
 modules/commonjs/index.js
 update.locale
-chrome/chrome/searchplugins/bolcom-fy-NL.xml
-chrome/chrome/searchplugins/bolcom-nl.xml
-chrome/chrome/searchplugins/ddg.xml
-chrome/chrome/searchplugins/duckduckgo.xml
--- a/mobile/locales/Makefile.in
+++ b/mobile/locales/Makefile.in
@@ -1,30 +1,144 @@
 # -*- makefile -*-
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+#####################################################################################
+# Dependency build overhead:
+#   o always create/update/hard link targets boomkarks.json & searchplugins
+#   o latest symlink will be correct for the current locale / local build.
+#   o logic is essentially FORCE for language packs w/o all the build overhead
+#   o phase 2: replace hard links with a user function able to derive path
+#     based on current locale.
+#####################################################################################
+
 include $(topsrcdir)/config/config.mk
 
 USE_AUTOTARGETS_MK=1
 include $(topsrcdir)/config/makefiles/makeutils.mk
 
+# Separate items of contention
+tgt-gendir = .deps/generated_$(AB_CD)
+
+GENERATED_DIRS += .deps
+
 $(call errorIfEmpty,MOZ_BRANDING_DIRECTORY)
 SUBMAKEFILES += \
         $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/Makefile \
         $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales/Makefile \
         $(NULL)
 
+###########################################################################
+# Default target, preserve existing functionality for:
+#    gmake -C $obj/mobile/locales
+###########################################################################
+search-jar-default: search-jar
+
+
+###########################################################################
+## Searchlist plugin config
+plugin-file-array = \
+  $(srcdir)/search/list.json \
+  $(NULL)
+
+###########################################################################
+plugin_file    = $(firstword $(plugin-file-array))
+plugin-file-ts = $(tgt-gendir)/$(subst $(topsrcdir)/,$(NULL),$(plugin_file)).ts
+
+GARBAGE += $(plugin-file-ts)
+# ---------------------------------------------------------------------------
+# plugin-file-ts track searchlist file used ($path/list.json)
+# and time when the file was last modified.
+###########################################################################
+plugin-file-ts-preqs = \
+  $(call mkdir_deps,$(dir $(plugin-file-ts))) \
+  $(plugin_file) \
+  $(NULL)
+
+###########################################################################
+# Detect locale changes.  Force stale deps when searchlist file
+# or content has changed.
+$(plugin-file-ts): $(plugin-file-ts-preqs)
+	@touch $@
+
+
+###########################################################################
+search-jar-common = tmp-search.jar.mn
+search-jar        = $(tgt-gendir)/$(search-jar-common)
+search-jar-ts     = $(search-jar).ts
+
+GARBAGE += $(search-jar) $(search-jar-ts) $(search-jar-common)
+# ---------------------------------------------------------------------------
+# search-jar contains a list of providers for the search plugin
+###########################################################################
+SEARCH_PLUGINS := $(shell $(call py_action,output_searchplugins_list,$(srcdir)/search/list.json $(AB_CD)))
+$(call errorIfEmpty,SEARCH_PLUGINS)
+
+search-jar-preqs = \
+  $(plugin-file-ts) \
+  $(if $(IS_LANGUAGE_REPACK),FORCE) \
+  $(NULL)
+
+.PHONY: search-jar
+search-jar: $(search-jar)
+$(search-jar): $(search-jar-preqs)
+	@echo '\nGenerating: search-jar'
+	printf '$(AB_CD).jar:' > $@
+	ln -fn $@ .
+	printf '$(foreach plugin,$(SEARCH_PLUGINS),$(subst __PLUGIN_SUBST__,$(plugin), \n locale/$(AB_CD)/browser/searchplugins/__PLUGIN_SUBST__.xml (__PLUGIN_SUBST__.xml)))' >>  $@
+	printf '\n locale/$(AB_CD)/browser/searchplugins/list.json (list.json)' >> $@
+	@echo   >> $@
+
+###################
+search-dir-deps = \
+  $(plugin-file) \
+  $(dir-chrome) \
+  $(NULL)
+
+search-preqs =\
+  $(call mkdir_deps,$(dir $(search-jar-ts))) \
+  $(call mkdir_deps,$(FINAL_TARGET)/chrome) \
+  $(search-jar) \
+  $(search-dir-deps) \
+  $(if $(IS_LANGUAGE_REPACK),FORCE) \
+  $(GLOBAL_DEPS) \
+  $(NULL)
+
+.PHONY: searchplugins
+searchplugins: $(search-preqs)
+	$(call py_action,generate_searchjson,$(srcdir)/search/list.json $(AB_CD) $(tgt-gendir)/list.json)
+	$(call py_action,jar_maker,\
+          $(QUIET) -d $(FINAL_TARGET) \
+          -s $(topsrcdir)/$(relativesrcdir)/searchplugins \
+          -s $(tgt-gendir) \
+          $(MAKE_JARS_FLAGS) $(search-jar))
+	$(TOUCH) $@
+
 include $(topsrcdir)/config/rules.mk
 
+
+#############
+libs-preqs =\
+  $(call mkdir-deps,$(DIST)/install) \
+  $(NULL)
+
 libs-%: AB_CD=$*
-libs-%:
-	$(NSINSTALL) -D $(DIST)/install
+libs-%: $(libs-preqs)
+	$(display-deps)
 	@$(MAKE) -C $(DEPTH)/toolkit/locales libs-$*
+	@$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
 
 # Tailored target to just add the chrome processing for multi-locale builds
 chrome-%: AB_CD=$*
 chrome-%:
+	$(display-deps)
+	@$(MAKE) -B searchplugins AB_CD=$*
 	@$(MAKE) chrome AB_CD=$*
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales chrome AB_CD=$*
+
+NO_JA_JP_MAC_AB_CD := $(if $(filter ja-JP-mac, $(AB_CD)),ja,$(AB_CD))
+
+
+export:: searchplugins
rename from mobile/android/components/search/searchplugins/list.json
rename to mobile/locales/search/list.json
rename from mobile/android/components/search/searchplugins/amazon-au.xml
rename to mobile/locales/searchplugins/amazon-au.xml
rename from mobile/android/components/search/searchplugins/amazon-br.xml
rename to mobile/locales/searchplugins/amazon-br.xml
rename from mobile/android/components/search/searchplugins/amazon-ca.xml
rename to mobile/locales/searchplugins/amazon-ca.xml
rename from mobile/android/components/search/searchplugins/amazon-co-uk.xml
rename to mobile/locales/searchplugins/amazon-co-uk.xml
rename from mobile/android/components/search/searchplugins/amazon-de.xml
rename to mobile/locales/searchplugins/amazon-de.xml
rename from mobile/android/components/search/searchplugins/amazon-fr.xml
rename to mobile/locales/searchplugins/amazon-fr.xml
rename from mobile/android/components/search/searchplugins/amazon-in.xml
rename to mobile/locales/searchplugins/amazon-in.xml
rename from mobile/android/components/search/searchplugins/amazon-it.xml
rename to mobile/locales/searchplugins/amazon-it.xml
rename from mobile/android/components/search/searchplugins/amazon-jp.xml
rename to mobile/locales/searchplugins/amazon-jp.xml
rename from mobile/android/components/search/searchplugins/amazon-mx.xml
rename to mobile/locales/searchplugins/amazon-mx.xml
rename from mobile/android/components/search/searchplugins/amazon-nl.xml
rename to mobile/locales/searchplugins/amazon-nl.xml
rename from mobile/android/components/search/searchplugins/amazondotcom.xml
rename to mobile/locales/searchplugins/amazondotcom.xml
rename from mobile/android/components/search/searchplugins/azerdict.xml
rename to mobile/locales/searchplugins/azerdict.xml
rename from mobile/android/components/search/searchplugins/azet-sk.xml
rename to mobile/locales/searchplugins/azet-sk.xml
rename from mobile/android/components/search/searchplugins/baidu.xml
rename to mobile/locales/searchplugins/baidu.xml
rename from mobile/android/components/search/searchplugins/bing.xml
rename to mobile/locales/searchplugins/bing.xml
rename from mobile/android/components/search/searchplugins/bolcom-fy-NL.xml
rename to mobile/locales/searchplugins/bolcom-fy-NL.xml
rename from mobile/android/components/search/searchplugins/bolcom-nl.xml
rename to mobile/locales/searchplugins/bolcom-nl.xml
rename from mobile/android/components/search/searchplugins/ceneje.xml
rename to mobile/locales/searchplugins/ceneje.xml
rename from mobile/android/components/search/searchplugins/coccoc.xml
rename to mobile/locales/searchplugins/coccoc.xml
rename from mobile/android/components/search/searchplugins/danawa-kr.xml
rename to mobile/locales/searchplugins/danawa-kr.xml
rename from mobile/android/components/search/searchplugins/daum-kr.xml
rename to mobile/locales/searchplugins/daum-kr.xml
rename from mobile/android/components/search/searchplugins/ddg.xml
rename to mobile/locales/searchplugins/ddg.xml
rename from mobile/android/components/search/searchplugins/diec2.xml
rename to mobile/locales/searchplugins/diec2.xml
rename from mobile/android/components/search/searchplugins/drae.xml
rename to mobile/locales/searchplugins/drae.xml
rename from mobile/android/components/search/searchplugins/duckduckgo.xml
rename to mobile/locales/searchplugins/duckduckgo.xml
rename from mobile/android/components/search/searchplugins/elebila.xml
rename to mobile/locales/searchplugins/elebila.xml
rename from mobile/android/components/search/searchplugins/faclair-beag.xml
rename to mobile/locales/searchplugins/faclair-beag.xml
rename from mobile/android/components/search/searchplugins/google-2018.xml
rename to mobile/locales/searchplugins/google-2018.xml
rename from mobile/android/components/search/searchplugins/google.xml
rename to mobile/locales/searchplugins/google.xml
rename from mobile/android/components/search/searchplugins/gulesider-mobile-NO.xml
rename to mobile/locales/searchplugins/gulesider-mobile-NO.xml
rename from mobile/android/components/search/searchplugins/heureka-cz.xml
rename to mobile/locales/searchplugins/heureka-cz.xml
rename from mobile/android/components/search/searchplugins/hotline-ua.xml
rename to mobile/locales/searchplugins/hotline-ua.xml
rename from mobile/android/components/search/searchplugins/leit-is.xml
rename to mobile/locales/searchplugins/leit-is.xml
rename from mobile/android/components/search/searchplugins/leo_ende_de.xml
rename to mobile/locales/searchplugins/leo_ende_de.xml
rename from mobile/android/components/search/searchplugins/list-am.xml
rename to mobile/locales/searchplugins/list-am.xml
rename from mobile/android/components/search/searchplugins/mapy-cz.xml
rename to mobile/locales/searchplugins/mapy-cz.xml
rename from mobile/android/components/search/searchplugins/mercadolibre-ar.xml
rename to mobile/locales/searchplugins/mercadolibre-ar.xml
rename from mobile/android/components/search/searchplugins/mercadolibre-cl.xml
rename to mobile/locales/searchplugins/mercadolibre-cl.xml
rename from mobile/android/components/search/searchplugins/mercadolibre-mx.xml
rename to mobile/locales/searchplugins/mercadolibre-mx.xml
rename from mobile/android/components/search/searchplugins/naver-kr.xml
rename to mobile/locales/searchplugins/naver-kr.xml
rename from mobile/android/components/search/searchplugins/odpiralni.xml
rename to mobile/locales/searchplugins/odpiralni.xml
rename from mobile/android/components/search/searchplugins/pazaruvaj.xml
rename to mobile/locales/searchplugins/pazaruvaj.xml
rename from mobile/android/components/search/searchplugins/pledarigrond.xml
rename to mobile/locales/searchplugins/pledarigrond.xml
rename from mobile/android/components/search/searchplugins/prisjakt-sv-SE.xml
rename to mobile/locales/searchplugins/prisjakt-sv-SE.xml
rename from mobile/android/components/search/searchplugins/qwant.xml
rename to mobile/locales/searchplugins/qwant.xml
rename from mobile/android/components/search/searchplugins/rediff.xml
rename to mobile/locales/searchplugins/rediff.xml
rename from mobile/android/components/search/searchplugins/reta-vortaro.xml
rename to mobile/locales/searchplugins/reta-vortaro.xml
rename from mobile/android/components/search/searchplugins/salidzinilv.xml
rename to mobile/locales/searchplugins/salidzinilv.xml
rename from mobile/android/components/search/searchplugins/seznam-cz.xml
rename to mobile/locales/searchplugins/seznam-cz.xml
rename from mobile/android/components/search/searchplugins/skroutz.xml
rename to mobile/locales/searchplugins/skroutz.xml
rename from mobile/android/components/search/searchplugins/slovnik-sk.xml
rename to mobile/locales/searchplugins/slovnik-sk.xml
rename from mobile/android/components/search/searchplugins/sslv.xml
rename to mobile/locales/searchplugins/sslv.xml
rename from mobile/android/components/search/searchplugins/sztaki-en-hu.xml
rename to mobile/locales/searchplugins/sztaki-en-hu.xml
rename from mobile/android/components/search/searchplugins/taobao.xml
rename to mobile/locales/searchplugins/taobao.xml
rename from mobile/android/components/search/searchplugins/tearma.xml
rename to mobile/locales/searchplugins/tearma.xml
rename from mobile/android/components/search/searchplugins/twitter-ja.xml
rename to mobile/locales/searchplugins/twitter-ja.xml
rename from mobile/android/components/search/searchplugins/twitter.xml
rename to mobile/locales/searchplugins/twitter.xml
rename from mobile/android/components/search/searchplugins/vatera.xml
rename to mobile/locales/searchplugins/vatera.xml
rename from mobile/android/components/search/searchplugins/wikipedia-NN.xml
rename to mobile/locales/searchplugins/wikipedia-NN.xml
rename from mobile/android/components/search/searchplugins/wikipedia-NO.xml
rename to mobile/locales/searchplugins/wikipedia-NO.xml
rename from mobile/android/components/search/searchplugins/wikipedia-an.xml
rename to mobile/locales/searchplugins/wikipedia-an.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ar.xml
rename to mobile/locales/searchplugins/wikipedia-ar.xml
rename from mobile/android/components/search/searchplugins/wikipedia-as.xml
rename to mobile/locales/searchplugins/wikipedia-as.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ast.xml
rename to mobile/locales/searchplugins/wikipedia-ast.xml
rename from mobile/android/components/search/searchplugins/wikipedia-az.xml
rename to mobile/locales/searchplugins/wikipedia-az.xml
rename from mobile/android/components/search/searchplugins/wikipedia-be.xml
rename to mobile/locales/searchplugins/wikipedia-be.xml
rename from mobile/android/components/search/searchplugins/wikipedia-bg.xml
rename to mobile/locales/searchplugins/wikipedia-bg.xml
rename from mobile/android/components/search/searchplugins/wikipedia-bn.xml
rename to mobile/locales/searchplugins/wikipedia-bn.xml
rename from mobile/android/components/search/searchplugins/wikipedia-br.xml
rename to mobile/locales/searchplugins/wikipedia-br.xml
rename from mobile/android/components/search/searchplugins/wikipedia-bs.xml
rename to mobile/locales/searchplugins/wikipedia-bs.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ca.xml
rename to mobile/locales/searchplugins/wikipedia-ca.xml
rename from mobile/android/components/search/searchplugins/wikipedia-cy.xml
rename to mobile/locales/searchplugins/wikipedia-cy.xml
rename from mobile/android/components/search/searchplugins/wikipedia-cz.xml
rename to mobile/locales/searchplugins/wikipedia-cz.xml
rename from mobile/android/components/search/searchplugins/wikipedia-da.xml
rename to mobile/locales/searchplugins/wikipedia-da.xml
rename from mobile/android/components/search/searchplugins/wikipedia-de.xml
rename to mobile/locales/searchplugins/wikipedia-de.xml
rename from mobile/android/components/search/searchplugins/wikipedia-dsb.xml
rename to mobile/locales/searchplugins/wikipedia-dsb.xml
rename from mobile/android/components/search/searchplugins/wikipedia-el.xml
rename to mobile/locales/searchplugins/wikipedia-el.xml
rename from mobile/android/components/search/searchplugins/wikipedia-eo.xml
rename to mobile/locales/searchplugins/wikipedia-eo.xml
rename from mobile/android/components/search/searchplugins/wikipedia-es.xml
rename to mobile/locales/searchplugins/wikipedia-es.xml
rename from mobile/android/components/search/searchplugins/wikipedia-et.xml
rename to mobile/locales/searchplugins/wikipedia-et.xml
rename from mobile/android/components/search/searchplugins/wikipedia-eu.xml
rename to mobile/locales/searchplugins/wikipedia-eu.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fa.xml
rename to mobile/locales/searchplugins/wikipedia-fa.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fi.xml
rename to mobile/locales/searchplugins/wikipedia-fi.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fr.xml
rename to mobile/locales/searchplugins/wikipedia-fr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fy-NL.xml
rename to mobile/locales/searchplugins/wikipedia-fy-NL.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ga-IE.xml
rename to mobile/locales/searchplugins/wikipedia-ga-IE.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gd.xml
rename to mobile/locales/searchplugins/wikipedia-gd.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gl.xml
rename to mobile/locales/searchplugins/wikipedia-gl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gn.xml
rename to mobile/locales/searchplugins/wikipedia-gn.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gu.xml
rename to mobile/locales/searchplugins/wikipedia-gu.xml
rename from mobile/android/components/search/searchplugins/wikipedia-he.xml
rename to mobile/locales/searchplugins/wikipedia-he.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hi.xml
rename to mobile/locales/searchplugins/wikipedia-hi.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hr.xml
rename to mobile/locales/searchplugins/wikipedia-hr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hsb.xml
rename to mobile/locales/searchplugins/wikipedia-hsb.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hu.xml
rename to mobile/locales/searchplugins/wikipedia-hu.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hy-AM.xml
rename to mobile/locales/searchplugins/wikipedia-hy-AM.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ia.xml
rename to mobile/locales/searchplugins/wikipedia-ia.xml
rename from mobile/android/components/search/searchplugins/wikipedia-id.xml
rename to mobile/locales/searchplugins/wikipedia-id.xml
rename from mobile/android/components/search/searchplugins/wikipedia-is.xml
rename to mobile/locales/searchplugins/wikipedia-is.xml
rename from mobile/android/components/search/searchplugins/wikipedia-it.xml
rename to mobile/locales/searchplugins/wikipedia-it.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ja.xml
rename to mobile/locales/searchplugins/wikipedia-ja.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ka.xml
rename to mobile/locales/searchplugins/wikipedia-ka.xml
rename from mobile/android/components/search/searchplugins/wikipedia-kab.xml
rename to mobile/locales/searchplugins/wikipedia-kab.xml
rename from mobile/android/components/search/searchplugins/wikipedia-kk.xml
rename to mobile/locales/searchplugins/wikipedia-kk.xml
rename from mobile/android/components/search/searchplugins/wikipedia-km.xml
rename to mobile/locales/searchplugins/wikipedia-km.xml
rename from mobile/android/components/search/searchplugins/wikipedia-kn.xml
rename to mobile/locales/searchplugins/wikipedia-kn.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lij.xml
rename to mobile/locales/searchplugins/wikipedia-lij.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lo.xml
rename to mobile/locales/searchplugins/wikipedia-lo.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lt.xml
rename to mobile/locales/searchplugins/wikipedia-lt.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ltg.xml
rename to mobile/locales/searchplugins/wikipedia-ltg.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lv.xml
rename to mobile/locales/searchplugins/wikipedia-lv.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ml.xml
rename to mobile/locales/searchplugins/wikipedia-ml.xml
rename from mobile/android/components/search/searchplugins/wikipedia-mr.xml
rename to mobile/locales/searchplugins/wikipedia-mr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ms.xml
rename to mobile/locales/searchplugins/wikipedia-ms.xml
rename from mobile/android/components/search/searchplugins/wikipedia-my.xml
rename to mobile/locales/searchplugins/wikipedia-my.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ne.xml
rename to mobile/locales/searchplugins/wikipedia-ne.xml
rename from mobile/android/components/search/searchplugins/wikipedia-nl.xml
rename to mobile/locales/searchplugins/wikipedia-nl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-oc.xml
rename to mobile/locales/searchplugins/wikipedia-oc.xml
rename from mobile/android/components/search/searchplugins/wikipedia-or.xml
rename to mobile/locales/searchplugins/wikipedia-or.xml
rename from mobile/android/components/search/searchplugins/wikipedia-pa.xml
rename to mobile/locales/searchplugins/wikipedia-pa.xml
rename from mobile/android/components/search/searchplugins/wikipedia-pl.xml
rename to mobile/locales/searchplugins/wikipedia-pl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-pt.xml
rename to mobile/locales/searchplugins/wikipedia-pt.xml
rename from mobile/android/components/search/searchplugins/wikipedia-rm.xml
rename to mobile/locales/searchplugins/wikipedia-rm.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ro.xml
rename to mobile/locales/searchplugins/wikipedia-ro.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ru.xml
rename to mobile/locales/searchplugins/wikipedia-ru.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sk.xml
rename to mobile/locales/searchplugins/wikipedia-sk.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sl.xml
rename to mobile/locales/searchplugins/wikipedia-sl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sq.xml
rename to mobile/locales/searchplugins/wikipedia-sq.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sr.xml
rename to mobile/locales/searchplugins/wikipedia-sr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sv-SE.xml
rename to mobile/locales/searchplugins/wikipedia-sv-SE.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ta.xml
rename to mobile/locales/searchplugins/wikipedia-ta.xml
rename from mobile/android/components/search/searchplugins/wikipedia-te.xml
rename to mobile/locales/searchplugins/wikipedia-te.xml
rename from mobile/android/components/search/searchplugins/wikipedia-th.xml
rename to mobile/locales/searchplugins/wikipedia-th.xml
rename from mobile/android/components/search/searchplugins/wikipedia-tr.xml
rename to mobile/locales/searchplugins/wikipedia-tr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-uk.xml
rename to mobile/locales/searchplugins/wikipedia-uk.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ur.xml
rename to mobile/locales/searchplugins/wikipedia-ur.xml
rename from mobile/android/components/search/searchplugins/wikipedia-uz.xml
rename to mobile/locales/searchplugins/wikipedia-uz.xml
rename from mobile/android/components/search/searchplugins/wikipedia-vi.xml
rename to mobile/locales/searchplugins/wikipedia-vi.xml
rename from mobile/android/components/search/searchplugins/wikipedia-wo.xml
rename to mobile/locales/searchplugins/wikipedia-wo.xml
rename from mobile/android/components/search/searchplugins/wikipedia-zh-CN.xml
rename to mobile/locales/searchplugins/wikipedia-zh-CN.xml
rename from mobile/android/components/search/searchplugins/wikipedia-zh-TW.xml
rename to mobile/locales/searchplugins/wikipedia-zh-TW.xml
rename from mobile/android/components/search/searchplugins/wikipedia.xml
rename to mobile/locales/searchplugins/wikipedia.xml
rename from mobile/android/components/search/searchplugins/wiktionary-kn.xml
rename to mobile/locales/searchplugins/wiktionary-kn.xml
rename from mobile/android/components/search/searchplugins/wiktionary-oc.xml
rename to mobile/locales/searchplugins/wiktionary-oc.xml
rename from mobile/android/components/search/searchplugins/wiktionary-or.xml
rename to mobile/locales/searchplugins/wiktionary-or.xml
rename from mobile/android/components/search/searchplugins/wiktionary-ta.xml
rename to mobile/locales/searchplugins/wiktionary-ta.xml
rename from mobile/android/components/search/searchplugins/wiktionary-te.xml
rename to mobile/locales/searchplugins/wiktionary-te.xml
rename from mobile/android/components/search/searchplugins/yahoo-jp.xml
rename to mobile/locales/searchplugins/yahoo-jp.xml
rename from mobile/android/components/search/searchplugins/yandex-en.xml
rename to mobile/locales/searchplugins/yandex-en.xml
rename from mobile/android/components/search/searchplugins/yandex-ru.xml
rename to mobile/locales/searchplugins/yandex-ru.xml
rename from mobile/android/components/search/searchplugins/yandex-tr.xml
rename to mobile/locales/searchplugins/yandex-tr.xml
rename from mobile/android/components/search/searchplugins/yandex.by.xml
rename to mobile/locales/searchplugins/yandex.by.xml
rename from mobile/android/components/search/searchplugins/yandex.xml
rename to mobile/locales/searchplugins/yandex.xml
--- a/toolkit/components/search/nsSearchService.js
+++ b/toolkit/components/search/nsSearchService.js
@@ -57,17 +57,17 @@ const NS_APP_DISTRIBUTION_SEARCH_DIR_LIS
 const NS_APP_USER_PROFILE_50_DIR = "ProfD";
 
 // We load plugins from APP_SEARCH_PREFIX, where a list.json
 // file needs to exist to list available engines.
 const APP_SEARCH_PREFIX = "resource://search-plugins/";
 
 // See documentation in nsIBrowserSearchService.idl.
 const SEARCH_ENGINE_TOPIC        = "browser-search-engine-modified";
-const TOPIC_LOCALES_CHANGE       = "intl:app-locales-changed";
+const REQ_LOCALES_CHANGED_TOPIC  = "intl:requested-locales-changed";
 const QUIT_APPLICATION_TOPIC     = "quit-application";
 
 const SEARCH_ENGINE_REMOVED      = "engine-removed";
 const SEARCH_ENGINE_ADDED        = "engine-added";
 const SEARCH_ENGINE_CHANGED      = "engine-changed";
 const SEARCH_ENGINE_LOADED       = "engine-loaded";
 const SEARCH_ENGINE_CURRENT      = "engine-current";
 const SEARCH_ENGINE_DEFAULT      = "engine-default";
@@ -3004,19 +3004,19 @@ SearchService.prototype = {
         await ensureKnownCountryCode(this);
         // Due to the HTTP requests done by ensureKnownCountryCode, it's possible that
         // at this point a synchronous init has been forced by other code.
         if (!gInitialized)
           await this._asyncLoadEngines(cache);
 
         // Typically we'll re-init as a result of a pref observer,
         // so signal to 'callers' that we're done.
-        gInitialized = true;
         Services.obs.notifyObservers(null, SEARCH_SERVICE_TOPIC, "init-complete");
         this._recordEngineTelemetry();
+        gInitialized = true;
       } catch (err) {
         LOG("Reinit failed: " + err);
         Services.obs.notifyObservers(null, SEARCH_SERVICE_TOPIC, "reinit-failed");
       } finally {
         Services.obs.notifyObservers(null, SEARCH_SERVICE_TOPIC, "reinit-complete");
       }
     })();
   },
@@ -3401,41 +3401,24 @@ SearchService.prototype = {
       request.send();
     });
 
     this._parseListJSON(list, uris);
     return uris;
   },
 
   _parseListJSON: function SRCH_SVC_parseListJSON(list, uris) {
-    let json;
+    let searchSettings;
     try {
-      json = JSON.parse(list);
+      searchSettings = JSON.parse(list);
     } catch (e) {
-      Cu.reportError("parseListJSON: Failed to parse list.json: " + e);
-      dump("parseListJSON: Failed to parse list.json: " + e + "\n");
+      LOG("failing to parse list.json: " + e);
       return;
     }
 
-    let searchSettings;
-    let locale = Services.locale.getAppLocaleAsBCP47();
-    if ("locales" in json &&
-        locale in json.locales) {
-      searchSettings = json.locales[locale];
-    } else {
-      // No locales were found, so use the JSON as is.
-      // It should have a default section.
-      if (!("default" in json)) {
-        Cu.reportError("parseListJSON: Missing default in list.json");
-        dump("parseListJSON: Missing default in list.json\n");
-        return;
-      }
-      searchSettings = json;
-    }
-
     // Check if we have a useable country specific list of visible default engines.
     // This will only be set if we got the list from the Mozilla search server;
     // it will not be set for distributions.
     let engineNames;
     let visibleDefaultEngines = this.getVerifiedGlobalAttr("visibleDefaultEngines");
     if (visibleDefaultEngines) {
       let jarNames = new Set();
       for (let region in searchSettings) {
@@ -3477,66 +3460,48 @@ SearchService.prototype = {
           "visibleDefaultEngines" in searchSettings[searchRegion]) {
         engineNames = searchSettings[searchRegion].visibleDefaultEngines;
       } else {
         engineNames = searchSettings.default.visibleDefaultEngines;
       }
     }
 
     // Remove any engine names that are supposed to be ignored.
-    // This pref is only allowed in a partner distribution.
+    // This pref is only allows in a partner distribution.
     let branch = Services.prefs.getDefaultBranch(BROWSER_SEARCH_PREF);
     if (isPartnerBuild() &&
         branch.getPrefType("ignoredJAREngines") == branch.PREF_STRING) {
       let ignoredJAREngines = branch.getCharPref("ignoredJAREngines")
                                     .split(",");
       let filteredEngineNames = engineNames.filter(e => !ignoredJAREngines.includes(e));
       // Don't allow all engines to be hidden
       if (filteredEngineNames.length > 0) {
         engineNames = filteredEngineNames;
       }
     }
 
-    if ("regionOverrides" in json &&
-        searchRegion in json.regionOverrides) {
-      for (let engine in json.regionOverrides[searchRegion]) {
-        let index = engineNames.indexOf(engine);
-        if (index > -1) {
-          engineNames[index] = json.regionOverrides[searchRegion][engine];
-        }
-      }
-    }
-
     for (let name of engineNames) {
       uris.push(APP_SEARCH_PREFIX + name + ".xml");
     }
 
     // Store this so that it can be used while writing the cache file.
     this._visibleDefaultEngines = engineNames;
 
     if (searchRegion && searchRegion in searchSettings &&
         "searchDefault" in searchSettings[searchRegion]) {
       this._searchDefault = searchSettings[searchRegion].searchDefault;
-    } else if ("searchDefault" in searchSettings.default) {
+    } else {
       this._searchDefault = searchSettings.default.searchDefault;
-    } else {
-      this._searchDefault = json.default.searchDefault;
-    }
-
-    if (!this._searchDefault) {
-      Cu.reportError("parseListJSON: No searchDefault");
     }
 
     if (searchRegion && searchRegion in searchSettings &&
         "searchOrder" in searchSettings[searchRegion]) {
       this._searchOrder = searchSettings[searchRegion].searchOrder;
     } else if ("searchOrder" in searchSettings.default) {
       this._searchOrder = searchSettings.default.searchOrder;
-    } else if ("searchOrder" in json.default) {
-      this._searchOrder = json.default.searchOrder;
     }
   },
 
   _saveSortedEngineList: function SRCH_SVC_saveSortedEngineList() {
     LOG("SRCH_SVC_saveSortedEngineList: starting");
 
     // Set the useDB pref to indicate that from now on we should use the order
     // information stored in the database.
@@ -4451,20 +4416,19 @@ SearchService.prototype = {
             break;
         }
         break;
 
       case QUIT_APPLICATION_TOPIC:
         this._removeObservers();
         break;
 
-      case TOPIC_LOCALES_CHANGE:
+      case REQ_LOCALES_CHANGED_TOPIC:
         // Locale changed. Re-init. We rely on observers, because we can't
         // return this promise to anyone.
-        // FYI, This is also used by the search tests to do an async reinit.
         this._asyncReInit();
         break;
     }
   },
 
   // nsITimerCallback
   notify: function SRCH_SVC_notify(aTimer) {
     LOG("_notify: checking for updates");
@@ -4509,17 +4473,20 @@ SearchService.prototype = {
       // There might be a race between synchronous and asynchronous
       // initialization for which we try to register the observers twice.
       return;
     }
     this._observersAdded = true;
 
     Services.obs.addObserver(this, SEARCH_ENGINE_TOPIC);
     Services.obs.addObserver(this, QUIT_APPLICATION_TOPIC);
-    Services.obs.addObserver(this, TOPIC_LOCALES_CHANGE);
+
+    if (AppConstants.MOZ_BUILD_APP == "mobile/android") {
+      Services.obs.addObserver(this, REQ_LOCALES_CHANGED_TOPIC);
+    }
 
     // The current stage of shutdown. Used to help analyze crash
     // signatures in case of shutdown timeout.
     let shutdownState = {
       step: "Not started",
       latestError: {
         message: undefined,
         stack: undefined
@@ -4551,17 +4518,20 @@ SearchService.prototype = {
       () => shutdownState
     );
   },
   _observersAdded: false,
 
   _removeObservers: function SRCH_SVC_removeObservers() {
     Services.obs.removeObserver(this, SEARCH_ENGINE_TOPIC);
     Services.obs.removeObserver(this, QUIT_APPLICATION_TOPIC);
-    Services.obs.removeObserver(this, TOPIC_LOCALES_CHANGE);
+
+    if (AppConstants.MOZ_BUILD_APP == "mobile/android") {
+      Services.obs.removeObserver(this, REQ_LOCALES_CHANGED_TOPIC);
+    }
   },
 
   QueryInterface: ChromeUtils.generateQI([
     Ci.nsIBrowserSearchService,
     Ci.nsIObserver,
     Ci.nsITimerCallback
   ])
 };
--- a/toolkit/components/search/tests/xpcshell/data/list.json
+++ b/toolkit/components/search/tests/xpcshell/data/list.json
@@ -1,30 +1,9 @@
 {
   "default": {
     "searchDefault": "Test search engine",
     "searchOrder": ["engine-resourceicon", "engine-chromeicon"],
     "visibleDefaultEngines": [
       "engine", "engine-pref", "engine-rel-searchform-purpose", "engine-system-purpose", "engine-chromeicon", "engine-resourceicon"
     ]
-  },
-  "regionOverrides": {
-    "RU": {
-      "engine": "engine-chromeicon"
-    }
-  },
-  "locales": {
-    "de": {
-      "default": {
-        "visibleDefaultEngines": [
-          "engine"
-        ]
-      }
-    },
-    "fr": {
-      "default": {
-        "visibleDefaultEngines": [
-          "engine", "engine-pref"
-        ]
-      }
-    }
   }
 }
--- a/toolkit/components/search/tests/xpcshell/head_search.js
+++ b/toolkit/components/search/tests/xpcshell/head_search.js
@@ -227,17 +227,17 @@ function isUSTimezone() {
   // Hawaii-Aleutian Standard Time (http://www.timeanddate.com/time/zones/hast)
 
   let UTCOffset = (new Date()).getTimezoneOffset();
   return UTCOffset >= 150 && UTCOffset <= 600;
 }
 
 const kDefaultenginenamePref = "browser.search.defaultenginename";
 const kTestEngineName = "Test search engine";
-const TOPIC_LOCALES_CHANGE = "intl:app-locales-changed";
+const REQ_LOCALES_CHANGED_TOPIC = "intl:requested-locales-changed";
 
 function getDefaultEngineName(isUS) {
   // The list of visibleDefaultEngines needs to match or the cache will be ignored.
   let chan = NetUtil.newChannel({
     uri: "resource://search-plugins/list.json",
     loadUsingSystemPrincipal: true
   });
   let searchSettings = parseJsonFromStream(chan.open2());
@@ -458,17 +458,17 @@ function asyncInit() {
     });
   });
 }
 
 function asyncReInit() {
   let promise = waitForSearchNotification("reinit-complete");
 
   Services.search.QueryInterface(Ci.nsIObserver)
-          .observe(null, TOPIC_LOCALES_CHANGE, null);
+          .observe(null, REQ_LOCALES_CHANGED_TOPIC, null);
 
   return promise;
 }
 
 // This "enum" from nsSearchService.js
 const TELEMETRY_RESULT_ENUM = {
   SUCCESS: 0,
   SUCCESS_WITHOUT_DATA: 1,
deleted file mode 100644
--- a/toolkit/components/search/tests/xpcshell/test_list_json_locale.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/* Check default search engine is picked from list.json searchDefault */
-
-"use strict";
-
-function run_test() {
-  Assert.ok(!Services.search.isInitialized, "search isn't initialized yet");
-
-  run_next_test();
-}
-
-// Override list.json with test data from data/list.json
-// and check that different locale is working
-add_task(async function test_listJSONlocale() {
-  let url = "resource://test/data/";
-  let resProt = Services.io.getProtocolHandler("resource")
-                        .QueryInterface(Ci.nsIResProtocolHandler);
-  resProt.setSubstitution("search-plugins", Services.io.newURI(url));
-
-  Services.locale.setAvailableLocales(["de"]);
-  Services.locale.setRequestedLocales(["de"]);
-
-  await asyncInit();
-
-  Assert.ok(Services.search.isInitialized, "search initialized");
-
-  let sortedEngines = Services.search.getEngines();
-  Assert.equal(sortedEngines.length, 1, "Should have only one engine");
-});
-
-
-// Check that switching locale switches search engines
-add_task(async function test_listJSONlocaleSwitch() {
-  let promise = waitForSearchNotification("reinit-complete");
-
-  Services.locale.setAvailableLocales(["fr"]);
-  Services.locale.setRequestedLocales(["fr"]);
-
-  await promise;
-
-  Assert.ok(Services.search.isInitialized, "search initialized");
-
-  let sortedEngines = Services.search.getEngines();
-  Assert.equal(sortedEngines.length, 2, "Should have two engines");
-});
-
-// Check that region overrides apply
-add_task(async function test_listJSONRegionOverride() {
-  Services.prefs.setCharPref("browser.search.region", "RU");
-
-  await asyncReInit();
-
-  Assert.ok(Services.search.isInitialized, "search initialized");
-
-  let sortedEngines = Services.search.getEngines();
-  Assert.equal(sortedEngines.length, 2, "Should have two engines");
-  Assert.equal(sortedEngines[0].identifier, "engine-chromeicon", "Engine should have been overridden by engine-chromeicon");
-});
--- a/toolkit/components/search/tests/xpcshell/xpcshell.ini
+++ b/toolkit/components/search/tests/xpcshell/xpcshell.ini
@@ -35,17 +35,16 @@ support-files =
 [test_bug930456_child.js]
 [test_engine_set_alias.js]
 [test_hasEngineWithURL.js]
 [test_identifiers.js]
 [test_invalid_engine_from_dir.js]
 [test_init_async_multiple.js]
 [test_init_async_multiple_then_sync.js]
 [test_json_cache.js]
-[test_list_json_locale.js]
 [test_list_json_searchdefault.js]
 [test_list_json_searchorder.js]
 [test_location.js]
 [test_location_error.js]
 [test_location_malformed_json.js]
 [test_location_partner.js]
 [test_location_funnelcake.js]
 [test_location_sync.js]