From 9beb40b591407739bd85cc597cf43452b6251f13 Mon Sep 17 00:00:00 2001 From: ohfp <1813007-ohfp@users.noreply.gitlab.com> Date: Sat, 2 May 2020 12:37:14 +0200 Subject: [PATCH] re-structure code slightly; add bin and dist --- Makefile | 13 + bin/librewolf_parser | Bin 0 -> 379928 bytes dist/docs/settings/controversial.md | 64 + dist/docs/settings/defaulting.md | 216 ++ dist/docs/settings/deprecated/_index.md | 2 + dist/docs/settings/deprecated/active.md | 278 ++ dist/docs/settings/deprecated/inactive.md | 26 + dist/docs/settings/disabled-on-off.md | 39 + dist/docs/settings/esr-60.md | 141 + dist/docs/settings/extensions.md | 75 + dist/docs/settings/fingerprinting.md | 19 + dist/docs/settings/general.md | 2384 +++++++++++++++++ dist/docs/settings/ghacks-user.md | 439 +++ dist/docs/settings/ijwytsu.md | 1111 ++++++++ dist/docs/settings/locale-time-ua.md | 68 + dist/docs/settings/performance.md | 268 ++ dist/docs/settings/protection.md | 12 + dist/docs/settings/security.md | 387 +++ dist/docs/settings/user_settings/_index.md | 2 + dist/docs/settings/user_settings/auto-play.md | 12 + dist/docs/settings/user_settings/autofill.md | 65 + dist/docs/settings/user_settings/cookies.md | 47 + .../settings/user_settings/default-browser.md | 12 + dist/docs/settings/user_settings/dns.md | 47 + dist/docs/settings/user_settings/dnt.md | 19 + dist/docs/settings/user_settings/drm-cdm.md | 119 + dist/docs/settings/user_settings/history.md | 166 ++ .../settings/user_settings/miscellaneous.md | 19 + .../user_settings/password-manager.md | 44 + dist/docs/settings/user_settings/proxy.md | 23 + dist/docs/settings/user_settings/session.md | 19 + .../docs/settings/user_settings/start-page.md | 40 + dist/docs/settings/user_settings/theming.md | 41 + .../user_settings/tracking-protection.md | 179 ++ dist/docs/settings/user_settings/webrtc.md | 89 + dist/docs/settings/windows.md | 116 + dist/librewolf.cfg | 854 ++++++ librewolf.cr | 133 - shard.yml | 19 + src/librewolf_parser.cr | 64 + src/librewolf_parser/builders.cr | 50 + src/librewolf_parser/parse_json_files.cr | 25 + 42 files changed, 7613 insertions(+), 133 deletions(-) create mode 100644 Makefile create mode 100755 bin/librewolf_parser create mode 100644 dist/docs/settings/controversial.md create mode 100644 dist/docs/settings/defaulting.md create mode 100644 dist/docs/settings/deprecated/_index.md create mode 100644 dist/docs/settings/deprecated/active.md create mode 100644 dist/docs/settings/deprecated/inactive.md create mode 100644 dist/docs/settings/disabled-on-off.md create mode 100644 dist/docs/settings/esr-60.md create mode 100644 dist/docs/settings/extensions.md create mode 100644 dist/docs/settings/fingerprinting.md create mode 100644 dist/docs/settings/general.md create mode 100644 dist/docs/settings/ghacks-user.md create mode 100644 dist/docs/settings/ijwytsu.md create mode 100644 dist/docs/settings/locale-time-ua.md create mode 100644 dist/docs/settings/performance.md create mode 100644 dist/docs/settings/protection.md create mode 100644 dist/docs/settings/security.md create mode 100644 dist/docs/settings/user_settings/_index.md create mode 100644 dist/docs/settings/user_settings/auto-play.md create mode 100644 dist/docs/settings/user_settings/autofill.md create mode 100644 dist/docs/settings/user_settings/cookies.md create mode 100644 dist/docs/settings/user_settings/default-browser.md create mode 100644 dist/docs/settings/user_settings/dns.md create mode 100644 dist/docs/settings/user_settings/dnt.md create mode 100644 dist/docs/settings/user_settings/drm-cdm.md create mode 100644 dist/docs/settings/user_settings/history.md create mode 100644 dist/docs/settings/user_settings/miscellaneous.md create mode 100644 dist/docs/settings/user_settings/password-manager.md create mode 100644 dist/docs/settings/user_settings/proxy.md create mode 100644 dist/docs/settings/user_settings/session.md create mode 100644 dist/docs/settings/user_settings/start-page.md create mode 100644 dist/docs/settings/user_settings/theming.md create mode 100644 dist/docs/settings/user_settings/tracking-protection.md create mode 100644 dist/docs/settings/user_settings/webrtc.md create mode 100644 dist/docs/settings/windows.md create mode 100644 dist/librewolf.cfg delete mode 100644 librewolf.cr create mode 100644 shard.yml create mode 100644 src/librewolf_parser.cr create mode 100644 src/librewolf_parser/builders.cr create mode 100644 src/librewolf_parser/parse_json_files.cr diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..7952030 --- /dev/null +++ b/Makefile @@ -0,0 +1,13 @@ +rebuild_parser: + @echo '(Re-)building parser' + @shards build --production --release --no-debug + +generate: + @echo 'Generating librewolf.cfg and docs.' + @./bin/librewolf_parser + +clean: + @echo 'Cleaning up dist and bin.' + @shards prune + @rm -rf dist + @rm -rf bin diff --git a/bin/librewolf_parser b/bin/librewolf_parser new file mode 100755 index 0000000000000000000000000000000000000000..90d9f3cd7bb07ec0e571954d9efb8359ed3b6166 GIT binary patch literal 379928 zcmeFad3;nw)<1lkbRa;-8xb%nO9MfJiY5w5Ab~XLz>PK%1vD-YLI{h5BqrSuWb4pr z&9!OBsN=Ye;xgkpBaVuI3kiWNAj;x`pb~Jqmu6QWfYR^xRNdRTY0}Q~JimGVc|T9* z)2TYAs!p9cRdwprsk*n9W;(`nFqs7X6D5ok2&x{+G3i=D{HACvCJ5=mFu{WVR-v!Z z5m+<6=~`-dxT*tB(8CxlUlc+r*Q}+7hrP6XdZ=?qA(e~tNxFuo=%EnDVJgR3kffCi z3y=Ru90`IR8q2ZztXi#M;pc}qJv}s*BiY2oa=FFzZW~rpB0eQuc&L{naZr*~D`(Zp z>0yZ`FFn-dN!-!*H!VFpv?Gl^dPsTc(+OXSN8*$6&_}OF53_%CPN#Ci{=zARhu6lk zVuBv(_1%tgTGM%kfAe4KKH(0nzDRr?)7q_v`gpm%aQ3vDhFo7beQ@FIB3Jp~@?kd( zzG=vHWyROsz}np%^;6G}y={_Ew)xv}IgZPRzV^bN$*D*0i(O^g7GSbLI?5OkpZz0K){=}aIYkEZ&!D@=B6omAcxDM2g4rsXFVs^)x67Pu@OmTL5 zqFZ>#oOI>1{wUs|(-y&OL$=U|=uXGC0N)w--j6SR=HOe1ZxO!5_&$JdDZWm8=~IsH zgZM7Q*NrcImf;Il1TVf18d>_O2aeSY^_b>SBpI1}v82i{IKdLj= z?OdOxbbjT|r!zlzu`WN*D=zKkQJXKV*t_lf=gQ_>vgZEI8DG9p>S?*T@aRE_0SXy{HS)(tc^2o>$_mP^u=3{rZ8NUN6o$U%3AJ zM;G;5K5F?tZvDRI#%X&G|Gj(8!*?J2CHdWl{uJ2JaL_mtyxM9A-s!2d4re{r~Q0FR15rzt{vlOpi*YXmxbBH%k=IcZOxO%eG2YXmwI zBDCv^2>IWMK)+9fe)&g){Fg_-Z;n9ca0Gs`Bgk`d1bk5hI#m(y{s{QLMBx942>c(4 zfUk`}|E37}e~8eovk~YFj4)0fh(P~|2y~u}Q18_kKURFhKUYP_e`y5#zzFh8j=;~U z2z2H}${&ILhzN3^g`vIqwIl-l^AY%YHUgcj2>I`dfNzXY@0}6w`4Q-Bh=6a1fS(fq z-zNgTDgyrV2>4ME@GnQe4~@`YlOpu*hY{pc8=+rPfVbis{&^@uylxiKZpJfr~_kyL`O}I#?zKJunLksVQ@k{vhw>Vz6 z@w2u3*<`5VqtB_$&`TE!R|pa*D169%rcXx{B>YqjAF}^}C;BB}bP9F+TwXqh2SO$` zHbiH882xmOpST`qAU*|J{RWFR?YU&V9kaxT;G z&0+cTk>O(Sxm{~-BWFkGjQ(YG!rFVW#(&L&7{K^M@j%!gVO&*f^4WbQ=ST0~ERCO> zFg_m!p4yxJHfQ7<4+OW?-l{PE@6qTdYV`H?9!G@e)M#?%wF|;aTD?M8{wuZo+5h4d zZbyCexdwQWgA~T+Fn#>5q$ASK;0Xl~q ze_U(t)UbMoARFa(Yj~bp5O!;P?hcdBc_tr7-OBmVh85czl6-W(&-EIiKY>2sr-rrb z0geA^O`c>2(1-jQEPpf~2%0-a*rVa&G&#J*vkO7S|K%67*Q({u4y*S`tzE0Mb|q?b zc7YD{OLf@zT&T&vc?Rd_s5U+;H2&kXajVa}fY#pXFg-Is8~=@A^2`Fhr_f#FqE(Lx z@H>>`mllwxAz8@Hnm8_ZdO>Ny%-Lnmg3^iOG75`}3MS@FD=ZLlb7#&iF3K%)=9M~g zb9vTwGZMMnxp{?!#rXn@&nPV@pnB#~B{xxQX1-Qm?({ro9;Ydc&Cp8a<~fV!&dw)9 ziK}c@E=c7TA(e%QC+!@8Ca|p%ghf1?d&b<6N(~6y-L!i!P?u^+* zd4;ndEGW&LJ+r77Y?c)i&d{mymgS?iX(-Lh@m7GuOjOI5DR$06@zUaAXPI8GJ^bvV z*-j=~=d99#yy?{3B%y=@L@dwgEX^${5$2c9c9LuhN=u81b0M-k=j`I5P)?Q&*})rF zDl97~m=j8y>v9&9qqoYOrNs-{Vp*|vQ>cn?60V|lkgNeZ!>lSsl%uIh?bL|AaV{t+ z5XxrH%*$u(KwlTkD=2afzTvuLlEKXa19S7HPuF6s^Eh%^UReS7D=yKJiVEgyF_uCg z=#@J8*g(cT&;(*+tWHM?-SX(!6{~S;LGia60meX1Xw> zCX^K9&z>>Fgrs41we~eRin;aTVpwEyyhuN@hcD`Gv)01%!tHF;FoqSik4y&zh4v zBX4%0fS#ING)I^_hce|Blw*v|Ets1>t5nFJHMe-WfT7?-Fn4ZV3B?NwiilLf+!E&k z^bO^upmZ)3r-E~l4Sh9zI-x06sEssAELkATEh#N_7UZKyL0(}=o^zH^TvAX(r7-^;pzSK6T7l1>KV6ueUtBaVm$gTjn>T$Pq$AAFo9!%_t)-z2&@gjL%CxLR z7wye2&kIdbp=?1J&Bo9`Ycr~6@}wV+I$@ zEG}J;drwJw$ii0SjN-!Sx%n9MWuP|KRaiWI_7KGKOBaB-LTD|neKI&ae7Mb-i5{1j z@+&PHKAfw;(lTKTW?AX*;WH>G6EaW?BR7A}@ZoIU5YHr!3n<@&+6qVkLy-+1UQ${x z??M&VT8L|OT{nlCiy>1`T7)*|mSRq^rsxf5Q-UfBHLbWPzaW>Xl8H<`4j;}nW0`QZ z)|RsQc_kP_&~VPw>|#usg3?4SDTAX2U2BbyFmm{9m@62Ru992~&>4BILVe9BZIyl* zO?`-&bwKX);`v1sGcb8U(N_LTX}afP;FZoOES}#=Gt~DEmk{c<3Fyv(xxfVO+PCVk!W`Y1V9v60NISYts4ErEci->GShSXXMUs6)_c@ zO9}>qLLWp@UKtj!;lr_%U=U}G$F!I}yC~NM#banYb&vsMlP1*Vp;q2QgNn^9ng*;t zTV=$1AKgB@Y{A@V#f7;}&5Y282NR;95-wEC+Sx@jjf0rC2a2yCx5zb@4e{LEX=P=a z+0a^J2}XZ0E%43-t%9OXWfSd!;R#g*6{@RjngaQ*($Wj3z=iF0kZRVOp;~rYhxW*qcd`ExbDVK?1t-xV)kX^-U#!6hplPJLqgeFW68;|;X2@K z2OAfh3`OIQV)SVZqZl>{Cv-3q@t@N8Uo<;OqjdTsJCN{1gNKw`hhZ`@tRQp|x-vRE zkDgnnN+t9^J&kA^`Jq!yV+|(Zzw;OM-^zUIgmOdrWbA#~rbipnI|!d><&!`!`^p6nSx2D~<*CdB2AhTDA$rlm zbO?yj==1oWo+CEyx>#)AR*74Tc`A%$iSpIAc-yDW7(eO$bzFNZ{3&X#v;akG+ zH5y*f_M19C%^E%?3@_Zl`HTz0TQz)q7(PkETf^|#8a^=$U!viY!tm7^epncOwT4d* z!*AE{QW*Z2hR+Ve$4%hv$_c|KY51vO_-qY7D-2(v;Y-5sRT{oL48KalyTkA`8onwF z->l)Q!|=jH&i|8Pc-?*11AdqRzukbh8SuLe_&W{wW&>XL2~x6Rz~5uYe@w%Z44yRLTMYT{ zGvMQ`T%P3T(Ofqy)oQ?Nt_FrrG~jjpO$kW`Jnuo4T^MG-^O`t5-GHa{NB>9$Jn^J| zvJH5BZc|#00k5exR%EIHuluSfVU_`JVLAD~5(8el^1%|y4S3zRLJ4jIUgRX$|0)As z*WHv*ZNMA-=1&^%ml)`*GT>XiG8nf8d=EqZ)dqY|1AeUmA8)|d81R=F@Qnui?<*#`Vz9f>f< zfWOXwpK8GCK2S=YWxyvH@|PI!WI^hmas&QG9f{Cwzz;Fts|K#k1HsCdrg5jSu z;BPk2S!KYd81Sze@WT!G)du_s1AeUmpK8F@81QKZe4_zB(tzJ?z>hNEcN_5O27I#t zKiYs-4EPKK{+I!8H{e?g_)G&{(Ci=5kz)+_7z2K+0Uu|;O9p(r0iR{STMhVI4ERI? z{#FA%$$)nl@WTxFaRz+40e_nTFB$OT4ft#WKHGrLG2m}E;HMh!cNp-q40yUTqJK&Z z_=!3aVYva%Z_V*Uw*h~bA%B$tf42c&ZNT4az&~lgPd4CJ8SqmK_*V^hI)l|es}1<6 zIuhYp13u4y|G((}N#Oq^@P88c|BD2E5&N8#JcnW=U-Y`8W01)aD>Q1NRV2TOf5igLe{4TOYNC!CMHXEswgI!5aytt&X~i z!RrYoqg1VC@V^MAt&Qqt@aqKAa;=sy_(g(gE2BY{2;-!by4FOTuLx)SyX|+_Y+K874_J8AO=n&n6@ZtGlTCTn6@VB zb_U-;Fl{5%8V27&Fl|xP)eIg@Fl|lLRSX_ZFl|ZHY6jmxFl|LtH-oPxn6}_*34{9+ zOj{ClDuXX4n6@HnHiNqnOj{5&oxxoQrmcsX#NZAD)0RWEGWhHfz_is+;~0E`VA^7+ z0)r0{Oj~{R*zeT-0|Z+MZf5Wvf@$laZfEdLf@#a4)-ZSr!L-#-S2K7c!L-FtS21`! z!L+qds~P++f@w>kx*7aB!L*f7OBnnj!L)@?r!x3yf@$lZW;6Ivf@#a3rZe~vf@!Ou zCNX#!!L&tCtqgvUVA>j}aSSdcn6?C}z~K7{rmcW_>^Ii`1k)BkZD#O21e58nZfEcv z1e2>ntzqyj1k)BkUCrRp1e58nu43?Tg307ps~LO)!DQ;IZU$dXFq!yj34{9+JdEI} z48ELTGWFGL26rQvOnfz+!CeR@(_T$ta0i0Pq*tvBK6@B2neu8JgHI4lCcG*z_#nY# zx~s>|vHmAGo#18$?;+Sm@OB38B$!NhwT8i42qu$VUCrQ)1e2+*u43?dg2_Zzs~P++ zg2^;j-3)%6U^2Bf7;g|DEXszQjpT(>;YB225F?qI|rM^zHTC1r-jJ>8p}VFk$-llCv<6eRga zXRPE)n|BCnMUPcLDfy69eRL`^nkLuHxK8X_$=X*pqcu+J3DHw$BCp2ZB->rKJ8hF} z6DLR&hvKn}Nb=Aa5Ls=itPv~ELeFd<-K%VZ>?FBPYG72Q2D;aWG}4R8tCZG&>p&>2 zB_O0?pq3HS5S7DXz1Mb;Q# zgXfe{vF{}Lph9N>D49nI98<(GD_Pc|aRVTig_PfymfD&ri)Xr@XS#wi-N`du%26dO z=+Vy!9(wW2zvICquznX$xr$Oc@RaX)ik*7b-=jCBD9|pbvWcf$!&9Q>Bjr<`@)l3A z@|4RcpT!8$_Cg>V>+F>LLV&!7=k2|dbm72uLx2d!I(F*}Nd`aWHr^L!}Lj>U?>QBkv z`wbMyOb%9SABTKeK9amslD}4tZ!-y)1HHwn>>C9kWwW?kLMYctrmcfEFa6TCVIwGH zdV`{OHzLZ$Yfa#{LAiRcNvMy`2U!yzYAL7La6+EYa7y0Gl9EqJ@5&+fHVBPnCDK%cs}g$ALZbixml;Tgb-^9vn`@$q7?^N#m z8nW@FJ5Mo`;8mKrj@8`pvAIjJxTxADxu5@bG0 zqVNs9hETp9*CNvn z@RY6T;C~J9K+WeUh09~dNK~+hGW(-5M-h9mx8ZROngjl5J4d)QgfDFbFPqBCdQB*s z&MWH2Qy#;*fbP1NQm*7Fop?%TUgibdwN)%UD0XWj@0F zd1W_GS;tel@RYJ-qwubQVK}ZHTg_tse(2!2{sL&uhkN+4Kf5B4$l3X66eEJi?GamD>G(mZFNG4c?ReCctLFGi9b306-^vgqB+k-*p! zB+sxLMDIJm@C9Q&sAtLbSTp()1L13i&z@lQ<-~jUIa!OB&(H!UqT8c(779Db7LXtyvCL}r&8J01-5&HpRc0EFdwfm-;Z7JV~E6B|SiT^krqk8od zh@+RhH5jnJ03(U^-BSKSvjio%0*Qiq(TJ|si(Vh14*$$xruPT2@---8hri6?X|O04 zouGc+OkI{K|Ll-YIpnj73OS6fx2IX4zrj~SCOa^*%LV3!Otv%x(sk`!UCl&^&Wj;c z=C@>dQX2&_Eu4*UQ0>aLm!gD}fLQr7ZA~^mutQa_^GQA|c@Ils=C>FSAEQ$R<%#?8 zbZfcU(;$lOdgSmlbQ0Yku}G}weisq6Q^|%^3vPX7X30}$f$m?Az60iKW!@x&{@5!> z2J+F5I|0qol*v5d#oKrSDI=a>rv&+^QaF{uI+DQ0l&Wk!77Q}AefMBW*(cX4iH9gw zneZgiC7)ZN0AMx34cS!Y=i@XU|Lw@ZU|>TBA?;^qaA09%A=&o?+bL{FCvz7g%!U6O z#^Ik*0Iss+%yeljr4S0xFk5}5B-lJlu+?7y6@qp32duD@dYXm6b)oh3X!5C$oQ~K~ zFt~~JYgYakb5_bG(T`jkx?dTM4~gJZLX(~3z&~V zh6~r>AKJMWR)6`pviO2DAZho}mc*UFNIq8#M)ot~FtUGw9DF5a$uC)uk@wgQ8Y#4s zSA!0Jgfd@72|kxq6GRt`G#D5v`9rF!+tza=J-p^`fRTLT;(ZTbP}R29wu$Hb*jU@O zRNEW8fHl0pV_E^T(8^v{D)3-C3Ee0mk0%(qXFM=j!3N$l4WfS(W{uV}Eo~bz5IHLr z58Ecd{PM=5#iugUO``WA!~!2dF!JRje?y-rztH4?+DYICzQ<= z(LD|!&jHQ&g}5RO(+H$G;t7D{y{*+NuYnRkC3!OCf0IuO`KW}MvgBnf*GQUin2M&2 zx)sgr@+jh@q6TLJ#I#qW{KZ^FC0j^ErICudu`7t`Dykds4!?`3s5yuEQq)F8jlpz) ziW*@N8lp^)fnClwH)Js7q<#ZR@_h-}d;&1-N%|=({}Ww5iIqJ&66+Hip^Yad#9%r! z#_^S<_Ys7F7hf_3i<=Z4=!+5ZZiG%+PZys6(jAI4oH(jE?}c zxfl00IpjqN!$j{?Fbm7>mHiNe?>0E`7A1g%mi3*f*y#g^N`tmbI~2*ZU8+@5VXaEF z2hs>#l;kgA zh+ZlsBRH5yfxHDVAP}fPY(cKm_-<$WNd**+N%9V)A+|$J1D{-e7=BRgTXoTeRC`c4 zfk%|FfL6w0%mwQn_)?99ZBPxB)GunoRJ2FgaR@!vfEd~qzC^b!lU6Og&2owS!!&%l z7D`%33YX~RPzWU$V~}sGg>(}m1OT>Wex^5J{jw(AF*`@A(%%xJcG4w=Md8@eG!zuy?w zlBWjCojoBw5M}GP$tJFuWObi4W#w;j#bxu$g?xbe5~ciF$=@s8p0em$Xp!&0CUmAg-DOSD<QtIFDm5O(lqvrvdcH&dt6o&3v2R1pAtq|T&4}58n_&MTwOsL9 zbPoXv^7cWg*nQM}-itvky(+b%>PN(oySh5lR}c?2$>h&xGnJ$V~a&HT4!>;c-?Z zNnDeTt}0B3ao+T*$#sL2KPl8jt`y0?m~~H%vgRP>g%3noAG!Lf$vWSxuvpm-Fc;LN zh{4iy+Ayb=sVQJs^4q@!qmG1Ok}Sb=b&$@IV(jv;kVMqYXbTO!jx*%cF@Xo=)Q18t zhYzMLjfqe;(fe2Av-vVHBr+kFy&|AT#`R+}an}L&85$DX&b?T*1iVpw4CW~3X5|a}eBU*=JGKI`#NFPQ+>vDuFjd3*H6I&NuhrC}&hDxO3 zNp@&4Y#!{s@?Lz^n)x%Wk>5G|>1Jp~vOq{fVi6@ZAIVD!z-XF_jVM4l= zPcDHhFoVTPEYs-fUMHy(>|SDEm;?W^l^8~TGYoEWpzKlB0(O9rY~lt&ofVgva^5wa zR@(-B@@C53f1TC^TMhb4V$)CD* z1QvuO#Up43h9K=3P>1tbt&SykB%jjKF&sg(vtDdm{;6C2-RIeY^t(!Fmbouki+L@-VUTb1QL5o6#f*12{%XIqAHM=GBNh z&8~|jPrZevl`Cw7uf6F+o^C7Rd^0tEEKrF zUjH6=;?QWX-%ACyw39H665i$s24x-|9+TI zMMD5a{Gj(u!dl^&APlHXSOr{~fGHt*ufQ7OTR5z>OOtDqe;&{_%k$yDbT6DJxJLNO zvc0F448~BIC3%}%m-`mxz#CC@3?{Df{C?6?weSbcLN+KFI0oO?4<(h6jYbId857C% zW}_y^@#^a;a{C8A*vTxYTaQw_cM;-}cP};(0orEdeoh=$CNxvw$^?aoKn9KEjzWV7 zt#tKtfSCx3?x>Q4?99tx5#3Y4kEfx7=)MaPa)H3Va15u2F#dfmYy~$P{0pkG<_2V< zUiQ|IuO??n7x$vX;PtRl0v)h7@(-PaDw)4y7mcdZ+^ccyMH7rCr$t;-_Yn=VL7M|M z7OC9py2<8QI!th0UvE#CdOhMXg0rXOcO*=8$U!#wAR6*724V?uJ+)*94#|>hZt**k zuuTohN4WjE&`xb0{Od>(+EK*;1`zTR#f*XfQeB@Xx2dZDbwRhh4ysf?Egrl&3#tP~ z88V*gsZ3an6o`H;0>BN51G@rR7OaMCrj>0ok6=4V+svP6Tgh^im{YzKSG+{S4zT2t z;=N6LV=6^SFb_VY5-?of)k;7un^PLa6|WKOAN&GVI_hSOR8*~r;}dTO!NYNa(<=EY z6XHOBAPwgAU?alT&3 zbKhz6Z8sc)S^g!Kk7-^jr!lXX&uSa<7oyHgt$0oySEv<;(z!u{dQpK1NT^uI7D!j$QyJ+d*Jadj>JKI`X28l4HAax)FNDS%ylq;>RcX?AJB3@Jsz{2w}&(47$JL;3w_UkwN0(j;!iV6Tme zd7W~t@&QIlcn@5Xg8VNc!IzPkwhbIQJEd(z;7V>Qwx!78S(s>Y-7Wdbl2FkRRD{7@ zjAcw24f`%|Pul{w=>xyO9bslS=QJ~h;~o-;m9Nl zYs*nMaj7kBhQb~o17lk0+|TJOq$)p!`@S7Iue3+!(e{vwfs{xI{;-%0=1FbaJB1~e zkx_XCRg2SyYp}~{r^+E3b>j$Jelu9SqP=Q664F;DwXN;g)o`8DdGs&nE6uM>HUo*| zVuboQdzZSm4w*HN@~cS8Og_xy&E2u#^WzC*MjKY5Al)SJ_xLlBn2K9K?KEXJGPmgk z4BQIJpN$0Va0BVu2>e<}(efLoOdjR8A|WfdnY)W|Ts{@XVH?8G*={qf;HvWLAXcei z+8h9ej90dS!d`$Z*yX>¨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 z%0A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 Y|Fm39`vHE$@W1*e!G9+}2ws!_1xqL!u>b%7 literal 0 HcmV?d00001 diff --git a/dist/docs/settings/controversial.md b/dist/docs/settings/controversial.md new file mode 100644 index 0000000..bdb6748 --- /dev/null +++ b/dist/docs/settings/controversial.md @@ -0,0 +1,64 @@ +--- +title: Controversial +--- + + +## `dom.indexedDB.enabled` + +Status: **locked** + +Value: `true` + + +## `dom.indexedDB.logging.details` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `dom.indexedDB.logging.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `dom.w3c_pointer_events.enabled` + +Status: **locked** + +Value: `false` + + +## `network.http.spdy.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `network.http.spdy.enabled.deps` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `network.http.spdy.enabled.http2` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + diff --git a/dist/docs/settings/defaulting.md b/dist/docs/settings/defaulting.md new file mode 100644 index 0000000..213979b --- /dev/null +++ b/dist/docs/settings/defaulting.md @@ -0,0 +1,216 @@ +--- +title: Defaulting +--- + + +## `privacy.spoof_english` + +Status: **unlocked** + +Value: `2` + + +## `intl.accept_languages` + +**Unused Setting** + +Status: **unlocked** + +Value: `"en-US, en"` + + +## `network.http.referer.defaultPolicy` + +Status: **unlocked** + +Value: `3` + + +## `network.http.referer.defaultPolicy.pbmode` + +Status: **unlocked** + +Value: `2` + + +## `privacy.userContext.ui.enabled` + +Status: **unlocked** + +Value: `true` + + +## `privacy.userContext.enabled` + +Status: **unlocked** + +Value: `true` + + +## `privacy.userContext.longPressBehavior` + +Status: **unlocked** + +Value: `2` + + +## `browser.download.autohideButton` + +Status: **unlocked** + +Value: `false` + + +## `accessibility.typeaheadfind` + +Status: **unlocked** + +Value: `true` + + +## `clipboard.autocopy` + +Status: **unlocked** + +Value: `false` + + +## `layout.spellcheckDefault` + +Status: **unlocked** + +Value: `2` + + +## `browser.tabs.closeWindowWithLastTab` + +Status: **unlocked** + +Value: `false` + + +## `general.autoScroll` + +Status: **unlocked** + +Value: `false` + + +## `network.http.sendRefererHeader` + +**Unused Setting** + +Status: **unlocked** + +Value: `1` + + +## `pdfjs.disabled` + +Status: **unlocked** + +Value: `false` + + +## `dom.disable_open_during_load` + +Status: **unlocked** + +Value: `true` + + +## `browser.link.open_newwindow` + +Status: **unlocked** + +Value: `3` + + +## `browser.link.open_newwindow.restriction` + +Status: **unlocked** + +Value: `0` + + +## `network.proxy.autoconfig_url` + +Status: **unlocked** + +Value: `""` + + +## `network.proxy.autoconfig_url.include_path` + +Status: **unlocked** + +Value: `false` + + +## `network.proxy.socks_remote_dns` + +Status: **unlocked** + +Value: `true` + + +## `network.proxy.socks_version` + +Status: **unlocked** + +Value: `5` + + +## `browser.tabs.loadBookmarksInTabs` + +Status: **unlocked** + +Value: `true` + + +## `devtools.debugger.remote-enabled` + +Status: **unlocked** + +Value: `false` + + +## `devtools.chrome.enabled` + +Status: **unlocked** + +Value: `false` + + +## `general.useragent.site_specific_overrides` + +Status: **unlocked** + +Value: `false` + + +## `extensions.ui.experiment.hidden` + +Status: **unlocked** + +Value: `false` + + +## `extensions.ui.dictionary.hidden` + +**Unused Setting** + +Status: **unlocked** + +Value: `false` + + +## `extensions.ui.locale.hidden` + +**Unused Setting** + +Status: **unlocked** + +Value: `false` + + diff --git a/dist/docs/settings/deprecated/_index.md b/dist/docs/settings/deprecated/_index.md new file mode 100644 index 0000000..52e2543 --- /dev/null +++ b/dist/docs/settings/deprecated/_index.md @@ -0,0 +1,2 @@ +--- +title: Deprecated--- diff --git a/dist/docs/settings/deprecated/active.md b/dist/docs/settings/deprecated/active.md new file mode 100644 index 0000000..c1dea95 --- /dev/null +++ b/dist/docs/settings/deprecated/active.md @@ -0,0 +1,278 @@ +--- +title: Active +--- + + +## `browser.onboarding.enabled` + +Status: **locked** + +Value: `false` + + +## `devtools.webide.autoinstallADBHelper` + +Status: **locked** + +Value: `false` + + +## `dom.mozTCPSocket.enabled` + +Status: **locked** + +Value: `false` + + +## `app.update.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.bookmarks.max_backups` + +Status: **locked** + +Value: `2` + + +## `browser.casting.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.directory.ping` + +Status: **locked** + +Value: `"data:text/plain,"` + + +## `browser.newtabpage.directory.source` + +Status: **locked** + +Value: `"data:text/plain,"` + + +## `browser.newtabpage.enhanced` + +Status: **locked** + +Value: `false` + + +## `browser.pocket.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.selfsupport.url` + +Status: **locked** + +Value: `""` + + +## `browser.startup.homepage_override.mstone` + +Status: **locked** + +Value: `"ignore"` + + +## `camera.control.face_detection.enabled` + +Status: **locked** + +Value: `false` + + +## `datareporting.healthreport.about.reportUrl` + +Status: **locked** + +Value: `"data:,"` + + +## `datareporting.healthreport.service.enabled` + +Status: **locked** + +Value: `false` + + +## `device.sensors.enabled` + +Status: **locked** + +Value: `false` + + +## `devtools.webide.autoinstallFxdtAdapters` + +Status: **locked** + +Value: `false` + + +## `devtools.webide.adaptersAddonURL` + +Status: **locked** + +Value: `""` + + +## `dom.enable_resource_timing` + +Status: **locked** + +Value: `false` + + +## `dom.flyweb.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.gamepad.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.netinfo.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.push.udp.wakeupEnabled` + +Status: **locked** + +Value: `false` + + +## `dom.telephony.enabled` + +Status: **locked** + +Value: `false` + + +## `extensions.shield-recipe-client.enabled` + +Status: **locked** + +Value: `false` + + +## `loop.logDomains` + +Status: **locked** + +Value: `false` + + +## `media.video_stats.enabled` + +Status: **locked** + +Value: `false` + + +## `network.websocket.enabled` + +Status: **locked** + +Value: `false` + + +## `reader.parse-on-load.enabled` + +Status: **locked** + +Value: `false` + + +## `security.xpconnect.plugin.unrestricted` + +Status: **locked** + +Value: `false` + + +## `social.directories` + +Status: **locked** + +Value: `""` + + +## `social.remote-install.enabled` + +Status: **locked** + +Value: `false` + + +## `social.whitelist` + +Status: **locked** + +Value: `""` + + +## `security.ssl3.ecdhe_ecdsa_rc4_128_sha` + +Status: **locked** + +Value: `false` + + +## `security.ssl3.ecdhe_rsa_rc4_128_sha` + +Status: **locked** + +Value: `false` + + +## `security.ssl3.rsa_rc4_128_md5` + +Status: **locked** + +Value: `false` + + +## `security.ssl3.rsa_rc4_128_sha` + +Status: **locked** + +Value: `false` + + +## `security.tls.unrestricted_rc4_fallback` + +Status: **locked** + +Value: `false` + + diff --git a/dist/docs/settings/deprecated/inactive.md b/dist/docs/settings/deprecated/inactive.md new file mode 100644 index 0000000..c488dbf --- /dev/null +++ b/dist/docs/settings/deprecated/inactive.md @@ -0,0 +1,26 @@ +--- +title: Inactive +--- + + +## `xpinstall.signatures.required` + +Status: **unlocked** + +Value: `true` + + +## `toolkit.legacyUserProfileCustomizations.stylesheets` + +Status: **unlocked** + +Value: `false` + + +## `devtools.selfxss.count` + +Status: **unlocked** + +Value: `0` + + diff --git a/dist/docs/settings/disabled-on-off.md b/dist/docs/settings/disabled-on-off.md new file mode 100644 index 0000000..79711a2 --- /dev/null +++ b/dist/docs/settings/disabled-on-off.md @@ -0,0 +1,39 @@ +--- +title: Disabled On/Off +--- + + +## `network.dns.blockDotOnion` + +Status: **locked** + +Value: `true` + +*Tor settings* + + +## `network.http.referer.hideOnionSource` + +Status: **locked** + +Value: `true` + + +## `network.http.referer.XOriginPolicy` + +Status: **locked** + +Value: `1` + +*CROSS ORIGIN: control when to send a referer* + + +## `security.tls.version.max` + +Status: **locked** + +Value: `4` + +*Only allow TLS 1.[0-3]* + + diff --git a/dist/docs/settings/esr-60.md b/dist/docs/settings/esr-60.md new file mode 100644 index 0000000..961f726 --- /dev/null +++ b/dist/docs/settings/esr-60.md @@ -0,0 +1,141 @@ +--- +title: ESR 60 +--- + + +## `browser.search.countryCode` + +Status: **locked** + +Value: `"US"` + +*Geolocation* + + +## `experiments.activeExperiment` + +Status: **locked** + +Value: `false` + + +## `experiments.enabled` + +Status: **locked** + +Value: `false` + +*Disable Mozilla telemetry/experiments* + + + +### References + +[https://wiki.mozilla.org/Platform/Features/Telemetry](https://wiki.mozilla.org/Platform/Features/Telemetry) + +[https://wiki.mozilla.org/Privacy/Reviews/Telemetry](https://wiki.mozilla.org/Privacy/Reviews/Telemetry) + +[https://wiki.mozilla.org/Telemetry](https://wiki.mozilla.org/Telemetry) + +[https://www.mozilla.org/en-US/legal/privacy/firefox.html#telemetry](https://www.mozilla.org/en-US/legal/privacy/firefox.html#telemetry) + +[https://support.mozilla.org/t5/Firefox-crashes/Mozilla-Crash-Reporter/ta-p/1715](https://support.mozilla.org/t5/Firefox-crashes/Mozilla-Crash-Reporter/ta-p/1715) + +[https://wiki.mozilla.org/Security/Reviews/Firefox6/ReviewNotes/telemetry](https://wiki.mozilla.org/Security/Reviews/Firefox6/ReviewNotes/telemetry) + +[https://gecko.readthedocs.io/en/latest/browser/experiments/experiments/manifest.html](https://gecko.readthedocs.io/en/latest/browser/experiments/experiments/manifest.html) + +[https://wiki.mozilla.org/Telemetry/Experiments](https://wiki.mozilla.org/Telemetry/Experiments) + +[https://support.mozilla.org/en-US/questions/1197144](https://support.mozilla.org/en-US/questions/1197144) + + +## `experiments.manifest.uri` + +Status: **locked** + +Value: `""` + + +## `experiments.supported` + +Status: **locked** + +Value: `false` + + +## `network.jar.block-remote-files` + +Status: **locked** + +Value: `true` + +*Disable remote JAR files being opened, regardless of content type (FF42+)* + + + +### References + +[https://bugzilla.mozilla.org/1173171](https://bugzilla.mozilla.org/1173171) + +[https://www.fxsitecompat.com/en-CA/docs/2015/jar-protocol-support-has-been-disabled-by-default/](https://www.fxsitecompat.com/en-CA/docs/2015/jar-protocol-support-has-been-disabled-by-default/) + +[https://bugzilla.mozilla.org/1427726](https://bugzilla.mozilla.org/1427726) + + +## `network.jar.open-unsafe-types` + +Status: **locked** + +Value: `false` + +*Disable JAR from opening Unsafe File Types* + + + +### References + +[https://bugzilla.mozilla.org/1427726](https://bugzilla.mozilla.org/1427726) + + +## `plugin.state.java` + +Status: **locked** + +Value: `0` + +*Disable Java NPAPI plugin* + + +## `services.blocklist.update_enabled` + +Status: **locked** + +Value: `false` + +*Enable Kinto blocklist updates (FF50+)* + + + +### References + +[https://wiki.mozilla.org/Firefox/Kinto#Specifications](https://wiki.mozilla.org/Firefox/Kinto#Specifications) + +[https://bugzilla.mozilla.org/1458917](https://bugzilla.mozilla.org/1458917) + + +## `shield.savant.enabled` + +Status: **locked** + +Value: `false` + +*Disable 'Savant' Shield study (FF61+)* + + + +### References + +[https://bugzilla.mozilla.org/1457226](https://bugzilla.mozilla.org/1457226) + + diff --git a/dist/docs/settings/extensions.md b/dist/docs/settings/extensions.md new file mode 100644 index 0000000..5d61734 --- /dev/null +++ b/dist/docs/settings/extensions.md @@ -0,0 +1,75 @@ +--- +title: Extensions +--- + + +## `extensions.webextensions.restrictedDomains` + +Status: **unlocked** + +Value: `""` + + +## `extensions.webextensions.identity.redirectDomain` + +Status: **locked** + +Value: `""` + + +## `extensions.webextensions.base-content-security-policy` + +Status: **unlocked** + +Value: `"script-src 'self' https://* moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline'; object-src 'self' https://* moz-extension: blob: filesystem:;"` + + +## `security.csp.enable` + +Status: **locked** + +Value: `true` + + +## `security.csp.experimentalEnabled` + +Status: **locked** + +Value: `true` + + +## `security.csp.enable_violation_events` + +Status: **locked** + +Value: `false` + + +## `extensions.webextensions.tabhide.enabled` + +Status: **unlocked** + +Value: `false` + + +## `extensions.webcompat-reporter.newIssueEndpoint` + +Status: **locked** + +Value: `""` + + +## `extensions.webcompat-reporter.enabled` + +Status: **locked** + +Value: `false` + + +## `extensions.webextensions.background-delayed-startup` + +Status: **unlocked** + +Value: `true` + + diff --git a/dist/docs/settings/fingerprinting.md b/dist/docs/settings/fingerprinting.md new file mode 100644 index 0000000..07543ae --- /dev/null +++ b/dist/docs/settings/fingerprinting.md @@ -0,0 +1,19 @@ +--- +title: Fingerprinting +--- + + +## `privacy.resistFingerprinting` + +Status: **unlocked** + +Value: `true` + + +## `privacy.resistFingerprinting.block_mozAddonManager` + +Status: **unlocked** + +Value: `true` + + diff --git a/dist/docs/settings/general.md b/dist/docs/settings/general.md new file mode 100644 index 0000000..17c8344 --- /dev/null +++ b/dist/docs/settings/general.md @@ -0,0 +1,2384 @@ +--- +title: General +--- + + +## `browser.onboarding.notification.finished` + +Status: **locked** + +Value: `true` + +*Onboarding tour disabled because of included telemetry* + + +## `browser.onboarding.tour.onboarding-tour-customize.completed` + +Status: **locked** + +Value: `true` + + +## `browser.onboarding.tour.onboarding-tour-performance.completed` + +Status: **locked** + +Value: `true` + + +## `devtools.onboarding.telemetry.logged` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.addresses.available` + +Status: **locked** + +Value: `false` + + +## `browser.bookmarks.restore_default_bookmarks` + +Status: **locked** + +Value: `false` + + +## `pdfjs.previousHandler.alwaysAskBeforeHandling` + +Status: **locked** + +Value: `true` + + +## `pdfjs.enabledCache.state` + +Status: **locked** + +Value: `false` + +*Caching for integrated PDF* + + +## `pref.general.disable_button.default_browser` + +Status: **locked** + +Value: `false` + + +## `pref.privacy.disable_button.view_passwords` + +Status: **locked** + +Value: `false` + + +## `identity.mobilepromo.android` + +Status: **locked** + +Value: `""` + + +## `extensions.systemAddon.update.url` + +Status: **locked** + +Value: `""` + + +## `datareporting.healthreport.infoURL` + +Status: **locked** + +Value: `""` + + +## `browser.urlbar.daysBeforeHidingSuggestionsPrompt` + +Status: **locked** + +Value: `0` + + +## `browser.urlbar.searchSuggestionsChoice` + +Status: **locked** + +Value: `false` + + +## `browser.urlbar.timesBeforeHidingSuggestionsHint` + +Status: **locked** + +Value: `0` + + +## `browser.shell.didSkipDefaultBrowserCheckOnFirstRun` + +Status: **locked** + +Value: `true` + + +## `app.feedback.baseURL` + +Status: **locked** + +Value: `""` + + +## `app.normandy.enabled` + +Status: **locked** + +Value: `false` + + +## `app.normandy.api_url` + +Status: **locked** + +Value: `""` + + +## `app.normandy.first_run` + +Status: **locked** + +Value: `false` + + +## `app.normandy.user_id` + +Status: **locked** + +Value: `""` + + +## `app.releaseNotesURL` + +Status: **locked** + +Value: `""` + + +## `app.update.auto` + +Status: **locked** + +Value: `false` + + +## `extensions.update.autoUpdateDefault` + +Status: **unlocked** + +Value: `false` + + +## `app.update.staging.enabled` + +Status: **locked** + +Value: `false` + + +## `app.update.silent` + +Status: **locked** + +Value: `false` + + +## `app.update.lastUpdateTime.telemetry_modules_ping` + +Status: **locked** + +Value: `0` + + +## `app.update.url.details` + +Status: **locked** + +Value: `""` + + +## `app.update.url.manual` + +Status: **locked** + +Value: `""` + + +## `app.vendorURL` + +Status: **locked** + +Value: `""` + + +## `breakpad.reportURL` + +Status: **locked** + +Value: `""` + + +## `browser.chrome.errorReporter.submitUrl` + +Status: **locked** + +Value: `""` + + +## `browser.chrome.errorReporter.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.ping-centre.staging.endpoint` + +Status: **locked** + +Value: `""` + + +## `browser.ping-centre.telemetry` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.id` + +Status: **locked** + +Value: `""` + +*Google Safe Browsing (blocks dangerous and deceptive contents)* + + +## `browser.safebrowsing.provider.google4.pver` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.pver` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.allowOverride` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.blockedURIs.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.downloads.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.downloads.remote.block_dangerous` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.downloads.remote.block_dangerous_host` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.downloads.remote.block_potentially_unwanted` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.downloads.remote.block_uncommon` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.downloads.remote.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.downloads.remote.url` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.malware.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.passwords.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.phishing.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.provider.google4.advisoryURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.dataSharing.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.safebrowsing.provider.google4.dataSharingURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.gethashURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.lists` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.reportMalwareMistakeURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.reportPhishMistakeURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.reportURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.updateURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.lastupdatetime` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.nextupdatetime` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.advisoryURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.gethashURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.lastupdatetime` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.lists` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.nextupdatetime` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.pver` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.reportMalwareMistakeURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.reportPhishMistakeURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.reportURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.updateURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.gethashURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.lastupdatetime` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.nextupdatetime` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.updateURL` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.reportPhishURL` + +Status: **locked** + +Value: `""` + + +## `browser.search.suggest.enabled` + +Status: **locked** + +Value: `false` + + +## `captivedetect.canonicalURL` + +Status: **locked** + +Value: `""` + + +## `datareporting.policy.firstRunURL` + +Status: **locked** + +Value: `""` + + +## `devtools.devedition.promo.url` + +Status: **locked** + +Value: `""` + + +## `devtools.devices.url` + +Status: **locked** + +Value: `""` + + +## `devtools.gcli.imgurUploadURL` + +Status: **locked** + +Value: `""` + + +## `devtools.gcli.jquerySrc` + +Status: **locked** + +Value: `""` + + +## `devtools.gcli.underscoreSrc` + +Status: **locked** + +Value: `""` + + +## `devtools.telemetry.supported_performance_marks` + +Status: **locked** + +Value: `""` + + +## `devtools.telemetry.tools.opened.version` + +**Unused Setting** + +Status: **locked** + +Value: `""` + +*Fix ESR Devtools* + + +## `dom.battery.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.permissions.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.popup_maximum` + +Status: **locked** + +Value: `4` + +*Maximum popups that may be launched at the same time* + + +## `dom.registerProtocolHandler.insecure.enabled` + +Status: **locked** + +Value: `true` + + +## `extensions.blocklist.detailsURL` + +Status: **locked** + +Value: `""` + + +## `extensions.blocklist.itemURL` + +Status: **locked** + +Value: `""` + + +## `extensions.blocklist.url` + +Status: **locked** + +Value: `""` + +*Block list url disabled* + + +## `extensions.update.background.url` + +Status: **unlocked** + +Value: `""` + + +## `extensions.getAddons.showPane` + +Status: **unlocked** + +Value: `false` + + +## `extensions.webservice.discoverURL` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.mailto.0.uriTemplate` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.mailto.1.uriTemplate` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.webcal.0.uriTemplate` + +Status: **locked** + +Value: `""` + + +## `geo.enabled` + +Status: **locked** + +Value: `false` + + +## `geo.wifi.uri` + +Status: **locked** + +Value: `""` + + +## `identity.fxaccounts.auth.uri` + +Status: **locked** + +Value: `""` + + +## `identity.fxaccounts.remote.oauth.uri` + +Status: **locked** + +Value: `""` + + +## `identity.fxaccounts.remote.profile.uri` + +Status: **locked** + +Value: `""` + + +## `identity.mobilepromo.ios` + +Status: **locked** + +Value: `""` + + +## `layout.css.visited_links_enabled` + +Status: **locked** + +Value: `false` + + +## `lpbmode.enabled` + +Status: **locked** + +Value: `true` + + +## `mailnews.messageid_browser.url` + +Status: **locked** + +Value: `""` + + +## `mailnews.mx_service_url` + +Status: **locked** + +Value: `""` + + +## `network.predictor.enabled` + +Status: **locked** + +Value: `false` + +*Disable predictor / prefetching* + + +## `network.predictor.cleaned-up` + +Status: **locked** + +Value: `true` + + +## `network.predictor.enable-prefetch` + +Status: **locked** + +Value: `false` + + +## `plugins.crash.supportUrl` + +Status: **locked** + +Value: `""` + + +## `services.sync.clients.lastSync` + +Status: **locked** + +Value: `"0"` + + +## `services.sync.clients.lastSyncLocal` + +Status: **locked** + +Value: `"0"` + + +## `services.sync.declinedEngines` + +Status: **locked** + +Value: `""` + + +## `services.sync.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.globalScore` + +Status: **locked** + +Value: `0` + + +## `services.sync.jpake.serverURL` + +Status: **locked** + +Value: `""` + + +## `services.sync.migrated` + +Status: **locked** + +Value: `true` + + +## `services.sync.nextSync` + +Status: **locked** + +Value: `0` + + +## `services.sync.prefs.sync.browser.safebrowsing.downloads.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.safebrowsing.malware.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.safebrowsing.passwords.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.safebrowsing.phishing.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.serverURL` + +Status: **locked** + +Value: `""` + + +## `services.sync.tabs.lastSync` + +Status: **locked** + +Value: `"0"` + + +## `services.sync.tabs.lastSyncLocal` + +Status: **locked** + +Value: `"0"` + + +## `sync.enabled` + +Status: **locked** + +Value: `false` + + +## `sync.jpake.serverURL` + +Status: **locked** + +Value: `""` + + +## `sync.serverURL` + +Status: **locked** + +Value: `""` + + +## `toolkit.crashreporter.infoURL` + +Status: **locked** + +Value: `""` + + +## `toolkit.telemetry.archive.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.updatePing.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.bhrPing.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.cachedClientID` + +Status: **locked** + +Value: `""` + + +## `toolkit.telemetry.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.firstShutdownPing.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.hybridContent.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.infoURL` + +Status: **locked** + +Value: `""` + + +## `toolkit.telemetry.newProfilePing.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.previousBuildID` + +Status: **locked** + +Value: `""` + + +## `toolkit.telemetry.prompted` + +Status: **locked** + +Value: `2` + + +## `toolkit.telemetry.rejected` + +Status: **locked** + +Value: `true` + + +## `toolkit.telemetry.reportingpolicy.firstRun` + +Status: **locked** + +Value: `false` + + +## `toolkit.telemetry.server` + +Status: **locked** + +Value: `"data:,"` + + +## `toolkit.telemetry.server_owner` + +Status: **locked** + +Value: `""` + + +## `toolkit.telemetry.shutdownPingSender.enabled` + +Status: **locked** + +Value: `false` + +*Disable telemetry* + + +## `toolkit.telemetry.unified` + +Status: **locked** + +Value: `false` + + +## `toolkit.telemetry.coverage.opt-out` + +Status: **locked** + +Value: `true` + +*Disable telemetry* + + +## `webextensions.storage.sync.serverURL` + +Status: **locked** + +Value: `""` + + +## `extensions.screenshots.upload-disabled` + +Status: **locked** + +Value: `true` + + +## `network.http.referer.trimmingPolicy` + +Status: **locked** + +Value: `0` + +*Referer: ALL: control the amount of information to send* + + +## `browser.tabs.closeTabByDblclick` + +Status: **locked** + +Value: `true` + +*Close tab* + + +## `datareporting.healthreport.uploadEnabled` + +Status: **locked** + +Value: `false` + +*Disable collection/sending of the health report (healthreport.sqlite*)* + + + +### References + +[https://support.mozilla.org/en-US/kb/firefox-health-report-understand-your-browser-perf](https://support.mozilla.org/en-US/kb/firefox-health-report-understand-your-browser-perf) + +[https://gecko.readthedocs.org/en/latest/toolkit/components/telemetry/telemetry/preferences.html](https://gecko.readthedocs.org/en/latest/toolkit/components/telemetry/telemetry/preferences.html) + + +## `datareporting.policy.dataSubmissionEnabled` + +Status: **locked** + +Value: `false` + + +## `dom.event.contextmenu.enabled` + +Status: **locked** + +Value: `false` + +*Disable right-click menu manipulation via JavaScript (disabled)* + + +## `dom.event.clipboardevents.enabled` + +Status: **locked** + +Value: `false` + +*Disable clipboard event detection (onCut/onCopy/onPaste) via Javascript* + + + +### References + +[https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/Preference_reference/dom.event.clipboardevents.enabled](https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/Preference_reference/dom.event.clipboardevents.enabled) + + +## `network.IDN_show_punycode` + +Status: **locked** + +Value: `true` + +*Force Punycode for Internationalized Domain Names* + + + +### References + +[http://kb.mozillazine.org/Network.IDN_show_punycode](http://kb.mozillazine.org/Network.IDN_show_punycode) + +[https://www.xudongz.com/blog/2017/idn-phishing/](https://www.xudongz.com/blog/2017/idn-phishing/) + +[https://wiki.mozilla.org/IDN_Display_Algorithm](https://wiki.mozilla.org/IDN_Display_Algorithm) + +[https://en.wikipedia.org/wiki/IDN_homograph_attack](https://en.wikipedia.org/wiki/IDN_homograph_attack) + +[https://www.mozilla.org/en-US/security/advisories/mfsa2017-02/](https://www.mozilla.org/en-US/security/advisories/mfsa2017-02/) + + +## `extensions.pocket.enabled` + +Status: **locked** + +Value: `false` + +*Disable Pocket* + + + +### References + +[https://support.mozilla.org/en-US/kb/save-web-pages-later-pocket-firefox](https://support.mozilla.org/en-US/kb/save-web-pages-later-pocket-firefox) + +[https://github.com/pyllyukko/user.js/issues/143](https://github.com/pyllyukko/user.js/issues/143) + + +## `extensions.pocket.site` + +Status: **locked** + +Value: `""` + + +## `extensions.pocket.oAuthConsumerKey` + +Status: **locked** + +Value: `""` + + +## `extensions.pocket.api` + +Status: **locked** + +Value: `""` + + +## `browser.aboutHomeSnippets.updateUrl` + +Status: **locked** + +Value: `""` + +*Disable downloading homepage snippets/messages from Mozilla* + + + +### References + +[https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_mozilla-content](https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_mozilla-content) + +[https://wiki.mozilla.org/Firefox/Projects/Firefox_Start/Snippet_Service](https://wiki.mozilla.org/Firefox/Projects/Firefox_Start/Snippet_Service) + + +## `general.buildID.override` + +Status: **locked** + +Value: `"20100101"` + +*Don't reveal build ID* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=583181](https://bugzilla.mozilla.org/show_bug.cgi?id=583181) + + +## `browser.startup.homepage_override.buildID` + +Status: **locked** + +Value: `"20100101"` + +*Don't reveal build ID* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=583181](https://bugzilla.mozilla.org/show_bug.cgi?id=583181) + + +## `browser.send_pings` + +Status: **locked** + +Value: `false` + +*Disable pinging URIs specified in HTML ping= attributes* + + + +### References + +[http://kb.mozillazine.org/Browser.send_pings](http://kb.mozillazine.org/Browser.send_pings) + + +## `browser.send_pings.require_same_host` + +Status: **locked** + +Value: `true` + +*When browser pings are enabled, only allow pinging the origin page's host* + + + +### References + +[http://kb.mozillazine.org/Browser.send_pings.require_same_host](http://kb.mozillazine.org/Browser.send_pings.require_same_host) + + +## `browser.cache.offline.enable` + +Status: **locked** + +Value: `false` + +*Do not download URLs for the offline cache* + + + +### References + +[http://kb.mozillazine.org/Browser.cache.offline.enable](http://kb.mozillazine.org/Browser.cache.offline.enable) + + +## `network.prefetch-next` + +Status: **locked** + +Value: `false` + +*Disable prefetching of URLs* + + + +### References + +[http://kb.mozillazine.org/Network.prefetch-next](http://kb.mozillazine.org/Network.prefetch-next) + +[https://developer.mozilla.org/en-US/docs/Web/HTTP/Link_prefetching_FAQ#Is_there_a_preference_to_disable_link_prefetching.3F](https://developer.mozilla.org/en-US/docs/Web/HTTP/Link_prefetching_FAQ#Is_there_a_preference_to_disable_link_prefetching.3F) + + +## `network.http.speculative-parallel-limit` + +Status: **locked** + +Value: `0` + +*Disable speculative pre-connections* + + + +### References + +[https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_speculative-pre-connections](https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_speculative-pre-connections) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=814169](https://bugzilla.mozilla.org/show_bug.cgi?id=814169) + + +## `media.peerconnection.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.enable_performance` + +Status: **locked** + +Value: `false` + + +## `dom.enable_performance_navigation_timing` + +Status: **locked** + +Value: `false` + +*Disable DOM timing API* + + + +### References + +[https://wiki.mozilla.org/Security/Reviews/Firefox/NavigationTimingAPI](https://wiki.mozilla.org/Security/Reviews/Firefox/NavigationTimingAPI) + +[https://www.w3.org/TR/navigation-timing/#privacy](https://www.w3.org/TR/navigation-timing/#privacy) + + +## `dom.enable_user_timing` + +Status: **locked** + +Value: `false` + +*Make sure the User Timing API does not provide a new high resolution timestamp* + + + +### References + +[https://trac.torproject.org/projects/tor/ticket/16336](https://trac.torproject.org/projects/tor/ticket/16336) + +[https://www.w3.org/TR/2013/REC-user-timing-20131212/#privacy-security](https://www.w3.org/TR/2013/REC-user-timing-20131212/#privacy-security) + + +## `dom.webaudio.enabled` + +Status: **locked** + +Value: `false` + +*Disable Web Audio API* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1288359](https://bugzilla.mozilla.org/show_bug.cgi?id=1288359) + + +## `geo.wifi.logging.enabled` + +Status: **locked** + +Value: `true` + +*When geolocation is enabled, don't log geolocation requests to the console* + + +## `beacon.enabled` + +Status: **locked** + +Value: `false` + +*Disable 'beacon' asynchronous HTTP transfers (used for analytics)* + + + +### References + +[https://developer.mozilla.org/en-US/docs/Web/API/navigator.sendBeacon](https://developer.mozilla.org/en-US/docs/Web/API/navigator.sendBeacon) + + +## `media.webspeech.recognition.enable` + +Status: **locked** + +Value: `false` + +*Disable speech recognition* + + + +### References + +[https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html](https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html) + +[https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition](https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition) + +[https://wiki.mozilla.org/HTML5_Speech_API](https://wiki.mozilla.org/HTML5_Speech_API) + + +## `dom.vr.enabled` + +Status: **locked** + +Value: `false` + +*Disable virtual reality devices APIs* + + + +### References + +[https://developer.mozilla.org/en-US/Firefox/Releases/36#Interfaces.2FAPIs.2FDOM](https://developer.mozilla.org/en-US/Firefox/Releases/36#Interfaces.2FAPIs.2FDOM) + +[https://developer.mozilla.org/en-US/docs/Web/API/WebVR_API≈](https://developer.mozilla.org/en-US/docs/Web/API/WebVR_API≈) + + +## `dom.vibrator.enabled` + +Status: **locked** + +Value: `false` + +*Disable vibrator API* + + +## `browser.search.region` + +Status: **locked** + +Value: `"US"` + +*Disable GeoIP lookup on your address to set default search engine region* + + + +### References + +[https://trac.torproject.org/projects/tor/ticket/16254](https://trac.torproject.org/projects/tor/ticket/16254) + +[https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_geolocation-for-default-search-engine](https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_geolocation-for-default-search-engine) + + +## `browser.search.geoip.url` + +Status: **locked** + +Value: `""` + + +## `browser.search.geoSpecificDefaults.url` + +Status: **locked** + +Value: `""` + + +## `browser.search.geoSpecificDefaults` + +Status: **locked** + +Value: `false` + +*Don't use Mozilla-provided location-specific search engines* + + +## `browser.urlbar.trimURLs` + +Status: **locked** + +Value: `false` + +*Don't trim HTTP from URLs in the address bar* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=665580](https://bugzilla.mozilla.org/show_bug.cgi?id=665580) + + +## `browser.fixup.alternate.enabled` + +Status: **locked** + +Value: `false` + +*Don't try to guess domain names when entering an invalid domain name in URL bar* + + + +### References + +[http://www-archive.mozilla.org/docs/end-user/domain-guessing.html](http://www-archive.mozilla.org/docs/end-user/domain-guessing.html) + + +## `browser.fixup.hide_user_pass` + +Status: **locked** + +Value: `true` + +*Strip password from 'user:password@...' URLs* + + + +### References + +[https://github.com/pyllyukko/user.js/issues/290#issuecomment-303560851](https://github.com/pyllyukko/user.js/issues/290#issuecomment-303560851) + + +## `network.manage-offline-status` + +Status: **locked** + +Value: `false` + +*Don't monitor OS online/offline connection state* + + + +### References + +[https://trac.torproject.org/projects/tor/ticket/18945](https://trac.torproject.org/projects/tor/ticket/18945) + + +## `security.fileuri.strict_origin_policy` + +Status: **locked** + +Value: `true` + +*Set File URI Origin Policy* + + + +### References + +[http://kb.mozillazine.org/Security.fileuri.strict_origin_policy](http://kb.mozillazine.org/Security.fileuri.strict_origin_policy) + + +## `gfx.font_rendering.opentype_svg.enabled` + +Status: **locked** + +Value: `false` + +*Disable SVG in OpenType fonts* + + + +### References + +[https://wiki.mozilla.org/SVGOpenTypeFonts](https://wiki.mozilla.org/SVGOpenTypeFonts) + +[https://github.com/iSECPartners/publications/tree/master/reports/Tor%20Browser%20Bundle](https://github.com/iSECPartners/publications/tree/master/reports/Tor%20Browser%20Bundle) + + +## `network.protocol-handler.warn-external-default` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.http` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.https` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.javascript` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.moz-extension` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.ftp` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.file` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.about` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.chrome` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.blob` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.external.data` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose-all` + +Status: **locked** + +Value: `false` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.http` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.https` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.javascript` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.moz-extension` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.ftp` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.file` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.about` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.chrome` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.blob` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `network.protocol-handler.expose.data` + +Status: **locked** + +Value: `true` + +*Enable only whitelisted URL protocol handlers* + + +## `security.dialog_enable_delay` + +Status: **locked** + +Value: `700` + +*Ensure there is a security delay when installing add-ons (milliseconds)* + + + +### References + +[http://kb.mozillazine.org/Disable_extension_install_delay_-_Firefox](http://kb.mozillazine.org/Disable_extension_install_delay_-_Firefox) + +[http://www.squarefree.com/2004/07/01/race-conditions-in-security-dialogs/](http://www.squarefree.com/2004/07/01/race-conditions-in-security-dialogs/) + + +## `extensions.getAddons.cache.enabled` + +Status: **unlocked** + +Value: `false` + +*Opt-out of add-on metadata updates* + + + +### References + +[https://blog.mozilla.org/addons/how-to-opt-out-of-add-on-metadata-updates/](https://blog.mozilla.org/addons/how-to-opt-out-of-add-on-metadata-updates/) + + +## `lightweightThemes.update.enabled` + +Status: **locked** + +Value: `false` + +*Opt-out of theme (Persona) updates* + + + +### References + +[https://support.mozilla.org/t5/Firefox/how-do-I-prevent-autoamtic-updates-in-a-50-user-environment/td-p/144287](https://support.mozilla.org/t5/Firefox/how-do-I-prevent-autoamtic-updates-in-a-50-user-environment/td-p/144287) + + +## `lightweightThemes.persisted.headerURL` + +Status: **locked** + +Value: `false` + + +## `lightweightThemes.persisted.footerURL` + +Status: **locked** + +Value: `false` + + +## `plugin.state.flash` + +Status: **locked** + +Value: `0` + +*Disable Flash Player NPAPI plugin* + + + +### References + +[http://kb.mozillazine.org/Flash_plugin](http://kb.mozillazine.org/Flash_plugin) + + +## `dom.ipc.plugins.flash.subprocess.crashreporter.enabled` + +Status: **locked** + +Value: `false` + +*Disable sending Flash Player crash reports* + + +## `dom.ipc.plugins.reportCrashURL` + +Status: **locked** + +Value: `false` + +*When Flash Player crash reports are enabled, don't send the visited URL in the crash report* + + +## `shumway.disabled` + +Status: **locked** + +Value: `true` + +*Disable Shumway (Mozilla Flash renderer)* + + + +### References + +[https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Shumway](https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Shumway) + + +## `plugin.state.libgnome-shell-browser-plugin` + +Status: **locked** + +Value: `0` + +*Disable Gnome Shell Integration NPAPI plugin* + + +## `plugins.click_to_play` + +Status: **locked** + +Value: `true` + +*Enable click-to-play plugin* + + + +### References + +[https://wiki.mozilla.org/Firefox/Click_To_Play](https://wiki.mozilla.org/Firefox/Click_To_Play) + +[https://blog.mozilla.org/security/2012/10/11/click-to-play-plugins-blocklist-style/](https://blog.mozilla.org/security/2012/10/11/click-to-play-plugins-blocklist-style/) + + +## `plugin.sessionPermissionNow.intervalInMinutes` + +Status: **locked** + +Value: `0` + + +## `extensions.update.enabled` + +Status: **unlocked** + +Value: `false` + +*Update addons automatically* + + + +### References + +[https://blog.mozilla.org/addons/how-to-turn-off-add-on-updates/](https://blog.mozilla.org/addons/how-to-turn-off-add-on-updates/) + + +## `extensions.blocklist.enabled` + +Status: **locked** + +Value: `false` + +*Enable add-on and certificate blocklists (OneCRL) from Mozilla* + + +## `extensions.systemAddon.update.enabled` + +Status: **locked** + +Value: `false` + +*Disable system add-on updates (hidden & always-enabled add-ons from Mozilla)* + + +## `devtools.webide.enabled` + +Status: **locked** + +Value: `false` + +*Disable WebIDE Web Debug* + + + +### References + +[https://trac.torproject.org/projects/tor/ticket/16222](https://trac.torproject.org/projects/tor/ticket/16222) + +[https://developer.mozilla.org/docs/Tools/WebIDE](https://developer.mozilla.org/docs/Tools/WebIDE) + + +## `devtools.webide.autoinstallADBExtension` + +Status: **locked** + +Value: `false` + + +## `devtools.remote.adb.extensionURL` + +Status: **locked** + +Value: `""` + + +## `devtools.remote.adb.extensionID` + +Status: **locked** + +Value: `""` + + +## `devtools.debugger.force-local` + +Status: **locked** + +Value: `true` + +*Disable remote debugging* + + + +### References + +[https://developer.mozilla.org/en-US/docs/Tools/Remote_Debugging/Debugging_Firefox_Desktop](https://developer.mozilla.org/en-US/docs/Tools/Remote_Debugging/Debugging_Firefox_Desktop) + +[https://developer.mozilla.org/en-US/docs/Tools/Tools_Toolbox#Advanced_settings](https://developer.mozilla.org/en-US/docs/Tools/Tools_Toolbox#Advanced_settings) + + +## `network.allow-experiments` + +Status: **locked** + +Value: `false` + +*Disallow Necko to do A/B testing* + + + +### References + +[https://trac.torproject.org/projects/tor/ticket/13170](https://trac.torproject.org/projects/tor/ticket/13170) + + +## `browser.tabs.crashReporting.sendReport` + +Status: **locked** + +Value: `false` + +*Disable sending reports of tab crashes to Mozilla (about:tabcrashed)* + + + +### References + +[https://hg.mozilla.org/mozilla-central/file/tip/browser/app/profile/firefox.js](https://hg.mozilla.org/mozilla-central/file/tip/browser/app/profile/firefox.js) + + +## `browser.crashReports.unsubmittedCheck.enabled` + +Status: **locked** + +Value: `false` + +*Don't nag user about unsent crash reports* + + +## `browser.crashReports.unsubmittedCheck.autoSubmit2` + +Status: **locked** + +Value: `false` + + +## `app.shield.optoutstudies.enabled` + +Status: **locked** + +Value: `false` + +*Disable SHIELD* + + + +### References + +[https://support.mozilla.org/en-US/kb/shield](https://support.mozilla.org/en-US/kb/shield) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1370801](https://bugzilla.mozilla.org/show_bug.cgi?id=1370801) + + +## `browser.newtabpage.activity-stream.feeds.section.topstories` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.section.highlights.includePocket` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.showSponsored` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.aboutHome.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.asrouter.messageProviders` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.asrouter.devtoolsEnableds` + +Status: **locked** + +Value: `true` + + +## `browser.newtabpage.activity-stream.telemetry` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.telemetry.ping.endpoint` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.feeds.telemetry` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.feeds.snippets` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.disableSnippets` + +Status: **locked** + +Value: `true` + + +## `browser.newtabpage.activity-stream.default.sites` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.discoverystream.config` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.discoverystream.endpoints` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.feeds.asrouterfeed` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.feeds.discoverystreamfeed` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.feeds.newtabinit` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.feeds.places` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.feeds.systemtick` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar` + +Status: **locked** + +Value: `false` + + +## `browser.newtab.preload` + +Status: **locked** + +Value: `false` + + +## `browser.urlbar.suggest.searches` + +Status: **locked** + +Value: `false` + +*Disable 'Show search suggestions in location bar results'* + + +## `browser.urlbar.userMadeSearchSuggestionsChoice` + +Status: **locked** + +Value: `true` + +*Disable 'Show search suggestions in location bar results'* + + +## `browser.search.update` + +Status: **locked** + +Value: `false` + +*Never check for updates to search engines* + + + +### References + +[https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_auto-update-checking](https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections#w_auto-update-checking) + + +## `network.captive-portal-service.enabled` + +Status: **locked** + +Value: `false` + +*Disable automatic captive portal detection* + + + +### References + +[https://support.mozilla.org/en-US/questions/1157121](https://support.mozilla.org/en-US/questions/1157121) + + +## `network.negotiate-auth.allow-insecure-ntlm-v1` + +Status: **locked** + +Value: `false` + +*Disallow NTLMv1* + + +## `network.negotiate-auth.allow-insecure-ntlm-v1-https` + +Status: **locked** + +Value: `false` + +*Disallow NTLMv1 over HTTPS too* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=828183](https://bugzilla.mozilla.org/show_bug.cgi?id=828183) + + +## `signon.formlessCapture.enabled` + +Status: **locked** + +Value: `false` + +*Disable formless login capture* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1166947](https://bugzilla.mozilla.org/show_bug.cgi?id=1166947) + + +## `browser.helperApps.deleteTempFileOnExit` + +Status: **locked** + +Value: `true` + +*Delete temporary files on exit* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=238789](https://bugzilla.mozilla.org/show_bug.cgi?id=238789) + + +## `browser.pagethumbnails.capturing_disabled` + +Status: **locked** + +Value: `true` + +*Do not create screenshots of visited pages (relates to the 'new tab page' feature)* + + + +### References + +[https://support.mozilla.org/en-US/questions/973320](https://support.mozilla.org/en-US/questions/973320) + +[https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/Preference_reference/browser.pagethumbnails.capturing_disabled](https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/Preference_reference/browser.pagethumbnails.capturing_disabled) + + diff --git a/dist/docs/settings/ghacks-user.md b/dist/docs/settings/ghacks-user.md new file mode 100644 index 0000000..28b6560 --- /dev/null +++ b/dist/docs/settings/ghacks-user.md @@ -0,0 +1,439 @@ +--- +title: ghacks user.js +--- + + +## `toolkit.coverage.endpoint.base` + +Status: **locked** + +Value: `""` + + +## `toolkit.coverage.opt-out` + +Status: **locked** + +Value: `true` + + +## `browser.download.manager.addToRecentDocs` + +Status: **locked** + +Value: `false` + + +## `browser.download.hide_plugins_without_extensions` + +Status: **locked** + +Value: `false` + + +## `webchannel.allowObject.urlWhitelist` + +Status: **locked** + +Value: `""` + + +## `browser.cache.offline.insecure.enable` + +Status: **locked** + +Value: `false` + + +## `network.http.redirection-limit` + +Status: **locked** + +Value: `10` + + +## `offline-apps.allow_by_default` + +Status: **locked** + +Value: `false` + + +## `extensions.enabledScopes` + +Status: **locked** + +Value: `5` + + +## `extensions.autoDisableScopes` + +Status: **locked** + +Value: `11` + + +## `xpinstall.whitelist.required` + +Status: **locked** + +Value: `true` + + +## `dom.push.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.push.connection.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.push.serverURL` + +Status: **locked** + +Value: `""` + + +## `dom.push.userAgentID` + +Status: **locked** + +Value: `""` + + +## `security.data_uri.block_toplevel_data_uri_navigations` + +Status: **locked** + +Value: `true` + + +## `ui.use_standins_for_native_colors` + +Status: **locked** + +Value: `true` + + +## `services.blocklist.onecrl.collection` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.addons.collection` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.plugins.collection` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.gfx.collection` + +Status: **locked** + +Value: `""` + + +## `browser.startup.blankWindow` + +Status: **locked** + +Value: `false` + + +## `dom.event.highrestimestamp.enabled` + +Status: **locked** + +Value: `true` + + +## `privacy.trackingprotection.introURL` + +Status: **locked** + +Value: `""` + + +## `network.http.altsvc.enabled` + +Status: **locked** + +Value: `false` + + +## `network.http.altsvc.oe` + +Status: **locked** + +Value: `false` + + +## `network.file.disable_unc_paths` + +Status: **locked** + +Value: `true` + + +## `network.gio.supported-protocols` + +Status: **locked** + +Value: `""` + + +## `browser.urlbar.usepreloadedtopurls.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.urlbar.speculativeConnect.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.urlbar.oneOffSearches` + +Status: **locked** + +Value: `false` + + +## `network.auth.subresource-img-cross-origin-http-auth-allow` + +Status: **locked** + +Value: `false` + + +## `browser.shell.shortcutFavicons` + +Status: **locked** + +Value: `false` + + +## `alerts.showFavicons` + +Status: **locked** + +Value: `false` + + +## `security.ssl.require_safe_negotiation` + +Status: **locked** + +Value: `true` + + +## `security.tls.enable_0rtt_data` + +Status: **locked** + +Value: `false` + + +## `browser.xul.error_pages.expert_bad_cert` + +Status: **locked** + +Value: `true` + + +## `font.blacklist.underline_offset` + +Status: **locked** + +Value: `""` + + +## `gfx.font_rendering.graphite.enabled` + +Status: **locked** + +Value: `false` + + +## `network.http.referer.XOriginTrimmingPolicy` + +Status: **locked** + +Value: `0` + + +## `network.http.referer.spoofSource` + +Status: **locked** + +Value: `false` + + +## `plugin.default.state` + +Status: **locked** + +Value: `1` + + +## `plugin.defaultXpi.state` + +Status: **locked** + +Value: `1` + + +## `canvas.capturestream.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.imagecapture.enabled` + +Status: **locked** + +Value: `false` + + +## `gfx.offscreencanvas.enabled` + +Status: **locked** + +Value: `false` + + +## `dom.disable_window_open_feature.close` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.location` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.menubar` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.minimizable` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.personalbar` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.resizable` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.status` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.titlebar` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_open_feature.toolbar` + +Status: **locked** + +Value: `true` + + +## `dom.disable_window_move_resize` + +Status: **locked** + +Value: `true` + + +## `dom.IntersectionObserver.enabled` + +Status: **locked** + +Value: `false` + + +## `accessibility.force_disabled` + +Status: **locked** + +Value: `1` + + +## `browser.uitour.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.uitour.url` + +Status: **locked** + +Value: `""` + + +## `middlemouse.contentLoadURL` + +Status: **locked** + +Value: `false` + + +## `permissions.manager.defaultsUrl` + +Status: **locked** + +Value: `""` + + diff --git a/dist/docs/settings/ijwytsu.md b/dist/docs/settings/ijwytsu.md new file mode 100644 index 0000000..9bd2d54 --- /dev/null +++ b/dist/docs/settings/ijwytsu.md @@ -0,0 +1,1111 @@ +--- +title: Ijwytsu – I just want you to shut up +--- + + +## `devtools.performance.recording.ui-base-url` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.irc.0.uriTemplate` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.ircs.0.uriTemplate` + +Status: **locked** + +Value: `""` + + +## `toolkit.coverage.enabled` + +Status: **locked** + +Value: `false` + + +## `extensions.webapi.testing` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.asrouter.userprefs.cfr` + +Status: **locked** + +Value: `false` + + +## `extensions.htmlaboutaddons.recommendations.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.asrouter.providers.cfr` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.asrouter.providers.cfr-fxa` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.asrouter.providers.onboarding` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.asrouter.providers.snippets` + +Status: **locked** + +Value: `""` + + +## `browser.onboarding.notification.tour-ids-queue` + +Status: **locked** + +Value: `""` + + +## `lightweightThemes.getMoreURL` + +Status: **locked** + +Value: `""` + + +## `devtools.gcli.lodashSrc` + +Status: **locked** + +Value: `""` + + +## `media.decoder-doctor.new-issue-endpoint` + +Status: **locked** + +Value: `""` + + +## `identity.sync.tokenserver.uri` + +Status: **locked** + +Value: `""` + + +## `devtools.webide.templatesURL` + +Status: **locked** + +Value: `""` + + +## `browser.ping-centre.production.endpoint` + +Status: **locked** + +Value: `""` + + +## `browser.translation.engine` + +Status: **locked** + +Value: `""` + + +## `network.trr.confirmationNS` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.mailto.1.name` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.irc.0.name` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.ircs.0.name` + +Status: **locked** + +Value: `""` + + +## `gecko.handlerService.schemes.mailto.0.name` + +Status: **locked** + +Value: `""` + + +## `services.sync.lastversion` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.lists.base` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.lists.content` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google.advisoryName` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.google4.advisoryName` + +Status: **locked** + +Value: `""` + + +## `browser.safebrowsing.provider.mozilla.lists` + +Status: **locked** + +Value: `""` + + +## `identity.fxaccounts.remote.root` + +Status: **locked** + +Value: `""` + + +## `services.settings.server` + +Status: **locked** + +Value: `""` + + +## `services.sync.fxa.privacyURL` + +Status: **locked** + +Value: `""` + + +## `services.sync.fxa.termsURL` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.addons.signer` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.gfx.signer` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.onecrl.signer` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.pinning.signer` + +Status: **locked** + +Value: `""` + + +## `services.blocklist.plugins.signer` + +Status: **locked** + +Value: `""` + + +## `services.settings.default_signer` + +Status: **locked** + +Value: `""` + + +## `accessibility.support.url` + +Status: **locked** + +Value: `""` + + +## `app.normandy.shieldLearnMoreUrl` + +Status: **locked** + +Value: `""` + + +## `app.productInfo.baseURL` + +Status: **locked** + +Value: `""` + + +## `app.support.baseURL` + +Status: **locked** + +Value: `""` + + +## `browser.chrome.errorReporter.infoURL` + +Status: **locked** + +Value: `""` + + +## `browser.dictionaries.download.url` + +Status: **locked** + +Value: `""` + + +## `browser.geolocation.warning.infoURL` + +Status: **locked** + +Value: `""` + + +## `browser.search.searchEnginesURL` + +Status: **locked** + +Value: `""` + + +## `browser.uitour.themeOrigin` + +Status: **locked** + +Value: `""` + + +## `devtools.webide.adbAddonURL` + +Status: **locked** + +Value: `""` + + +## `extensions.getAddons.compatOverides.url` + +Status: **locked** + +Value: `""` + + +## `extensions.getAddons.get.url` + +Status: **unlocked** + +Value: `""` + + +## `extensions.getAddons.langpacks.url` + +Status: **unlocked** + +Value: `""` + + +## `extensions.getAddons.link.url` + +Status: **unlocked** + +Value: `""` + + +## `extensions.getAddons.search.browseURL` + +Status: **unlocked** + +Value: `""` + + +## `extensions.getAddons.themes.browseURL` + +Status: **locked** + +Value: `""` + + +## `services.sync.addons.trustedSourceHostnames` + +Status: **locked** + +Value: `""` + + +## `toolkit.datacollection.infoURL` + +Status: **locked** + +Value: `""` + + +## `xpinstall.signatures.devInfoURL` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts.searchEngines` + +Status: **locked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.fxaccounts.endpoint` + +Status: **locked** + +Value: `""` + + +## `extensions.update.url` + +Status: **unlocked** + +Value: `""` + + +## `browser.newtabpage.activity-stream.feeds.section.topstories.options` + +Status: **locked** + +Value: `""` + + +## `lightweightThemes.recommendedThemes` + +Status: **locked** + +Value: `""` + + +## `services.sync.maxResyncs` + +Status: **locked** + +Value: `0` + + +## `services.sync.telemetry.maxPayloadCount` + +Status: **locked** + +Value: `0` + + +## `services.sync.addons.ignoreUserEnabledChanges` + +Status: **locked** + +Value: `true` + + +## `services.sync.engine.addons` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.addresses` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.bookmarks` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.bookmarks.buffer` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.creditcards` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.creditcards.available` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.history` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.passwords` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.prefs` + +Status: **locked** + +Value: `false` + + +## `services.sync.engine.tabs` + +Status: **locked** + +Value: `false` + + +## `services.sync.log.appender.file.logOnError` + +Status: **locked** + +Value: `false` + + +## `services.sync.log.appender.file.logOnSuccess` + +Status: **locked** + +Value: `false` + + +## `services.sync.log.cryptoDebug` + +Status: **locked** + +Value: `false` + + +## `services.sync.sendVersionInfo` + +Status: **locked** + +Value: `false` + + +## `services.sync.syncedTabs.showRemoteIcons` + +Status: **locked** + +Value: `true` + + +## `services.sync.prefs.sync.accessibility.blockautorefresh` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.accessibility.browsewithcaret` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.accessibility.typeaheadfind` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.accessibility.typeaheadfind.linksonly` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.addons.ignoreUserEnabledChanges` + +Status: **locked** + +Value: `true` + + +## `services.sync.prefs.sync.browser.contentblocking.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.ctrlTab.recentlyUsedOrder` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.download.useDownloadDir` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.formfill.enable` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.link.open_newwindow` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.newtabpage.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.newtabpage.pinned` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.newtabpage.activity-stream.section.highlights.includePocket` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.newtabpage.activity-stream.section.highlights.includeVisited` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.newtabpage.activity-stream.section.highlights.includeBookmarks` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.offline-apps.notify` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.search.update` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.sessionstore.restore_on_demand` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.startup.homepage` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.startup.page` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.tabs.loadInBackground` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.tabs.warnOnClose` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.tabs.warnOnOpen` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.autocomplete.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.matchBuckets` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.maxRichResults` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.suggest.bookmark` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.suggest.history` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.suggest.history.onlyTyped` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.suggest.openpage` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.browser.urlbar.suggest.searches` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.dom.disable_open_during_load` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.dom.disable_window_flip` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.dom.disable_window_move_resize` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.dom.event.contextmenu.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.extensions.personas.current` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.extensions.update.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.intl.accept_languages` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.layout.spellcheckDefault` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.lightweightThemes.selectedThemeID` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.lightweightThemes.usedThemes` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.network.cookie.cookieBehavior` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.network.cookie.lifetimePolicy` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.network.cookie.thirdparty.sessionOnly` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.permissions.default.image` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.pref.advanced.images.disable_button.view_image` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.pref.advanced.javascript.disable_button.advanced` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.pref.downloads.disable_button.edit_actions` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.pref.privacy.disable_button.cookie_exceptions` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.cache` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.cookies` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.downloads` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.formdata` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.history` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.offlineApps` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.sessions` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.clearOnShutdown.siteSettings` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.donottrackheader.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.reduceTimerPrecision` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.resistFingerprinting` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.resistFingerprinting.reduceTimerPrecision.jitter` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.resistFingerprinting.reduceTimerPrecision.microseconds` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.sanitize.sanitizeOnShutdown` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.trackingprotection.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.privacy.trackingprotection.pbmode.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.security.OCSP.enabled` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.security.OCSP.require` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.security.default_personal_cert` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.security.tls.version.max` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.security.tls.version.min` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.services.sync.syncedTabs.showRemoteIcons` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.spellchecker.dictionary` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.xpinstall.whitelist.required` + +Status: **locked** + +Value: `false` + + +## `browser.chrome.errorReporter.publicKey` + +Status: **locked** + +Value: `""` + + +## `prio.publicKeyA` + +Status: **locked** + +Value: `""` + + +## `prio.publicKeyB` + +Status: **locked** + +Value: `""` + + diff --git a/dist/docs/settings/locale-time-ua.md b/dist/docs/settings/locale-time-ua.md new file mode 100644 index 0000000..67408a0 --- /dev/null +++ b/dist/docs/settings/locale-time-ua.md @@ -0,0 +1,68 @@ +--- +title: Locale, Time, UA +--- + + +## `dom.forms.datetime` + +Status: **locked** + +Value: `false` + + +## `javascript.use_us_english_locale` + +Status: **locked** + +Value: `true` + + +## `intl.regional_prefs.use_os_locales` + +Status: **locked** + +Value: `false` + + +## `intl.locale.requested` + +Status: **unlocked** + +Value: `"en-US"` + + +## `general.useragent.override` + +Status: **unlocked** + +Value: `"Mozilla/5.0 (Windows NT 6.1; rv:45.0) Gecko/20100101 Firefox/45.0, 45"` + + +## `general.appname.override` + +Status: **unlocked** + +Value: `"Netscape"` + + +## `general.appversion.override` + +Status: **unlocked** + +Value: `"5.0 (Windows)"` + + +## `general.platform.override` + +Status: **unlocked** + +Value: `"Win32"` + + +## `general.oscpu.override` + +Status: **unlocked** + +Value: `"Windows NT 6.1"` + + diff --git a/dist/docs/settings/performance.md b/dist/docs/settings/performance.md new file mode 100644 index 0000000..f47eaa5 --- /dev/null +++ b/dist/docs/settings/performance.md @@ -0,0 +1,268 @@ +--- +title: Performance +--- + + +## `layout.frame_rate.precise` + +Status: **unlocked** + +Value: `true` + +*Increases animation speed* + + +## `webgl.force-enabled` + +Status: **unlocked** + +Value: `true` + +*Enable Hardware Acceleration and Off Main Thread Compositing (OMTC)* + + +## `layers.acceleration.force-enabled` + +Status: **unlocked** + +Value: `true` + +*Enable Hardware Acceleration and Off Main Thread Compositing (OMTC)* + + +## `gfx.direct2d.disabled` + +Status: **unlocked** + +Value: `false` + +*Disable hardware acceleration to reduce graphics fingerprinting* + + + +### References + +[https://wiki.mozilla.org/Platform/GFX/HardwareAcceleration](https://wiki.mozilla.org/Platform/GFX/HardwareAcceleration) + + +## `layers.acceleration.disabled` + +Status: **unlocked** + +Value: `false` + +*Disable hardware acceleration to reduce graphics fingerprinting* + + + +### References + +[https://wiki.mozilla.org/Platform/GFX/HardwareAcceleration](https://wiki.mozilla.org/Platform/GFX/HardwareAcceleration) + + +## `html5.offmainthread` + +Status: **unlocked** + +Value: `true` + + +## `layers.offmainthreadcomposition.enabled` + +Status: **unlocked** + +Value: `true` + + +## `layers.offmainthreadcomposition.async-animations` + +Status: **unlocked** + +Value: `true` + + +## `layers.async-video.enabled` + +Status: **unlocked** + +Value: `true` + + +## `browser.tabs.animate` + +Status: **unlocked** + +Value: `false` + + +## `browser.download.animateNotifications` + +**Unused Setting** + +Status: **unlocked** + +Value: `false` + + +## `dom.maxHardwareConcurrency` + +**Unused Setting** + +Status: **unlocked** + +Value: `8` + +*Spoof CPU Core Def 16* + + +## `javascript.options.mem.high_water_mark` + +**Unused Setting** + +Status: **locked** + +Value: `96` + +*Tell garbage collector to start running when javascript is using xx MB of memory.* + + +## `javascript.options.wasm` + +**Unused Setting** + +Status: **locked** + +Value: `false` + +*Disable WebAssembly* + + + +### References + +[https://webassembly.org/](https://webassembly.org/) + +[https://en.wikipedia.org/wiki/WebAssembly](https://en.wikipedia.org/wiki/WebAssembly) + +[https://trac.torproject.org/projects/tor/ticket/21549](https://trac.torproject.org/projects/tor/ticket/21549) + + +## `browser.display.use_document_fonts` + +**Unused Setting** + +Status: **locked** + +Value: `0` + +*Prevent font fingerprinting* + + + +### References + +[https://browserleaks.com/fonts](https://browserleaks.com/fonts) + +[https://github.com/pyllyukko/user.js/issues/120](https://github.com/pyllyukko/user.js/issues/120) + + +## `webgl.disabled` + +Status: **unlocked** + +Value: `false` + + +## `webgl.enable-webgl2` + +Status: **locked** + +Value: `false` + +*This prevents WebGL data leaks* + + +## `webgl.min_capability_mode` + +Status: **locked** + +Value: `true` + +*This prevents WebGL data leaks* + + +## `pdfjs.enableWebGL` + +Status: **locked** + +Value: `false` + + +## `webgl.disable-extensions` + +Status: **locked** + +Value: `true` + + +## `webgl.disable-fail-if-major-performance-caveat` + +Status: **locked** + +Value: `true` + + +## `webgl.enable-debug-renderer-info` + +Status: **locked** + +Value: `false` + + +## `javascript.options.asmjs` + +**Unused Setting** + +Status: **locked** + +Value: `false` + +*Disable asm.js* + + + +### References + +[http://asmjs.org/](http://asmjs.org/) + +[https://www.mozilla.org/en-US/security/advisories/mfsa2015-29/](https://www.mozilla.org/en-US/security/advisories/mfsa2015-29/) + +[https://www.mozilla.org/en-US/security/advisories/mfsa2015-50/](https://www.mozilla.org/en-US/security/advisories/mfsa2015-50/) + +[https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-2712](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-2712) + + +## `javascript.options.shared_memory` + +Status: **locked** + +Value: `false` + +*JS Shared Memory* + + + +### References + +[https://github.com/MrAlex94/Waterfox/issues/356](https://github.com/MrAlex94/Waterfox/issues/356) + + +## `dom.serviceWorkers.enabled` + +Status: **locked** + +Value: `false` + +*Disable service workers* + + diff --git a/dist/docs/settings/protection.md b/dist/docs/settings/protection.md new file mode 100644 index 0000000..78dfbba --- /dev/null +++ b/dist/docs/settings/protection.md @@ -0,0 +1,12 @@ +--- +title: Protection +--- + + +## `general.config.filename` + +Status: **locked** + +Value: `"librewolf.cfg"` + + diff --git a/dist/docs/settings/security.md b/dist/docs/settings/security.md new file mode 100644 index 0000000..20f8fd3 --- /dev/null +++ b/dist/docs/settings/security.md @@ -0,0 +1,387 @@ +--- +title: Security +--- + + +## `security.insecure_password.ui.enabled` + +Status: **locked** + +Value: `true` + +*Enable insecure password warnings (login forms in non-HTTPS pages)* + + + +### References + +[https://blog.mozilla.org/tanvi/2016/01/28/no-more-passwords-over-http-please/](https://blog.mozilla.org/tanvi/2016/01/28/no-more-passwords-over-http-please/) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1319119](https://bugzilla.mozilla.org/show_bug.cgi?id=1319119) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1217156](https://bugzilla.mozilla.org/show_bug.cgi?id=1217156) + + +## `security.insecure_field_warning.contextual.enabled` + +Status: **locked** + +Value: `true` + +*Show in-content login form warning UI for insecure login fields* + + + +### References + +[https://hg.mozilla.org/integration/mozilla-inbound/rev/f0d146fe7317](https://hg.mozilla.org/integration/mozilla-inbound/rev/f0d146fe7317) + + +## `network.stricttransportsecurity.preloadlist` + +Status: **locked** + +Value: `false` + +*Disable HSTS preload list (pre-set HSTS sites list provided by Mozilla)* + + + +### References + +[https://blog.mozilla.org/security/2012/11/01/preloading-hsts/](https://blog.mozilla.org/security/2012/11/01/preloading-hsts/) + +[https://wiki.mozilla.org/Privacy/Features/HSTS_Preload_List](https://wiki.mozilla.org/Privacy/Features/HSTS_Preload_List) + +[https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security](https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security) + + +## `security.ssl.disable_session_identifiers` + +Status: **locked** + +Value: `true` + +*Disable TLS Session Tickets* + + + +### References + +[https://www.blackhat.com/us-13/briefings.html#NextGen](https://www.blackhat.com/us-13/briefings.html#NextGen) + +[https://media.blackhat.com/us-13/US-13-Daigniere-TLS-Secrets-Slides.pdf](https://media.blackhat.com/us-13/US-13-Daigniere-TLS-Secrets-Slides.pdf) + +[https://media.blackhat.com/us-13/US-13-Daigniere-TLS-Secrets-WP.pdf](https://media.blackhat.com/us-13/US-13-Daigniere-TLS-Secrets-WP.pdf) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=917049](https://bugzilla.mozilla.org/show_bug.cgi?id=917049) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=967977](https://bugzilla.mozilla.org/show_bug.cgi?id=967977) + + +## `network.dns.localDomains` + +Status: **unlocked** + +Value: `"librefox.com"` + +*Blocking GD Parking Scam Site* + + +## `security.tls.version.fallback-limit` + +Status: **locked** + +Value: `3` + +*Disable insecure TLS version fallback* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1084025](https://bugzilla.mozilla.org/show_bug.cgi?id=1084025) + +[https://github.com/pyllyukko/user.js/pull/206#issuecomment-280229645](https://github.com/pyllyukko/user.js/pull/206#issuecomment-280229645) + + +## `security.tls.version.min` + +Status: **locked** + +Value: `2` + +*Only allow TLS 1.[0-3]* + + + +### References + +[http://kb.mozillazine.org/Security.tls.version.*](http://kb.mozillazine.org/Security.tls.version.*) + + +## `security.cert_pinning.enforcement_level` + +Status: **locked** + +Value: `2` + +*Enfore Public Key Pinning* + + + +### References + +[https://en.wikipedia.org/wiki/HTTP_Public_Key_Pinning](https://en.wikipedia.org/wiki/HTTP_Public_Key_Pinning) + +[https://wiki.mozilla.org/SecurityEngineering/Public_Key_Pinning](https://wiki.mozilla.org/SecurityEngineering/Public_Key_Pinning) + + +## `security.pki.sha1_enforcement_level` + +Status: **locked** + +Value: `1` + +*Disallow SHA-1* + + + +### References + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1302140](https://bugzilla.mozilla.org/show_bug.cgi?id=1302140) + +[https://shattered.io/](https://shattered.io/) + + +## `security.ssl.treat_unsafe_negotiation_as_broken` + +Status: **locked** + +Value: `true` + +*Warn the user when server doesn't support RFC 5746 ('safe' renegotiation)* + + + +### References + +[https://wiki.mozilla.org/Security:Renegotiation#security.ssl.treat_unsafe_negotiation_as_broken](https://wiki.mozilla.org/Security:Renegotiation#security.ssl.treat_unsafe_negotiation_as_broken) + +[https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2009-3555](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2009-3555) + + +## `browser.ssl_override_behavior` + +Status: **locked** + +Value: `1` + +*Pre-populate the current URL but do not pre-fetch the certificate in the 'Add Security Exception' dialog* + + + +### References + +[http://kb.mozillazine.org/Browser.ssl_override_behavior](http://kb.mozillazine.org/Browser.ssl_override_behavior) + +[https://github.com/pyllyukko/user.js/issues/210](https://github.com/pyllyukko/user.js/issues/210) + + +## `security.ssl.errorReporting.automatic` + +Status: **locked** + +Value: `false` + + +## `security.ssl.errorReporting.url` + +Status: **locked** + +Value: `""` + + +## `security.OCSP.enabled` + +Status: **locked** + +Value: `0` + + +## `security.OCSP.require` + +Status: **locked** + +Value: `false` + + +## `security.ssl.enable_ocsp_stapling` + +Status: **locked** + +Value: `true` + + + +### References + +[https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/](https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/) + + +## `security.ssl.errorReporting.enabled` + +Status: **locked** + +Value: `false` + + +## `security.disable_button.openCertManager` + +**Unused Setting** + +Status: **locked** + +Value: `false` + +*Manage certificates button* + + +## `security.disable_button.openDeviceManager` + +**Unused Setting** + +Status: **locked** + +Value: `false` + +*Manage security devices button* + + +## `security.mixed_content.upgrade_display_content` + +Status: **locked** + +Value: `true` + + +## `security.mixed_content.block_object_subrequest` + +Status: **locked** + +Value: `true` + + +## `security.mixed_content.block_display_content` + +Status: **locked** + +Value: `true` + + +## `security.mixed_content.block_active_content` + +Status: **locked** + +Value: `true` + + +## `security.insecure_connection_icon.enabled` + +Status: **locked** + +Value: `true` + + +## `security.insecure_connection_icon.pbmode.enabled` + +Status: **locked** + +Value: `true` + + +## `security.insecure_connection_text.enabled` + +Status: **locked** + +Value: `true` + + +## `security.ssl3.rsa_des_ede3_sha` + +Status: **locked** + +Value: `false` + + +## `security.ssl3.rsa_aes_256_sha` + +Status: **locked** + +Value: `false` + + +## `security.ssl3.rsa_aes_128_sha` + +Status: **locked** + +Value: `false` + + +## `security.ssl3.ecdh_ecdsa_rc4_128_sha` + +Status: **locked** + +Value: `false` + +*Disable RC4* + + + +### References + +[https://developer.mozilla.org/en-US/Firefox/Releases/38#Security](https://developer.mozilla.org/en-US/Firefox/Releases/38#Security) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1138882](https://bugzilla.mozilla.org/show_bug.cgi?id=1138882) + +[https://rc4.io/](https://rc4.io/) + +[https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-2566](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-2566) + + +## `security.ssl3.ecdh_rsa_rc4_128_sha` + +Status: **locked** + +Value: `false` + +*Disable RC4* + + + +### References + +[https://developer.mozilla.org/en-US/Firefox/Releases/38#Security](https://developer.mozilla.org/en-US/Firefox/Releases/38#Security) + +[https://bugzilla.mozilla.org/show_bug.cgi?id=1138882](https://bugzilla.mozilla.org/show_bug.cgi?id=1138882) + +[https://rc4.io/](https://rc4.io/) + +[https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-2566](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-2566) + + +## `security.ssl3.rsa_seed_sha` + +Status: **locked** + +Value: `false` + +*Disable SEED cipher* + + + +### References + +[https://en.wikipedia.org/wiki/SEED](https://en.wikipedia.org/wiki/SEED) + + diff --git a/dist/docs/settings/user_settings/_index.md b/dist/docs/settings/user_settings/_index.md new file mode 100644 index 0000000..e21e126 --- /dev/null +++ b/dist/docs/settings/user_settings/_index.md @@ -0,0 +1,2 @@ +--- +title: User Settings--- diff --git a/dist/docs/settings/user_settings/auto-play.md b/dist/docs/settings/user_settings/auto-play.md new file mode 100644 index 0000000..b5ce78d --- /dev/null +++ b/dist/docs/settings/user_settings/auto-play.md @@ -0,0 +1,12 @@ +--- +title: Autoplay +--- + + +## `media.autoplay.default` + +Status: **locked** + +Value: `2` + + diff --git a/dist/docs/settings/user_settings/autofill.md b/dist/docs/settings/user_settings/autofill.md new file mode 100644 index 0000000..b6dae9e --- /dev/null +++ b/dist/docs/settings/user_settings/autofill.md @@ -0,0 +1,65 @@ +--- +title: Autofill +--- + + +## `extensions.formautofill.addresses.enabled` + +Status: **unlocked** + +Value: `false` + + +## `extensions.formautofill.available` + +Status: **unlocked** + +Value: `"off"` + + +## `extensions.formautofill.creditCards.enabled` + +Status: **unlocked** + +Value: `false` + + +## `extensions.formautofill.heuristics.enabled` + +Status: **unlocked** + +Value: `false` + + +## `signon.autofillForms` + +Status: **locked** + +Value: `false` + + +## `signon.autofillForms.http` + +Status: **locked** + +Value: `false` + + +## `browser.urlbar.autoFill` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.urlbar.autoFill.typed` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + diff --git a/dist/docs/settings/user_settings/cookies.md b/dist/docs/settings/user_settings/cookies.md new file mode 100644 index 0000000..52fc0b4 --- /dev/null +++ b/dist/docs/settings/user_settings/cookies.md @@ -0,0 +1,47 @@ +--- +title: Cookies +--- + + +## `network.cookie.cookieBehavior` + +Status: **unlocked** + +Value: `1` + + +## `network.cookie.lifetimePolicy` + +Status: **unlocked** + +Value: `2` + + +## `network.cookie.same-site.enabled` + +Status: **locked** + +Value: `true` + + +## `network.cookie.leave-secure-alone` + +Status: **locked** + +Value: `true` + + +## `network.cookie.thirdparty.sessionOnly` + +Status: **unlocked** + +Value: `true` + + +## `network.cookie.thirdparty.nonsecureSessionOnly` + +Status: **locked** + +Value: `true` + + diff --git a/dist/docs/settings/user_settings/default-browser.md b/dist/docs/settings/user_settings/default-browser.md new file mode 100644 index 0000000..7459be1 --- /dev/null +++ b/dist/docs/settings/user_settings/default-browser.md @@ -0,0 +1,12 @@ +--- +title: Default Browser +--- + + +## `browser.shell.checkDefaultBrowser` + +Status: **locked** + +Value: `false` + + diff --git a/dist/docs/settings/user_settings/dns.md b/dist/docs/settings/user_settings/dns.md new file mode 100644 index 0000000..690b9b2 --- /dev/null +++ b/dist/docs/settings/user_settings/dns.md @@ -0,0 +1,47 @@ +--- +title: DNS +--- + + +## `network.trr.mode` + +Status: **locked** + +Value: `5` + + +## `network.trr.bootstrapAddress` + +Status: **locked** + +Value: `""` + + +## `network.trr.uri` + +Status: **locked** + +Value: `""` + + +## `network.dns.disableIPv6` + +Status: **locked** + +Value: `true` + + +## `network.dns.disablePrefetch` + +Status: **locked** + +Value: `true` + + +## `network.dns.disablePrefetchFromHTTPS` + +Status: **locked** + +Value: `true` + + diff --git a/dist/docs/settings/user_settings/dnt.md b/dist/docs/settings/user_settings/dnt.md new file mode 100644 index 0000000..e82077a --- /dev/null +++ b/dist/docs/settings/user_settings/dnt.md @@ -0,0 +1,19 @@ +--- +title: Do Not Track +--- + + +## `privacy.donottrackheader.enabled` + +Status: **locked** + +Value: `true` + + +## `privacy.donottrackheader.value` + +Status: **locked** + +Value: `1` + + diff --git a/dist/docs/settings/user_settings/drm-cdm.md b/dist/docs/settings/user_settings/drm-cdm.md new file mode 100644 index 0000000..1273489 --- /dev/null +++ b/dist/docs/settings/user_settings/drm-cdm.md @@ -0,0 +1,119 @@ +--- +title: DRM/CDM +--- + + +## `media.eme.enabled` + +Status: **locked** + +Value: `false` + + +## `media.gmp-provider.enabled` + +Status: **locked** + +Value: `false` + + +## `media.gmp-manager.url` + +Status: **locked** + +Value: `"data:text/plain,"` + + +## `media.gmp-manager.url.override` + +Status: **locked** + +Value: `"data:text/plain,"` + + +## `media.gmp-manager.updateEnabled` + +Status: **locked** + +Value: `false` + + +## `media.gmp.trial-create.enabled` + +Status: **locked** + +Value: `false` + + +## `media.gmp-widevinecdm.visible` + +Status: **locked** + +Value: `false` + + +## `media.gmp-widevinecdm.enabled` + +Status: **locked** + +Value: `false` + + +## `media.gmp-widevinecdm.autoupdate` + +Status: **locked** + +Value: `false` + + +## `media.gmp-gmpopenh264.enabled` + +Status: **locked** + +Value: `false` + + +## `media.gmp-gmpopenh264.autoupdate` + +Status: **locked** + +Value: `false` + + +## `media.peerconnection.video.enabled` + +Status: **unlocked** + +Value: `false` + + +## `media.gmp-eme-adobe.enabled` + +Status: **locked** + +Value: `false` + + +## `media.gmp-manager.certs.2.commonName` + +Status: **locked** + +Value: `""` + + +## `media.gmp-manager.certs.1.commonName` + +Status: **locked** + +Value: `""` + + +## `media.peerconnection.video.h264` + +**Unused Setting** + +Status: **locked** + +Value: `true` + + diff --git a/dist/docs/settings/user_settings/history.md b/dist/docs/settings/user_settings/history.md new file mode 100644 index 0000000..baf5129 --- /dev/null +++ b/dist/docs/settings/user_settings/history.md @@ -0,0 +1,166 @@ +--- +title: History +--- + + +## `browser.sessionhistory.max_entries` + +Status: **locked** + +Value: `20` + + +## `browser.urlbar.filter.javascript` + +Status: **locked** + +Value: `true` + + +## `browser.uiCustomization.state` + +Status: **unlocked** + +Value: `"{"placements":{"widget-overflow-fixed-list":[],"nav-bar":["home-button","downloads-button","back-button","forward-button","stop-reload-button","urlbar-container","add-ons-button","preferences-button","fxa-toolbar-menu-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["personal-bookmarks"]},"seen":["developer-button"],"dirtyAreaCache":["nav-bar","toolbar-menubar","TabsToolbar","PersonalToolbar"],"currentVersion":16,"newElementCount":3}"` + + +## `browser.uidensity` + +Status: **unlocked** + +Value: `2` + + +## `browser.tabs.drawInTitlebar` + +Status: **unlocked** + +Value: `true` + + +## `startup.homepage_override_url` + +Status: **unlocked** + +Value: `"about:blank"` + + +## `startup.homepage_welcome_url` + +Status: **unlocked** + +Value: `"about:blank"` + + +## `startup.homepage_welcome_url.additional` + +Status: **unlocked** + +Value: `""` + + +## `privacy.clearOnShutdown.offlineApps` + +Status: **unlocked** + +Value: `true` + + +## `privacy.cpd.offlineApps` + +Status: **unlocked** + +Value: `true` + +*Offline Website Data* + + +## `privacy.sanitize.timeSpan` + +Status: **unlocked** + +Value: `0` + + +## `browser.formfill.enable` + +Status: **unlocked** + +Value: `false` + + +## `privacy.sanitize.sanitizeOnShutdown` + +Status: **unlocked** + +Value: `true` + + +## `places.history.enabled` + +Status: **unlocked** + +Value: `false` + + +## `places.history.expiration.max_pages` + +Status: **unlocked** + +Value: `2147483647` + + +## `privacy.history.custom` + +Status: **unlocked** + +Value: `true` + + +## `privacy.cpd.openWindows` + +**Unused Setting** + +Status: **unlocked** + +Value: `true` + +*Clear session data* + + +## `privacy.clearOnShutdown.openWindows` + +**Unused Setting** + +Status: **unlocked** + +Value: `true` + + +## `privacy.sanitize.pending` + +**Unused Setting** + +Status: **unlocked** + +Value: `"[{"id":"shutdown","itemsToClear":["cache","cookies","history","formdata","downloads"],"options":{}}]"` + + +## `permissions.memory_only` + +**Unused Setting** + +Status: **locked** + +Value: `true` + + +## `browser.formfill.expire_days` + +**Unused Setting** + +Status: **locked** + +Value: `0` + + diff --git a/dist/docs/settings/user_settings/miscellaneous.md b/dist/docs/settings/user_settings/miscellaneous.md new file mode 100644 index 0000000..ea6565e --- /dev/null +++ b/dist/docs/settings/user_settings/miscellaneous.md @@ -0,0 +1,19 @@ +--- +title: Miscellaneous +--- + + +## `dom.disable_beforeunload` + +Status: **locked** + +Value: `true` + + +## `permissions.default.geo` + +Status: **locked** + +Value: `2` + + diff --git a/dist/docs/settings/user_settings/password-manager.md b/dist/docs/settings/user_settings/password-manager.md new file mode 100644 index 0000000..a0cfd76 --- /dev/null +++ b/dist/docs/settings/user_settings/password-manager.md @@ -0,0 +1,44 @@ +--- +title: Password Manager +--- + + +## `signon.rememberSignons` + +Status: **locked** + +Value: `false` + + +## `services.sync.prefs.sync.signon.rememberSignons` + +Status: **locked** + +Value: `false` + + +## `signon.storeWhenAutocompleteOff` + +Status: **locked** + +Value: `false` + + +## `security.ask_for_password` + +**Unused Setting** + +Status: **locked** + +Value: `2` + + +## `security.password_lifetime` + +**Unused Setting** + +Status: **locked** + +Value: `5` + + diff --git a/dist/docs/settings/user_settings/proxy.md b/dist/docs/settings/user_settings/proxy.md new file mode 100644 index 0000000..21abd2d --- /dev/null +++ b/dist/docs/settings/user_settings/proxy.md @@ -0,0 +1,23 @@ +--- +title: Proxy +--- + + +## `network.proxy.autoconfig_url.include_path` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `network.proxy.socks_remote_dns` + +**Unused Setting** + +Status: **locked** + +Value: `true` + + diff --git a/dist/docs/settings/user_settings/session.md b/dist/docs/settings/user_settings/session.md new file mode 100644 index 0000000..93183e0 --- /dev/null +++ b/dist/docs/settings/user_settings/session.md @@ -0,0 +1,19 @@ +--- +title: Session +--- + + +## `browser.sessionstore.privacy_level` + +Status: **locked** + +Value: `2` + + +## `browser.sessionstore.interval` + +Status: **locked** + +Value: `60000` + + diff --git a/dist/docs/settings/user_settings/start-page.md b/dist/docs/settings/user_settings/start-page.md new file mode 100644 index 0000000..bb9a320 --- /dev/null +++ b/dist/docs/settings/user_settings/start-page.md @@ -0,0 +1,40 @@ +--- +title: Start Page +--- + + +## `browser.newtabpage.activity-stream.feeds.section.highlights` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.section.highlights.includeBookmarks` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.section.highlights.includeDownloads` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.section.highlights.includeVisited` + +Status: **locked** + +Value: `false` + + +## `browser.newtabpage.activity-stream.prerender` + +Status: **locked** + +Value: `false` + + diff --git a/dist/docs/settings/user_settings/theming.md b/dist/docs/settings/user_settings/theming.md new file mode 100644 index 0000000..a3adb94 --- /dev/null +++ b/dist/docs/settings/user_settings/theming.md @@ -0,0 +1,41 @@ +--- +title: Theming +--- + + +## `widget.content.gtk-theme-override` + +**Unused Setting** + +Status: **locked** + +Value: `"Adwaita:light"` + + +## `browser.devedition.theme.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `true` + + +## `devtools.theme` + +**Unused Setting** + +Status: **locked** + +Value: `"dark"` + + +## `browser.devedition.theme.showCustomizeButton` + +**Unused Setting** + +Status: **locked** + +Value: `true` + + diff --git a/dist/docs/settings/user_settings/tracking-protection.md b/dist/docs/settings/user_settings/tracking-protection.md new file mode 100644 index 0000000..a76a9a1 --- /dev/null +++ b/dist/docs/settings/user_settings/tracking-protection.md @@ -0,0 +1,179 @@ +--- +title: Tracking Protection +--- + + +## `privacy.trackingprotection.enabled` + +Status: **locked** + +Value: `false` + + +## `privacy.trackingprotection.annotate_channels` + +Status: **locked** + +Value: `false` + + +## `privacy.trackingprotection.lower_network_priority` + +Status: **locked** + +Value: `false` + + +## `privacy.trackingprotection.pbmode.enabled` + +Status: **locked** + +Value: `false` + + +## `urlclassifier.trackingTable` + +Status: **locked** + +Value: `""` + + +## `pref.privacy.disable_button.change_blocklist` + +Status: **locked** + +Value: `true` + + +## `browser.contentblocking.reportBreakage.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.reportBreakage.url` + +Status: **locked** + +Value: `""` + + +## `browser.contentblocking.rejecttrackers.reportBreakage.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.rejecttrackers.ui.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.trackingprotection.control-center.ui.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.trackingprotection.ui.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.global-toggle.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.rejecttrackers.ui.recommended` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.fastblock.ui.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.fastblock.control-center.ui.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.allowlist.annotations.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.allowlist.storage.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `pref.privacy.disable_button.tracking_protection_exceptions` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.rejecttrackers.control-center.ui.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.ui.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + +## `browser.contentblocking.enabled` + +**Unused Setting** + +Status: **locked** + +Value: `false` + + diff --git a/dist/docs/settings/user_settings/webrtc.md b/dist/docs/settings/user_settings/webrtc.md new file mode 100644 index 0000000..f1b2cb2 --- /dev/null +++ b/dist/docs/settings/user_settings/webrtc.md @@ -0,0 +1,89 @@ +--- +title: WebRTC +--- + + +## `media.navigator.enabled` + +Status: **unlocked** + +Value: `false` + + +## `media.navigator.video.enabled` + +Status: **unlocked** + +Value: `false` + + +## `media.getusermedia.browser.enabled` + +Status: **unlocked** + +Value: `false` + + +## `media.getusermedia.screensharing.enabled` + +Status: **unlocked** + +Value: `false` + + +## `media.getusermedia.audiocapture.enabled` + +Status: **unlocked** + +Value: `false` + + +## `media.peerconnection.use_document_iceservers` + +Status: **unlocked** + +Value: `false` + + +## `media.peerconnection.identity.enabled` + +Status: **unlocked** + +Value: `false` + + +## `media.peerconnection.identity.timeout` + +Status: **unlocked** + +Value: `1` + + +## `media.peerconnection.turn.disable` + +Status: **unlocked** + +Value: `true` + + +## `media.peerconnection.ice.tcp` + +Status: **unlocked** + +Value: `false` + + +## `media.peerconnection.ice.default_address_only` + +Status: **unlocked** + +Value: `true` + + +## `media.peerconnection.ice.no_host` + +Status: **unlocked** + +Value: `true` + + diff --git a/dist/docs/settings/windows.md b/dist/docs/settings/windows.md new file mode 100644 index 0000000..8211221 --- /dev/null +++ b/dist/docs/settings/windows.md @@ -0,0 +1,116 @@ +--- +title: Windows +--- + + +## `webgl.dxgl.enabled` + +Status: **locked** + +Value: `false` + +*Other WebGl [WINDOWS]* + + +## `plugin.scan.plid.all` + +Status: **locked** + +Value: `false` + +*Disable scanning for plugins [WINDOWS]* + + +## `browser.taskbar.lists.enabled` + +Status: **locked** + +Value: `false` + +*Disable Windows jumplist [WINDOWS]* + + +## `browser.taskbar.lists.frequent.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.taskbar.lists.recent.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.taskbar.lists.tasks.enabled` + +Status: **locked** + +Value: `false` + + +## `browser.taskbar.previews.enable` + +Status: **locked** + +Value: `false` + +*Disable Windows taskbar preview [WINDOWS]* + + +## `network.protocol-handler.external.ms-windows-store` + +Status: **locked** + +Value: `false` + +*Disable links launching Windows Store on Windows 8/8.1/10 [WINDOWS]* + + + +### References + +[https://www.ghacks.net/2016/03/25/block-firefox-chrome-windows-store/](https://www.ghacks.net/2016/03/25/block-firefox-chrome-windows-store/) + + +## `app.update.service.enabled` + +Status: **locked** + +Value: `false` + +*Disable background update service [WINDOWS]* + + +## `toolkit.winRegisterApplicationRestart` + +Status: **locked** + +Value: `false` + +*Disable automatic Firefox start and session restore after reboot [WINDOWS] (FF62+)* + + + +### References + +[https://bugzilla.mozilla.org/603903](https://bugzilla.mozilla.org/603903) + + +## `security.family_safety.mode` + +Status: **locked** + +Value: `0` + +*Disable Windows 8.1's Microsoft Family Safety cert [WINDOWS] (FF50+)* + + + +### References + +[https://trac.torproject.org/projects/tor/ticket/21686](https://trac.torproject.org/projects/tor/ticket/21686) + + diff --git a/dist/librewolf.cfg b/dist/librewolf.cfg new file mode 100644 index 0000000..23c5bd6 --- /dev/null +++ b/dist/librewolf.cfg @@ -0,0 +1,854 @@ +// Locale, Time, UA + +lockPref("dom.forms.datetime", ""); +lockPref("javascript.use_us_english_locale", ""); +lockPref("intl.regional_prefs.use_os_locales", ""); +defaultPref("intl.locale.requested", ""); +defaultPref("general.useragent.override", ""); +defaultPref("general.appname.override", ""); +defaultPref("general.appversion.override", ""); +defaultPref("general.platform.override", ""); +defaultPref("general.oscpu.override", ""); + + +// Disabled On/Off + +lockPref("network.dns.blockDotOnion", ""); +lockPref("network.http.referer.hideOnionSource", ""); +lockPref("network.http.referer.XOriginPolicy", ""); +lockPref("security.tls.version.max", ""); + + +// Ijwytsu – I just want you to shut up + +lockPref("devtools.performance.recording.ui-base-url", ""); +lockPref("gecko.handlerService.schemes.irc.0.uriTemplate", ""); +lockPref("gecko.handlerService.schemes.ircs.0.uriTemplate", ""); +lockPref("toolkit.coverage.enabled", ""); +lockPref("extensions.webapi.testing", ""); +lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr", ""); +lockPref("extensions.htmlaboutaddons.recommendations.enabled", ""); +lockPref("browser.newtabpage.activity-stream.asrouter.providers.cfr", ""); +lockPref("browser.newtabpage.activity-stream.asrouter.providers.cfr-fxa", ""); +lockPref("browser.newtabpage.activity-stream.asrouter.providers.onboarding", ""); +lockPref("browser.newtabpage.activity-stream.asrouter.providers.snippets", ""); +lockPref("browser.onboarding.notification.tour-ids-queue", ""); +lockPref("lightweightThemes.getMoreURL", ""); +lockPref("devtools.gcli.lodashSrc", ""); +lockPref("media.decoder-doctor.new-issue-endpoint", ""); +lockPref("identity.sync.tokenserver.uri", ""); +lockPref("devtools.webide.templatesURL", ""); +lockPref("browser.ping-centre.production.endpoint", ""); +lockPref("browser.translation.engine", ""); +lockPref("network.trr.confirmationNS", ""); +lockPref("gecko.handlerService.schemes.mailto.1.name", ""); +lockPref("gecko.handlerService.schemes.irc.0.name", ""); +lockPref("gecko.handlerService.schemes.ircs.0.name", ""); +lockPref("gecko.handlerService.schemes.mailto.0.name", ""); +lockPref("services.sync.lastversion", ""); +lockPref("browser.safebrowsing.provider.mozilla.lists.base", ""); +lockPref("browser.safebrowsing.provider.mozilla.lists.content", ""); +lockPref("browser.safebrowsing.provider.google.advisoryName", ""); +lockPref("browser.safebrowsing.provider.google4.advisoryName", ""); +lockPref("browser.safebrowsing.provider.mozilla.lists", ""); +lockPref("identity.fxaccounts.remote.root", ""); +lockPref("services.settings.server", ""); +lockPref("services.sync.fxa.privacyURL", ""); +lockPref("services.sync.fxa.termsURL", ""); +lockPref("services.blocklist.addons.signer", ""); +lockPref("services.blocklist.gfx.signer", ""); +lockPref("services.blocklist.onecrl.signer", ""); +lockPref("services.blocklist.pinning.signer", ""); +lockPref("services.blocklist.plugins.signer", ""); +lockPref("services.settings.default_signer", ""); +lockPref("accessibility.support.url", ""); +lockPref("app.normandy.shieldLearnMoreUrl", ""); +lockPref("app.productInfo.baseURL", ""); +lockPref("app.support.baseURL", ""); +lockPref("browser.chrome.errorReporter.infoURL", ""); +lockPref("browser.dictionaries.download.url", ""); +lockPref("browser.geolocation.warning.infoURL", ""); +lockPref("browser.search.searchEnginesURL", ""); +lockPref("browser.uitour.themeOrigin", ""); +lockPref("devtools.webide.adbAddonURL", ""); +lockPref("extensions.getAddons.compatOverides.url", ""); +defaultPref("extensions.getAddons.get.url", ""); +defaultPref("extensions.getAddons.langpacks.url", ""); +defaultPref("extensions.getAddons.link.url", ""); +defaultPref("extensions.getAddons.search.browseURL", ""); +lockPref("extensions.getAddons.themes.browseURL", ""); +lockPref("services.sync.addons.trustedSourceHostnames", ""); +lockPref("toolkit.datacollection.infoURL", ""); +lockPref("xpinstall.signatures.devInfoURL", ""); +lockPref("browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts.searchEngines", ""); +lockPref("browser.newtabpage.activity-stream.fxaccounts.endpoint", ""); +defaultPref("extensions.update.url", ""); +lockPref("browser.newtabpage.activity-stream.feeds.section.topstories.options", ""); +lockPref("lightweightThemes.recommendedThemes", ""); +lockPref("services.sync.maxResyncs", ""); +lockPref("services.sync.telemetry.maxPayloadCount", ""); +lockPref("services.sync.addons.ignoreUserEnabledChanges", ""); +lockPref("services.sync.engine.addons", ""); +lockPref("services.sync.engine.addresses", ""); +lockPref("services.sync.engine.bookmarks", ""); +lockPref("services.sync.engine.bookmarks.buffer", ""); +lockPref("services.sync.engine.creditcards", ""); +lockPref("services.sync.engine.creditcards.available", ""); +lockPref("services.sync.engine.history", ""); +lockPref("services.sync.engine.passwords", ""); +lockPref("services.sync.engine.prefs", ""); +lockPref("services.sync.engine.tabs", ""); +lockPref("services.sync.log.appender.file.logOnError", ""); +lockPref("services.sync.log.appender.file.logOnSuccess", ""); +lockPref("services.sync.log.cryptoDebug", ""); +lockPref("services.sync.sendVersionInfo", ""); +lockPref("services.sync.syncedTabs.showRemoteIcons", ""); +lockPref("services.sync.prefs.sync.accessibility.blockautorefresh", ""); +lockPref("services.sync.prefs.sync.accessibility.browsewithcaret", ""); +lockPref("services.sync.prefs.sync.accessibility.typeaheadfind", ""); +lockPref("services.sync.prefs.sync.accessibility.typeaheadfind.linksonly", ""); +lockPref("services.sync.prefs.sync.addons.ignoreUserEnabledChanges", ""); +lockPref("services.sync.prefs.sync.browser.contentblocking.enabled", ""); +lockPref("services.sync.prefs.sync.browser.ctrlTab.recentlyUsedOrder", ""); +lockPref("services.sync.prefs.sync.browser.download.useDownloadDir", ""); +lockPref("services.sync.prefs.sync.browser.formfill.enable", ""); +lockPref("services.sync.prefs.sync.browser.link.open_newwindow", ""); +lockPref("services.sync.prefs.sync.browser.newtabpage.enabled", ""); +lockPref("services.sync.prefs.sync.browser.newtabpage.pinned", ""); +lockPref("services.sync.prefs.sync.browser.newtabpage.activity-stream.section.highlights.includePocket", ""); +lockPref("services.sync.prefs.sync.browser.newtabpage.activity-stream.section.highlights.includeVisited", ""); +lockPref("services.sync.prefs.sync.browser.newtabpage.activity-stream.section.highlights.includeBookmarks", ""); +lockPref("services.sync.prefs.sync.browser.offline-apps.notify", ""); +lockPref("services.sync.prefs.sync.browser.search.update", ""); +lockPref("services.sync.prefs.sync.browser.sessionstore.restore_on_demand", ""); +lockPref("services.sync.prefs.sync.browser.startup.homepage", ""); +lockPref("services.sync.prefs.sync.browser.startup.page", ""); +lockPref("services.sync.prefs.sync.browser.tabs.loadInBackground", ""); +lockPref("services.sync.prefs.sync.browser.tabs.warnOnClose", ""); +lockPref("services.sync.prefs.sync.browser.tabs.warnOnOpen", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.autocomplete.enabled", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.matchBuckets", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.maxRichResults", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.suggest.bookmark", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.suggest.history", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.suggest.history.onlyTyped", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.suggest.openpage", ""); +lockPref("services.sync.prefs.sync.browser.urlbar.suggest.searches", ""); +lockPref("services.sync.prefs.sync.dom.disable_open_during_load", ""); +lockPref("services.sync.prefs.sync.dom.disable_window_flip", ""); +lockPref("services.sync.prefs.sync.dom.disable_window_move_resize", ""); +lockPref("services.sync.prefs.sync.dom.event.contextmenu.enabled", ""); +lockPref("services.sync.prefs.sync.extensions.personas.current", ""); +lockPref("services.sync.prefs.sync.extensions.update.enabled", ""); +lockPref("services.sync.prefs.sync.intl.accept_languages", ""); +lockPref("services.sync.prefs.sync.layout.spellcheckDefault", ""); +lockPref("services.sync.prefs.sync.lightweightThemes.selectedThemeID", ""); +lockPref("services.sync.prefs.sync.lightweightThemes.usedThemes", ""); +lockPref("services.sync.prefs.sync.network.cookie.cookieBehavior", ""); +lockPref("services.sync.prefs.sync.network.cookie.lifetimePolicy", ""); +lockPref("services.sync.prefs.sync.network.cookie.thirdparty.sessionOnly", ""); +lockPref("services.sync.prefs.sync.permissions.default.image", ""); +lockPref("services.sync.prefs.sync.pref.advanced.images.disable_button.view_image", ""); +lockPref("services.sync.prefs.sync.pref.advanced.javascript.disable_button.advanced", ""); +lockPref("services.sync.prefs.sync.pref.downloads.disable_button.edit_actions", ""); +lockPref("services.sync.prefs.sync.pref.privacy.disable_button.cookie_exceptions", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.cache", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.cookies", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.downloads", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.formdata", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.history", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.offlineApps", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.sessions", ""); +lockPref("services.sync.prefs.sync.privacy.clearOnShutdown.siteSettings", ""); +lockPref("services.sync.prefs.sync.privacy.donottrackheader.enabled", ""); +lockPref("services.sync.prefs.sync.privacy.reduceTimerPrecision", ""); +lockPref("services.sync.prefs.sync.privacy.resistFingerprinting", ""); +lockPref("services.sync.prefs.sync.privacy.resistFingerprinting.reduceTimerPrecision.jitter", ""); +lockPref("services.sync.prefs.sync.privacy.resistFingerprinting.reduceTimerPrecision.microseconds", ""); +lockPref("services.sync.prefs.sync.privacy.sanitize.sanitizeOnShutdown", ""); +lockPref("services.sync.prefs.sync.privacy.trackingprotection.enabled", ""); +lockPref("services.sync.prefs.sync.privacy.trackingprotection.pbmode.enabled", ""); +lockPref("services.sync.prefs.sync.security.OCSP.enabled", ""); +lockPref("services.sync.prefs.sync.security.OCSP.require", ""); +lockPref("services.sync.prefs.sync.security.default_personal_cert", ""); +lockPref("services.sync.prefs.sync.security.tls.version.max", ""); +lockPref("services.sync.prefs.sync.security.tls.version.min", ""); +lockPref("services.sync.prefs.sync.services.sync.syncedTabs.showRemoteIcons", ""); +lockPref("services.sync.prefs.sync.spellchecker.dictionary", ""); +lockPref("services.sync.prefs.sync.xpinstall.whitelist.required", ""); +lockPref("browser.chrome.errorReporter.publicKey", ""); +lockPref("prio.publicKeyA", ""); +lockPref("prio.publicKeyB", ""); + + +// Extensions + +defaultPref("extensions.webextensions.restrictedDomains", ""); +lockPref("extensions.webextensions.identity.redirectDomain", ""); +defaultPref("extensions.webextensions.base-content-security-policy", ""); +lockPref("security.csp.enable", ""); +lockPref("security.csp.experimentalEnabled", ""); +lockPref("security.csp.enable_violation_events", ""); +defaultPref("extensions.webextensions.tabhide.enabled", ""); +lockPref("extensions.webcompat-reporter.newIssueEndpoint", ""); +lockPref("extensions.webcompat-reporter.enabled", ""); +defaultPref("extensions.webextensions.background-delayed-startup", ""); + + +// Performance + +defaultPref("layout.frame_rate.precise", ""); +defaultPref("webgl.force-enabled", ""); +defaultPref("layers.acceleration.force-enabled", ""); +defaultPref("gfx.direct2d.disabled", ""); +defaultPref("layers.acceleration.disabled", ""); +defaultPref("html5.offmainthread", ""); +defaultPref("layers.offmainthreadcomposition.enabled", ""); +defaultPref("layers.offmainthreadcomposition.async-animations", ""); +defaultPref("layers.async-video.enabled", ""); +defaultPref("browser.tabs.animate", ""); +defaultPref("webgl.disabled", ""); +lockPref("webgl.enable-webgl2", ""); +lockPref("webgl.min_capability_mode", ""); +lockPref("pdfjs.enableWebGL", ""); +lockPref("webgl.disable-extensions", ""); +lockPref("webgl.disable-fail-if-major-performance-caveat", ""); +lockPref("webgl.enable-debug-renderer-info", ""); +lockPref("javascript.options.shared_memory", ""); +lockPref("dom.serviceWorkers.enabled", ""); + + +// Security + +lockPref("security.insecure_password.ui.enabled", ""); +lockPref("security.insecure_field_warning.contextual.enabled", ""); +lockPref("network.stricttransportsecurity.preloadlist", ""); +lockPref("security.ssl.disable_session_identifiers", ""); +defaultPref("network.dns.localDomains", ""); +lockPref("security.tls.version.fallback-limit", ""); +lockPref("security.tls.version.min", ""); +lockPref("security.cert_pinning.enforcement_level", ""); +lockPref("security.pki.sha1_enforcement_level", ""); +lockPref("security.ssl.treat_unsafe_negotiation_as_broken", ""); +lockPref("browser.ssl_override_behavior", ""); +lockPref("security.ssl.errorReporting.automatic", ""); +lockPref("security.ssl.errorReporting.url", ""); +lockPref("security.OCSP.enabled", ""); +lockPref("security.OCSP.require", ""); +lockPref("security.ssl.enable_ocsp_stapling", ""); +lockPref("security.ssl.errorReporting.enabled", ""); +lockPref("security.mixed_content.upgrade_display_content", ""); +lockPref("security.mixed_content.block_object_subrequest", ""); +lockPref("security.mixed_content.block_display_content", ""); +lockPref("security.mixed_content.block_active_content", ""); +lockPref("security.insecure_connection_icon.enabled", ""); +lockPref("security.insecure_connection_icon.pbmode.enabled", ""); +lockPref("security.insecure_connection_text.enabled", ""); +lockPref("security.ssl3.rsa_des_ede3_sha", ""); +lockPref("security.ssl3.rsa_aes_256_sha", ""); +lockPref("security.ssl3.rsa_aes_128_sha", ""); +lockPref("security.ssl3.ecdh_ecdsa_rc4_128_sha", ""); +lockPref("security.ssl3.ecdh_rsa_rc4_128_sha", ""); +lockPref("security.ssl3.rsa_seed_sha", ""); + + +// Protection + +lockPref("general.config.filename", ""); + + +// General + +lockPref("browser.onboarding.notification.finished", ""); +lockPref("browser.onboarding.tour.onboarding-tour-customize.completed", ""); +lockPref("browser.onboarding.tour.onboarding-tour-performance.completed", ""); +lockPref("devtools.onboarding.telemetry.logged", ""); +lockPref("services.sync.engine.addresses.available", ""); +lockPref("browser.bookmarks.restore_default_bookmarks", ""); +lockPref("pdfjs.previousHandler.alwaysAskBeforeHandling", ""); +lockPref("pdfjs.enabledCache.state", ""); +lockPref("pref.general.disable_button.default_browser", ""); +lockPref("pref.privacy.disable_button.view_passwords", ""); +lockPref("identity.mobilepromo.android", ""); +lockPref("extensions.systemAddon.update.url", ""); +lockPref("datareporting.healthreport.infoURL", ""); +lockPref("browser.urlbar.daysBeforeHidingSuggestionsPrompt", ""); +lockPref("browser.urlbar.searchSuggestionsChoice", ""); +lockPref("browser.urlbar.timesBeforeHidingSuggestionsHint", ""); +lockPref("browser.shell.didSkipDefaultBrowserCheckOnFirstRun", ""); +lockPref("app.feedback.baseURL", ""); +lockPref("app.normandy.enabled", ""); +lockPref("app.normandy.api_url", ""); +lockPref("app.normandy.first_run", ""); +lockPref("app.normandy.user_id", ""); +lockPref("app.releaseNotesURL", ""); +lockPref("app.update.auto", ""); +defaultPref("extensions.update.autoUpdateDefault", ""); +lockPref("app.update.staging.enabled", ""); +lockPref("app.update.silent", ""); +lockPref("app.update.lastUpdateTime.telemetry_modules_ping", ""); +lockPref("app.update.url.details", ""); +lockPref("app.update.url.manual", ""); +lockPref("app.vendorURL", ""); +lockPref("breakpad.reportURL", ""); +lockPref("browser.chrome.errorReporter.submitUrl", ""); +lockPref("browser.chrome.errorReporter.enabled", ""); +lockPref("browser.ping-centre.staging.endpoint", ""); +lockPref("browser.ping-centre.telemetry", ""); +lockPref("browser.safebrowsing.id", ""); +lockPref("browser.safebrowsing.provider.google4.pver", ""); +lockPref("browser.safebrowsing.provider.mozilla.pver", ""); +lockPref("browser.safebrowsing.allowOverride", ""); +lockPref("browser.safebrowsing.blockedURIs.enabled", ""); +lockPref("browser.safebrowsing.downloads.enabled", ""); +lockPref("browser.safebrowsing.downloads.remote.block_dangerous", ""); +lockPref("browser.safebrowsing.downloads.remote.block_dangerous_host", ""); +lockPref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", ""); +lockPref("browser.safebrowsing.downloads.remote.block_uncommon", ""); +lockPref("browser.safebrowsing.downloads.remote.enabled", ""); +lockPref("browser.safebrowsing.downloads.remote.url", ""); +lockPref("browser.safebrowsing.malware.enabled", ""); +lockPref("browser.safebrowsing.passwords.enabled", ""); +lockPref("browser.safebrowsing.phishing.enabled", ""); +lockPref("browser.safebrowsing.provider.google4.advisoryURL", ""); +lockPref("browser.safebrowsing.provider.google4.dataSharing.enabled", ""); +lockPref("browser.safebrowsing.provider.google4.dataSharingURL", ""); +lockPref("browser.safebrowsing.provider.google4.gethashURL", ""); +lockPref("browser.safebrowsing.provider.google4.lists", ""); +lockPref("browser.safebrowsing.provider.google4.reportMalwareMistakeURL", ""); +lockPref("browser.safebrowsing.provider.google4.reportPhishMistakeURL", ""); +lockPref("browser.safebrowsing.provider.google4.reportURL", ""); +lockPref("browser.safebrowsing.provider.google4.updateURL", ""); +lockPref("browser.safebrowsing.provider.google4.lastupdatetime", ""); +lockPref("browser.safebrowsing.provider.google4.nextupdatetime", ""); +lockPref("browser.safebrowsing.provider.google.advisoryURL", ""); +lockPref("browser.safebrowsing.provider.google.gethashURL", ""); +lockPref("browser.safebrowsing.provider.google.lastupdatetime", ""); +lockPref("browser.safebrowsing.provider.google.lists", ""); +lockPref("browser.safebrowsing.provider.google.nextupdatetime", ""); +lockPref("browser.safebrowsing.provider.google.pver", ""); +lockPref("browser.safebrowsing.provider.google.reportMalwareMistakeURL", ""); +lockPref("browser.safebrowsing.provider.google.reportPhishMistakeURL", ""); +lockPref("browser.safebrowsing.provider.google.reportURL", ""); +lockPref("browser.safebrowsing.provider.google.updateURL", ""); +lockPref("browser.safebrowsing.provider.mozilla.gethashURL", ""); +lockPref("browser.safebrowsing.provider.mozilla.lastupdatetime", ""); +lockPref("browser.safebrowsing.provider.mozilla.nextupdatetime", ""); +lockPref("browser.safebrowsing.provider.mozilla.updateURL", ""); +lockPref("browser.safebrowsing.reportPhishURL", ""); +lockPref("browser.search.suggest.enabled", ""); +lockPref("captivedetect.canonicalURL", ""); +lockPref("datareporting.policy.firstRunURL", ""); +lockPref("devtools.devedition.promo.url", ""); +lockPref("devtools.devices.url", ""); +lockPref("devtools.gcli.imgurUploadURL", ""); +lockPref("devtools.gcli.jquerySrc", ""); +lockPref("devtools.gcli.underscoreSrc", ""); +lockPref("devtools.telemetry.supported_performance_marks", ""); +lockPref("dom.battery.enabled", ""); +lockPref("dom.permissions.enabled", ""); +lockPref("dom.popup_maximum", ""); +lockPref("dom.registerProtocolHandler.insecure.enabled", ""); +lockPref("extensions.blocklist.detailsURL", ""); +lockPref("extensions.blocklist.itemURL", ""); +lockPref("extensions.blocklist.url", ""); +defaultPref("extensions.update.background.url", ""); +defaultPref("extensions.getAddons.showPane", ""); +lockPref("extensions.webservice.discoverURL", ""); +lockPref("gecko.handlerService.schemes.mailto.0.uriTemplate", ""); +lockPref("gecko.handlerService.schemes.mailto.1.uriTemplate", ""); +lockPref("gecko.handlerService.schemes.webcal.0.uriTemplate", ""); +lockPref("geo.enabled", ""); +lockPref("geo.wifi.uri", ""); +lockPref("identity.fxaccounts.auth.uri", ""); +lockPref("identity.fxaccounts.remote.oauth.uri", ""); +lockPref("identity.fxaccounts.remote.profile.uri", ""); +lockPref("identity.mobilepromo.ios", ""); +lockPref("layout.css.visited_links_enabled", ""); +lockPref("lpbmode.enabled", ""); +lockPref("mailnews.messageid_browser.url", ""); +lockPref("mailnews.mx_service_url", ""); +lockPref("network.predictor.enabled", ""); +lockPref("network.predictor.cleaned-up", ""); +lockPref("network.predictor.enable-prefetch", ""); +lockPref("plugins.crash.supportUrl", ""); +lockPref("services.sync.clients.lastSync", ""); +lockPref("services.sync.clients.lastSyncLocal", ""); +lockPref("services.sync.declinedEngines", ""); +lockPref("services.sync.enabled", ""); +lockPref("services.sync.globalScore", ""); +lockPref("services.sync.jpake.serverURL", ""); +lockPref("services.sync.migrated", ""); +lockPref("services.sync.nextSync", ""); +lockPref("services.sync.prefs.sync.browser.safebrowsing.downloads.enabled", ""); +lockPref("services.sync.prefs.sync.browser.safebrowsing.malware.enabled", ""); +lockPref("services.sync.prefs.sync.browser.safebrowsing.passwords.enabled", ""); +lockPref("services.sync.prefs.sync.browser.safebrowsing.phishing.enabled", ""); +lockPref("services.sync.serverURL", ""); +lockPref("services.sync.tabs.lastSync", ""); +lockPref("services.sync.tabs.lastSyncLocal", ""); +lockPref("sync.enabled", ""); +lockPref("sync.jpake.serverURL", ""); +lockPref("sync.serverURL", ""); +lockPref("toolkit.crashreporter.infoURL", ""); +lockPref("toolkit.telemetry.archive.enabled", ""); +lockPref("toolkit.telemetry.updatePing.enabled", ""); +lockPref("toolkit.telemetry.bhrPing.enabled", ""); +lockPref("toolkit.telemetry.cachedClientID", ""); +lockPref("toolkit.telemetry.enabled", ""); +lockPref("toolkit.telemetry.firstShutdownPing.enabled", ""); +lockPref("toolkit.telemetry.hybridContent.enabled", ""); +lockPref("toolkit.telemetry.infoURL", ""); +lockPref("toolkit.telemetry.newProfilePing.enabled", ""); +lockPref("toolkit.telemetry.previousBuildID", ""); +lockPref("toolkit.telemetry.prompted", ""); +lockPref("toolkit.telemetry.rejected", ""); +lockPref("toolkit.telemetry.reportingpolicy.firstRun", ""); +lockPref("toolkit.telemetry.server", ""); +lockPref("toolkit.telemetry.server_owner", ""); +lockPref("toolkit.telemetry.shutdownPingSender.enabled", ""); +lockPref("toolkit.telemetry.unified", ""); +lockPref("toolkit.telemetry.coverage.opt-out", ""); +lockPref("webextensions.storage.sync.serverURL", ""); +lockPref("extensions.screenshots.upload-disabled", ""); +lockPref("network.http.referer.trimmingPolicy", ""); +lockPref("browser.tabs.closeTabByDblclick", ""); +lockPref("datareporting.healthreport.uploadEnabled", ""); +lockPref("datareporting.policy.dataSubmissionEnabled", ""); +lockPref("dom.event.contextmenu.enabled", ""); +lockPref("dom.event.clipboardevents.enabled", ""); +lockPref("network.IDN_show_punycode", ""); +lockPref("extensions.pocket.enabled", ""); +lockPref("extensions.pocket.site", ""); +lockPref("extensions.pocket.oAuthConsumerKey", ""); +lockPref("extensions.pocket.api", ""); +lockPref("browser.aboutHomeSnippets.updateUrl", ""); +lockPref("general.buildID.override", ""); +lockPref("browser.startup.homepage_override.buildID", ""); +lockPref("browser.send_pings", ""); +lockPref("browser.send_pings.require_same_host", ""); +lockPref("browser.cache.offline.enable", ""); +lockPref("network.prefetch-next", ""); +lockPref("network.http.speculative-parallel-limit", ""); +lockPref("media.peerconnection.enabled", ""); +lockPref("dom.enable_performance", ""); +lockPref("dom.enable_performance_navigation_timing", ""); +lockPref("dom.enable_user_timing", ""); +lockPref("dom.webaudio.enabled", ""); +lockPref("geo.wifi.logging.enabled", ""); +lockPref("beacon.enabled", ""); +lockPref("media.webspeech.recognition.enable", ""); +lockPref("dom.vr.enabled", ""); +lockPref("dom.vibrator.enabled", ""); +lockPref("browser.search.region", ""); +lockPref("browser.search.geoip.url", ""); +lockPref("browser.search.geoSpecificDefaults.url", ""); +lockPref("browser.search.geoSpecificDefaults", ""); +lockPref("browser.urlbar.trimURLs", ""); +lockPref("browser.fixup.alternate.enabled", ""); +lockPref("browser.fixup.hide_user_pass", ""); +lockPref("network.manage-offline-status", ""); +lockPref("security.fileuri.strict_origin_policy", ""); +lockPref("gfx.font_rendering.opentype_svg.enabled", ""); +lockPref("network.protocol-handler.warn-external-default", ""); +lockPref("network.protocol-handler.external.http", ""); +lockPref("network.protocol-handler.external.https", ""); +lockPref("network.protocol-handler.external.javascript", ""); +lockPref("network.protocol-handler.external.moz-extension", ""); +lockPref("network.protocol-handler.external.ftp", ""); +lockPref("network.protocol-handler.external.file", ""); +lockPref("network.protocol-handler.external.about", ""); +lockPref("network.protocol-handler.external.chrome", ""); +lockPref("network.protocol-handler.external.blob", ""); +lockPref("network.protocol-handler.external.data", ""); +lockPref("network.protocol-handler.expose-all", ""); +lockPref("network.protocol-handler.expose.http", ""); +lockPref("network.protocol-handler.expose.https", ""); +lockPref("network.protocol-handler.expose.javascript", ""); +lockPref("network.protocol-handler.expose.moz-extension", ""); +lockPref("network.protocol-handler.expose.ftp", ""); +lockPref("network.protocol-handler.expose.file", ""); +lockPref("network.protocol-handler.expose.about", ""); +lockPref("network.protocol-handler.expose.chrome", ""); +lockPref("network.protocol-handler.expose.blob", ""); +lockPref("network.protocol-handler.expose.data", ""); +lockPref("security.dialog_enable_delay", ""); +defaultPref("extensions.getAddons.cache.enabled", ""); +lockPref("lightweightThemes.update.enabled", ""); +lockPref("lightweightThemes.persisted.headerURL", ""); +lockPref("lightweightThemes.persisted.footerURL", ""); +lockPref("plugin.state.flash", ""); +lockPref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", ""); +lockPref("dom.ipc.plugins.reportCrashURL", ""); +lockPref("shumway.disabled", ""); +lockPref("plugin.state.libgnome-shell-browser-plugin", ""); +lockPref("plugins.click_to_play", ""); +lockPref("plugin.sessionPermissionNow.intervalInMinutes", ""); +defaultPref("extensions.update.enabled", ""); +lockPref("extensions.blocklist.enabled", ""); +lockPref("extensions.systemAddon.update.enabled", ""); +lockPref("devtools.webide.enabled", ""); +lockPref("devtools.webide.autoinstallADBExtension", ""); +lockPref("devtools.remote.adb.extensionURL", ""); +lockPref("devtools.remote.adb.extensionID", ""); +lockPref("devtools.debugger.force-local", ""); +lockPref("network.allow-experiments", ""); +lockPref("browser.tabs.crashReporting.sendReport", ""); +lockPref("browser.crashReports.unsubmittedCheck.enabled", ""); +lockPref("browser.crashReports.unsubmittedCheck.autoSubmit2", ""); +lockPref("app.shield.optoutstudies.enabled", ""); +lockPref("browser.newtabpage.activity-stream.feeds.section.topstories", ""); +lockPref("browser.newtabpage.activity-stream.section.highlights.includePocket", ""); +lockPref("browser.newtabpage.activity-stream.showSponsored", ""); +lockPref("browser.newtabpage.activity-stream.aboutHome.enabled", ""); +lockPref("browser.newtabpage.activity-stream.asrouter.messageProviders", ""); +lockPref("browser.newtabpage.activity-stream.asrouter.devtoolsEnableds", ""); +lockPref("browser.newtabpage.activity-stream.telemetry", ""); +lockPref("browser.newtabpage.activity-stream.telemetry.ping.endpoint", ""); +lockPref("browser.newtabpage.activity-stream.feeds.telemetry", ""); +lockPref("browser.newtabpage.activity-stream.feeds.snippets", ""); +lockPref("browser.newtabpage.activity-stream.disableSnippets", ""); +lockPref("browser.newtabpage.activity-stream.default.sites", ""); +lockPref("browser.newtabpage.activity-stream.discoverystream.config", ""); +lockPref("browser.newtabpage.activity-stream.discoverystream.endpoints", ""); +lockPref("browser.newtabpage.activity-stream.feeds.asrouterfeed", ""); +lockPref("browser.newtabpage.activity-stream.feeds.discoverystreamfeed", ""); +lockPref("browser.newtabpage.activity-stream.feeds.newtabinit", ""); +lockPref("browser.newtabpage.activity-stream.feeds.places", ""); +lockPref("browser.newtabpage.activity-stream.feeds.systemtick", ""); +lockPref("browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar", ""); +lockPref("browser.newtab.preload", ""); +lockPref("browser.urlbar.suggest.searches", ""); +lockPref("browser.urlbar.userMadeSearchSuggestionsChoice", ""); +lockPref("browser.search.update", ""); +lockPref("network.captive-portal-service.enabled", ""); +lockPref("network.negotiate-auth.allow-insecure-ntlm-v1", ""); +lockPref("network.negotiate-auth.allow-insecure-ntlm-v1-https", ""); +lockPref("signon.formlessCapture.enabled", ""); +lockPref("browser.helperApps.deleteTempFileOnExit", ""); +lockPref("browser.pagethumbnails.capturing_disabled", ""); + + +// ghacks user.js + +lockPref("toolkit.coverage.endpoint.base", ""); +lockPref("toolkit.coverage.opt-out", ""); +lockPref("browser.download.manager.addToRecentDocs", ""); +lockPref("browser.download.hide_plugins_without_extensions", ""); +lockPref("webchannel.allowObject.urlWhitelist", ""); +lockPref("browser.cache.offline.insecure.enable", ""); +lockPref("network.http.redirection-limit", ""); +lockPref("offline-apps.allow_by_default", ""); +lockPref("extensions.enabledScopes", ""); +lockPref("extensions.autoDisableScopes", ""); +lockPref("xpinstall.whitelist.required", ""); +lockPref("dom.push.enabled", ""); +lockPref("dom.push.connection.enabled", ""); +lockPref("dom.push.serverURL", ""); +lockPref("dom.push.userAgentID", ""); +lockPref("security.data_uri.block_toplevel_data_uri_navigations", ""); +lockPref("ui.use_standins_for_native_colors", ""); +lockPref("services.blocklist.onecrl.collection", ""); +lockPref("services.blocklist.addons.collection", ""); +lockPref("services.blocklist.plugins.collection", ""); +lockPref("services.blocklist.gfx.collection", ""); +lockPref("browser.startup.blankWindow", ""); +lockPref("dom.event.highrestimestamp.enabled", ""); +lockPref("privacy.trackingprotection.introURL", ""); +lockPref("network.http.altsvc.enabled", ""); +lockPref("network.http.altsvc.oe", ""); +lockPref("network.file.disable_unc_paths", ""); +lockPref("network.gio.supported-protocols", ""); +lockPref("browser.urlbar.usepreloadedtopurls.enabled", ""); +lockPref("browser.urlbar.speculativeConnect.enabled", ""); +lockPref("browser.urlbar.oneOffSearches", ""); +lockPref("network.auth.subresource-img-cross-origin-http-auth-allow", ""); +lockPref("browser.shell.shortcutFavicons", ""); +lockPref("alerts.showFavicons", ""); +lockPref("security.ssl.require_safe_negotiation", ""); +lockPref("security.tls.enable_0rtt_data", ""); +lockPref("browser.xul.error_pages.expert_bad_cert", ""); +lockPref("font.blacklist.underline_offset", ""); +lockPref("gfx.font_rendering.graphite.enabled", ""); +lockPref("network.http.referer.XOriginTrimmingPolicy", ""); +lockPref("network.http.referer.spoofSource", ""); +lockPref("plugin.default.state", ""); +lockPref("plugin.defaultXpi.state", ""); +lockPref("canvas.capturestream.enabled", ""); +lockPref("dom.imagecapture.enabled", ""); +lockPref("gfx.offscreencanvas.enabled", ""); +lockPref("dom.disable_window_open_feature.close", ""); +lockPref("dom.disable_window_open_feature.location", ""); +lockPref("dom.disable_window_open_feature.menubar", ""); +lockPref("dom.disable_window_open_feature.minimizable", ""); +lockPref("dom.disable_window_open_feature.personalbar", ""); +lockPref("dom.disable_window_open_feature.resizable", ""); +lockPref("dom.disable_window_open_feature.status", ""); +lockPref("dom.disable_window_open_feature.titlebar", ""); +lockPref("dom.disable_window_open_feature.toolbar", ""); +lockPref("dom.disable_window_move_resize", ""); +lockPref("dom.IntersectionObserver.enabled", ""); +lockPref("accessibility.force_disabled", ""); +lockPref("browser.uitour.enabled", ""); +lockPref("browser.uitour.url", ""); +lockPref("middlemouse.contentLoadURL", ""); +lockPref("permissions.manager.defaultsUrl", ""); + + +// ESR 60 + +lockPref("browser.search.countryCode", ""); +lockPref("experiments.activeExperiment", ""); +lockPref("experiments.enabled", ""); +lockPref("experiments.manifest.uri", ""); +lockPref("experiments.supported", ""); +lockPref("network.jar.block-remote-files", ""); +lockPref("network.jar.open-unsafe-types", ""); +lockPref("plugin.state.java", ""); +lockPref("services.blocklist.update_enabled", ""); +lockPref("shield.savant.enabled", ""); + + +// Windows + +lockPref("webgl.dxgl.enabled", ""); +lockPref("plugin.scan.plid.all", ""); +lockPref("browser.taskbar.lists.enabled", ""); +lockPref("browser.taskbar.lists.frequent.enabled", ""); +lockPref("browser.taskbar.lists.recent.enabled", ""); +lockPref("browser.taskbar.lists.tasks.enabled", ""); +lockPref("browser.taskbar.previews.enable", ""); +lockPref("network.protocol-handler.external.ms-windows-store", ""); +lockPref("app.update.service.enabled", ""); +lockPref("toolkit.winRegisterApplicationRestart", ""); +lockPref("security.family_safety.mode", ""); + + +// Fingerprinting + +defaultPref("privacy.resistFingerprinting", ""); +defaultPref("privacy.resistFingerprinting.block_mozAddonManager", ""); + + +// Controversial + +lockPref("dom.indexedDB.enabled", ""); +lockPref("dom.w3c_pointer_events.enabled", ""); + + +// Defaulting + +defaultPref("privacy.spoof_english", ""); +defaultPref("network.http.referer.defaultPolicy", ""); +defaultPref("network.http.referer.defaultPolicy.pbmode", ""); +defaultPref("privacy.userContext.ui.enabled", ""); +defaultPref("privacy.userContext.enabled", ""); +defaultPref("privacy.userContext.longPressBehavior", ""); +defaultPref("browser.download.autohideButton", ""); +defaultPref("accessibility.typeaheadfind", ""); +defaultPref("clipboard.autocopy", ""); +defaultPref("layout.spellcheckDefault", ""); +defaultPref("browser.tabs.closeWindowWithLastTab", ""); +defaultPref("general.autoScroll", ""); +defaultPref("pdfjs.disabled", ""); +defaultPref("dom.disable_open_during_load", ""); +defaultPref("browser.link.open_newwindow", ""); +defaultPref("browser.link.open_newwindow.restriction", ""); +defaultPref("network.proxy.autoconfig_url", ""); +defaultPref("network.proxy.autoconfig_url.include_path", ""); +defaultPref("network.proxy.socks_remote_dns", ""); +defaultPref("network.proxy.socks_version", ""); +defaultPref("browser.tabs.loadBookmarksInTabs", ""); +defaultPref("devtools.debugger.remote-enabled", ""); +defaultPref("devtools.chrome.enabled", ""); +defaultPref("general.useragent.site_specific_overrides", ""); +defaultPref("extensions.ui.experiment.hidden", ""); + +// User Settings + +// User Settings: Proxy + + +// User Settings: DRM/CDM + +lockPref("media.eme.enabled", ""); +lockPref("media.gmp-provider.enabled", ""); +lockPref("media.gmp-manager.url", ""); +lockPref("media.gmp-manager.url.override", ""); +lockPref("media.gmp-manager.updateEnabled", ""); +lockPref("media.gmp.trial-create.enabled", ""); +lockPref("media.gmp-widevinecdm.visible", ""); +lockPref("media.gmp-widevinecdm.enabled", ""); +lockPref("media.gmp-widevinecdm.autoupdate", ""); +lockPref("media.gmp-gmpopenh264.enabled", ""); +lockPref("media.gmp-gmpopenh264.autoupdate", ""); +defaultPref("media.peerconnection.video.enabled", ""); +lockPref("media.gmp-eme-adobe.enabled", ""); +lockPref("media.gmp-manager.certs.2.commonName", ""); +lockPref("media.gmp-manager.certs.1.commonName", ""); + +// User Settings: Default Browser + +lockPref("browser.shell.checkDefaultBrowser", ""); + +// User Settings: Autoplay + +lockPref("media.autoplay.default", ""); + +// User Settings: Start Page + +lockPref("browser.newtabpage.activity-stream.feeds.section.highlights", ""); +lockPref("browser.newtabpage.activity-stream.section.highlights.includeBookmarks", ""); +lockPref("browser.newtabpage.activity-stream.section.highlights.includeDownloads", ""); +lockPref("browser.newtabpage.activity-stream.section.highlights.includeVisited", ""); +lockPref("browser.newtabpage.activity-stream.prerender", ""); + +// User Settings: History + +lockPref("browser.sessionhistory.max_entries", ""); +lockPref("browser.urlbar.filter.javascript", ""); +defaultPref("browser.uiCustomization.state", ""); +defaultPref("browser.uidensity", ""); +defaultPref("browser.tabs.drawInTitlebar", ""); +pref("startup.homepage_override_url", ""); +pref("startup.homepage_welcome_url", ""); +pref("startup.homepage_welcome_url.additional", ""); +defaultPref("privacy.clearOnShutdown.offlineApps", ""); +defaultPref("privacy.cpd.offlineApps", ""); +defaultPref("privacy.sanitize.timeSpan", ""); +defaultPref("browser.formfill.enable", ""); +defaultPref("privacy.sanitize.sanitizeOnShutdown", ""); +defaultPref("places.history.enabled", ""); +defaultPref("places.history.expiration.max_pages", ""); +defaultPref("privacy.history.custom", ""); + +// User Settings: Do Not Track + +lockPref("privacy.donottrackheader.enabled", ""); +lockPref("privacy.donottrackheader.value", ""); + +// User Settings: Theming + + +// User Settings: Miscellaneous + +lockPref("dom.disable_beforeunload", ""); +lockPref("permissions.default.geo", ""); + +// User Settings: Tracking Protection + +lockPref("privacy.trackingprotection.enabled", ""); +lockPref("privacy.trackingprotection.annotate_channels", ""); +lockPref("privacy.trackingprotection.lower_network_priority", ""); +lockPref("privacy.trackingprotection.pbmode.enabled", ""); +lockPref("urlclassifier.trackingTable", ""); +lockPref("pref.privacy.disable_button.change_blocklist", ""); +lockPref("browser.contentblocking.reportBreakage.enabled", ""); +lockPref("browser.contentblocking.reportBreakage.url", ""); +lockPref("browser.contentblocking.rejecttrackers.reportBreakage.enabled", ""); +lockPref("browser.contentblocking.rejecttrackers.ui.enabled", ""); +lockPref("browser.contentblocking.trackingprotection.control-center.ui.enabled", ""); +lockPref("browser.contentblocking.trackingprotection.ui.enabled", ""); + +// User Settings: Session + +lockPref("browser.sessionstore.privacy_level", ""); +lockPref("browser.sessionstore.interval", ""); + +// User Settings: Autofill + +defaultPref("extensions.formautofill.addresses.enabled", ""); +defaultPref("extensions.formautofill.available", ""); +defaultPref("extensions.formautofill.creditCards.enabled", ""); +defaultPref("extensions.formautofill.heuristics.enabled", ""); +lockPref("signon.autofillForms", ""); +lockPref("signon.autofillForms.http", ""); + +// User Settings: Password Manager + +lockPref("signon.rememberSignons", ""); +lockPref("services.sync.prefs.sync.signon.rememberSignons", ""); +lockPref("signon.storeWhenAutocompleteOff", ""); + +// User Settings: Cookies + +defaultPref("network.cookie.cookieBehavior", ""); +defaultPref("network.cookie.lifetimePolicy", ""); +lockPref("network.cookie.same-site.enabled", ""); +lockPref("network.cookie.leave-secure-alone", ""); +defaultPref("network.cookie.thirdparty.sessionOnly", ""); +lockPref("network.cookie.thirdparty.nonsecureSessionOnly", ""); + +// User Settings: WebRTC + +defaultPref("media.navigator.enabled", ""); +defaultPref("media.navigator.video.enabled", ""); +defaultPref("media.getusermedia.browser.enabled", ""); +defaultPref("media.getusermedia.screensharing.enabled", ""); +defaultPref("media.getusermedia.audiocapture.enabled", ""); +defaultPref("media.peerconnection.use_document_iceservers", ""); +defaultPref("media.peerconnection.identity.enabled", ""); +defaultPref("media.peerconnection.identity.timeout", ""); +defaultPref("media.peerconnection.turn.disable", ""); +defaultPref("media.peerconnection.ice.tcp", ""); +defaultPref("media.peerconnection.ice.default_address_only", ""); +defaultPref("media.peerconnection.ice.no_host", ""); + +// User Settings: DNS + +lockPref("network.trr.mode", ""); +lockPref("network.trr.bootstrapAddress", ""); +lockPref("network.trr.uri", ""); +lockPref("network.dns.disableIPv6", ""); +lockPref("network.dns.disablePrefetch", ""); +lockPref("network.dns.disablePrefetchFromHTTPS", ""); + +// Deprecated + +// Deprecated: Inactive + +defaultPref("xpinstall.signatures.required", ""); +defaultPref("toolkit.legacyUserProfileCustomizations.stylesheets", ""); +defaultPref("devtools.selfxss.count", ""); + +// Deprecated: Active + +lockPref("browser.onboarding.enabled", ""); +lockPref("devtools.webide.autoinstallADBHelper", ""); +lockPref("dom.mozTCPSocket.enabled", ""); +lockPref("app.update.enabled", ""); +lockPref("browser.bookmarks.max_backups", ""); +lockPref("browser.casting.enabled", ""); +lockPref("browser.newtabpage.activity-stream.enabled", ""); +lockPref("browser.newtabpage.directory.ping", ""); +lockPref("browser.newtabpage.directory.source", ""); +lockPref("browser.newtabpage.enhanced", ""); +lockPref("browser.pocket.enabled", ""); +lockPref("browser.selfsupport.url", ""); +lockPref("browser.startup.homepage_override.mstone", ""); +lockPref("camera.control.face_detection.enabled", ""); +lockPref("datareporting.healthreport.about.reportUrl", ""); +lockPref("datareporting.healthreport.service.enabled", ""); +lockPref("device.sensors.enabled", ""); +lockPref("devtools.webide.autoinstallFxdtAdapters", ""); +lockPref("devtools.webide.adaptersAddonURL", ""); +lockPref("dom.enable_resource_timing", ""); +lockPref("dom.flyweb.enabled", ""); +lockPref("dom.gamepad.enabled", ""); +lockPref("dom.netinfo.enabled", ""); +lockPref("dom.push.udp.wakeupEnabled", ""); +lockPref("dom.telephony.enabled", ""); +lockPref("extensions.shield-recipe-client.enabled", ""); +lockPref("loop.logDomains", ""); +lockPref("media.video_stats.enabled", ""); +lockPref("network.websocket.enabled", ""); +lockPref("reader.parse-on-load.enabled", ""); +lockPref("security.xpconnect.plugin.unrestricted", ""); +lockPref("social.directories", ""); +lockPref("social.remote-install.enabled", ""); +lockPref("social.whitelist", ""); +lockPref("security.ssl3.ecdhe_ecdsa_rc4_128_sha", ""); +lockPref("security.ssl3.ecdhe_rsa_rc4_128_sha", ""); +lockPref("security.ssl3.rsa_rc4_128_md5", ""); +lockPref("security.ssl3.rsa_rc4_128_sha", ""); +lockPref("security.tls.unrestricted_rc4_fallback", ""); diff --git a/librewolf.cr b/librewolf.cr deleted file mode 100644 index 82e65ec..0000000 --- a/librewolf.cr +++ /dev/null @@ -1,133 +0,0 @@ -require "json" -require "ecr" -require "file_utils" - -module LibrewolfParser - - class LibrewolfSettings - include JSON::Serializable - - property name : String - - property subcategory : String - - property notes : String - - property section : Array(SettingsSection) - end - - class SettingsSection - include JSON::Serializable - - property comments : String - - property notes : String? - - @[JSON::Field(key: "type")] - property setting_type : String - - property key : String - - property value : ValueUnion - - property enabled : Bool? - - property references : Array(String)? - end - - alias ValueUnion = Int32 | Bool | String - - def self.parse_json_files(config_directory) - config_jsons = Dir.glob(config_directory.path + "/*.json") - - config_directory.each_child do |child| - child_path = Path[config_directory.path].join(child) - next unless File.directory?(child_path) && !Dir.empty?(child_path.to_s) - - config_jsons += Dir.glob("#{child_path}/*.json") - end - - settings = {} of String => LibrewolfSettings - config_jsons.each { |config| settings[Path[config].basename.chomp(".json")] = LibrewolfSettings.from_json(File.read(config)) } - # settings = config_jsons.map { |config| [LibrewolfSettings.from_json(File.read(config)), Path[config].basename.chomp(".json")] } - # settings = settings_with_filenames.map { |config| config.last } - - main_settings = settings.select { |_fname, setting| setting.subcategory.blank? } - sub_settings = settings.reject { |_fname, setting| setting.subcategory.blank? } - subcategories = sub_settings.map { |_fname, setting| setting.subcategory }.uniq - subcategory_settings = {} of String => typeof(sub_settings) - subcategories.each do |category| - subcategory_settings[category] = sub_settings.select { |_fname, setting| setting.subcategory == category } - end - - [main_settings, subcategory_settings] - end - - def self.build_cfg(main_settings, subcategory_settings) - main_settings = main_settings.map { |_fname, setting| setting } - sub_settings = {} of String => Array(LibrewolfSettings) - subcategory_settings.each do |category, settings| - sub_settings[category] = settings.map { |_fname, setting| setting } - end - - subcategory_settings = sub_settings - - tempfile = File.tempfile("librewolf.cfg") - path = tempfile.path - - ecr = ECR.render("templates/librewolf.cfg.ecr") - tempfile.puts(ecr) - - tempfile.close - path - end - - def self.build_docs(main_settings, subcategory_settings) - tempdir = Dir.tempdir - docs_dir = Path[tempdir].join("docs") - settings_docs_dir = Path[tempdir].join("docs", "settings") - Dir.mkdir_p(settings_docs_dir.to_s) - - main_settings.each do |filename, setting_json| - filename = filename + ".md" - File.open(settings_docs_dir.join(filename).to_s, "w") do |file| - file.puts(ECR.render("templates/doc.md.ecr")) - end - end - - subcategory_settings.each do |category, sub_settings| - title = category - category_dir = settings_docs_dir.join(title.downcase.split(" ").join("_")) - Dir.mkdir_p(category_dir.to_s) - File.open(category_dir.join("_index.md").to_s, "w") do |file| - file.puts(ECR.render("templates/doc_index.md.ecr")) - end - sub_settings.each do |filename, setting_json| - filename = filename + ".md" - File.open(category_dir.join(filename).to_s, "w") do |file| - file.puts(ECR.render("templates/doc.md.ecr")) - end - end - end - docs_dir.to_s - end -end - -config_directory = Dir.new("./librewolf.cfg") -main_settings, subcategory_settings = LibrewolfParser.parse_json_files(config_directory) -exit unless main_settings.is_a?(Hash(String, LibrewolfParser::LibrewolfSettings)) && subcategory_settings.is_a?(Hash(String, Hash(String, LibrewolfParser::LibrewolfSettings))) - - -tempfile = LibrewolfParser.build_cfg(main_settings, subcategory_settings) -tempdir = LibrewolfParser.build_docs(main_settings, subcategory_settings) - -FileUtils.rm_rf("./dist") if Dir.exists?("./dist") -Dir.mkdir_p("./dist") -dist_directory = Dir.new("./dist") -dist_file = Path[dist_directory.path].join("librewolf.cfg") -FileUtils.cp(tempfile, dist_file.to_s) -FileUtils.rm(tempfile) - -# chmod! -FileUtils.cp_r(tempdir, Path[dist_directory.path].join("docs").to_s) -FileUtils.rm_r(tempdir) diff --git a/shard.yml b/shard.yml new file mode 100644 index 0000000..cbb087d --- /dev/null +++ b/shard.yml @@ -0,0 +1,19 @@ +name: librewolf_parser +version: 0.1.0 + +authors: + - ohfp <1813007-ohfp@users.noreply.gitlab.com> + +# dependencies: + # markd: + # github: icyleaf/markd + # tablo: + # github: hutou/tablo + +targets: + librewolf_parser: + main: src/librewolf_parser.cr + +crystal: 0.34.0 + +license: MPL2 diff --git a/src/librewolf_parser.cr b/src/librewolf_parser.cr new file mode 100644 index 0000000..cef2988 --- /dev/null +++ b/src/librewolf_parser.cr @@ -0,0 +1,64 @@ +require "json" +require "ecr" +require "file_utils" +require "./librewolf_parser/parse_json_files.cr" +require "./librewolf_parser/builders.cr" + +module LibrewolfParser + VERSION = "0.1.0" + + class LibrewolfSettings + include JSON::Serializable + + property name : String + + property subcategory : String + + property notes : String + + property section : Array(SettingsSection) + end + + class SettingsSection + include JSON::Serializable + + property comments : String + + property notes : String? + + @[JSON::Field(key: "type")] + property setting_type : String + + property key : String + + property value : ValueUnion + + property enabled : Bool? + + property references : Array(String)? + end + + alias ValueUnion = Int32 | Bool | String +end + +config_directory = Dir.new("./librewolf.cfg") +main_settings, subcategory_settings = LibrewolfParser.parse_json_files(config_directory) + +# help the compiler with inferring some types +exit unless main_settings.is_a?(Hash(String, LibrewolfParser::LibrewolfSettings)) && subcategory_settings.is_a?(Hash(String, Hash(String, LibrewolfParser::LibrewolfSettings))) + +cfg_tempfile = LibrewolfParser.build_cfg(main_settings, subcategory_settings) +docs_tempdir = LibrewolfParser.build_docs(main_settings, subcategory_settings) + +# TODO: should the Makefile do this? +FileUtils.rm_rf("./dist") if Dir.exists?("./dist") +Dir.mkdir_p("./dist") +dist_directory = Dir.new("./dist") +dist_file = Path[dist_directory.path].join("librewolf.cfg") + +FileUtils.cp(cfg_tempfile, dist_file.to_s) +FileUtils.rm(cfg_tempfile) +File.chmod(dist_file.to_s, 0o644) + +FileUtils.cp_r(docs_tempdir, Path[dist_directory.path].join("docs").to_s) +FileUtils.rm_r(docs_tempdir) diff --git a/src/librewolf_parser/builders.cr b/src/librewolf_parser/builders.cr new file mode 100644 index 0000000..2f4e40f --- /dev/null +++ b/src/librewolf_parser/builders.cr @@ -0,0 +1,50 @@ +module LibrewolfParser + def self.build_cfg(main_settings, subcategory_settings) + main_settings = main_settings.map { |_fname, setting| setting } + sub_settings = {} of String => Array(LibrewolfSettings) + subcategory_settings.each do |category, settings| + sub_settings[category] = settings.map { |_fname, setting| setting } + end + + subcategory_settings = sub_settings + + tempfile = File.tempfile("librewolf.cfg") + path = tempfile.path + + ecr = ECR.render("templates/librewolf.cfg.ecr") + tempfile.puts(ecr) + + tempfile.close + path + end + + def self.build_docs(main_settings, subcategory_settings) + tempdir = Dir.tempdir + docs_dir = Path[tempdir].join("docs") + settings_docs_dir = Path[tempdir].join("docs", "settings") + Dir.mkdir_p(settings_docs_dir.to_s) + + main_settings.each do |filename, setting_json| + filename = filename + ".md" + File.open(settings_docs_dir.join(filename).to_s, "w") do |file| + file.puts(ECR.render("templates/doc.md.ecr")) + end + end + + subcategory_settings.each do |category, sub_settings| + title = category + category_dir = settings_docs_dir.join(title.downcase.split(" ").join("_")) + Dir.mkdir_p(category_dir.to_s) + File.open(category_dir.join("_index.md").to_s, "w") do |file| + file.puts(ECR.render("templates/doc_index.md.ecr")) + end + sub_settings.each do |filename, setting_json| + filename = filename + ".md" + File.open(category_dir.join(filename).to_s, "w") do |file| + file.puts(ECR.render("templates/doc.md.ecr")) + end + end + end + docs_dir.to_s + end +end diff --git a/src/librewolf_parser/parse_json_files.cr b/src/librewolf_parser/parse_json_files.cr new file mode 100644 index 0000000..0164a16 --- /dev/null +++ b/src/librewolf_parser/parse_json_files.cr @@ -0,0 +1,25 @@ +module LibrewolfParser + def self.parse_json_files(config_directory) + config_jsons = Dir.glob(config_directory.path + "/*.json") + + config_directory.each_child do |child| + child_path = Path[config_directory.path].join(child) + next unless File.directory?(child_path) && !Dir.empty?(child_path.to_s) + + config_jsons += Dir.glob("#{child_path}/*.json") + end + + settings = {} of String => LibrewolfSettings + config_jsons.each { |config| settings[Path[config].basename.chomp(".json")] = LibrewolfSettings.from_json(File.read(config)) } + + main_settings = settings.select { |_fname, setting| setting.subcategory.blank? } + sub_settings = settings.reject { |_fname, setting| setting.subcategory.blank? } + subcategories = sub_settings.map { |_fname, setting| setting.subcategory }.uniq + subcategory_settings = {} of String => typeof(sub_settings) + subcategories.each do |category| + subcategory_settings[category] = sub_settings.select { |_fname, setting| setting.subcategory == category } + end + + [main_settings, subcategory_settings] + end +end