Vytvořil jsem Firefox na CentOS a mám potíže s nastavením výchozích předvoleb. Podle oficiální dokumenty :

  1. Vytvoření souboru JavaScriptu ve výchozím nastavení / pref (v systému Linux) nazvaný autoconfig.js

Zde je můj /tmp/ff-build/bin/defaults/pref/autoconfig.js:

// First line must be a comment pref("general.config.filename", "mozconfig.cfg"); pref("general.config.obscure_value", 0); 
  1. Vytvořte soubor .cfg (podle konvence, mozilla.cfg – může to být jakýkoli soubor název opravdu; musí se shodovat s tím, co je uvedeno v předvolbě general.config.filename výše) v adresáři programu.

Zde je můj /tmp/ff-build/bin/mozconfig.cfg kde je jediná binární stránka firefoxu:

// Disable updater lockPref("app.update.enabled", false); // make absolutely sure it is really off lockPref("app.update.auto", false); lockPref("app.update.mode", 0); lockPref("app.update.service.enabled", false); // Disable updater lockPref("app.update.enabled¨, false); 

Firefox bude fungovat bez autoconfig.js je přítomen, ale s výše uvedenou konfigurací se Firefox nepodařilo spustit s vyskakovacím oknem ying:

Nepodařilo se přečíst konfigurační soubor. Kontaktujte svého správce systému.

Chybová zpráva

Zkoušel jsem zkopírovat mozconfig.cfg do několika adresářů, ale beze změny. Jak zajistit, aby Firefox přijal mozconfig.cfg soubor? Nerozumím dokumentům?

(Profily jsou odstraněny a znovu vytvořeny, takže řešení nebude zahrnovat přidání čehokoli do složky založené na ~ /. Výše uvedené je získat výchozí předvolby funkční. Děkujeme.)

Komentáře

  • Můžete zkusit zadat absolutní název souboru jako general.config.filename, jen aby zjistil, zda čte soubor. A obklopte kód try{ ... }catch(e){ displayError("myerror", e); }
  • pokusil jsem se, jak jste navrhli, nastavit absolutní cestu k /tmp/ff-build/bin/mozconfig.cfg a já zabalil to do bloku try / catch, jak bylo navrženo. Absolutní cesta nefungovala ' t a try / catch chybu ' nezachytila. Objeví se stejná obecná výstraha.
  • Možná se v souboru .cfg nachází nějaký netisknutelný falešný znak. Zkuste prázdný soubor a poté každý řádek přidávejte jeden po druhém, dokud se nerozbije. strace -e open binární program, aby zjistil, které soubory otevírá.
  • @meuh Nalezen podivný ¨, o kterém se předpokládá být ". Vyzkoušejte / chyťte ' t chyby syntaxe a neexistuje žádná vývojářská konzole. Bylo těžké to zjistit. Děkujeme za pomoc.

Odpovědět

„Nepodařilo se přečíst konfigurační soubor. Obraťte se na správce systému . “ je obecná zpráva o selhání. Problém může být v autoconfig.js nebo v mozconfig.js.

Spuštění strace -e ./firefox podle doporučení @meuh ukázalo, že Firefox načítá konfigurační soubor:

open("/tmp/ff-build/bin/mozconfig.cfg", O_RDONLY) = 5 

Vložení try / catch do mozconfig.cfg takto však nezachytí žádné problémy:

// Disable default browser check try { lockPref("browser.defaultbrowser.notificationbar", false); lockPref("browser.shell.checkDefaultBrowser", false); lockPref("browser.shell.skipDefaultBrowserCheck¨, true); // Disable updater lockPref("app.update.enabled¨, false); } catch(e) { displayError("Error", e); } 

Prázdný mozconfig.cfg však funguje, takže bylo provedeno odstranění a test po řádku a bylo zjištěno podivný znak uvozovek: ¨. Toto je syntaktická chyba a oprávněně nebyl vyvolán try / catch.

Obvykle by tyto druhy chyb byly zachyceno na panelu pro vývojáře, ale to ještě není k dispozici.

Spuštění výše uvedeného skriptu prostřednictvím jslint zpráv

Neuzavřený řetězec.

lockPref("app.update.enabled¨, false); 

Toto jsou kroky, které jsem podnikl k ladění a vyřešení této obecné chybové zprávy. Doufám, že tyto kroky hel p někdo jiný.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *