mirror of
https://github.com/PurpleI2P/i2pdbrowser.git
synced 2024-12-06 19:16:29 +01:00
Compare commits
31 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4b161a4839 | |||
| 44307ccfc8 | |||
| a312c404d1 | |||
| f344f8767f | |||
| a6f28e6fe0 | |||
| 677f1671c7 | |||
| 186c28c4a2 | |||
| e5f24ca9d4 | |||
| 41b610553d | |||
| 9f4ce50f01 | |||
| 11bf97797c | |||
| 059cd2a9c9 | |||
| f06eee67f0 | |||
| cd5da5f1a9 | |||
| 4fd1d4f0da | |||
| 6d60f9dae1 | |||
| 34b8bdaec1 | |||
| fd635c9997 | |||
| 2fd7967b17 | |||
| 98be313ff7 | |||
| e2f4436f38 | |||
| cdcfdb06e8 | |||
| b65fdb3f13 | |||
| a94d7d6aa8 | |||
| eb32de6eee | |||
| 97afe240e5 | |||
| 42e191538d | |||
| d312a41931 | |||
| 0a1be3ac45 | |||
| 3fc37f5da4 | |||
| 395a547a95 |
@@ -1 +1,8 @@
|
||||
.DS_Store
|
||||
/*.tar.gz
|
||||
/*.zip
|
||||
/*.7z
|
||||
/*.exe
|
||||
|
||||
# Hash sums
|
||||
/SHA512SUMS*
|
||||
+2
-2
@@ -1,3 +1,3 @@
|
||||
/app
|
||||
/browser
|
||||
/data
|
||||
/firefox-portable
|
||||
/start-i2pd-browser.desktop
|
||||
|
||||
+50
-44
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Copyright (c) 2013-2019, The PurpleI2P Project
|
||||
# Copyright (c) 2013-2022, The PurpleI2P Project
|
||||
# This file is part of Purple I2P project and licensed under BSD3
|
||||
# See full license text in LICENSE file at top of project tree
|
||||
|
||||
@@ -12,14 +12,23 @@ cd $dir
|
||||
|
||||
arch=$(uname -m)
|
||||
language=$(echo $LANG | cut -c-5 | sed s/_/-/g)
|
||||
version="60.7.1esr"
|
||||
version="91.9.1esr"
|
||||
application="firefox"
|
||||
ftpmirror="https://ftp.mozilla.org/pub/$application/releases/$version"
|
||||
|
||||
if [ "$arch" = "amd64" ]; then # OpenBSD (and maybe FreeBSD) returns amd64 as architecture instead x86_64
|
||||
arch=x86_64
|
||||
fi
|
||||
|
||||
curlfind=$(which curl)
|
||||
if [ -z $curlfind ]; then
|
||||
echo "'cURL' does not seem to be installed. The script needs it!";
|
||||
exit 1;
|
||||
echo "'cURL' does not seem to be installed. The script needs it!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# We support only English (US) and Russian
|
||||
if [ "$language" != "ru" ]; then
|
||||
language="en-US"
|
||||
fi
|
||||
|
||||
echo "This script is preparing $application $version for use with I2Pd"
|
||||
@@ -30,27 +39,27 @@ filepath="linux-$arch/$language/$file"
|
||||
echo "Downloading $application..."
|
||||
curl -L -f -# -O $ftpmirror/$filepath
|
||||
if [ $? -ne 0 ]; then # Not found error, trying to cut language variable
|
||||
echo "[TRY 2] I'll try downloading Firefox with shorter language code";
|
||||
echo "[TRY 2] I'll try downloading Firefox with shorter language code"
|
||||
language=$(echo $language | cut -c-2)
|
||||
# re-create variable with cutted lang
|
||||
filepath="linux-$arch/$language/$file"
|
||||
curl -L -f -# -O $ftpmirror/$filepath
|
||||
if [ $? -ne 0 ]; then # Not found error, trying to download english version
|
||||
echo "[TRY 3] I'll try downloading Firefox with the English language code";
|
||||
echo "[TRY 3] I'll try downloading Firefox with the English language code"
|
||||
language="en_US"
|
||||
# re-create lang variable
|
||||
filepath="linux-$arch/$language/$file"
|
||||
curl -L -f -# -O $ftpmirror/$filepath
|
||||
if [ $? -ne 0 ]; then # After that i can say only that user haven't internet connection
|
||||
echo "[Error] Can't download file. Check your internet connectivity."
|
||||
exit 1;
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f $file ]; then
|
||||
echo "[Error] Can't find downloaded file. Does it really exist?"
|
||||
exit 1;
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Downloading checksum file and checking SHA512 checksum"
|
||||
@@ -59,7 +68,7 @@ recv_sum=$(grep "$filepath" SHA512SUMS | cut -c-128)
|
||||
file_sum=$(sha512sum $file | cut -c-128)
|
||||
if [ $recv_sum != $file_sum ]; then
|
||||
echo "[Error] File checksum failed!"
|
||||
exit 1;
|
||||
exit 1
|
||||
else
|
||||
echo "Checksum correct."
|
||||
rm SHA512SUMS
|
||||
@@ -68,51 +77,48 @@ fi
|
||||
echo "Extracting archive, please wait..."
|
||||
tar xfj $file
|
||||
rm $file
|
||||
mv $application ../app
|
||||
mkdir ../data
|
||||
mv $application ../browser
|
||||
mkdir ../browser/data
|
||||
|
||||
# Deleting some not needed files
|
||||
rm ../app/crashreporter*
|
||||
rm ../app/minidump-analyzer
|
||||
rm ../app/pingsender
|
||||
rm ../app/precomplete
|
||||
rm ../app/removed-files
|
||||
rm ../app/update*
|
||||
rm ../app/browser/blocklist.xml
|
||||
rm ../app/browser/crashreporter-override.ini
|
||||
rm ../app/browser/features/aushelper@mozilla.org.xpi
|
||||
rm ../app/browser/features/firefox@getpocket.com.xpi
|
||||
rm ../app/browser/features/followonsearch@mozilla.com.xpi
|
||||
rm ../app/browser/features/formautofill@mozilla.org.xpi
|
||||
rm ../app/browser/features/jaws-esr@mozilla.org.xpi
|
||||
rm ../app/browser/features/onboarding@mozilla.org.xpi
|
||||
rm ../app/browser/features/screenshots@mozilla.org.xpi
|
||||
rm -r ../app/dictionaries
|
||||
rm ../browser/crashreporter*
|
||||
rm ../browser/minidump-analyzer
|
||||
rm ../browser/pingsender
|
||||
rm ../browser/precomplete
|
||||
rm ../browser/removed-files
|
||||
rm ../browser/update*
|
||||
rm ../browser/Throbber-small.gif
|
||||
rm ../browser/browser/crashreporter-override.ini
|
||||
rm ../browser/browser/features/formautofill@mozilla.org.xpi
|
||||
rm ../browser/browser/features/screenshots@mozilla.org.xpi
|
||||
rm -r ../browser/icons
|
||||
# And edit some places
|
||||
sed -i 's/Enabled=1/Enabled=0/g' ../app/application.ini
|
||||
sed -i 's/ServerURL=.*/ServerURL=-/' ../app/application.ini
|
||||
# sed -i 's/Enabled=1/Enabled=0/g' ../app/webapprt/webapprt.ini
|
||||
# sed -i 's/ServerURL=.*/ServerURL=-/' ../app/webapprt/webapprt.ini
|
||||
sed -i 's/Enabled=1/Enabled=0/g' ../browser/application.ini
|
||||
sed -i 's/ServerURL=.*/ServerURL=-/' ../browser/application.ini
|
||||
# Done!
|
||||
|
||||
echo "Downloading language packs..."
|
||||
curl -L -f -# -o ../app/browser/extensions/langpack-ru@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/978562/russian_ru_language_pack-60.0buildid20180605171542-an+fx.xpi
|
||||
curl -L -f -# -o ../app/browser/extensions/langpack-en-US@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/978493/english_us_language_pack-60.0buildid20180605171542-an+fx.xpi
|
||||
mkdir ../browser/browser/extensions
|
||||
curl -L -f -# -o ../browser/browser/extensions/langpack-ru@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3829308/russian_ru_language_pack-91.0buildid20210823123856.xpi
|
||||
curl -L -f -# -o ../browser/browser/extensions/ruspell-wiktionary@addons.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3957330/2696307-1.35.xpi
|
||||
curl -L -f -# -o ../browser/browser/extensions/langpack-en-US@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3829281/english_us_language_pack-91.0buildid20210823123856.xpi
|
||||
curl -L -f -# -o ../browser/browser/extensions/en-US@dictionaries.addons.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3893473/us_english_dictionary-91.0.xpi
|
||||
|
||||
echo "Downloading NoScript extension..."
|
||||
curl -L -f -# -o ../app/browser/extensions/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi https://addons.mozilla.org/firefox/downloads/file/3028550/noscript_security_suite-10.6.3-an+fx.xpi
|
||||
curl -L -f -# -o ../browser/browser/extensions/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi https://addons.mozilla.org/firefox/downloads/file/3954910/noscript-11.4.6.xpi
|
||||
|
||||
echo "Adding standard configs..."
|
||||
cp profile/* ../data/
|
||||
cp -r preferences/* ../app/
|
||||
cp -r preferences/* ../browser/
|
||||
cp -r profile/* ../browser/data/
|
||||
|
||||
echo '#!/bin/sh' > "../${application}-portable"
|
||||
echo 'dir=${0%/*}' >> "../${application}-portable"
|
||||
echo 'if [ "$dir" = "$0" ]; then' >> "../${application}-portable"
|
||||
echo ' dir="."' >> "../${application}-portable"
|
||||
echo 'fi' >> "../${application}-portable"
|
||||
echo 'cd "$dir/app"' >> "../${application}-portable"
|
||||
echo './firefox -profile ../data -no-remote' >> "../${application}-portable"
|
||||
if [ "$language" = "ru" ]; then
|
||||
cp -r profile-ru/* ../browser/data/
|
||||
else
|
||||
cp -r profile-en/* ../browser/data/
|
||||
fi
|
||||
|
||||
echo "Copying Desktop launch scripts..."
|
||||
cp -r scripts/* ../browser/
|
||||
cp scripts/start-i2pd-browser.desktop ../
|
||||
|
||||
chmod +x "../$application-portable"
|
||||
echo ... finished
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 833 B |
Binary file not shown.
|
After Width: | Height: | Size: 2.1 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.7 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 5.6 KiB |
@@ -0,0 +1,363 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="512"
|
||||
height="512"
|
||||
version="1.1"
|
||||
id="svg118"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs92">
|
||||
<radialGradient
|
||||
id="g"
|
||||
cx="210%"
|
||||
cy="-100%"
|
||||
r="290%">
|
||||
<stop
|
||||
offset=".1"
|
||||
stop-color="#ffe226"
|
||||
id="stop2" />
|
||||
<stop
|
||||
offset=".79"
|
||||
stop-color="#ff7139"
|
||||
id="stop4" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="c"
|
||||
cx="49%"
|
||||
cy="40%"
|
||||
r="128%"
|
||||
gradientTransform="matrix(.82 0 0 1 .088 0)">
|
||||
<stop
|
||||
offset=".3"
|
||||
stop-color="#960e18"
|
||||
id="stop7" />
|
||||
<stop
|
||||
offset=".35"
|
||||
stop-color="#b11927"
|
||||
stop-opacity=".74"
|
||||
id="stop9" />
|
||||
<stop
|
||||
offset=".43"
|
||||
stop-color="#db293d"
|
||||
stop-opacity=".34"
|
||||
id="stop11" />
|
||||
<stop
|
||||
offset=".5"
|
||||
stop-color="#f5334b"
|
||||
stop-opacity=".09"
|
||||
id="stop13" />
|
||||
<stop
|
||||
offset=".53"
|
||||
stop-color="#ff3750"
|
||||
stop-opacity="0"
|
||||
id="stop15" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="d"
|
||||
cx="48%"
|
||||
cy="-12%"
|
||||
r="140%">
|
||||
<stop
|
||||
offset=".13"
|
||||
stop-color="#fff44f"
|
||||
id="stop18" />
|
||||
<stop
|
||||
offset=".53"
|
||||
stop-color="#ff980e"
|
||||
id="stop20" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="e"
|
||||
cx="22.76%"
|
||||
cy="110.11%"
|
||||
r="100%">
|
||||
<stop
|
||||
offset=".35"
|
||||
stop-color="#3a8ee6"
|
||||
id="stop23" />
|
||||
<stop
|
||||
offset=".67"
|
||||
stop-color="#9059ff"
|
||||
id="stop25" />
|
||||
<stop
|
||||
offset="1"
|
||||
stop-color="#c139e6"
|
||||
id="stop27" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="f"
|
||||
cx="52%"
|
||||
cy="33%"
|
||||
r="59%"
|
||||
gradientTransform="scale(.9 1)">
|
||||
<stop
|
||||
offset=".21"
|
||||
stop-color="#9059ff"
|
||||
stop-opacity="0"
|
||||
id="stop30" />
|
||||
<stop
|
||||
offset=".97"
|
||||
stop-color="#6e008b"
|
||||
stop-opacity=".6"
|
||||
id="stop32" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="b"
|
||||
cx="87.4%"
|
||||
cy="-12.9%"
|
||||
r="128%"
|
||||
gradientTransform="matrix(.8 0 0 1 .178 .129)">
|
||||
<stop
|
||||
offset=".13"
|
||||
stop-color="#ffbd4f"
|
||||
id="stop35" />
|
||||
<stop
|
||||
offset=".28"
|
||||
stop-color="#ff980e"
|
||||
id="stop37" />
|
||||
<stop
|
||||
offset=".47"
|
||||
stop-color="#ff3750"
|
||||
id="stop39" />
|
||||
<stop
|
||||
offset=".78"
|
||||
stop-color="#eb0878"
|
||||
id="stop41" />
|
||||
<stop
|
||||
offset=".86"
|
||||
stop-color="#e50080"
|
||||
id="stop43" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="h"
|
||||
cx="84%"
|
||||
cy="-41%"
|
||||
r="180%">
|
||||
<stop
|
||||
offset=".11"
|
||||
stop-color="#fff44f"
|
||||
id="stop46" />
|
||||
<stop
|
||||
offset=".46"
|
||||
stop-color="#ff980e"
|
||||
id="stop48" />
|
||||
<stop
|
||||
offset=".72"
|
||||
stop-color="#ff3647"
|
||||
id="stop50" />
|
||||
<stop
|
||||
offset=".9"
|
||||
stop-color="#e31587"
|
||||
id="stop52" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="i"
|
||||
cx="16.1%"
|
||||
cy="-18.6%"
|
||||
r="348.8%"
|
||||
gradientTransform="scale(1 .47) rotate(84 .279 -.297)">
|
||||
<stop
|
||||
offset="0"
|
||||
stop-color="#fff44f"
|
||||
id="stop55" />
|
||||
<stop
|
||||
offset=".3"
|
||||
stop-color="#ff980e"
|
||||
id="stop57" />
|
||||
<stop
|
||||
offset=".57"
|
||||
stop-color="#ff3647"
|
||||
id="stop59" />
|
||||
<stop
|
||||
offset=".74"
|
||||
stop-color="#e31587"
|
||||
id="stop61" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="j"
|
||||
cx="18.9%"
|
||||
cy="-42.5%"
|
||||
r="238.4%">
|
||||
<stop
|
||||
offset=".14"
|
||||
stop-color="#fff44f"
|
||||
id="stop64" />
|
||||
<stop
|
||||
offset=".48"
|
||||
stop-color="#ff980e"
|
||||
id="stop66" />
|
||||
<stop
|
||||
offset=".66"
|
||||
stop-color="#ff3647"
|
||||
id="stop68" />
|
||||
<stop
|
||||
offset=".9"
|
||||
stop-color="#e31587"
|
||||
id="stop70" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
id="k"
|
||||
cx="159.3%"
|
||||
cy="-44.72%"
|
||||
r="313.1%">
|
||||
<stop
|
||||
offset=".09"
|
||||
stop-color="#fff44f"
|
||||
id="stop73" />
|
||||
<stop
|
||||
offset=".63"
|
||||
stop-color="#ff980e"
|
||||
id="stop75" />
|
||||
</radialGradient>
|
||||
<linearGradient
|
||||
id="a"
|
||||
x1="87.25%"
|
||||
y1="15.5%"
|
||||
x2="9.4%"
|
||||
y2="93.1%">
|
||||
<stop
|
||||
offset=".05"
|
||||
stop-color="#fff44f"
|
||||
id="stop78" />
|
||||
<stop
|
||||
offset=".37"
|
||||
stop-color="#ff980e"
|
||||
id="stop80" />
|
||||
<stop
|
||||
offset=".53"
|
||||
stop-color="#ff3647"
|
||||
id="stop82" />
|
||||
<stop
|
||||
offset=".7"
|
||||
stop-color="#e31587"
|
||||
id="stop84" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="l"
|
||||
x1="80%"
|
||||
y1="14%"
|
||||
x2="18%"
|
||||
y2="84%">
|
||||
<stop
|
||||
offset=".17"
|
||||
stop-color="#fff44f"
|
||||
stop-opacity=".8"
|
||||
id="stop87" />
|
||||
<stop
|
||||
offset=".6"
|
||||
stop-color="#fff44f"
|
||||
stop-opacity="0"
|
||||
id="stop89" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<path
|
||||
d="M478.711 166.353c-10.445-25.124-31.6-52.248-48.212-60.821 13.52 26.505 21.345 53.093 24.335 72.936 0 .039.015.136.047.4C427.706 111.135 381.627 83.823 344 24.355c-1.9-3.007-3.805-6.022-5.661-9.2a73.716 73.716 0 01-2.646-4.972A43.7 43.7 0 01332.1.677a.626.626 0 00-.546-.644.818.818 0 00-.451 0c-.034.012-.084.051-.12.065-.053.021-.12.069-.176.1.027-.036.083-.117.1-.136-60.37 35.356-80.85 100.761-82.732 133.484a120.249 120.249 0 00-66.142 25.488 71.355 71.355 0 00-6.225-4.7 111.338 111.338 0 01-.674-58.732c-24.688 11.241-43.89 29.01-57.85 44.7h-.111c-9.527-12.067-8.855-51.873-8.312-60.184-.114-.515-7.107 3.63-8.023 4.255a175.073 175.073 0 00-23.486 20.12 210.478 210.478 0 00-22.442 26.913c0 .012-.007.026-.011.038 0-.013.007-.026.011-.038a202.838 202.838 0 00-32.247 72.805c-.115.521-.212 1.061-.324 1.586-.452 2.116-2.08 12.7-2.365 15-.022.177-.032.347-.053.524a229.066 229.066 0 00-3.9 33.157c0 .41-.025.816-.025 1.227C16 388.418 123.6 496 256.324 496c118.865 0 217.56-86.288 236.882-199.63.407-3.076.733-6.168 1.092-9.271 4.777-41.21-.53-84.525-15.587-120.746zM201.716 354.447c1.124.537 2.18 1.124 3.334 1.639.048.033.114.07.163.1a126.191 126.191 0 01-3.497-1.739zm55.053-144.93zm198.131-30.59l-.032-.233c.012.085.027.174.04.259z"
|
||||
fill="url(#a)"
|
||||
id="path94" />
|
||||
<path
|
||||
d="M478.711 166.353c-10.445-25.124-31.6-52.248-48.212-60.821 13.52 26.505 21.345 53.093 24.335 72.936 0-.058.011.048.036.226.012.085.027.174.04.259 22.675 61.47 10.322 123.978-7.479 162.175-27.539 59.1-94.215 119.67-198.576 116.716C136.1 454.651 36.766 370.988 18.223 261.41c-3.379-17.28 0-26.054 1.7-40.084-2.071 10.816-2.86 13.94-3.9 33.157 0 .41-.025.816-.025 1.227C16 388.418 123.6 496 256.324 496c118.865 0 217.56-86.288 236.882-199.63.407-3.076.733-6.168 1.092-9.271 4.777-41.21-.53-84.525-15.587-120.746z"
|
||||
fill="url(#b)"
|
||||
id="path96" />
|
||||
<path
|
||||
d="M478.711 166.353c-10.445-25.124-31.6-52.248-48.212-60.821 13.52 26.505 21.345 53.093 24.335 72.936 0-.058.011.048.036.226.012.085.027.174.04.259 22.675 61.47 10.322 123.978-7.479 162.175-27.539 59.1-94.215 119.67-198.576 116.716C136.1 454.651 36.766 370.988 18.223 261.41c-3.379-17.28 0-26.054 1.7-40.084-2.071 10.816-2.86 13.94-3.9 33.157 0 .41-.025.816-.025 1.227C16 388.418 123.6 496 256.324 496c118.865 0 217.56-86.288 236.882-199.63.407-3.076.733-6.168 1.092-9.271 4.777-41.21-.53-84.525-15.587-120.746z"
|
||||
fill="url(#c)"
|
||||
id="path98" />
|
||||
<path
|
||||
d="M361.922 194.6c.524.368 1 .734 1.493 1.1a130.706 130.706 0 00-22.31-29.112C266.4 91.892 321.516 4.626 330.811.194c.027-.036.083-.117.1-.136-60.37 35.356-80.85 100.761-82.732 133.484 2.8-.194 5.592-.429 8.442-.429 45.051 0 84.289 24.77 105.301 61.487z"
|
||||
fill="url(#d)"
|
||||
id="path100" />
|
||||
<path
|
||||
d="M256.772 209.514c-.393 5.978-21.514 26.593-28.9 26.593-68.339 0-79.432 41.335-79.432 41.335 3.027 34.81 27.261 63.475 56.611 78.643 1.339.692 2.694 1.317 4.05 1.935a132.768 132.768 0 007.059 2.886 106.743 106.743 0 0031.271 6.031c119.78 5.618 142.986-143.194 56.545-186.408 22.137-3.85 45.115 5.053 57.947 14.067-21.012-36.714-60.25-61.484-105.3-61.484-2.85 0-5.641.235-8.442.429a120.249 120.249 0 00-66.142 25.488c3.664 3.1 7.8 7.244 16.514 15.828 16.302 16.067 58.13 32.705 58.219 34.657z"
|
||||
fill="url(#e)"
|
||||
id="path102" />
|
||||
<path
|
||||
d="M256.772 209.514c-.393 5.978-21.514 26.593-28.9 26.593-68.339 0-79.432 41.335-79.432 41.335 3.027 34.81 27.261 63.475 56.611 78.643 1.339.692 2.694 1.317 4.05 1.935a132.768 132.768 0 007.059 2.886 106.743 106.743 0 0031.271 6.031c119.78 5.618 142.986-143.194 56.545-186.408 22.137-3.85 45.115 5.053 57.947 14.067-21.012-36.714-60.25-61.484-105.3-61.484-2.85 0-5.641.235-8.442.429a120.249 120.249 0 00-66.142 25.488c3.664 3.1 7.8 7.244 16.514 15.828 16.302 16.067 58.13 32.705 58.219 34.657z"
|
||||
fill="url(#f)"
|
||||
id="path104" />
|
||||
<g
|
||||
id="layer1"
|
||||
style="display:inline"
|
||||
transform="matrix(0.35419593,0,0,0.35419593,167.60978,158.9271)">
|
||||
<path
|
||||
style="fill:#010101"
|
||||
d="m 153,239 c -19.29628,10.1068 -35.89784,24.78369 -54.333641,36.46885 -9.746032,8.32066 -25.277462,12.6214 -28.707379,25.98943 10.307056,22.92658 37.56405,33.92848 53.60479,53.08074 23.28522,14.7741 12.39789,37.31214 10.86684,58.46127 -0.65103,19.79563 8.02486,38.22515 19.44408,53.8183 0.0876,13.91995 -31.90349,35.02457 -3.14719,41.12766 31.75568,-0.39587 63.54008,1.13262 95.2725,-0.006 19.25207,-6.5808 41.00426,2.46436 61.81371,-2.43182 23.28106,-1.22258 46.77912,-0.32628 69.92832,-2.57693 22.92231,-15.46076 -28.07351,-30.89777 -1.26144,-46.86781 C 390.50498,438.79689 387.18786,414.04679 382,394 c 17.87423,-14.93999 18.5116,-36.42509 19.87065,-57.42594 5.25206,-19.86251 14.03525,-38.69618 19.17732,-58.49812 -3.84842,-24.03985 -39.1751,-41.31194 -45.80958,-57.14885 17.78713,-29.29972 26.64951,-64.27647 19.59993,-98.29411 C 387.51638,67.544167 342.67824,21.758539 288.8189,10.337029 228.41755,-5.1087959 160.44586,26.883691 133.17057,82.782337 117.33803,113.72488 115.2685,151.24585 123.55952,184.65614 129.00838,205.07414 140.38108,222.47691 153,239 Z"
|
||||
id="path1" />
|
||||
<path
|
||||
style="fill:#ffff01"
|
||||
d="m 180,329 18,8 c 9.24,-17.53 14.78,-38.36 21.56,-57 2.31,-6.35 3.57,-17.15 9.57,-21.24 4.73,-3.22 14.51,-0.44 19.87,0.07 10.84,1.03 23.37,0.68 34,-1.72 C 335.22,245.34 372.71,199.28 374.96,146 378.07,72.236 305.3,13.58 234,29.02 c -43.93,9.507 -76.57,43.459 -88.57,85.985 -10.53,37.33 1.89,78.48 27.37,106.83 6.71,7.46 14.87,14.11 23.29,19.57 3.73,2.42 9.79,4.83 10.96,9.62 1.32,5.42 -4.33,13.76 -5.85,18.98 -5.82,19.96 -16.4,38.78 -21.2,59 z"
|
||||
id="path2" />
|
||||
<path
|
||||
style="fill:#ce61a9"
|
||||
d="m 237,270 c -8.48,15.92 -15.41,36.57 -20.08,54 -1.36,5.06 -6.23,11.67 -4.89,17 3.2,12.76 17.13,22.54 28.97,25.62 22.34,5.83 48.15,7.53 70,-1.07 3.88,-1.53 9.74,-2.89 11.97,-6.74 2.07,-3.57 0.82,-8.86 1.2,-12.81 0.99,-10.2 6.53,-18.52 16.83,-21 0.01,-9.11 1.67,-18.72 8.46,-25.47 3.91,-3.89 10.2,-6.15 14.14,-1.19 9.75,12.3 -3.7,27.68 12.4,36.66 13.76,-29.42 26.34,-75.12 -15,-88.74 -5.23,-1.73 -11.36,-4.63 -17,-4.08 -10.25,1.01 -22.68,14.27 -32.42,18.73 -22.23,10.18 -50.54,14.88 -74.58,9.09 z"
|
||||
id="path3" />
|
||||
<path
|
||||
style="fill:#ce61a9"
|
||||
d="m 137,338 c 3.18,-4.17 6.58,-7.19 11,-10 -1.97,-3.92 -6.68,-6.5 -7.46,-11 -1.64,-9.41 12.19,-20.93 20.46,-21.82 4.38,-0.48 12.3,5.08 15.49,2.99 2.51,-1.64 3.42,-6.55 4.51,-9.17 3.1,-7.51 12.87,-25.96 7.97,-33.72 -2.47285,-3.92245 -7.70872,-3.82217 -13.38023,-2.14588 -7.63086,2.25541 -16.05037,7.36385 -19.58977,9.36588 -13.64,7.73 -26.48,17.21 -39,26.63 -3.86,2.9 -12.34,8.01 -13.48,13 -1.24,5.43 2.89,10.17 6.2,13.83 7.67,8.5 17.17,16.64 27.28,22.04 z"
|
||||
id="path4" />
|
||||
<path
|
||||
style="fill:#9fc79f"
|
||||
d="m 157,384 c 0,13.94 -0.51,25.95 5.22,39 4.77,10.86 10.96,21.1 18.95,30 6.92,7.7 14.83,8.96 24.83,9 17.21,0.08 33.73,-6.21 42.48,-22 11.07,-19.97 3.58,-55.02 -21.52,-61.31 -7.81,-1.95 -23.68,6.35 -31.96,8.1 -13.65,2.89 -24.79,-0.54 -38,-2.79 z"
|
||||
id="path5" />
|
||||
<path
|
||||
style="fill:#95bb95"
|
||||
d="m 357,385 c -17.01,3.2 -27.07,2.97 -31,-16 -11.91,1.56 -23.62,7.8 -36,9.57 -4.1,0.59 -11.08,-0.98 -14.3,2.03 -5.1,4.77 -5.44,14.02 -5.74,20.4 -0.22,4.66 -2.39,9.33 -1.6,14 1.72,10.26 13.38,21.18 19.74,29 4.59,5.66 10.59,14.3 17.9,16.49 8.24,2.46 16.55,-4.65 23,-8.83 9.21,-5.99 19.98,-13.42 24.98,-23.66 2.33,-4.78 0.91,-11.82 1.04,-17 0.21,-8.7 1.98,-17.26 1.98,-26 z"
|
||||
id="path6" />
|
||||
<path
|
||||
style="fill:#fbb5a7"
|
||||
d="m 344.04,338.74 c -8.51,3.44 -8.51,27.18 -1.48,32.23 3.87,2.78 17.29,-0.65 21.44,-2.32 23.49,-9.46 -4.63,-36.1 -19.96,-29.91 z"
|
||||
id="path7" />
|
||||
<path
|
||||
style="fill:#fbb5a7"
|
||||
d="m 201,365 c -6.76,-9.02 -21.93,-17.44 -33,-19.53 -4.52,-0.85 -12.18,-1.71 -14.24,3.59 -2.56,6.57 3.94,13.06 9.24,15.61 11.8,5.69 25.9,4.17 38,0.33 z"
|
||||
id="path8" />
|
||||
<path
|
||||
style="fill:#576e57"
|
||||
d="m 365,406 c -0.86,6.78 1.35,18.22 -1.49,24.2 -7.25,15.25 -24.45,25.44 -38.51,33.66 -6.58,3.84 -13.19,7.73 -21,5.03 -16.77,-5.8 -20.94,-25.76 -35,-33.89 0,8.86 0.3,16.69 3.74,25 17.58,42.43 71.5,11.84 89.46,-14 7.43,-10.69 13.35,-29.47 2.8,-40"
|
||||
id="path9" />
|
||||
<path
|
||||
style="fill:#576e57"
|
||||
d="m 155,432 c 2.63,10.96 11.11,20.8 17.28,30.04 2.17,3.23 4.52,8.56 8.1,10.4 4.57,2.35 11.58,2.11 16.62,2.72 15.31,1.83 33.26,2.59 48,-2.5 5.63,-1.95 11.75,-4.02 14.68,-9.66 2.98,-5.74 -0.56,-14.03 -1.68,-20 -5.56,5.92 -9.39,12.43 -16,17.54 -14.23,10.98 -43.14,17.76 -59,6.03 -12.43,-9.19 -17.42,-24.31 -28,-34.57"
|
||||
id="path10" />
|
||||
<path
|
||||
style="fill:#010101"
|
||||
d="m 203,78.432 c -41.94,5.523 -52.25,62.648 -12,79.888 7.45,3.19 18.11,2.68 26,1.47 48.64,-7.5 34.78,-87.781 -14,-81.358 z"
|
||||
id="path11" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
d="m 196,147 c -1.86,-8.13 -2.94,-15.07 3.38,-21.79 10.5,-11.16 28.74,-3.58 30.62,10.79 9.52,-9.43 5.95,-29.23 -3.17,-37.74 -12.58,-11.724 -31.99,-10.389 -42.89,2.76 -3.76,4.52 -5.37,9.22 -6.17,14.98 -0.77,5.56 0.25,11.88 2.58,17 3.12,6.83 8.9,11.17 15.65,14 z"
|
||||
id="path12" />
|
||||
<path
|
||||
style="fill:#010101"
|
||||
d="m 299,75.518 c -52.42,11.12 -36.2,92.762 16,81.662 52.67,-11.2 36.32,-92.76 -16,-81.662 z"
|
||||
id="path13" />
|
||||
<path
|
||||
style="fill:#ffffff"
|
||||
d="m 283,134 c 2.92303,-6.34588 4.80429,-9.36607 10.18,-11.66 15.75,-7.07 24.49,8.35 22.82,21.66 38.8,-11.2 14.11,-71.907 -22,-53.85 -4.34,2.168 -8.17,5.944 -10.96,9.85 -3.18,4.48 -5.24,9.49 -5.71,15 -0.59,6.86 2.59,13.13 5.67,19 z"
|
||||
id="path14" />
|
||||
</g>
|
||||
<path
|
||||
d="M170.829 151.036a244.042 244.042 0 014.981 3.3 111.338 111.338 0 01-.674-58.732c-24.688 11.241-43.89 29.01-57.85 44.7 1.155-.033 36.014-.66 53.543 10.732z"
|
||||
fill="url(#g)"
|
||||
id="path106" />
|
||||
<path
|
||||
d="M18.223 261.41C36.766 370.988 136.1 454.651 248.855 457.844c104.361 2.954 171.037-57.62 198.576-116.716 17.8-38.2 30.154-100.7 7.479-162.175l-.008-.026-.032-.233c-.025-.178-.04-.284-.036-.226 0 .039.015.136.047.4 8.524 55.661-19.79 109.584-64.051 146.044l-.133.313c-86.245 70.223-168.774 42.368-185.484 30.966a144.108 144.108 0 01-3.5-1.743c-50.282-24.029-71.054-69.838-66.6-109.124-42.457 0-56.934-35.809-56.934-35.809s38.119-27.179 88.358-3.541c46.53 21.893 90.228 3.543 90.233 3.541-.089-1.952-41.917-18.59-58.223-34.656-8.713-8.584-12.85-12.723-16.514-15.828a71.355 71.355 0 00-6.225-4.7 282.929 282.929 0 00-4.981-3.3c-17.528-11.392-52.388-10.765-53.543-10.735h-.111c-9.527-12.067-8.855-51.873-8.312-60.184-.114-.515-7.107 3.63-8.023 4.255a175.073 175.073 0 00-23.486 20.12 210.478 210.478 0 00-22.442 26.919c0 .012-.007.026-.011.038 0-.013.007-.026.011-.038a202.838 202.838 0 00-32.247 72.805c-.115.521-8.65 37.842-4.44 57.199z"
|
||||
fill="url(#h)"
|
||||
id="path108" />
|
||||
<path
|
||||
d="M341.105 166.587a130.706 130.706 0 0122.31 29.112c1.323.994 2.559 1.985 3.608 2.952 54.482 50.2 25.936 121.2 23.807 126.26 44.261-36.46 72.575-90.383 64.051-146.044C427.706 111.135 381.627 83.823 344 24.355c-1.9-3.007-3.805-6.022-5.661-9.2a73.716 73.716 0 01-2.646-4.972A43.7 43.7 0 01332.1.677a.626.626 0 00-.546-.644.818.818 0 00-.451 0c-.034.012-.084.051-.12.065-.053.021-.12.069-.176.1-9.291 4.428-64.407 91.694 10.298 166.389z"
|
||||
fill="url(#i)"
|
||||
id="path110" />
|
||||
<path
|
||||
d="M367.023 198.651c-1.049-.967-2.285-1.958-3.608-2.952-.489-.368-.969-.734-1.493-1.1-12.832-9.014-35.81-17.917-57.947-14.067 86.441 43.214 63.235 192.026-56.545 186.408a106.743 106.743 0 01-31.271-6.031 134.51 134.51 0 01-7.059-2.886c-1.356-.618-2.711-1.243-4.05-1.935.048.033.114.07.163.1 16.71 11.4 99.239 39.257 185.484-30.966l.133-.313c2.129-5.054 30.675-76.057-23.807-126.258z"
|
||||
fill="url(#j)"
|
||||
id="path112" />
|
||||
<path
|
||||
d="M148.439 277.443s11.093-41.335 79.432-41.335c7.388 0 28.509-20.615 28.9-26.593s-43.7 18.352-90.233-3.541c-50.239-23.638-88.358 3.541-88.358 3.541s14.477 35.809 56.934 35.809c-4.453 39.286 16.319 85.1 66.6 109.124 1.124.537 2.18 1.124 3.334 1.639-29.348-15.169-53.582-43.834-56.609-78.644z"
|
||||
fill="url(#k)"
|
||||
id="path114" />
|
||||
<path
|
||||
d="M478.711 166.353c-10.445-25.124-31.6-52.248-48.212-60.821 13.52 26.505 21.345 53.093 24.335 72.936 0 .039.015.136.047.4C427.706 111.135 381.627 83.823 344 24.355c-1.9-3.007-3.805-6.022-5.661-9.2a73.716 73.716 0 01-2.646-4.972A43.7 43.7 0 01332.1.677a.626.626 0 00-.546-.644.818.818 0 00-.451 0c-.034.012-.084.051-.12.065-.053.021-.12.069-.176.1.027-.036.083-.117.1-.136-60.37 35.356-80.85 100.761-82.732 133.484 2.8-.194 5.592-.429 8.442-.429 45.053 0 84.291 24.77 105.3 61.484-12.832-9.014-35.81-17.917-57.947-14.067 86.441 43.214 63.235 192.026-56.545 186.408a106.743 106.743 0 01-31.271-6.031 134.51 134.51 0 01-7.059-2.886c-1.356-.618-2.711-1.243-4.05-1.935.048.033.114.07.163.1a144.108 144.108 0 01-3.5-1.743c1.124.537 2.18 1.124 3.334 1.639-29.35-15.168-53.584-43.833-56.611-78.643 0 0 11.093-41.335 79.432-41.335 7.388 0 28.509-20.615 28.9-26.593-.089-1.952-41.917-18.59-58.223-34.656-8.713-8.584-12.85-12.723-16.514-15.828a71.355 71.355 0 00-6.225-4.7 111.338 111.338 0 01-.674-58.732c-24.688 11.241-43.89 29.01-57.85 44.7h-.111c-9.527-12.067-8.855-51.873-8.312-60.184-.114-.515-7.107 3.63-8.023 4.255a175.073 175.073 0 00-23.486 20.12 210.478 210.478 0 00-22.435 26.916c0 .012-.007.026-.011.038 0-.013.007-.026.011-.038a202.838 202.838 0 00-32.247 72.805c-.115.521-.212 1.061-.324 1.586-.452 2.116-2.486 12.853-2.77 15.156-.022.177.021-.176 0 0a279.565 279.565 0 00-3.544 33.53c0 .41-.025.816-.025 1.227C16 388.418 123.6 496 256.324 496c118.865 0 217.56-86.288 236.882-199.63.407-3.076.733-6.168 1.092-9.271 4.777-41.21-.53-84.525-15.587-120.746zm-23.841 12.341c.012.085.027.174.04.259l-.008-.026-.032-.233z"
|
||||
fill="url(#l)"
|
||||
id="path116" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 19 KiB |
@@ -1 +0,0 @@
|
||||
resource cck2 modules/
|
||||
@@ -1,154 +0,0 @@
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
var gForceExternalHandler = false;
|
||||
|
||||
XPCOMUtils.defineLazyServiceGetter(this, "extProtocolSvc",
|
||||
"@mozilla.org/uriloader/external-protocol-service;1", "nsIExternalProtocolService");
|
||||
|
||||
var documentObserver = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
if (subject instanceof Ci.nsIDOMWindow && topic == 'content-document-global-created') {
|
||||
var doc = subject.document;
|
||||
doc.addEventListener("DOMContentLoaded", function onLoad(event) {
|
||||
event.target.removeEventListener("DOMContentLoaded", onLoad, false);
|
||||
// If the parent document is a local file, don't do anything
|
||||
// Links will just work
|
||||
if (doc.location.href.indexOf("file://") == 0) {
|
||||
return;
|
||||
}
|
||||
var links = event.target.getElementsByTagName("a");
|
||||
for (var i=0; i < links.length; i++) {
|
||||
var link = links[i];
|
||||
if (link.href.indexOf("file://") != 0) {
|
||||
continue;
|
||||
}
|
||||
link.addEventListener("click", function(link) {
|
||||
return function(event) {
|
||||
event.preventDefault();
|
||||
if (gForceExternalHandler) {
|
||||
extProtocolSvc.loadUrl(Services.io.newURI(link.href, null, null));
|
||||
} else {
|
||||
var target = "_self";
|
||||
if (link.hasAttribute("target")) {
|
||||
target = link.getAttribute("target");
|
||||
}
|
||||
// If we were told somewhere other than current (based on modifier keys), use it
|
||||
var where = whereToOpenLink(event);
|
||||
if (where != "current" || target == "_blank") {
|
||||
sendAsyncMessage("cck2:open-url", {
|
||||
"url": link.href,
|
||||
"where": (target == "_blank") ? "tab" : where
|
||||
});
|
||||
return;
|
||||
}
|
||||
switch (target) {
|
||||
case "_self":
|
||||
link.ownerDocument.location = link.href;
|
||||
break;
|
||||
case "_parent":
|
||||
link.ownerDocument.defaultView.parent.document.location = link.href;
|
||||
break;
|
||||
case "_top":
|
||||
link.ownerDocument.defaultView.top.document.location = link.href;
|
||||
break;
|
||||
default:
|
||||
// Attempt to find the iframe that this goes into
|
||||
var iframes = doc.defaultView.parent.document.getElementsByName(target);
|
||||
if (iframes.length > 0) {
|
||||
iframes[0].contentDocument.location = link.href;
|
||||
} else {
|
||||
link.ownerDocument.location = link.href;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}(link), false);
|
||||
}
|
||||
}, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Don't do this check before Firefox 29
|
||||
if (Services.vc.compare(Services.appinfo.version, "29") > 0) {
|
||||
try {
|
||||
if (Services.prefs.getCharPref("capability.policy.default.checkloaduri.enabled") == "allAccess") {
|
||||
gForceExternalHandler = !extProtocolSvc.isExposedProtocol('file');
|
||||
Services.obs.addObserver(documentObserver, "content-document-global-created", false);
|
||||
addEventListener("unload", function() {
|
||||
Services.obs.removeObserver(documentObserver, "content-document-global-created", false);
|
||||
})
|
||||
}
|
||||
} catch (e) {}
|
||||
}
|
||||
|
||||
|
||||
/* Copied from http://mxr.mozilla.org/mozilla-central/source/browser/base/content/utilityOverlay.js?raw=1 */
|
||||
|
||||
function getBoolPref(prefname, def)
|
||||
{
|
||||
try {
|
||||
return Services.prefs.getBoolPref(prefname);
|
||||
}
|
||||
catch(er) {
|
||||
return def;
|
||||
}
|
||||
}
|
||||
|
||||
/* whereToOpenLink() looks at an event to decide where to open a link.
|
||||
*
|
||||
* The event may be a mouse event (click, double-click, middle-click) or keypress event (enter).
|
||||
*
|
||||
* On Windows, the modifiers are:
|
||||
* Ctrl new tab, selected
|
||||
* Shift new window
|
||||
* Ctrl+Shift new tab, in background
|
||||
* Alt save
|
||||
*
|
||||
* Middle-clicking is the same as Ctrl+clicking (it opens a new tab).
|
||||
*
|
||||
* Exceptions:
|
||||
* - Alt is ignored for menu items selected using the keyboard so you don't accidentally save stuff.
|
||||
* (Currently, the Alt isn't sent here at all for menu items, but that will change in bug 126189.)
|
||||
* - Alt is hard to use in context menus, because pressing Alt closes the menu.
|
||||
* - Alt can't be used on the bookmarks toolbar because Alt is used for "treat this as something draggable".
|
||||
* - The button is ignored for the middle-click-paste-URL feature, since it's always a middle-click.
|
||||
*/
|
||||
function whereToOpenLink( e, ignoreButton, ignoreAlt )
|
||||
{
|
||||
Components.utils.import("resource://gre/modules/AppConstants.jsm");
|
||||
|
||||
// This method must treat a null event like a left click without modifier keys (i.e.
|
||||
// e = { shiftKey:false, ctrlKey:false, metaKey:false, altKey:false, button:0 })
|
||||
// for compatibility purposes.
|
||||
if (!e)
|
||||
return "current";
|
||||
|
||||
var shift = e.shiftKey;
|
||||
var ctrl = e.ctrlKey;
|
||||
var meta = e.metaKey;
|
||||
var alt = e.altKey && !ignoreAlt;
|
||||
|
||||
// ignoreButton allows "middle-click paste" to use function without always opening in a new window.
|
||||
var middle = !ignoreButton && e.button == 1;
|
||||
var middleUsesTabs = true;
|
||||
|
||||
// Don't do anything special with right-mouse clicks. They're probably clicks on context menu items.
|
||||
|
||||
var metaKey = AppConstants.platform == "macosx" ? meta : ctrl;
|
||||
if (metaKey || (middle && middleUsesTabs))
|
||||
return shift ? "tabshifted" : "tab";
|
||||
|
||||
if (alt && getBoolPref("browser.altClickSave", false))
|
||||
return "save";
|
||||
|
||||
if (shift || (middle && !middleUsesTabs))
|
||||
return "window";
|
||||
|
||||
return "current";
|
||||
}
|
||||
@@ -1,183 +0,0 @@
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
var gAllowedPasteSites = [];
|
||||
var gAllowedCutCopySites = [];
|
||||
var gDeniedPasteSites = [];
|
||||
var gDeniedCutCopySites = [];
|
||||
var gDefaultPastePolicy = false;
|
||||
var gDefaultCutCopyPolicy = false;
|
||||
|
||||
function allowCutCopy(doc) {
|
||||
var win = doc.defaultView;
|
||||
if (win !== win.top) {
|
||||
// It's an iframe. Use the top level window
|
||||
// for security purposes
|
||||
win = win.top;
|
||||
}
|
||||
|
||||
if (gDefaultCutCopyPolicy == true) {
|
||||
for (var i=0; i < gDeniedCutCopySites.length; i++) {
|
||||
if (win.location.href.indexOf(gDeniedCutCopySites[i]) == 0) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
for (var i=0; i < gAllowedCutCopySites.length; i++) {
|
||||
if (win.location.href.indexOf(gAllowedCutCopySites[i]) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function allowPaste(doc) {
|
||||
var win = doc.defaultView;
|
||||
if (win !== win.top) {
|
||||
// It's an iframe. Use the top level window
|
||||
// for security purposes
|
||||
win = win.top;
|
||||
}
|
||||
|
||||
if (gDefaultPastePolicy == true) {
|
||||
for (var i=0; i < gDeniedPasteSites.length; i++) {
|
||||
if (win.location.href.indexOf(gDeniedPasteSites[i]) == 0) {
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
for (var i=0; i < gAllowedPasteSites.length; i++) {
|
||||
if (win.location.href.indexOf(gAllowedPasteSites[i]) == 0) {
|
||||
return true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function myExecCommand(doc, originalExecCommand) {
|
||||
return function(aCommandName, aShowDefaultUI, aValueArgument) {
|
||||
switch (aCommandName.toLowerCase()) {
|
||||
case "cut":
|
||||
case "copy":
|
||||
if (allowCutCopy(doc)) {
|
||||
var win = Services.wm.getMostRecentWindow("navigator:browser");
|
||||
win.goDoCommand("cmd_" + aCommandName.toLowerCase());
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case "paste":
|
||||
if (allowPaste(doc)) {
|
||||
var win = Services.wm.getMostRecentWindow("navigator:browser");
|
||||
win.goDoCommand("cmd_" + aCommandName.toLowerCase());
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return originalExecCommand.call(doc, aCommandName, aShowDefaultUI, aValueArgument);
|
||||
}
|
||||
}
|
||||
|
||||
function myQueryCommandSupported(doc, originalQueryCommandSupported) {
|
||||
return function(aCommandName) {
|
||||
switch (aCommandName.toLowerCase()) {
|
||||
case "cut":
|
||||
case "copy":
|
||||
if (allowCutCopy(doc)) {
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case "paste":
|
||||
if (allowPaste(doc)) {
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return originalQueryCommandSupported.call(doc, aCommandName, aShowDefaultUI, aValueArgument);
|
||||
}
|
||||
}
|
||||
|
||||
var documentObserver = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
if (subject instanceof Ci.nsIDOMWindow && topic == 'content-document-global-created') {
|
||||
var doc = subject.document;
|
||||
var cutCopyAllowed = allowCutCopy(doc);
|
||||
var pasteAllowed = allowPaste(doc);
|
||||
if (!cutCopyAllowed && !pasteAllowed) {
|
||||
return;
|
||||
}
|
||||
var originalExecCommand = Cu.waiveXrays(doc).execCommand;
|
||||
Cu.exportFunction(myExecCommand(doc, originalExecCommand), doc, {defineAs: "execCommand"});
|
||||
var originalQueryCommandSupported = Cu.waiveXrays(doc).queryCommandSupported;
|
||||
Cu.exportFunction(myQueryCommandSupported(doc, originalQueryCommandSupported), doc, {defineAs: "queryCommandSupported"});
|
||||
var originalQueryCommandEnabled = Cu.waiveXrays(doc).queryCommandEnabled;
|
||||
Cu.exportFunction(myQueryCommandSupported(doc, originalQueryCommandEnabled), doc, {defineAs: "queryCommandEnabled"});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Don't do this check before Firefox 29
|
||||
if (Services.vc.compare(Services.appinfo.version, "29") > 0) {
|
||||
try {
|
||||
if (Services.prefs.getCharPref("capability.policy.default.Clipboard.cutcopy") == "allAccess") {
|
||||
gDefaultCutCopyPolicy = true;
|
||||
}
|
||||
} catch (e) {}
|
||||
try {
|
||||
if (Services.prefs.getCharPref("capability.policy.default.Clipboard.paste") == "allAccess") {
|
||||
gDefaultPastePolicy = true;
|
||||
}
|
||||
} catch (e) {}
|
||||
try {
|
||||
var policies = [];
|
||||
policies = Services.prefs.getCharPref("capability.policy.policynames").split(', ');
|
||||
for (var i=0; i < policies.length; i++ ) {
|
||||
try {
|
||||
if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.cutcopy") == "allAccess") {
|
||||
var allowedCutCopySites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" ");
|
||||
for (var j=0; j < allowedCutCopySites.length; j++) {
|
||||
gAllowedCutCopySites.push(allowedCutCopySites[j]);
|
||||
}
|
||||
}
|
||||
} catch(e) {}
|
||||
try {
|
||||
if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.cutcopy") == "noAccess") {
|
||||
var deniedCutCopySites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" ");
|
||||
for (var j=0; j < deniedCutCopySites.length; j++) {
|
||||
gDeniedCutCopySites.push(deniedCutCopySites[j]);
|
||||
}
|
||||
}
|
||||
} catch(e) {}
|
||||
try {
|
||||
if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.paste") == "allAccess") {
|
||||
var allowedPasteSites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" ");
|
||||
for (var j=0; j < allowedPasteSites.length; j++) {
|
||||
gAllowedPasteSites.push(allowedPasteSites[j]);
|
||||
}
|
||||
}
|
||||
} catch(e) {}
|
||||
try {
|
||||
if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.paste") == "noAccess") {
|
||||
var deniedPasteSites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" ");
|
||||
for (var j=0; j < deniedPasteSites.length; j++) {
|
||||
gDeniedPasteSites.push(deniedPasteSites[j]);
|
||||
}
|
||||
}
|
||||
} catch(e) {}
|
||||
}
|
||||
} catch (e) {}
|
||||
if (gDefaultCutCopyPolicy || gDefaultPastePolicy ||
|
||||
gAllowedCutCopySites.length > 0 || gAllowedPasteSites> 0) {
|
||||
Services.obs.addObserver(documentObserver, "content-document-global-created", false);
|
||||
addEventListener("unload", function() {
|
||||
Services.obs.removeObserver(documentObserver, "content-document-global-created", false);
|
||||
})
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,111 +0,0 @@
|
||||
/* This file overlays about:addons. It does the following: */
|
||||
/* Workaround https://bugzilla.mozilla.org/show_bug.cgi?id=1132971 */
|
||||
/* Hide the "Install Add-on From File" menu if xpinstall.enabled is false */
|
||||
/* Hides the discover pane if xpinstall.enabled is false */
|
||||
/* Hides the add-on entry if specified in the CCK2 config */
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource://cck2/CCK2.jsm");
|
||||
|
||||
var addonId = "cck2wizard@kaply.com";
|
||||
|
||||
var observer = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
switch (topic) {
|
||||
case "chrome-document-global-created":
|
||||
var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow);
|
||||
win.addEventListener("load", function onLoad(event) {
|
||||
win.removeEventListener("load", onLoad, false);
|
||||
var doc = event.target;
|
||||
var url = doc.location.href.split("?")[0].split("#")[0];
|
||||
switch (url) {
|
||||
case "about:addons":
|
||||
case "chrome://mozapps/content/extensions/extensions.xul":
|
||||
var configs = CCK2.getConfigs();
|
||||
var hiddenAddons = [];
|
||||
var requiredAddons = [];
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config && "extension" in config && config.extension.hide) {
|
||||
hiddenAddons.push(config.extension.id);
|
||||
}
|
||||
if (config.requiredAddons) {
|
||||
requiredAddons.push.apply(requiredAddons, config.requiredAddons.split(","));
|
||||
}
|
||||
}
|
||||
if (hiddenAddons.length > 0 || requiredAddons.length > 0) {
|
||||
var ss;
|
||||
for (var i = 0; i < doc.styleSheets.length; i++) {
|
||||
if (doc.styleSheets[i].href == "chrome://mozapps/skin/extensions/extensions.css") {
|
||||
ss = doc.styleSheets[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (var i=0; i < hiddenAddons.length; i++) {
|
||||
ss.insertRule("richlistitem[value='" + hiddenAddons[i] + "'] { display: none;}", ss.cssRules.length);
|
||||
}
|
||||
for (var i=0; i < requiredAddons.length; i++) {
|
||||
ss.insertRule("richlistitem[value='" + requiredAddons[i] + "'] button[anonid='disable-btn'] { display: none;}", ss.cssRules.length);
|
||||
ss.insertRule("richlistitem[value='" + requiredAddons[i] + "'] button[anonid='remove-btn'] { display: none;}", ss.cssRules.length);
|
||||
}
|
||||
if (requiredAddons.length > 0) {
|
||||
win.gViewController.commands.cmd_disableItem.origIsEnabled = win.gViewController.commands.cmd_disableItem.isEnabled;
|
||||
win.gViewController.commands.cmd_disableItem.isEnabled = function(aAddon) { if (aAddon && requiredAddons.indexOf(aAddon.id) != -1) return false; return this.origIsEnabled;}
|
||||
win.gViewController.commands.cmd_uninstallItem.origIsEnabled = win.gViewController.commands.cmd_disableItem.isEnabled;
|
||||
win.gViewController.commands.cmd_uninstallItem.isEnabled = function(aAddon) { if (aAddon && requiredAddons.indexOf(aAddon.id) != -1) return false; return this.origIsEnabled;}
|
||||
}
|
||||
}
|
||||
var showDiscoverPane = true;
|
||||
var xpinstallEnabled = true;
|
||||
try {
|
||||
xpinstallEnabled = Services.prefs.getBoolPref("xpinstall.enabled");
|
||||
} catch (e) {}
|
||||
try {
|
||||
showDiscoverPane = Services.prefs.getBoolPref("extensions.getAddons.showPane");
|
||||
} catch (e) {}
|
||||
if (!xpinstallEnabled || !showDiscoverPane) {
|
||||
// Work around Mozilla bug 1132971
|
||||
// Hide the discover pane if it is the selected pane
|
||||
if (E("view-port", doc) && E("view-port", doc).selectedIndex == 0) {
|
||||
try {
|
||||
win.gViewController.loadView("addons://list/extension");
|
||||
} catch (ex) {
|
||||
// This fails with Webconverger installed. Ignore it.
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!xpinstallEnabled) {
|
||||
// Hide the "Install Add-on From File" separator
|
||||
hide(E("utils-installFromFile-separator", doc));
|
||||
// Hide the "Install Add-on From File" menuitem
|
||||
hide(E("utils-installFromFile", doc));
|
||||
win.gDragDrop.onDragOver = function(event) {
|
||||
event.dataTransfer.dropEffect = "none";
|
||||
event.stopPropagation();
|
||||
event.preventDefault();
|
||||
};
|
||||
}
|
||||
break;
|
||||
}
|
||||
}, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Services.obs.addObserver(observer, "chrome-document-global-created", false);
|
||||
|
||||
function E(id, context) {
|
||||
var element = context.getElementById(id);
|
||||
return element;
|
||||
}
|
||||
|
||||
function hide(element) {
|
||||
if (element) {
|
||||
element.setAttribute("hidden", "true");
|
||||
}
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
/* This file is a workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1139509 */
|
||||
/* It bolds the Firefox version in the about dialog and unbolds the distribution information */
|
||||
/* It can be removed once Firefox 38 ESR is out of support */
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
var observer = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
switch (topic) {
|
||||
case "chrome-document-global-created":
|
||||
var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow);
|
||||
win.addEventListener("load", function onLoad(event) {
|
||||
win.removeEventListener("load", onLoad, false);
|
||||
var doc = event.target;
|
||||
var url = doc.location.href.split("?")[0].split("#")[0];
|
||||
switch (url) {
|
||||
case "chrome://browser/content/aboutDialog.xul":
|
||||
doc.querySelector("#version").style.fontWeight = "bold";
|
||||
doc.querySelector("#distribution").style.fontWeight = "normal";
|
||||
doc.querySelector("#distributionId").style.fontWeight = "normal";
|
||||
break;
|
||||
}
|
||||
}, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Services.obs.addObserver(observer, "chrome-document-global-created", false);
|
||||
@@ -1,79 +0,0 @@
|
||||
/* This file overrides about:home. It does the following:
|
||||
* Remove the sync button if Sync is disabled
|
||||
* Remove the Addons button if Sync is disabled
|
||||
* Remove the snippets if snippets are disabled
|
||||
*/
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
var configs = null;
|
||||
|
||||
var observer = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
switch (topic) {
|
||||
case "content-document-global-created":
|
||||
var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow);
|
||||
win.addEventListener("load", function onLoad(event) {
|
||||
win.removeEventListener("load", onLoad, false);
|
||||
var doc = event.target;
|
||||
var url = doc.location.href.split("?")[0].split("#")[0];
|
||||
switch (url) {
|
||||
case "about:home":
|
||||
case "chrome://browser/content/abouthome/aboutHome.xhtml":
|
||||
if (!configs) {
|
||||
// TODO - Make this Async
|
||||
configs = sendSyncMessage("cck2:get-configs")[0];
|
||||
}
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disableSync) {
|
||||
remove(E("sync", doc));
|
||||
}
|
||||
if (config.disableAddonsManager) {
|
||||
remove(E("addons", doc));
|
||||
}
|
||||
if (config.disableWebApps) {
|
||||
remove(E("apps", doc));
|
||||
}
|
||||
if (config.removeSnippets) {
|
||||
var snippets = E("snippets", doc);
|
||||
if (snippets) {
|
||||
snippets.style.display = "none";
|
||||
}
|
||||
}
|
||||
if (config.hiddenUI) {
|
||||
for (var i=0; i < config.hiddenUI.length; i++) {
|
||||
var uiElements = doc.querySelectorAll(config.hiddenUI[i]);
|
||||
for (var j=0; j < uiElements.length; j++) {
|
||||
var uiElement = uiElements[j];
|
||||
uiElement.setAttribute("hidden", "true");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Services.obs.addObserver(observer, "content-document-global-created", false);
|
||||
|
||||
addEventListener("unload", function() {
|
||||
Services.obs.removeObserver(observer, "content-document-global-created", false);
|
||||
})
|
||||
|
||||
function E(id, context) {
|
||||
var element = context.getElementById(id);
|
||||
return element;
|
||||
}
|
||||
|
||||
function remove(element) {
|
||||
if (element && element.parentNode)
|
||||
element.parentNode.removeChild(element);
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
/* This file overrides about:support It does the following:
|
||||
* Remove the reset Firefox button if disableResetFirefox is set
|
||||
* Remove the safe mode Button if disableSafeMode is set
|
||||
* Remove the box if both are set
|
||||
*/
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource://cck2/CCK2.jsm");
|
||||
|
||||
var configs = null;
|
||||
|
||||
var observer = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
switch (topic) {
|
||||
case "chrome-document-global-created":
|
||||
var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow);
|
||||
win.addEventListener("load", function onLoad(event) {
|
||||
win.removeEventListener("load", onLoad, false);
|
||||
var doc = event.target;
|
||||
var url = doc.location.href.split("?")[0].split("#")[0];
|
||||
switch (url) {
|
||||
case "about:support":
|
||||
case "chrome://global/content/aboutSupport.xhtml":
|
||||
if (!configs) {
|
||||
configs = CCK2.getConfigs();
|
||||
}
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disableResetFirefox) {
|
||||
remove(E("reset-box", doc));
|
||||
}
|
||||
if (config.disableSafeMode) {
|
||||
remove(E("safe-mode-box", doc));
|
||||
}
|
||||
if (config.disableResetFirefox &&
|
||||
config.disableSafeMode) {
|
||||
remove(E("action-box", doc));
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Services.obs.addObserver(observer, "chrome-document-global-created", false);
|
||||
|
||||
function E(id, context) {
|
||||
var element = context.getElementById(id);
|
||||
return element;
|
||||
}
|
||||
|
||||
|
||||
function remove(element) {
|
||||
if (element && element.parentNode)
|
||||
element.parentNode.removeChild(element);
|
||||
}
|
||||
@@ -1,373 +0,0 @@
|
||||
/* This file modifies the main browser window. It does the following:
|
||||
* Goes through the hiddenUI list and hides any UI
|
||||
*
|
||||
*/
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource:///modules/CustomizableUI.jsm");
|
||||
Cu.import("resource://gre/modules/PrivateBrowsingUtils.jsm");
|
||||
Cu.import("resource://cck2/CCK2.jsm");
|
||||
|
||||
var configs = null;
|
||||
|
||||
var observer = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
switch (topic) {
|
||||
case "chrome-document-global-created":
|
||||
var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow);
|
||||
win.addEventListener("load", function onLoad(event) {
|
||||
win.removeEventListener("load", onLoad, false);
|
||||
var doc = event.target;
|
||||
var url = doc.location.href.split("?")[0].split("#")[0];
|
||||
switch (url) {
|
||||
case "chrome://browser/content/browser.xul":
|
||||
// Workaround https://bugzilla.mozilla.org/show_bug.cgi?id=1149617
|
||||
var origSetReportPhishingMenu = win.gSafeBrowsing.setReportPhishingMenu;
|
||||
win.gSafeBrowsing.setReportPhishingMenu = function() {
|
||||
try {
|
||||
origSetReportPhishingMenu();
|
||||
} catch (e) {}
|
||||
}
|
||||
|
||||
win.addEventListener("unload", function onUnload(event) {
|
||||
win.removeEventListener("unload", onUnload, false);
|
||||
var panelUIPopup = doc.getElementById("PanelUI-popup");
|
||||
if (panelUIPopup) {
|
||||
E("PanelUI-popup", doc).removeEventListener("popupshowing", onPanelShowing, false);
|
||||
}
|
||||
});
|
||||
var panelUIPopup = doc.getElementById("PanelUI-popup");
|
||||
if (panelUIPopup) {
|
||||
E("PanelUI-popup", doc).addEventListener("popupshowing", onPanelShowing, false);
|
||||
}
|
||||
var appMenuPopup = doc.getElementById("appMenu-popup");
|
||||
if (appMenuPopup) {
|
||||
E("appMenu-popup", doc).addEventListener("popupshowing", onAppMenuShowing, false);
|
||||
}
|
||||
configs = CCK2.getConfigs();
|
||||
for (let id in configs) {
|
||||
config = configs[id];
|
||||
if (config.disablePrivateBrowsing &&
|
||||
PrivateBrowsingUtils.isWindowPrivate(win)) {
|
||||
win.setTimeout(function() {
|
||||
Services.prompt.alert(win, "Private Browsing", "Private Browsing has been disabled by your administrator");
|
||||
win.close();
|
||||
}, 0, false);
|
||||
}
|
||||
if (config.disablePrivateBrowsing) {
|
||||
disablePrivateBrowsing(doc);
|
||||
}
|
||||
if (config.disableSync) {
|
||||
disableSync(doc);
|
||||
}
|
||||
if (config.disableAddonsManager) {
|
||||
disableAddonsManager(doc);
|
||||
}
|
||||
if (config.removeDeveloperTools) {
|
||||
Services.tm.mainThread.dispatch(function() {
|
||||
removeDeveloperTools(doc);
|
||||
}, Ci.nsIThread.DISPATCH_NORMAL);
|
||||
}
|
||||
if (config.disableErrorConsole) {
|
||||
disableErrorConsole(doc);
|
||||
}
|
||||
if (config.disableFirefoxHealthReport) {
|
||||
var healthReportMenu = doc.getElementById("healthReport");
|
||||
if (healthReportMenu) {
|
||||
healthReportMenu.parentNode.removeChild(healthReportMenu);
|
||||
}
|
||||
}
|
||||
if (config.removeSafeModeMenu) {
|
||||
hide(E("helpSafeMode", doc));
|
||||
}
|
||||
if (config.titlemodifier) {
|
||||
doc.getElementById("main-window").setAttribute("titlemodifier", config.titlemodifier);
|
||||
}
|
||||
if (config.removeSetDesktopBackground) {
|
||||
// Because this is on a context menu, we can't use "hidden"
|
||||
if (E("context-setDesktopBackground", doc)) {
|
||||
E("context-setDesktopBackground", doc).setAttribute("style", "display: none;");
|
||||
}
|
||||
}
|
||||
if (config.disableWebApps) {
|
||||
CustomizableUI.destroyWidget("web-apps-button");
|
||||
hide(E("menu_openApps", doc));
|
||||
}
|
||||
if (config.disableHello) {
|
||||
CustomizableUI.destroyWidget("loop-button");
|
||||
hide(E("menu_openLoop", doc));
|
||||
}
|
||||
if (config.disablePocket) {
|
||||
CustomizableUI.destroyWidget("pocket-button");
|
||||
}
|
||||
if (config.disableSharePage) {
|
||||
CustomizableUI.destroyWidget("social-share-button");
|
||||
// Because these are on a context menu, we can't use "hidden"
|
||||
if (E("context-sharelink", doc)) {
|
||||
E("context-sharelink", doc).setAttribute("style", "display: none;");
|
||||
}
|
||||
if (E("context-shareselect", doc)) {
|
||||
E("context-shareselect", doc).setAttribute("style", "display: none;");
|
||||
}
|
||||
if (E("context-shareimage", doc)) {
|
||||
E("context-shareimage", doc).setAttribute("style", "display: none;");
|
||||
}
|
||||
if (E("context-sharevideo", doc)) {
|
||||
E("context-sharevideo", doc).setAttribute("style", "display: none;");
|
||||
}
|
||||
if (E("context-sharepage", doc)) {
|
||||
E("context-sharepage", doc).setAttribute("style", "display: none;");
|
||||
}
|
||||
}
|
||||
if (config.disableSocialAPI) {
|
||||
win.SocialActivationListener = {};
|
||||
}
|
||||
if (config.disableForget) {
|
||||
CustomizableUI.destroyWidget("panic-button");
|
||||
}
|
||||
if (config.hiddenUI) {
|
||||
hideUIElements(doc, config.hiddenUI);
|
||||
}
|
||||
if (config.helpMenu) {
|
||||
// We need to run this function on a delay, because we won't know
|
||||
// if the about menu is hidden for mac until after it is run.
|
||||
Services.tm.mainThread.dispatch(function() {
|
||||
var helpMenuPopup = doc.getElementById("menu_HelpPopup");
|
||||
var menuitem = doc.createElement("menuitem");
|
||||
menuitem.setAttribute("label", config.helpMenu.label);
|
||||
if ("accesskey" in config.helpMenu) {
|
||||
menuitem.setAttribute("accesskey", config.helpMenu.accesskey);
|
||||
}
|
||||
menuitem.setAttribute("oncommand", "openUILink('" + config.helpMenu.url + "');");
|
||||
menuitem.setAttribute("onclick", "checkForMiddleClick(this, event);");
|
||||
if (!E("aboutName", doc) || E("aboutName", doc).hidden) {
|
||||
// Mac
|
||||
helpMenuPopup.appendChild(menuitem);
|
||||
} else {
|
||||
helpMenuPopup.insertBefore(menuitem, E("aboutName", doc));
|
||||
helpMenuPopup.insertBefore(doc.createElement("menuseparator"),
|
||||
E("aboutName", doc));
|
||||
}
|
||||
}, Ci.nsIThread.DISPATCH_NORMAL);
|
||||
}
|
||||
if (config.firstrun || config.upgrade) {
|
||||
if (config.displayBookmarksToolbar || (config.bookmarks && config.bookmarks.toolbar)) {
|
||||
CustomizableUI.setToolbarVisibility("PersonalToolbar", "true");
|
||||
}
|
||||
if (config.displayMenuBar) {
|
||||
CustomizableUI.setToolbarVisibility("toolbar-menubar", "true");
|
||||
}
|
||||
if (config.showSearchBar) {
|
||||
CustomizableUI.addWidgetToArea("search-container", CustomizableUI.AREA_NAVBAR,
|
||||
CustomizableUI.getPlacementOfWidget("urlbar-container").position + 1);
|
||||
}
|
||||
config.firstrun = false;
|
||||
config.upgrade = false;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "chrome://browser/content/places/places.xul":
|
||||
case "chrome://browser/content/bookmarks/bookmarksPanel.xul":
|
||||
case "chrome://browser/content/history/history-panel.xul":
|
||||
configs = CCK2.getConfigs();
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disablePrivateBrowsing) {
|
||||
if (E("placesContext_open:newprivatewindow", doc)) {
|
||||
E("placesContext_open:newprivatewindow", doc).setAttribute("style", "display: none;");
|
||||
}
|
||||
}
|
||||
if (config.hiddenUI) {
|
||||
hideUIElements(doc, config.hiddenUI);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Services.obs.addObserver(observer, "chrome-document-global-created", false);
|
||||
|
||||
function disableSync(doc) {
|
||||
var win = doc.defaultView;
|
||||
if (win.gSyncUI) {
|
||||
var mySyncUI = {
|
||||
init: function() {
|
||||
return;
|
||||
},
|
||||
initUI: function() {
|
||||
return;
|
||||
},
|
||||
updateUI: function() {
|
||||
hide(E("sync-setup-state", doc));
|
||||
hide(E("sync-syncnow-state", doc));
|
||||
hide(E("sync-setup", doc));
|
||||
hide(E("sync-syncnowitem", doc));
|
||||
}
|
||||
}
|
||||
win.gSyncUI = mySyncUI;
|
||||
}
|
||||
CustomizableUI.destroyWidget("sync-button");
|
||||
CustomizableUI.removeWidgetFromArea("sync-button");
|
||||
var toolbox = doc.getElementById("navigator-toolbox");
|
||||
if (toolbox && toolbox.palette) {
|
||||
let element = toolbox.palette.querySelector("#sync-button");
|
||||
if (element) {
|
||||
element.parentNode.removeChild(element);
|
||||
}
|
||||
}
|
||||
hide(E("sync-setup-state", doc));
|
||||
hide(E("sync-syncnow-state", doc));
|
||||
hide(E("sync-setup", doc));
|
||||
hide(E("sync-syncnowitem", doc));
|
||||
}
|
||||
|
||||
function disablePrivateBrowsing(doc) {
|
||||
disable(E("Tools:PrivateBrowsing", doc));
|
||||
hide(E("menu_newPrivateWindow", doc));
|
||||
// Because this is on a context menu, we can't use "hidden"
|
||||
if (E("context-openlinkprivate", doc))
|
||||
E("context-openlinkprivate", doc).setAttribute("style", "display: none;");
|
||||
if (E("placesContext_open:newprivatewindow", doc))
|
||||
E("placesContext_open:newprivatewindow", doc).setAttribute("style", "display: none;");
|
||||
CustomizableUI.destroyWidget("privatebrowsing-button")
|
||||
}
|
||||
|
||||
function disableAddonsManager(doc) {
|
||||
hide(E("menu_openAddons", doc));
|
||||
disable(E("Tools:Addons", doc)); // Ctrl+Shift+A
|
||||
CustomizableUI.destroyWidget("add-ons-button")
|
||||
}
|
||||
|
||||
function removeDeveloperTools(doc) {
|
||||
var win = doc.defaultView;
|
||||
// Need to delay this because devtools is created dynamically
|
||||
win.setTimeout(function() {
|
||||
CustomizableUI.destroyWidget("developer-button")
|
||||
hide(E("webDeveloperMenu", doc));
|
||||
var devtoolsKeyset = doc.getElementById("devtoolsKeyset");
|
||||
if (devtoolsKeyset) {
|
||||
for (var i = 0; i < devtoolsKeyset.childNodes.length; i++) {
|
||||
devtoolsKeyset.childNodes[i].removeAttribute("oncommand");
|
||||
devtoolsKeyset.childNodes[i].removeAttribute("command");
|
||||
}
|
||||
}
|
||||
}, 0);
|
||||
try {
|
||||
doc.getElementById("Tools:ResponsiveUI").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
try {
|
||||
doc.getElementById("Tools:Scratchpad").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
try {
|
||||
doc.getElementById("Tools:BrowserConsole").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
try {
|
||||
doc.getElementById("Tools:BrowserToolbox").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
try {
|
||||
doc.getElementById("Tools:DevAppsMgr").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
try {
|
||||
doc.getElementById("Tools:DevToolbar").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
try {
|
||||
doc.getElementById("Tools:DevToolbox").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
try {
|
||||
doc.getElementById("Tools:DevToolbarFocus").removeAttribute("oncommand");
|
||||
} catch (e) {}
|
||||
CustomizableUI.destroyWidget("developer-button")
|
||||
}
|
||||
|
||||
function disableErrorConsole(doc) {
|
||||
doc.getElementById("Tools:ErrorConsole").removeAttribute("oncommand");
|
||||
}
|
||||
|
||||
function onPanelShowing(event) {
|
||||
var configs = CCK2.getConfigs();
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disableSync) {
|
||||
hide(E("PanelUI-fxa-status", event.target.ownerDocument));
|
||||
hide(E("PanelUI-footer-fxa", event.target.ownerDocument)); // Firefox 42+
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function onAppMenuShowing(event) {
|
||||
var configs = CCK2.getConfigs();
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disableSync) {
|
||||
hide(E("appMenu-fxa-container", event.target.ownerDocument));
|
||||
}
|
||||
if (config.removeDeveloperTools) {
|
||||
hide(E("appMenu-developer-button", event.target.ownerDocument));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function E(id, context) {
|
||||
var element = context.getElementById(id);
|
||||
return element;
|
||||
}
|
||||
|
||||
function hide(element) {
|
||||
if (element) {
|
||||
element.setAttribute("hidden", "true");
|
||||
}
|
||||
}
|
||||
|
||||
function disable(element) {
|
||||
if (element) {
|
||||
element.disabled = true;
|
||||
element.setAttribute("disabled", "true");
|
||||
}
|
||||
}
|
||||
|
||||
function hideUIElements(doc, hiddenUI) {
|
||||
for (var i=0; i < hiddenUI.length; i++) {
|
||||
var uiElements = doc.querySelectorAll(hiddenUI[i]);
|
||||
// Don't use .hidden since it doesn't work sometimes
|
||||
var style = doc.getElementById("cck2-hidden-style");
|
||||
if (!style) {
|
||||
style = doc.createElementNS("http://www.w3.org/1999/xhtml", "style");
|
||||
style.setAttribute("id", "cck2-hidden-style");
|
||||
style.setAttribute("type", "text/css");
|
||||
doc.documentElement.appendChild(style);
|
||||
}
|
||||
style.textContent = style.textContent + hiddenUI[i] + "{display: none !important;}";
|
||||
if (!uiElements || uiElements.length == 0) {
|
||||
continue;
|
||||
}
|
||||
for (var j=0; j < uiElements.length; j++) {
|
||||
var uiElement = uiElements[j];
|
||||
if (uiElement.nodeName == "menuitem") {
|
||||
uiElement.removeAttribute("key");
|
||||
uiElement.removeAttribute("oncommand");
|
||||
if (uiElement.hasAttribute("command")) {
|
||||
var commandId = uiElement.getAttribute("command");
|
||||
uiElement.removeAttribute("command");
|
||||
var command = doc.getElementById(commandId);
|
||||
command.removeAttribute("oncommand");
|
||||
var keys = doc.querySelectorAll("key[command='" + commandId + "']")
|
||||
for (var k=0; k < keys.length; k++) {
|
||||
keys[k].removeAttribute("command");
|
||||
}
|
||||
}
|
||||
}
|
||||
// Horrible hack to work around the crappy Australis help menu
|
||||
// Items on the menu always show up in the Australis menu, so we have to remove them.
|
||||
if (uiElements[j].parentNode.id == "menu_HelpPopup") {
|
||||
uiElements[j].parentNode.removeChild(uiElements[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
var EXPORTED_SYMBOLS = [];
|
||||
|
||||
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
|
||||
let CCK2FileBlock = {
|
||||
chromeBlacklist: ["browser", "mozapps", "marionette", "specialpowers",
|
||||
"branding", "alerts"],
|
||||
shouldLoad: function(aContentType, aContentLocation, aRequestOrigin, aContext, aMimeTypeGuess, aExtra) {
|
||||
// Prevent the loading of chrome URLs into the main browser window
|
||||
if (aContentLocation.scheme == "chrome") {
|
||||
if (aRequestOrigin &&
|
||||
(aRequestOrigin.spec == "chrome://browser/content/browser.xul" ||
|
||||
aRequestOrigin.scheme == "moz-nullprincipal")) {
|
||||
for (var i=0; i < this.chromeBlacklist.length; i++) {
|
||||
if (aContentLocation.host == this.chromeBlacklist[i]) {
|
||||
if (aContentLocation.spec.includes(".xul")) {
|
||||
return Ci.nsIContentPolicy.REJECT_REQUEST;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return Ci.nsIContentPolicy.ACCEPT;
|
||||
},
|
||||
shouldProcess: function(aContentType, aContentLocation, aRequestOrigin, aContext, aMimeTypeGuess, aExtra) {
|
||||
return Ci.nsIContentPolicy.ACCEPT;
|
||||
},
|
||||
classDescription: "CCK2 FileBlock Service",
|
||||
contractID: "@kaply.com/cck2-fileblock-service;1",
|
||||
classID: Components.ID('{26e7afc9-e22d-4d12-bb57-c184fe24b828}'),
|
||||
QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPolicy]),
|
||||
createInstance: function(outer, iid) {
|
||||
return this.QueryInterface(iid);
|
||||
},
|
||||
};
|
||||
|
||||
var registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar);
|
||||
registrar.registerFactory(CCK2FileBlock.classID,
|
||||
CCK2FileBlock.classDescription,
|
||||
CCK2FileBlock.contractID,
|
||||
CCK2FileBlock);
|
||||
|
||||
var cm = Cc["@mozilla.org/categorymanager;1"].getService(Ci.nsICategoryManager);
|
||||
cm.addCategoryEntry("content-policy", CCK2FileBlock.contractID,
|
||||
CCK2FileBlock.contractID, false, true);
|
||||
@@ -1,51 +0,0 @@
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
var disableSearchEngineInstall = false;
|
||||
|
||||
var documentObserver = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
if (subject instanceof Ci.nsIDOMWindow && topic == 'content-document-global-created') {
|
||||
var doc = subject.document;
|
||||
doc.addEventListener("DOMContentLoaded", function onLoad(event) {
|
||||
event.target.removeEventListener("DOMContentLoaded", onLoad, false);
|
||||
if (disableSearchEngineInstall) {
|
||||
subject.wrappedJSObject.external.AddSearchProvider = function() {};
|
||||
}
|
||||
if (!doc.documentURI.startsWith("about:")) {
|
||||
return;
|
||||
}
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.hiddenUI) {
|
||||
for (var i=0; i < config.hiddenUI.length; i++) {
|
||||
// Don't use .hidden since it doesn't work sometimes
|
||||
var style = doc.getElementById("cck2-hidden-style");
|
||||
if (!style) {
|
||||
style = doc.createElementNS("http://www.w3.org/1999/xhtml", "style");
|
||||
style.setAttribute("id", "cck2-hidden-style");
|
||||
style.setAttribute("type", "text/css");
|
||||
doc.documentElement.appendChild(style);
|
||||
}
|
||||
style.textContent = style.textContent + config.hiddenUI[i] + "{display: none !important;}";
|
||||
}
|
||||
}
|
||||
}
|
||||
}, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var configs = sendSyncMessage("cck2:get-configs")[0];
|
||||
for (var id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disableSearchEngineInstall) {
|
||||
disableSearchEngineInstall = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Services.obs.addObserver(documentObserver, "content-document-global-created", false);
|
||||
addEventListener("unload", function() {
|
||||
Services.obs.removeObserver(documentObserver, "content-document-global-created", false);
|
||||
})
|
||||
@@ -1,123 +0,0 @@
|
||||
/* This file modifies the preferences dialogs. It does the following:
|
||||
* Removes private browsing from the pref UI if it is disabled
|
||||
* Removes Sync from the pref UI if it is diabled
|
||||
* Disables the crash reporter button if crash reporter is disabled
|
||||
* Removed the master password UI if it is disabled
|
||||
* Goes through the hiddenUI list and hides any UI
|
||||
*
|
||||
*/
|
||||
|
||||
const EXPORTED_SYMBOLS = [];
|
||||
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource://cck2/CCK2.jsm");
|
||||
|
||||
var configs = null;
|
||||
|
||||
var observer = {
|
||||
observe: function observe(subject, topic, data) {
|
||||
switch (topic) {
|
||||
case "chrome-document-global-created":
|
||||
var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow);
|
||||
win.addEventListener("load", function onLoad(event) {
|
||||
win.removeEventListener("load", onLoad, false);
|
||||
var doc = event.target;
|
||||
var url = doc.location.href.split("?")[0].split("#")[0];
|
||||
switch (url) {
|
||||
case "chrome://browser/content/preferences/preferences.xul":
|
||||
configs = CCK2.getConfigs();
|
||||
win.addEventListener("paneload", function(event) {
|
||||
updatePrefUI(event.target.ownerDocument);
|
||||
}, false);
|
||||
updatePrefUI(doc);
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (!config.disableSync) {
|
||||
continue;
|
||||
}
|
||||
var prefWindow = E("BrowserPreferences", doc);
|
||||
var paneSyncRadio = doc.getAnonymousElementByAttribute(prefWindow, "pane", "paneSync");
|
||||
hide(paneSyncRadio);
|
||||
var paneDeck = doc.getAnonymousElementByAttribute(prefWindow, "anonid", "paneDeck");
|
||||
var paneSync = E("paneSync", doc);
|
||||
paneSync.removeAttribute("helpTopic");
|
||||
var weavePrefsDeck = E("weavePrefsDeck", doc);
|
||||
if (weavePrefsDeck)
|
||||
weavePrefsDeck.parentNode.removeChild(weavePrefsDeck);
|
||||
if (prefWindow.currentPane == E("paneSync", doc))
|
||||
prefWindow.showPane(E("paneMain", doc));
|
||||
}
|
||||
break;
|
||||
case "about:preferences":
|
||||
case "chrome://browser/content/preferences/in-content/preferences.xul":
|
||||
configs = CCK2.getConfigs();
|
||||
for (let id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disableSync) {
|
||||
hide(E("category-sync", doc));
|
||||
}
|
||||
}
|
||||
updatePrefUI(doc);
|
||||
break;
|
||||
}
|
||||
}, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Services.obs.addObserver(observer, "chrome-document-global-created", false);
|
||||
|
||||
// The IDs are the same, so I can reuse this for regular and in-content prefs
|
||||
function updatePrefUI(doc) {
|
||||
for (var id in configs) {
|
||||
var config = configs[id];
|
||||
if (config.disablePrivateBrowsing) {
|
||||
hide(E("privateBrowsingAutoStart", doc));
|
||||
var privateBrowsingMenu = doc.querySelector("menuitem[value='dontremember']");
|
||||
hide(privateBrowsingMenu, doc);
|
||||
}
|
||||
if (config.disableCrashReporter) {
|
||||
disable(E("submitCrashesBox", doc));
|
||||
}
|
||||
if (config.disableSync) {
|
||||
hide(E("noFxaAccount", doc));
|
||||
hide(E("hasFxaAccount", doc));
|
||||
}
|
||||
if (config.noMasterPassword == true) {
|
||||
hide(E("useMasterPassword", doc));
|
||||
hide(E("changeMasterPassword", doc));
|
||||
}
|
||||
if (config.hiddenUI) {
|
||||
for (var i=0; i < config.hiddenUI.length; i++) {
|
||||
// Don't use .hidden since it doesn't work sometimes
|
||||
var style = doc.getElementById("cck2-hidden-style");
|
||||
if (!style) {
|
||||
style = doc.createElementNS("http://www.w3.org/1999/xhtml", "style");
|
||||
style.setAttribute("id", "cck2-hidden-style");
|
||||
style.setAttribute("type", "text/css");
|
||||
doc.documentElement.appendChild(style);
|
||||
}
|
||||
style.textContent = style.textContent + config.hiddenUI[i] + "{display: none !important;}";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function E(id, context) {
|
||||
var element = context.getElementById(id);
|
||||
return element;
|
||||
}
|
||||
|
||||
function hide(element) {
|
||||
if (element) {
|
||||
element.setAttribute("hidden", "true");
|
||||
}
|
||||
}
|
||||
|
||||
function disable(element) {
|
||||
if (element) {
|
||||
element.disabled = true;
|
||||
}
|
||||
}
|
||||
@@ -1,123 +0,0 @@
|
||||
/**
|
||||
* Copied from https://github.com/jvillalobos/CTP-Manager/blob/master/extension/modules/permissions.js
|
||||
**/
|
||||
|
||||
/**
|
||||
* Copyright 2013 Jorge Villalobos
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
**/
|
||||
|
||||
var EXPORTED_SYMBOLS = ["CTP"];
|
||||
|
||||
const Cc = Components.classes;
|
||||
const Ci = Components.interfaces;
|
||||
|
||||
Components.utils.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
var CTP = {
|
||||
/**
|
||||
* Cleans up the plugin name to a more readable form.
|
||||
* Taken from /browser/base/content/pageinfo/permissions.js (Firefox 20)
|
||||
* @param aPluginName the name to clean up.
|
||||
* @return cleaned up plugin name.
|
||||
*/
|
||||
makeNicePluginName : function(aPluginName) {
|
||||
let newName =
|
||||
aPluginName.replace(/[\s\d\.\-\_\(\)]+$/, "").
|
||||
replace(/\bplug-?in\b/i, "").trim();
|
||||
|
||||
return newName;
|
||||
},
|
||||
|
||||
/**
|
||||
* Gets the plugin permission string from the tag object. In Firefox 20, this
|
||||
* is the plugin filename. In 21 an above, the file extension is removed and
|
||||
* Flash and Java are special-cased.
|
||||
* @param aTag the tag object with the plugin information.
|
||||
* @return permission string that corresponds to the plugin in the tag.
|
||||
*/
|
||||
getPluginPermissionFromTag : function(aTag) {
|
||||
let permission = null;
|
||||
let majorVersion = Services.appinfo.platformVersion.split(".")[0];
|
||||
|
||||
if (21 <= majorVersion) {
|
||||
let mimeTypes = aTag.getMimeTypes();
|
||||
|
||||
if (CTP.isFlashPlugin(mimeTypes)) {
|
||||
permission = "flash";
|
||||
} else if (CTP.isJavaPlugin(mimeTypes)) {
|
||||
permission = "java";
|
||||
} else {
|
||||
let lastPeriod = aTag.filename.lastIndexOf(".");
|
||||
|
||||
permission =
|
||||
((0 < lastPeriod) ? aTag.filename.substring(0, lastPeriod) :
|
||||
aTag.filename);
|
||||
// Remove digits at the end
|
||||
permission = permission.replace(/[0-9]+$/, "");
|
||||
permission = permission.toLowerCase();
|
||||
}
|
||||
} else {
|
||||
permission = aTag.filename;
|
||||
}
|
||||
|
||||
return permission;
|
||||
},
|
||||
|
||||
/**
|
||||
* Checks if the tag object corresponds to the Java plugin.
|
||||
* @param aMimeTypes the list of MIME types for the plugin.
|
||||
* @return true if the tag corresponds to the Java plugin.
|
||||
*/
|
||||
isJavaPlugin : function(aMimeTypes) {
|
||||
let isJava = false;
|
||||
let mimeType;
|
||||
|
||||
for (let i = 0; i < aMimeTypes.length; i++) {
|
||||
mimeType =
|
||||
((null != aMimeTypes[i].type) ? aMimeTypes[i].type : aMimeTypes[i]);
|
||||
|
||||
if ((0 == mimeType.indexOf("application/x-java-vm")) ||
|
||||
(0 == mimeType.indexOf("application/x-java-applet")) ||
|
||||
(0 == mimeType.indexOf("application/x-java-bean"))) {
|
||||
isJava = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return isJava;
|
||||
},
|
||||
|
||||
/**
|
||||
* Checks if the tag object corresponds to the Flash plugin.
|
||||
* @param aMimeTypes the list of MIME types for the plugin.
|
||||
* @return true if the tag corresponds to the Flash plugin.
|
||||
*/
|
||||
isFlashPlugin : function(aMimeTypes) {
|
||||
let isFlash = false;
|
||||
let mimeType;
|
||||
|
||||
for (let i = 0; i < aMimeTypes.length; i++) {
|
||||
mimeType =
|
||||
((null != aMimeTypes[i].type) ? aMimeTypes[i].type : aMimeTypes[i]);
|
||||
|
||||
if (0 == mimeType.indexOf("application/x-shockwave-flash")) {
|
||||
isFlash = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return isFlash;
|
||||
}
|
||||
};
|
||||
@@ -1,629 +0,0 @@
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is Preferences.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Mozilla.
|
||||
* Portions created by the Initial Developer are Copyright (C) 2008
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Myk Melez <myk@mozilla.org>
|
||||
* Daniel Aquino <mr.danielaquino@gmail.com>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
let EXPORTED_SYMBOLS = ["Preferences"];
|
||||
|
||||
const Cc = Components.classes;
|
||||
const Ci = Components.interfaces;
|
||||
const Cr = Components.results;
|
||||
const Cu = Components.utils;
|
||||
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
|
||||
// The minimum and maximum integers that can be set as preferences.
|
||||
// The range of valid values is narrower than the range of valid JS values
|
||||
// because the native preferences code treats integers as NSPR PRInt32s,
|
||||
// which are 32-bit signed integers on all platforms.
|
||||
const MAX_INT = Math.pow(2, 31) - 1;
|
||||
const MIN_INT = -MAX_INT;
|
||||
|
||||
function Preferences(args) {
|
||||
if (isObject(args)) {
|
||||
if (args.branch)
|
||||
this._prefBranch = args.branch;
|
||||
}
|
||||
else if (args)
|
||||
this._prefBranch = args;
|
||||
this.isDefaultBranch = false;
|
||||
}
|
||||
|
||||
Preferences.prototype = {
|
||||
/**
|
||||
* Get the value of a pref, if any; otherwise return the default value.
|
||||
*
|
||||
* @param prefName {String|Array}
|
||||
* the pref to get, or an array of prefs to get
|
||||
*
|
||||
* @param defaultValue
|
||||
* the default value, if any, for prefs that don't have one
|
||||
*
|
||||
* @returns the value of the pref, if any; otherwise the default value
|
||||
*/
|
||||
get: function(prefName, defaultValue) {
|
||||
if (isArray(prefName))
|
||||
return prefName.map(v => this.get(v, defaultValue));
|
||||
|
||||
return this._get(prefName, defaultValue);
|
||||
},
|
||||
|
||||
// In all cases below, the preference might exist as a user pref, but not
|
||||
// have a default value. In those cases, get* throws. Return the default value.
|
||||
_get: function(prefName, defaultValue) {
|
||||
switch (this._prefSvc.getPrefType(prefName)) {
|
||||
case Ci.nsIPrefBranch.PREF_STRING:
|
||||
try {
|
||||
return this._prefSvc.getComplexValue(prefName, Ci.nsISupportsString).data;
|
||||
} catch (ex) {
|
||||
if (this.isDefaultBranch)
|
||||
return defaultValue;
|
||||
else
|
||||
return this._prefSvc.getCharPref(prefName);
|
||||
}
|
||||
|
||||
case Ci.nsIPrefBranch.PREF_INT:
|
||||
try {
|
||||
return this._prefSvc.getIntPref(prefName);
|
||||
} catch (ex) {
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
case Ci.nsIPrefBranch.PREF_BOOL:
|
||||
try {
|
||||
return this._prefSvc.getBoolPref(prefName);
|
||||
} catch (ex) {
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
case Ci.nsIPrefBranch.PREF_INVALID:
|
||||
return defaultValue;
|
||||
|
||||
default:
|
||||
// This should never happen.
|
||||
throw "Error getting pref " + prefName + "; its value's type is " +
|
||||
this._prefSvc.getPrefType(prefName) + ", which I don't know " +
|
||||
"how to handle.";
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Set a preference to a value.
|
||||
*
|
||||
* You can set multiple prefs by passing an object as the only parameter.
|
||||
* In that case, this method will treat the properties of the object
|
||||
* as preferences to set, where each property name is the name of a pref
|
||||
* and its corresponding property value is the value of the pref.
|
||||
*
|
||||
* @param prefName {String|Object}
|
||||
* the name of the pref to set; or an object containing a set
|
||||
* of prefs to set
|
||||
*
|
||||
* @param prefValue {String|Number|Boolean}
|
||||
* the value to which to set the pref
|
||||
*
|
||||
* Note: Preferences cannot store non-integer numbers or numbers outside
|
||||
* the signed 32-bit range -(2^31-1) to 2^31-1, If you have such a number,
|
||||
* store it as a string by calling toString() on the number before passing
|
||||
* it to this method, i.e.:
|
||||
* Preferences.set("pi", 3.14159.toString())
|
||||
* Preferences.set("big", Math.pow(2, 31).toString()).
|
||||
*/
|
||||
set: function(prefName, prefValue) {
|
||||
if (isObject(prefName)) {
|
||||
for (let [name, value] in Iterator(prefName))
|
||||
this.set(name, value);
|
||||
return;
|
||||
}
|
||||
|
||||
this._set(prefName, prefValue);
|
||||
},
|
||||
|
||||
_set: function(prefName, prefValue) {
|
||||
let prefType;
|
||||
if (typeof prefValue != "undefined" && prefValue != null)
|
||||
prefType = prefValue.constructor.name;
|
||||
|
||||
var existingPrefType = this._prefSvc.getPrefType(prefName);
|
||||
if (existingPrefType != Ci.nsIPrefBranch.PREF_INVALID)
|
||||
{
|
||||
// convert
|
||||
if (existingPrefType == Ci.nsIPrefBranch.PREF_INT && prefType == "String")
|
||||
{
|
||||
prefValue = parseInt(prefValue);
|
||||
if (isNaN(prefValue))
|
||||
throw "Incompatible pref value type - " + prefName;
|
||||
prefType = "Number";
|
||||
}
|
||||
else if (existingPrefType == Ci.nsIPrefBranch.PREF_BOOL && prefType == "String")
|
||||
{
|
||||
if (prefValue == "true")
|
||||
prefValue = true;
|
||||
else if (prefValue == "false")
|
||||
prefValue = false;
|
||||
else
|
||||
throw "Incompatible pref value type - " + prefName;
|
||||
prefType = "Boolean";
|
||||
}
|
||||
else if (existingPrefType == Ci.nsIPrefBranch.PREF_BOOL && prefType == "Number")
|
||||
{
|
||||
prefValue = prefValue != 0;
|
||||
prefType = "Boolean";
|
||||
}
|
||||
}
|
||||
|
||||
switch (prefType) {
|
||||
case "String":
|
||||
{
|
||||
try {
|
||||
this._prefSvc.setStringPref(prefName, prefValue);
|
||||
} catch (e) {
|
||||
try {
|
||||
let string = Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
|
||||
string.data = prefValue;
|
||||
this._prefSvc.setComplexValue(prefName, Ci.nsISupportsString, string);
|
||||
} catch (e2) {
|
||||
Components.utils.reportError(e2);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case "Number":
|
||||
// We throw if the number is outside the range, since the result
|
||||
// will never be what the consumer wanted to store, but we only warn
|
||||
// if the number is non-integer, since the consumer might not mind
|
||||
// the loss of precision.
|
||||
if (prefValue > MAX_INT || prefValue < MIN_INT)
|
||||
throw("you cannot set the " + prefName + " pref to the number " +
|
||||
prefValue + ", as number pref values must be in the signed " +
|
||||
"32-bit integer range -(2^31-1) to 2^31-1. To store numbers " +
|
||||
"outside that range, store them as strings.");
|
||||
try {
|
||||
this._prefSvc.setIntPref(prefName, prefValue);
|
||||
} catch (e) {
|
||||
throw new Error(e.toString() + " - " + prefName);
|
||||
}
|
||||
if (prefValue % 1 != 0)
|
||||
Cu.reportError("Warning: setting the " + prefName + " pref to the " +
|
||||
"non-integer number " + prefValue + " converted it " +
|
||||
"to the integer number " + this.get(prefName) +
|
||||
"; to retain fractional precision, store non-integer " +
|
||||
"numbers as strings.");
|
||||
break;
|
||||
|
||||
case "Boolean":
|
||||
this._prefSvc.setBoolPref(prefName, prefValue);
|
||||
break;
|
||||
|
||||
default:
|
||||
throw "can't set pref " + prefName + " to value '" + prefValue +
|
||||
"'; it isn't a String, Number, or Boolean";
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Whether or not the given pref has a value. This is different from isSet
|
||||
* because it returns true whether the value of the pref is a default value
|
||||
* or a user-set value, while isSet only returns true if the value
|
||||
* is a user-set value.
|
||||
*
|
||||
* @param prefName {String|Array}
|
||||
* the pref to check, or an array of prefs to check
|
||||
*
|
||||
* @returns {Boolean|Array}
|
||||
* whether or not the pref has a value; or, if the caller provided
|
||||
* an array of pref names, an array of booleans indicating whether
|
||||
* or not the prefs have values
|
||||
*/
|
||||
has: function(prefName) {
|
||||
if (isArray(prefName))
|
||||
return prefName.map(this.has, this);
|
||||
|
||||
return this._has(prefName);
|
||||
},
|
||||
|
||||
_has: function(prefName) {
|
||||
return (this._prefSvc.getPrefType(prefName) != Ci.nsIPrefBranch.PREF_INVALID);
|
||||
},
|
||||
|
||||
/**
|
||||
* Whether or not the given pref has a user-set value. This is different
|
||||
* from |has| because it returns true only if the value of the pref is a user-
|
||||
* set value, while |has| returns true if the value of the pref is a default
|
||||
* value or a user-set value.
|
||||
*
|
||||
* @param prefName {String|Array}
|
||||
* the pref to check, or an array of prefs to check
|
||||
*
|
||||
* @returns {Boolean|Array}
|
||||
* whether or not the pref has a user-set value; or, if the caller
|
||||
* provided an array of pref names, an array of booleans indicating
|
||||
* whether or not the prefs have user-set values
|
||||
*/
|
||||
isSet: function(prefName) {
|
||||
if (isArray(prefName))
|
||||
return prefName.map(this.isSet, this);
|
||||
|
||||
return (this.has(prefName) && this._prefSvc.prefHasUserValue(prefName));
|
||||
},
|
||||
|
||||
/**
|
||||
* Whether or not the given pref has a user-set value. Use isSet instead,
|
||||
* which is equivalent.
|
||||
* @deprecated
|
||||
*/
|
||||
modified: function(prefName) { return this.isSet(prefName) },
|
||||
|
||||
reset: function(prefName) {
|
||||
if (isArray(prefName)) {
|
||||
prefName.map(v => this.reset(v));
|
||||
return;
|
||||
}
|
||||
|
||||
this._reset(prefName);
|
||||
},
|
||||
|
||||
_reset: function(prefName) {
|
||||
try {
|
||||
this._prefSvc.clearUserPref(prefName);
|
||||
}
|
||||
catch(ex) {
|
||||
// The pref service throws NS_ERROR_UNEXPECTED when the caller tries
|
||||
// to reset a pref that doesn't exist or is already set to its default
|
||||
// value. This interface fails silently in those cases, so callers
|
||||
// can unconditionally reset a pref without having to check if it needs
|
||||
// resetting first or trap exceptions after the fact. It passes through
|
||||
// other exceptions, however, so callers know about them, since we don't
|
||||
// know what other exceptions might be thrown and what they might mean.
|
||||
if (ex.result != Cr.NS_ERROR_UNEXPECTED)
|
||||
throw ex;
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* If you need to know the default values, without resetting the actual
|
||||
* user prefs, you can use this.
|
||||
* @returns {Preferences} a new Preferences object, which accesses
|
||||
* the defaults rather than the user prefs.
|
||||
* *Only* call get() on this.
|
||||
* If you call set(), you will modify the defaults, so don't do that!
|
||||
*/
|
||||
get defaults() {
|
||||
// nsIPrefService
|
||||
let defaultBranch = Services.prefs.
|
||||
getDefaultBranch(this._prefBranch).
|
||||
QueryInterface(Ci.nsIPrefBranch);
|
||||
let prefs = new Preferences(this._prefBranch);
|
||||
// override. nasty, but this is internal, so OK.
|
||||
Object.defineProperty(prefs, "_prefSvc", {
|
||||
get: function() {
|
||||
return defaultBranch;
|
||||
}
|
||||
});
|
||||
prefs.isDefaultBranch = true;
|
||||
return prefs;
|
||||
},
|
||||
|
||||
/**
|
||||
* Lock a pref so it can't be changed.
|
||||
*
|
||||
* @param prefName {String|Array}
|
||||
* the pref to lock, or an array of prefs to lock
|
||||
* @param prefValue {String} (optional)
|
||||
* default value of pref to lock only works if prefName isn't an array
|
||||
*/
|
||||
lock: function(prefName, prefValue) {
|
||||
if (isArray(prefName))
|
||||
prefName.map(this.lock, this);
|
||||
else if (typeof prefValue != "undefined")
|
||||
this.defaults.set(prefName, prefValue);
|
||||
|
||||
this._prefSvc.lockPref(prefName);
|
||||
},
|
||||
|
||||
/**
|
||||
* Unlock a pref so it can be changed.
|
||||
*
|
||||
* @param prefName {String|Array}
|
||||
* the pref to lock, or an array of prefs to lock
|
||||
*/
|
||||
unlock: function(prefName) {
|
||||
if (isArray(prefName))
|
||||
prefName.map(this.unlock, this);
|
||||
|
||||
this._prefSvc.unlockPref(prefName);
|
||||
},
|
||||
|
||||
/**
|
||||
* Whether or not the given pref is locked against changes and
|
||||
* if it is set to the passedi n value
|
||||
*
|
||||
* @param prefName {String|Array}
|
||||
* the pref to check, or an array of prefs to check
|
||||
* @param prefValue {String|Number|Boolean}}
|
||||
* the pref value to compare against
|
||||
*
|
||||
* @returns {Boolean|Array}
|
||||
* whether or not the pref is locked; or, if the caller
|
||||
* provided an array of pref names, an array of booleans indicating
|
||||
* whether or not the prefs are locked
|
||||
* If a pref value was specified returns whether or not the pref
|
||||
* was locked and equal to the passed in value.
|
||||
*/
|
||||
locked: function(prefName, prefValue) {
|
||||
if (isArray(prefName))
|
||||
return prefName.map(this.locked, this);
|
||||
|
||||
if (prefValue)
|
||||
return this._prefSvc.prefIsLocked(prefName) && (this.get(prefName) == prefValue);
|
||||
else
|
||||
return this._prefSvc.prefIsLocked(prefName);
|
||||
},
|
||||
|
||||
/**
|
||||
* Start observing a pref.
|
||||
*
|
||||
* The callback can be a function or any object that implements nsIObserver.
|
||||
* When the callback is a function and thisObject is provided, it gets called
|
||||
* as a method of thisObject.
|
||||
*
|
||||
* @param prefName {String}
|
||||
* the name of the pref to observe
|
||||
*
|
||||
* @param callback {Function|Object}
|
||||
* the code to notify when the pref changes;
|
||||
*
|
||||
* @param thisObject {Object} [optional]
|
||||
* the object to use as |this| when calling a Function callback;
|
||||
*
|
||||
* @returns the wrapped observer
|
||||
*/
|
||||
observe: function(prefName, callback, thisObject) {
|
||||
let fullPrefName = this._prefBranch + (prefName || "");
|
||||
|
||||
let observer = new PrefObserver(fullPrefName, callback, thisObject);
|
||||
Preferences._prefSvc.addObserver(fullPrefName, observer, true);
|
||||
observers.push(observer);
|
||||
|
||||
return observer;
|
||||
},
|
||||
|
||||
/**
|
||||
* Stop observing a pref.
|
||||
*
|
||||
* You must call this method with the same prefName, callback, and thisObject
|
||||
* with which you originally registered the observer. However, you don't have
|
||||
* to call this method on the same exact instance of Preferences; you can call
|
||||
* it on any instance. For example, the following code first starts and then
|
||||
* stops observing the "foo.bar.baz" preference:
|
||||
*
|
||||
* let observer = function() {...};
|
||||
* Preferences.observe("foo.bar.baz", observer);
|
||||
* new Preferences("foo.bar.").ignore("baz", observer);
|
||||
*
|
||||
* @param prefName {String}
|
||||
* the name of the pref being observed
|
||||
*
|
||||
* @param callback {Function|Object}
|
||||
* the code being notified when the pref changes
|
||||
*
|
||||
* @param thisObject {Object} [optional]
|
||||
* the object being used as |this| when calling a Function callback
|
||||
*/
|
||||
ignore: function(prefName, callback, thisObject) {
|
||||
let fullPrefName = this._prefBranch + (prefName || "");
|
||||
|
||||
// This seems fairly inefficient, but I'm not sure how much better we can
|
||||
// make it. We could index by fullBranch, but we can't index by callback
|
||||
// or thisObject, as far as I know, since the keys to JavaScript hashes
|
||||
// (a.k.a. objects) can apparently only be primitive values.
|
||||
let [observer] = observers.filter(v => v.prefName == fullPrefName &&
|
||||
v.callback == callback &&
|
||||
v.thisObject == thisObject);
|
||||
|
||||
if (observer) {
|
||||
Preferences._prefSvc.removeObserver(fullPrefName, observer);
|
||||
observers.splice(observers.indexOf(observer), 1);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Same as observe(), but automatically unregisters itself when
|
||||
* the window closes, saving you from writing an unload handler and
|
||||
* calling ignore().
|
||||
* @param win {nsIDOMWindow} your |window|
|
||||
*/
|
||||
observeAuto: function(win, prefName, callback, thisObject) {
|
||||
if (!win instanceof Ci.nsIDOMWindow)
|
||||
throw "Need your |window| as first parameter";
|
||||
this.observe(prefName, callback, thisObject);
|
||||
var self = this;
|
||||
win.addEventListener("unload", function()
|
||||
{
|
||||
self.ignore(prefName, callback, thisObject);
|
||||
}, false);
|
||||
win = null; // don't let closure hold on to window unnecessarily
|
||||
},
|
||||
|
||||
resetBranch: function(prefBranch) {
|
||||
try {
|
||||
this._prefSvc.resetBranch(prefBranch);
|
||||
}
|
||||
catch(ex) {
|
||||
// The current implementation of nsIPrefBranch in Mozilla
|
||||
// doesn't implement resetBranch, so we do it ourselves.
|
||||
if (ex.result == Cr.NS_ERROR_NOT_IMPLEMENTED)
|
||||
this.reset(this._prefSvc.getChildList(prefBranch, []));
|
||||
else
|
||||
throw ex;
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Returns all child prefs of this pref branch.
|
||||
* This equals nsIPrefBranch.getChildList().
|
||||
* This allows you to do e.g.
|
||||
* var myPrefs = new Preferences("extensions.cooler.");
|
||||
* var contents = myPrefs.branch("contents.");
|
||||
* for each (let prefname in contents.childPrefNames())
|
||||
* dump("have " + contents.get(prefname) + " " + prefname + "\n");
|
||||
*
|
||||
* @returns {Array of String} The names of the children,
|
||||
* without the base pref branch, but with subbranch.
|
||||
*/
|
||||
childPrefNames : function() {
|
||||
return this._prefSvc.getChildList("", []);
|
||||
},
|
||||
|
||||
/**
|
||||
* Returns an nsIPrefBranch for the pref branch that this object stands for.
|
||||
* You can use this to use functions that are not supported here.
|
||||
* @returns {nsIPrefBranch}
|
||||
*/
|
||||
get mozillaPrefBranch() {
|
||||
return this._prefSvc;
|
||||
},
|
||||
|
||||
/**
|
||||
* Returns the base pref name that this object stands for.
|
||||
* E.g. "extensions.yourcooler.";
|
||||
* @returns {String}
|
||||
*/
|
||||
get prefBranchName() {
|
||||
return this._prefBranch;
|
||||
},
|
||||
|
||||
/**
|
||||
* Returns an Preferences object for an sub pref branch
|
||||
* underneath the current pref branch.
|
||||
* @param subbranch {String} Will be appended to the
|
||||
* current pref branch. Don't forget the trailing dot,
|
||||
* where necessary.
|
||||
* E.g. "contents."
|
||||
* @returns {Preferences}
|
||||
*/
|
||||
branch : function(subbranch) {
|
||||
return new Preferences(this._prefBranch + subbranch);
|
||||
},
|
||||
|
||||
/**
|
||||
* The branch of the preferences tree to which this instance provides access.
|
||||
* @private
|
||||
*/
|
||||
_prefBranch: "",
|
||||
|
||||
/**
|
||||
* Preferences Service
|
||||
* @private
|
||||
*/
|
||||
get _prefSvc() {
|
||||
// nsIPrefService
|
||||
let prefSvc = Services.prefs.
|
||||
getBranch(this._prefBranch).
|
||||
QueryInterface(Ci.nsIPrefBranch);
|
||||
Object.defineProperty(this, "_prefSvc", {
|
||||
get: function() {
|
||||
return prefSvc;
|
||||
}
|
||||
});
|
||||
return this._prefSvc;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
// Give the constructor the same prototype as its instances, so users can access
|
||||
// preferences directly via the constructor without having to create an instance
|
||||
// first.
|
||||
Preferences.__proto__ = Preferences.prototype;
|
||||
|
||||
/**
|
||||
* A cache of pref observers.
|
||||
*
|
||||
* We use this to remove observers when a caller calls Preferences::ignore.
|
||||
*
|
||||
* All Preferences instances share this object, because we want callers to be
|
||||
* able to remove an observer using a different Preferences object than the one
|
||||
* with which they added it. That means we have to identify the observers
|
||||
* in this object by their complete pref name, not just their name relative to
|
||||
* the root branch of the Preferences object with which they were created.
|
||||
*/
|
||||
let observers = [];
|
||||
|
||||
function PrefObserver(prefName, callback, thisObject) {
|
||||
this.prefName = prefName;
|
||||
this.callback = callback;
|
||||
this.thisObject = thisObject;
|
||||
}
|
||||
|
||||
PrefObserver.prototype = {
|
||||
QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, Ci.nsISupportsWeakReference]),
|
||||
|
||||
observe: function(subject, topic, data) {
|
||||
// The pref service only observes whole branches, but we only observe
|
||||
// individual preferences, so we check here that the pref that changed
|
||||
// is the exact one we're observing (and not some sub-pref on the branch).
|
||||
if (data != this.prefName)
|
||||
return;
|
||||
|
||||
if (typeof this.callback == "function") {
|
||||
let prefValue = Preferences.get(this.prefName);
|
||||
|
||||
if (this.thisObject)
|
||||
this.callback.call(this.thisObject, prefValue);
|
||||
else
|
||||
this.callback(prefValue);
|
||||
}
|
||||
else // typeof this.callback == "object" (nsIObserver)
|
||||
this.callback.observe(subject, topic, data);
|
||||
}
|
||||
};
|
||||
|
||||
function isArray(val) {
|
||||
// We can't check for |val.constructor == Array| here, since the value
|
||||
// might be from a different context whose Array constructor is not the same
|
||||
// as ours, so instead we match based on the name of the constructor.
|
||||
return (typeof val != "undefined" && val != null && typeof val == "object" &&
|
||||
val.constructor.name == "Array");
|
||||
}
|
||||
|
||||
function isObject(val) {
|
||||
// We can't check for |val.constructor == Object| here, since the value
|
||||
// might be from a different context whose Object constructor is not the same
|
||||
// as ours, so instead we match based on the name of the constructor.
|
||||
return (typeof val != "undefined" && val != null && typeof val == "object" &&
|
||||
val.constructor.name == "Object");
|
||||
}
|
||||
@@ -1,43 +0,0 @@
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* JS module implementation of nsIDOMJSWindow.setTimeout and clearTimeout.
|
||||
*/
|
||||
|
||||
this.EXPORTED_SYMBOLS = ["setTimeout", "clearTimeout"];
|
||||
|
||||
const Cc = Components.classes;
|
||||
const Ci = Components.interfaces;
|
||||
const Cu = Components.utils;
|
||||
|
||||
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
|
||||
// This gives us >=2^30 unique timer IDs, enough for 1 per ms for 12.4 days.
|
||||
let gNextTimeoutId = 1; // setTimeout must return a positive integer
|
||||
|
||||
let gTimeoutTable = new Map(); // int -> nsITimer
|
||||
|
||||
this.setTimeout = function setTimeout(aCallback, aMilliseconds) {
|
||||
let id = gNextTimeoutId++;
|
||||
let args = Array.slice(arguments, 2);
|
||||
let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
|
||||
timer.initWithCallback(function setTimeout_timer() {
|
||||
gTimeoutTable.delete(id);
|
||||
aCallback.apply(null, args);
|
||||
}, aMilliseconds, timer.TYPE_ONE_SHOT);
|
||||
|
||||
gTimeoutTable.set(id, timer);
|
||||
return id;
|
||||
}
|
||||
|
||||
this.clearTimeout = function clearTimeout(aId) {
|
||||
if (gTimeoutTable.has(aId)) {
|
||||
gTimeoutTable.get(aId).cancel();
|
||||
gTimeoutTable.delete(aId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
|
||||
var EXPORTED_SYMBOLS = ["errorCritical"];
|
||||
|
||||
Components.utils.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
function errorCritical(e)
|
||||
{
|
||||
Services.prompt.alert(null, "", e);
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIID9zCCAt+gAwIBAgIUervWv7EoWkk4Gt8J34xDR9nhH50wDQYJKoZIhvcNAQEL
|
||||
BQAwgYIxCzAJBgNVBAYTAldXMRQwEgYDVQQIDAtJMlAgTmV0d29yazESMBAGA1UE
|
||||
CgwJUHVycGxlSTJQMSowKAYDVQQDDCFQdXJwbGVJMlAgQ2VydGlmaWNhdGlvbiBB
|
||||
dXRob3JpdHkxHTAbBgkqhkiG9w0BCQEWDnI0c2FzQG1haWwuaTJwMB4XDTE5MDMw
|
||||
MzE2MjcxNFoXDTI5MDIyODE2MjcxNFowgYIxCzAJBgNVBAYTAldXMRQwEgYDVQQI
|
||||
DAtJMlAgTmV0d29yazESMBAGA1UECgwJUHVycGxlSTJQMSowKAYDVQQDDCFQdXJw
|
||||
bGVJMlAgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxHTAbBgkqhkiG9w0BCQEWDnI0
|
||||
c2FzQG1haWwuaTJwMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwLEy
|
||||
A0TamzrfORA+aIM/NRRGrKYkI9o5Q9UB/pTM8IFlSBREGleUfnC6LFHZeNV+Y1Tn
|
||||
jrMBOZ7PmIKjPIv+fJP7KjhHACZdk6iqVZqkiGqE0/V17kG16g1+g05Bj2lkWr94
|
||||
mp1rhzBeKJJSI8cG82824qdfDcgWZheziye+O0okENhi0o2bDhg78EnyysJiN/tu
|
||||
OuoZSGfC9ZdITbpMWgqwuQcdeBg0FNy4hEqUJWoYNgrghe5uc0WMOjTAegSntYPE
|
||||
MeaaZyzlGICZ2F+rKZgTjnzVYW60QlHqfg7sShieSPYIZmeN5l5hZ5GZk9Giaj/X
|
||||
4pz4sup2iafKclWAmQIDAQABo2MwYTAdBgNVHQ4EFgQUCARvpDaXqPaF4amObzzV
|
||||
GaDoZm4wHwYDVR0jBBgwFoAUCARvpDaXqPaF4amObzzVGaDoZm4wDwYDVR0TBAgw
|
||||
BgEB/wIBADAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAKcmGUXV
|
||||
gCw8PRHe0+XlkcSTX69e0TIPP+j5uJxMT3BHasvBdyV4FcjuUokHGjAnHal5OV4N
|
||||
yWdbRPnIge7su4yLQZzlNM1OzbcRds1wSbqTEpb68R/6E8mv3ms6Rc8AcRoXwusc
|
||||
byZvzS9tBSXTQ21wCVrltnIARAYabWlWu+URv+DFvlwMik6H8+DklHSVkPC6K3Ov
|
||||
V1aMJztMnJ/XTTsFDS/yvaTfmJFG16LABIiSsEAW5QK64sWsN4sxvpcg0D6/EjWP
|
||||
knyLM4KXuD3i08mzwzus8d97AjGxC5RCEFL5ADBpVaDU/5CpmZmZdY1daYjiHrXm
|
||||
EVNoSbqid1fAVyA=
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,96 @@
|
||||
{
|
||||
"policies": {
|
||||
"AppUpdateURL": "http://127.0.0.1/",
|
||||
"CaptivePortal": false,
|
||||
"Certificates": {
|
||||
"ImportEnterpriseRoots": false
|
||||
},
|
||||
"DNSOverHTTPS": {
|
||||
"Enabled": false,
|
||||
"Locked": true
|
||||
},
|
||||
"DisableAppUpdate": true,
|
||||
"DisableFeedbackCommands": true,
|
||||
"DisableFirefoxAccounts": true,
|
||||
"DisableFirefoxScreenshots": true,
|
||||
"DisableFirefoxStudies": true,
|
||||
"DisablePasswordReveal": true,
|
||||
"DisablePocket": true,
|
||||
"DisableProfileImport": true,
|
||||
"DisableProfileRefresh": true,
|
||||
"DisableSafeMode": true,
|
||||
"DisableSetDesktopBackground": true,
|
||||
"DisableSystemAddonUpdate": true,
|
||||
"DisableTelemetry": true,
|
||||
"DontCheckDefaultBrowser": true,
|
||||
"ExtensionUpdate": false,
|
||||
"Extensions": {
|
||||
"Locked": [
|
||||
"73a6fe31-595d-460b-a920-fcc0f8843232"
|
||||
]
|
||||
},
|
||||
"FirefoxHome": {
|
||||
"Highlights": false,
|
||||
"Pocket": false,
|
||||
"Search": true,
|
||||
"Snippets": false,
|
||||
"TopSites": true
|
||||
},
|
||||
"FlashPlugin": {
|
||||
"Default": false
|
||||
},
|
||||
"NetworkPrediction": false,
|
||||
"NoDefaultBookmarks": true,
|
||||
"OfferToSaveLoginsDefault": false,
|
||||
"OverrideFirstRunPage": "http://i2pd.i2p/",
|
||||
"OverridePostUpdatePage": "",
|
||||
"Permissions": {
|
||||
"Camera": {
|
||||
"BlockNewRequests": true
|
||||
},
|
||||
"Location": {
|
||||
"BlockNewRequests": true
|
||||
},
|
||||
"Microphone": {
|
||||
"BlockNewRequests": true
|
||||
}
|
||||
},
|
||||
"PopupBlocking": {
|
||||
"Default": true
|
||||
},
|
||||
"Preferences": {
|
||||
"browser.cache.disk.enable": true,
|
||||
"browser.fixup.dns_first_for_single_words": false,
|
||||
"browser.search.update": false,
|
||||
"browser.tabs.warnOnClose": false,
|
||||
"browser.urlbar.suggest.bookmark": true,
|
||||
"browser.urlbar.suggest.history": true,
|
||||
"browser.urlbar.suggest.openpage": true,
|
||||
"datareporting.policy.dataSubmissionPolicyBypassNotification": true,
|
||||
"dom.disable_window_flip": true,
|
||||
"dom.disable_window_move_resize": true,
|
||||
"dom.event.contextmenu.enabled": false,
|
||||
"network.IDN_show_punycode": false,
|
||||
"network.dns.disableIPv6": true,
|
||||
"places.history.enabled": true,
|
||||
"privacy.file_unique_origin": true
|
||||
},
|
||||
"PromptForDownloadLocation": true,
|
||||
"Proxy": {
|
||||
"AutoLogin": true,
|
||||
"FTPProxy": "127.0.0.1:4444",
|
||||
"HTTPProxy": "127.0.0.1:4444",
|
||||
"Mode": "manual",
|
||||
"SOCKSVersion": 5,
|
||||
"SSLProxy": "127.0.0.1:4444",
|
||||
"UseHTTPProxyForAllProtocols": false,
|
||||
"UseProxyForDNS": true
|
||||
},
|
||||
"SearchBar": "unified",
|
||||
"SearchSuggestEnabled": false,
|
||||
"SupportMenu": {
|
||||
"Title": "Ilita IRC",
|
||||
"URL": "http://irc.r4sas.i2p/?nick=WebClient...&channels=dev%2Cen%2Cru&prompt=1&uio=OT10cnVlde"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,38 +6,46 @@
|
||||
* See full license text in LICENSE file at top of project tree
|
||||
*/
|
||||
|
||||
/* Do not edit this file.
|
||||
*
|
||||
* If you make changes to this file while the browser is running,
|
||||
* the changes will be overwritten when the browser exits.
|
||||
*
|
||||
* To make a manual change to preferences, you can visit the URL about:config
|
||||
* For more information, see http://www.mozilla.org/unix/customizing.html#prefs
|
||||
*/
|
||||
|
||||
lockPref("accessibility.force_disabled", 1);
|
||||
defaultPref("app.normandy.first_run", false);
|
||||
lockPref("app.normandy.enabled", false);
|
||||
lockPref("app.normandy.optoutstudies.enabled", false);
|
||||
lockPref("app.shield.optoutstudies.enabled", false);
|
||||
lockPref("app.update.auto", false);
|
||||
lockPref("app.update.BITS.enabled", false);
|
||||
lockPref("app.update.channel", "i2pdbrowser");
|
||||
lockPref("app.update.disable_button.showUpdateHistory", true);
|
||||
lockPref("app.update.enabled", false);
|
||||
lockPref("app.update.interval", 0);
|
||||
lockPref("app.update.service.enabled", false);
|
||||
lockPref("app.update.url", "");
|
||||
defaultPref("beacon.enabled", false);
|
||||
pref("breakpad.reportURL", "");
|
||||
pref("browser.aboutHomeSnippets.updateUrl", "");
|
||||
defaultPref("browser.aboutHomeSnippets.updateUrl", "");
|
||||
lockPref("browser.aboutwelcome.enabled", false);
|
||||
defaultPref("browser.cache.disk.capacity", 131072);
|
||||
defaultPref("browser.cache.offline.enable", false);
|
||||
defaultPref("browser.casting.enabled", false);
|
||||
lockPref("browser.contentblocking.database.enabled", false);
|
||||
lockPref("browser.contentblocking.report.lockwise.enabled", false);
|
||||
lockPref("browser.contentblocking.report.monitor.enabled", false);
|
||||
lockPref("browser.discovery.enabled", false);
|
||||
pref("browser.download.manager.retention", 0);
|
||||
defaultPref("browser.download.useDownloadDir", false);
|
||||
defaultPref("browser.feeds.showFirstRunUI", false);
|
||||
defaultPref("browser.fixup.alternate.enabled", false);
|
||||
defaultPref("browser.formfill.enable", false);
|
||||
defaultPref("browser.formfill.expire_days", 0);
|
||||
lockPref("browser.messaging-system.whatsNewPanel.enabled", false);
|
||||
lockPref("browser.newtabpage.activity-stream.feeds.asrouterfeed", false);
|
||||
lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false);
|
||||
lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false);
|
||||
lockPref("browser.newtabpage.activity-stream.default.sites", "http://i2pd.i2p/,http://333.i2p/,http://inr.i2p/,http://102chan.i2p/,http://flibusta.i2p/,http://fsoc.i2p/,http://lifebox.i2p/,http://onelon.i2p/,http://wiki.ilita.i2p/");
|
||||
lockPref("browser.newtabpage.activity-stream.discoverystream.enabled", false);
|
||||
lockPref("browser.newtabpage.activity-stream.feeds.section.highlights", false);
|
||||
lockPref("browser.newtabpage.activity-stream.feeds.snippets", false);
|
||||
defaultPref("browser.newtabpage.activity-stream.showSearch", true);
|
||||
lockPref("browser.newtabpage.activity-stream.showSponsored", false);
|
||||
lockPref("browser.newtabpage.activity-stream.telemetry", false);
|
||||
pref("browser.newtabpage.activity-stream.topSitesRows", 2);
|
||||
pref("browser.newtabpage.enhanced", false);
|
||||
@@ -49,6 +57,7 @@ defaultPref("browser.onboarding.tour.onboarding-tour-performance.completed", tru
|
||||
defaultPref("browser.onboarding.tour.onboarding-tour-private-browsing.completed", true);
|
||||
defaultPref("browser.onboarding.tour.onboarding-tour-screenshots.completed", true);
|
||||
defaultPref("browser.pagethumbnails.capturing_disabled", true);
|
||||
lockPref("browser.ping-centre.telemetry", false);
|
||||
defaultPref("browser.places.smartBookmarksVersion", -1);
|
||||
pref("browser.reader.detectedFirstArticle", false);
|
||||
pref("browser.rights.3.shown", true);
|
||||
@@ -79,24 +88,30 @@ defaultPref("browser.safebrowsing.updateURL", "");
|
||||
defaultPref("browser.safebrowsing.warning.infoURL", "");
|
||||
defaultPref("browser.search.countryCode", "US");
|
||||
defaultPref("browser.search.defaultenginename", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.defaultenginename.US", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.geoSpecificDefaults", false);
|
||||
defaultPref("browser.search.geoSpecificDefaults.url", "");
|
||||
defaultPref("browser.search.geoip.url", "");
|
||||
defaultPref("browser.search.hiddenOneOffs", "Amazon.com,Bing,DuckDuckGo,eBay,Google,Twitter,Wikipedia (en)");
|
||||
defaultPref("browser.search.official", false);
|
||||
defaultPref("browser.search.order.1", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.order.2", "");
|
||||
defaultPref("browser.search.order.3", "");
|
||||
defaultPref("browser.search.order.US.1", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.order.US.2", "");
|
||||
defaultPref("browser.search.order.US.3", "");
|
||||
defaultPref("browser.search.redirectWindowsSearch", false);
|
||||
defaultPref("browser.search.region", "US");
|
||||
defaultPref("browser.search.searchEnginesURL", "");
|
||||
defaultPref("browser.search.suggest.enabled", false);
|
||||
defaultPref("browser.search.update", false);
|
||||
pref("browser.search.widget.inNavBar", true);
|
||||
lockPref("browser.send_pings", false);
|
||||
pref("browser.send_pings.require_same_host", true);
|
||||
defaultPref("browser.shell.checkDefaultBrowser", false);
|
||||
pref("browser.startup.homepage", "http://i2pd.i2p/");
|
||||
defaultPref("browser.startup.homepage_override.mstone", "ignore");
|
||||
defaultPref("browser.tabs.closeWindowWithLastTab", false);
|
||||
lockPref("browser.tabs.crashReporting.sendReport", false);
|
||||
defaultPref("browser.translation.engine", "");
|
||||
defaultPref("browser.uitour.enabled", false);
|
||||
defaultPref("browser.urlbar.formatting.enabled", false);
|
||||
defaultPref("browser.urlbar.maxRichResults", 12);
|
||||
@@ -125,6 +140,8 @@ pref("devtools.debugger.remote-enabled", false);
|
||||
pref("devtools.webide.autoinstallADBHelper", false);
|
||||
pref("devtools.webide.autoinstallFxdtAdapters", false);
|
||||
pref("devtools.webide.enabled", false);
|
||||
defaultPref("devtools.whatsnew.enabled", false);
|
||||
defaultPref("devtools.whatsnew.feature-enabled", false);
|
||||
pref("dom.allow_cut_copy", false);
|
||||
pref("dom.archivereader.enabled", false);
|
||||
pref("dom.battery.enabled", false);
|
||||
@@ -139,6 +156,7 @@ pref("dom.maxHardwareConcurrency", 2);
|
||||
pref("dom.mozTCPSocket.enabled", false);
|
||||
pref("dom.netinfo.enabled", false);
|
||||
pref("dom.network.enabled", false);
|
||||
defaultPref("dom.push.enabled", false);
|
||||
pref("dom.telephony.enabled", false);
|
||||
pref("dom.vibrator.enabled", false);
|
||||
pref("dom.vr.enabled", false);
|
||||
@@ -148,13 +166,17 @@ pref("dom.workers.enabled", false);
|
||||
pref("experiments.enabled", false);
|
||||
pref("experiments.manifest.uri", "");
|
||||
pref("experiments.supported", false);
|
||||
pref("extensions.abuseReport.enabled", false);
|
||||
pref("extensions.autoDisableScopes", 0);
|
||||
pref("extensions.blocklist.enabled", false);
|
||||
pref("extensions.blocklist.url", "");
|
||||
pref("extensions.getAddons.cache.enabled", false);
|
||||
defaultPref("extensions.getAddons.cache.enabled", false);
|
||||
pref("extensions.lazarus.showDonateNotification", false);
|
||||
lockPref("extensions.pocket.enabled", false);
|
||||
lockPref("extensions.screenshots.upload-disabled", true);
|
||||
pref("extensions.shownSelectionUI", true);
|
||||
defaultPref("extensions.systemAddon.update.enabled", false);
|
||||
defaultPref("extensions.systemAddon.update.url", "");
|
||||
pref("extensions.ui.lastCategory", "addons://list/extension");
|
||||
pref("extensions.update.autoUpdateDefault", false);
|
||||
defaultPref("extensions.update.enabled", false);
|
||||
@@ -163,23 +185,26 @@ pref("full-screen-api.warning.timeout", 0);
|
||||
pref("general.buildID.override", "20100101");
|
||||
lockPref("general.platform.override", "Win32");
|
||||
lockPref("general.useragent.locale", "en-US");
|
||||
lockPref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0");
|
||||
lockPref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/78.0");
|
||||
pref("general.warnOnAboutConfig", false);
|
||||
defaultPref("geo.enabled", false);
|
||||
lockPref("geo.wifi.logging.enabled", false);
|
||||
defaultPref("geo.wifi.uri", "");
|
||||
lockPref("identity.fxaccounts.commands.enabled", false);
|
||||
lockPref("identity.fxaccounts.enabled", false);
|
||||
defaultPref("intl.locale.matchOS", true);
|
||||
pref("javascript.use_us_english_locale", true);
|
||||
pref("keyword.enabled", false);
|
||||
pref("lightweightThemes.update.enabled", false);
|
||||
pref("loop.logDomains", false);
|
||||
lockPref("marionette.enabled", false);
|
||||
defaultPref("media.eme.enabled", false);
|
||||
lockPref("media.getusermedia.audiocapture.enabled", false);
|
||||
lockPref("media.getusermedia.screensharing.enabled", false);
|
||||
pref("media.gmp-eme-adobe.enabled", false);
|
||||
pref("media.gmp-gmpopenh264.enabled", false);
|
||||
defaultPref("media.gmp-gmpopenh264.enabled", false);
|
||||
pref("media.gmp-gmpopenh264.provider.enabled", false);
|
||||
pref("media.gmp-manager.cert.checkAttributes", false);
|
||||
pref("media.gmp-manager.url", "");
|
||||
defaultPref("media.navigator.enabled", false);
|
||||
defaultPref("media.navigator.video.enabled", false);
|
||||
@@ -192,34 +217,25 @@ defaultPref("media.peerconnection.use_document_iceservers", false);
|
||||
defaultPref("media.video_stats.enabled", false);
|
||||
defaultPref("media.webspeech.recognition.enable", false);
|
||||
defaultPref("media.webspeech.synth.enabled", false);
|
||||
defaultPref("messaging-system.rsexperimentloader.enabled", false);
|
||||
defaultPref("network.IDN.whitelist.i2p", true);
|
||||
defaultPref("network.IDN_show_punycode", true);
|
||||
defaultPref("network.allow-experiments", false);
|
||||
lockPref("network.captive-portal-service.enabled", false);
|
||||
lockPref("network.connectivity-service.enabled", false);
|
||||
pref("network.cookie.prefsMigrated", true);
|
||||
defaultPref("network.dns.disableIPv6", true);
|
||||
defaultPref("network.dns.disablePrefetchFromHTTPS", true);
|
||||
defaultPref("network.dns.disableprefetch", true);
|
||||
pref("network.http.speculative-parallel-limit", 0);
|
||||
defaultPref("network.dns.disablePrefetch", true);
|
||||
defaultPref("network.http.speculative-parallel-limit", 0);
|
||||
defaultPref("network.jar.open-unsafe-types", false);
|
||||
pref("network.manage-offline-status", false);
|
||||
defaultPref("network.negotiate-auth.allow-insecure-ntlm-v1", false);
|
||||
defaultPref("network.notify.changed", false);
|
||||
pref("network.predictor.enabled", false);
|
||||
defaultPref("network.prefetch-next", false);
|
||||
pref("network.protocol-handler.expose-all", false);
|
||||
pref("network.protocol-handler.expose.about", true);
|
||||
pref("network.protocol-handler.expose.file", true);
|
||||
pref("network.protocol-handler.expose.ftp", true);
|
||||
pref("network.protocol-handler.expose.http", true);
|
||||
pref("network.protocol-handler.expose.https", true);
|
||||
pref("network.protocol-handler.expose.javascript", true);
|
||||
pref("network.protocol-handler.expose.moz-extension", true);
|
||||
pref("network.protocol-handler.external.about", false);
|
||||
pref("network.protocol-handler.external.file", false);
|
||||
pref("network.protocol-handler.external.ftp", false);
|
||||
pref("network.protocol-handler.external.http", false);
|
||||
pref("network.protocol-handler.external.https", false);
|
||||
pref("network.protocol-handler.external.javascript", false);
|
||||
pref("network.protocol-handler.external.moz-extension", false);
|
||||
pref("network.protocol-handler.expose-all", true);
|
||||
defaultPref("network.protocol-handler.external-default", false);
|
||||
defaultPref("network.protocol-handler.warn-external-default", true);
|
||||
defaultPref("network.proxy.ftp", "127.0.0.1");
|
||||
defaultPref("network.proxy.ftp_port", 4444);
|
||||
@@ -250,19 +266,23 @@ defaultPref("privacy.resistFingerprinting", true);
|
||||
pref("privacy.sanitize.timeSpan", 0);
|
||||
defaultPref("privacy.spoof_english", 2);
|
||||
defaultPref("privacy.trackingprotection.enabled", true);
|
||||
lockPref("privacy.userContext.enabled", true);
|
||||
//lockPref("privacy.userContext.enabled", true);
|
||||
defaultPref("reader.parse-on-load.enabled", false);
|
||||
defaultPref("reader.parse-on-load.force-enabled", false);
|
||||
defaultPref("security.insecure_field_warning.contextual.enabled", false);
|
||||
defaultPref("security.insecure_password.ui.enabled", false);
|
||||
defaultPref("security.ssl.errorReporting.enabled", false);
|
||||
defaultPref("security.OCSP.enabled", 0);
|
||||
defaultPref("services.blocklist.update_enabled", false);
|
||||
pref("services.settings.server", "");
|
||||
lockPref("services.sync.enabled", false);
|
||||
pref("services.sync.prefs.sync.browser.download.manager.scanWhenDone", false);
|
||||
pref("services.sync.prefs.sync.browser.safebrowsing.enabled", false);
|
||||
pref("services.sync.prefs.sync.browser.search.update", false);
|
||||
pref("services.sync.prefs.sync.extensions.update.enabled", false);
|
||||
pref("signon.autofillForms", false);
|
||||
defaultPref("signon.management.page.breach-alerts.enabled", false);
|
||||
defaultPref("signon.management.page.vulnerable-passwords.enabled", false);
|
||||
pref("signon.rememberSignons", false);
|
||||
defaultPref("startup.homepage_welcome_url", "http://i2pd.i2p/");
|
||||
pref("startup.homepage_welcome_url.additional", "about:blank");
|
||||
@@ -278,96 +298,3 @@ defaultPref("webgl.disable-fail-if-major-performance-caveat", true);
|
||||
defaultPref("webgl.disabled", true);
|
||||
defaultPref("webgl.enable-debug-renderer-info", false);
|
||||
defaultPref("webgl.min_capability_mode", true);
|
||||
|
||||
var config = {
|
||||
"cckVersion": "2.2.9",
|
||||
"name": "I2Pd Browser",
|
||||
"description": "Preconfigured for use with I2P browser",
|
||||
"version": "1.2.8",
|
||||
"homePage": "http://i2pd.i2p/",
|
||||
"welcomePage": "http://i2pd.i2p/",
|
||||
"titlemodifier": "I2Pd Browser",
|
||||
"extension": {
|
||||
"name": "I2Pd Browser"
|
||||
},
|
||||
"noWelcomePage": true,
|
||||
"noUpgradePage": true,
|
||||
"removeSetDesktopBackground": true,
|
||||
"removeSafeModeMenu": true,
|
||||
"noGetAddons": true,
|
||||
"noAddonCompatibilityCheck": true,
|
||||
"disableSearchEngineInstall": true,
|
||||
"removeDefaultSearchEngines": false,
|
||||
"displayBookmarksToolbar": true,
|
||||
"removeSmartBookmarks": true,
|
||||
"removeDefaultBookmarks": true,
|
||||
"removeDuplicateBookmarkNames": true,
|
||||
"dontCheckDefaultBrowser": true,
|
||||
"dontUseDownloadDir": true,
|
||||
"disableFormFill": true,
|
||||
"disableSync": true,
|
||||
"disableCrashReporter": true,
|
||||
"disableTelemetry": true,
|
||||
"disableFirefoxHealthReportUpload": true,
|
||||
"disableFirefoxHealthReport": true,
|
||||
"disableFirefoxUpdates": true,
|
||||
"removeSnippets": true,
|
||||
"disableResetFirefox": true,
|
||||
"disableWebApps": true,
|
||||
"disableHello": true,
|
||||
"disableSharePage": true,
|
||||
"disableForget": true,
|
||||
"disableHeartbeat": true,
|
||||
"disablePocket": true,
|
||||
"disableAboutSupport": true,
|
||||
"disableAboutProfiles": true,
|
||||
"showSearchBar": true,
|
||||
"autoconfig": {
|
||||
"disableProfileMigrator": true
|
||||
},
|
||||
"id": "i2pdbrowser",
|
||||
"hiddenUI": [
|
||||
"#defaultBrowserBox",
|
||||
"#enableSearchUpdate",
|
||||
"#dataCollectionCategory",
|
||||
"#dataCollectionGroup",
|
||||
".help-button",
|
||||
"#onboarding-overlay-button",
|
||||
".prefs-modal-inner-wrapper > section:nth-child(6)"
|
||||
],
|
||||
"searchplugins": {
|
||||
"YaCy 'legwork'": "http://legwork.i2p/opensearchdescription.xml"
|
||||
},
|
||||
"defaultSearchEngine": "YaCy 'legwork'",
|
||||
"certs": {
|
||||
"ca": [
|
||||
{
|
||||
"url": "resource://cck2_i2pdbrowser/certs/purplei2p_ca.pem",
|
||||
"trust": "CTc,CTc,CTc"
|
||||
}
|
||||
]
|
||||
}
|
||||
};
|
||||
|
||||
var io = Components.classes["@mozilla.org/network/io-service;1"]
|
||||
.getService(Components.interfaces.nsIIOService);
|
||||
var resource = io.getProtocolHandler("resource")
|
||||
.QueryInterface(Components.interfaces.nsIResProtocolHandler);
|
||||
|
||||
var greDir = Components.classes["@mozilla.org/file/directory_service;1"]
|
||||
.getService(Components.interfaces.nsIProperties)
|
||||
.get("GreD", Components.interfaces.nsIFile);
|
||||
var cck2ModuleDir = greDir.clone();
|
||||
cck2ModuleDir.append("cck2");
|
||||
cck2ModuleDir.append("modules");
|
||||
var cck2Alias = io.newFileURI(cck2ModuleDir);
|
||||
resource.setSubstitution("cck2", cck2Alias);
|
||||
|
||||
var configModuleDir = greDir.clone();
|
||||
configModuleDir.append("cck2");
|
||||
configModuleDir.append("resources");
|
||||
var configAlias = io.newFileURI(configModuleDir);
|
||||
resource.setSubstitution("cck2_i2pdbrowser", configAlias);
|
||||
|
||||
Components.utils.import("resource://cck2/CCK2.jsm");
|
||||
CCK2.init(config, "ä"[0], "ä");
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,23 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIID7DCCAtSgAwIBAgIJAKXaTovgoTIUMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD
|
||||
VQQGEwJXVzEUMBIGA1UECAwLSTJQIE5ldHdvcmsxEjAQBgNVBAoMCVB1cnBsZUky
|
||||
UDEqMCgGA1UEAwwhUHVycGxlSTJQIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR0w
|
||||
GwYJKoZIhvcNAQkBFg5yNHNhc0BtYWlsLmkycDAeFw0xODA4MjQyMTQ3NTJaFw0y
|
||||
MzA4MjMyMTQ3NTJaMIGCMQswCQYDVQQGEwJXVzEUMBIGA1UECAwLSTJQIE5ldHdv
|
||||
cmsxEjAQBgNVBAoMCVB1cnBsZUkyUDEqMCgGA1UEAwwhUHVycGxlSTJQIENlcnRp
|
||||
ZmljYXRpb24gQXV0aG9yaXR5MR0wGwYJKoZIhvcNAQkBFg5yNHNhc0BtYWlsLmky
|
||||
cDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALAZnN/U5bgkmiBqp/Np
|
||||
yiMOkUPjr2tLhV78Oba46xDLA6AiQ7yTPg+/ZYPIfbF2dPBTpfgGdly2M1xymRKc
|
||||
3Pa+IUXkLw6oCA+lFzOFW0Swtekk9HRAgGyHgj6/Hvagva5Wer4HJIO1qRsFPew+
|
||||
XcM3uhhiXoiO8o+YGpJ/7kz0gED3p2b9OVsLPd8G/GfdR3miD+Au+kUx/27z/WdJ
|
||||
ISfFILFnYeYZGffrpRcFtoGwuZUCugwnbLtpQpNKuGq8jDidm1v6Rb85JmkoH3Sg
|
||||
lRaX1MK0aPhM4WfCf7aWCNe669FAWPNB3Ya2lue7ewPLI84ZUEqcoJwmWn2ci2SU
|
||||
EXUCAwEAAaNjMGEwHQYDVR0OBBYEFG3hwzikpXqMasw678OHM8uLyjEoMB8GA1Ud
|
||||
IwQYMBaAFG3hwzikpXqMasw678OHM8uLyjEoMA8GA1UdEwQIMAYBAf8CAQAwDgYD
|
||||
VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQA07URxJMI/Ta9y1wIg+k7o
|
||||
1aHXsl6YOXmd2ymhKZhZHrZlutE2U19IQSoEV0SBddP9D05xD6Ovsrwo7caeYzNt
|
||||
+2DJnlJ2IY61NqYUIDEoJyNPL/S7WleH+xO+bcSqWvbntTNYAD6WQVfHCAimVE6P
|
||||
RnSZGqG089i84DRCyrh/6F1OxnBd6j14z+2ctQD+h6NlQXiCAUIwzVirYoE7oGpH
|
||||
Xta7Ei+RDvBXLXLAQRdXpzSP/Ddf7MCJzmH3VYAy+0sVuHr09hpFMtC59hTrdLVD
|
||||
/qma0eKrBr1DGH6QrZMZDqpNfv4wUPyVQBsRbbn2/1fL9IqK43CIj8RUllCOsmyU
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1 +0,0 @@
|
||||
{"chrome://browser/content/browser.xul":{"navigator-toolbox":{"iconsize":"small"},"titlebar-placeholder-on-menubar-for-caption-buttons":{"width":"102"},"titlebar-placeholder-on-TabsToolbar-for-captions-buttons":{"width":"102"},"main-window":{"screenX":"30","screenY":"30","width":"1280","height":"720","sizemode":"normal"},"PersonalToolbar":{"collapsed":"false","currentset":"personal-bookmarks"},"toolbar-menubar":{"currentset":"menubar-items"},"TabsToolbar":{"currentset":"tabbrowser-tabs,new-tab-button,alltabs-button"},"addon-bar":{"currentset":"addonbar-closebutton,status-bar"},"nav-bar":{"currentset":"back-button,forward-button,stop-reload-button,urlbar-container,bookmarks-menu-button,downloads-button,_73a6fe31-595d-460b-a920-fcc0f8843232_-browser-action"},"sidebar-title":{"value":""}}}
|
||||
Executable
+14
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
I2PDB_START_PROG="$(grep '^X-I2PdBrowser-ExecShell' $1 | tail -1 | sed 's/^X-I2PdBrowser-ExecShell=//' | sed 's/%.//')"
|
||||
|
||||
shift
|
||||
|
||||
if [ "$#" -ge 1 ]
|
||||
then
|
||||
echo "Launching '${I2PDB_START_PROG} $@'..."
|
||||
else
|
||||
echo "Launching '${I2PDB_START_PROG}'..."
|
||||
fi
|
||||
|
||||
${I2PDB_START_PROG} "$@"
|
||||
Executable
+289
@@ -0,0 +1,289 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# GNU/Linux does not really require something like RelativeLink.c
|
||||
# However, we do want to have the same look and feel with similar features.
|
||||
#
|
||||
# Copyright 2017 The Tor Project. See LICENSE for licensing information.
|
||||
|
||||
complain_dialog_title="I2Pd Browser"
|
||||
|
||||
# Make sure this script wasn't started as 'sh start-i2pd-browser' or similar.
|
||||
if [ "x$BASH" = "x" ]; then
|
||||
echo "$complain_dialog_title should be started as './start-i2pd-browser'"
|
||||
echo "Exiting." >&2
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
# Do not (try to) connect to the session manager
|
||||
unset SESSION_MANAGER
|
||||
|
||||
# Complain about an error, by any means necessary.
|
||||
# Usage: complain message
|
||||
# message must not begin with a dash.
|
||||
complain () {
|
||||
# Trim leading newlines, to avoid breaking formatting in some dialogs.
|
||||
complain_message="`echo "$1" | sed '/./,$!d'`"
|
||||
|
||||
# If we're being run in debug/verbose mode, complain to stderr.
|
||||
if [ "$show_output" -eq 1 ]; then
|
||||
echo "$complain_message" >&2
|
||||
return
|
||||
fi
|
||||
|
||||
# Otherwise, we're being run by a GUI program of some sort;
|
||||
# try to pop up a message in the GUI in the nicest way
|
||||
# possible.
|
||||
#
|
||||
# In mksh, non-existent commands return 127; I'll assume all
|
||||
# other shells set the same exit code if they can't run a
|
||||
# command. (xmessage returns 1 if the user clicks the WM
|
||||
# close button, so we do need to look at the exact exit code,
|
||||
# not just assume the command failed to display a message if
|
||||
# it returns non-zero.)
|
||||
|
||||
# First, try zenity.
|
||||
zenity --error \
|
||||
--title="$complain_dialog_title" \
|
||||
--text="$complain_message"
|
||||
if [ "$?" -ne 127 ]; then
|
||||
return
|
||||
fi
|
||||
|
||||
# Try kdialog.
|
||||
kdialog --title "$complain_dialog_title" \
|
||||
--error "$complain_message"
|
||||
if [ "$?" -ne 127 ]; then
|
||||
return
|
||||
fi
|
||||
|
||||
# Try xmessage.
|
||||
xmessage -title "$complain_dialog_title" \
|
||||
-center \
|
||||
-buttons OK \
|
||||
-default OK \
|
||||
-xrm '*message.scrollVertical: Never' \
|
||||
"$complain_message"
|
||||
if [ "$?" -ne 127 ]; then
|
||||
return
|
||||
fi
|
||||
|
||||
# Try gxmessage. This one isn't installed by default on
|
||||
# Debian with the default GNOME installation, so it seems to
|
||||
# be the least likely program to have available, but it might
|
||||
# be used by one of the 'lightweight' Gtk-based desktop
|
||||
# environments.
|
||||
gxmessage -title "$complain_dialog_title" \
|
||||
-center \
|
||||
-buttons GTK_STOCK_OK \
|
||||
-default OK \
|
||||
"$complain_message"
|
||||
if [ "$?" -ne 127 ]; then
|
||||
return
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "`id -u`" -eq 0 ]; then
|
||||
complain "The I2Pd Browser Bundle should not be run as root. Exiting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -r /proc/cpuinfo && ! grep -q '^flags\s*:.* sse2' /proc/cpuinfo; then
|
||||
complain "I2Pd Browser requires a CPU with SSE2 support. Exiting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
tbb_usage () {
|
||||
printf "\nI2Pd Browser Script Options\n"
|
||||
printf " --verbose Display Firefox output in the terminal\n"
|
||||
printf " --log [file] Record Firefox output in file (default: i2pd-browser.log)\n"
|
||||
printf " --detach Detach from terminal and run I2Pd Browser in the background.\n"
|
||||
printf " --register-app Register I2Pd Browser as a desktop app for this user\n"
|
||||
printf " --unregister-app Unregister I2Pd Browser as a desktop app for this user\n"
|
||||
}
|
||||
log_output=0
|
||||
show_output=0
|
||||
detach=0
|
||||
show_usage=0
|
||||
register_desktop_app=0
|
||||
logfile=/dev/null
|
||||
while :
|
||||
do
|
||||
case "$1" in
|
||||
--detach)
|
||||
detach=1
|
||||
shift
|
||||
;;
|
||||
-v | --verbose | -d | --debug)
|
||||
show_output=1
|
||||
verbose_arg="$2"
|
||||
shift
|
||||
;;
|
||||
-h | "-?" | --help | -help)
|
||||
show_usage=1
|
||||
show_output=1
|
||||
shift
|
||||
;;
|
||||
-l | --log)
|
||||
if [ -z "$2" -o "${2:0:1}" == "-" ]; then
|
||||
printf "Logging I2Pd Browser debug information to i2pd-browser.log\n"
|
||||
logfile="../i2pd-browser.log"
|
||||
elif [ "${2:0:1}" == "/" -o "${2:0:1}" == "~" ]; then
|
||||
printf "Logging I2Pd Browser debug information to %s\n" "$2"
|
||||
logfile="$2"
|
||||
shift
|
||||
else
|
||||
printf "Logging I2Pd Browser debug information to %s\n" "$2"
|
||||
logfile="../$2"
|
||||
shift
|
||||
fi
|
||||
log_output=1
|
||||
shift
|
||||
;;
|
||||
--register-app)
|
||||
register_desktop_app=1
|
||||
show_output=1
|
||||
shift
|
||||
;;
|
||||
--unregister-app)
|
||||
register_desktop_app=-1
|
||||
show_output=1
|
||||
shift
|
||||
;;
|
||||
*) # No more options
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# We can't detach and show output at the same time..
|
||||
if [ "$show_output" -eq 1 -a "$detach" -eq 1 ]; then
|
||||
detach=0
|
||||
fi
|
||||
|
||||
if [ "$show_output" -eq 0 ]; then
|
||||
# If the user hasn't requested 'debug mode' or --help, close stdout and stderr,
|
||||
# to keep Firefox and the stuff loaded by/for it (including the
|
||||
# system's shared-library loader) from printing messages to
|
||||
# $HOME/.xsession-errors or other files. (Users wouldn't have seen
|
||||
# messages there anyway.)
|
||||
exec > "$logfile"
|
||||
exec 2> "$logfile"
|
||||
fi
|
||||
|
||||
# If XAUTHORITY is unset, set it to its default value of $HOME/.Xauthority
|
||||
# before we change HOME below. (See xauth(1) and #1945.) XDM and KDM rely
|
||||
# on applications using this default value.
|
||||
if [ -z "$XAUTHORITY" ]; then
|
||||
XAUTHORITY=~/.Xauthority
|
||||
export XAUTHORITY
|
||||
fi
|
||||
|
||||
# If this script is being run through a symlink, we need to know where
|
||||
# in the filesystem the script itself is, not where the symlink is.
|
||||
myname="$0"
|
||||
if [ -L "$myname" ]; then
|
||||
# XXX readlink is not POSIX, but is present in GNU coreutils
|
||||
# and on FreeBSD. Unfortunately, the -f option (which follows
|
||||
# a whole chain of symlinks until it reaches a non-symlink
|
||||
# path name) is a GNUism, so we have to have a fallback for
|
||||
# FreeBSD. Fortunately, FreeBSD has realpath instead;
|
||||
# unfortunately, that's also non-POSIX and is not present in
|
||||
# GNU coreutils.
|
||||
#
|
||||
# If this launcher were a C program, we could just use the
|
||||
# realpath function, which *is* POSIX. Too bad POSIX didn't
|
||||
# make that function accessible to shell scripts.
|
||||
|
||||
# If realpath is available, use it; it Does The Right Thing.
|
||||
possibly_my_real_name="`realpath "$myname" 2>/dev/null`"
|
||||
if [ "$?" -eq 0 ]; then
|
||||
myname="$possibly_my_real_name"
|
||||
else
|
||||
# realpath is not available; hopefully readlink -f works.
|
||||
myname="`readlink -f "$myname" 2>/dev/null`"
|
||||
if [ "$?" -ne 0 ]; then
|
||||
# Ugh.
|
||||
complain "start-i2pd-browser cannot be run using a symlink on this operating system."
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Try to be agnostic to where we're being started from, chdir to where
|
||||
# the script is.
|
||||
mydir="`dirname "$myname"`"
|
||||
test -d "$mydir" && cd "$mydir"
|
||||
|
||||
# If ${PWD} results in a zero length string, we can try something else...
|
||||
if [ ! "${PWD}" ]; then
|
||||
# "hacking around some braindamage"
|
||||
PWD="`pwd`"
|
||||
surveysays="This system has a messed up shell.\n"
|
||||
fi
|
||||
|
||||
# This is a fix for an ibus issue on some Linux systems. See #9353 for more
|
||||
# details. The symlink needs to be created before we change HOME.
|
||||
if [ ! -d ".config/ibus" ]; then
|
||||
mkdir -p .config/ibus
|
||||
ln -nsf ~/.config/ibus/bus .config/ibus
|
||||
fi
|
||||
|
||||
# Fix up .desktop Icon and Exec Paths, and update the .desktop file from the
|
||||
# canonical version if it was changed by the updater.
|
||||
cp start-i2pd-browser.desktop ../
|
||||
sed -i -e "s,^Name=.*,Name=I2Pd Browser,g" ../start-i2pd-browser.desktop
|
||||
sed -i -e "s,^Icon=.*,Icon=$PWD/browser/chrome/icons/default/default128.png,g" ../start-i2pd-browser.desktop
|
||||
sed -i -e "s,^Exec=.*,Exec=sh -c '\"$PWD/start-i2pd-browser\" --detach || ([ ! -x \"$PWD/start-i2pd-browser\" ] \&\& \"\$(dirname \"\$*\")\"/Browser/start-i2pd-browser --detach)' dummy %k,g" ../start-i2pd-browser.desktop
|
||||
|
||||
if [ "$register_desktop_app" -eq 1 ]; then
|
||||
mkdir -p "$HOME/.local/share/applications/"
|
||||
cp ../start-i2pd-browser.desktop "$HOME/.local/share/applications/"
|
||||
update-desktop-database "$HOME/.local/share/applications/"
|
||||
printf "I2Pd Browser has been registered as a desktop app for this user in ~/.local/share/applications/\n"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "$register_desktop_app" -eq -1 ]; then
|
||||
if [ -e "$HOME/.local/share/applications/start-i2pd-browser.desktop" ]; then
|
||||
rm -f "$HOME/.local/share/applications/start-i2pd-browser.desktop"
|
||||
update-desktop-database "$HOME/.local/share/applications/"
|
||||
printf "I2Pd Browser has been removed as a user desktop app (from ~/.local/share/applications/)\n"
|
||||
else
|
||||
printf "I2Pd Browser does not appear to be a desktop app (not present in ~/.local/share/applications/)\n"
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
|
||||
HOME="${PWD}"
|
||||
export HOME
|
||||
|
||||
# Avoid overwriting user's dconf values. Fixes #27903.
|
||||
export GSETTINGS_BACKEND=memory
|
||||
|
||||
cd "${HOME}"
|
||||
|
||||
# We pass all additional command-line arguments we get to Firefox.
|
||||
#
|
||||
# The --class parameter was added to fix bug 11102.
|
||||
|
||||
if [ "$show_usage" -eq 1 ]; then
|
||||
# Display Firefox help, then our help
|
||||
./firefox --class "I2Pd Browser" \
|
||||
-profile data --help 2>/dev/null
|
||||
tbb_usage
|
||||
elif [ "$detach" -eq 1 ] ; then
|
||||
./firefox --class "I2Pd Browser" \
|
||||
-profile data "${@}" > "$logfile" 2>&1 </dev/null &
|
||||
disown "$!"
|
||||
elif [ "$log_output" -eq 1 -a "$show_output" -eq 1 ]; then
|
||||
./firefox --class "I2Pd Browser" \
|
||||
-profile data "${@}" 2>&1 </dev/null | \
|
||||
tee "$logfile"
|
||||
elif [ "$show_output" -eq 1 ]; then
|
||||
./firefox --class "I2Pd Browser" \
|
||||
-profile data "${@}" < /dev/null
|
||||
else
|
||||
./firefox --class "I2Pd Browser" \
|
||||
-profile data "${@}" > "$logfile" 2>&1 </dev/null
|
||||
fi
|
||||
|
||||
exit $?
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env ./browser/execdesktop
|
||||
#
|
||||
# This file is a self-modifying .desktop file that can be run from the shell.
|
||||
# It preserves arguments and environment for the start-tor-browser script.
|
||||
#
|
||||
# Run './start-i2pd-browser.desktop --help' to display the full set of options.
|
||||
#
|
||||
# When invoked from the shell, this file must always be in a Tor Browser root
|
||||
# directory. When run from the file manager or desktop GUI, it is relocatable.
|
||||
#
|
||||
# After first invocation, it will update itself with the absolute path to the
|
||||
# current TBB location, to support relocation of this .desktop file for GUI
|
||||
# invocation. You can also add Tor Browser to your desktop's application menu
|
||||
# by running './start-i2pd-browser.desktop --register-app'
|
||||
#
|
||||
# If you use --register-app, and then relocate your TBB directory, Tor Browser
|
||||
# will no longer launch from your desktop's app launcher/dock. However, if you
|
||||
# re-run --register-app from inside that new directory, the script
|
||||
# will correct the absolute paths and re-register itself.
|
||||
#
|
||||
# This file will also still function if the path changes when TBB is used as a
|
||||
# portable app, so long as it is run directly from that new directory, either
|
||||
# via the shell or via the file manager.
|
||||
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=I2Pd Browser Setup
|
||||
GenericName=I2Pd Browser
|
||||
Comment=I2Pd Browser for surfing I2P sites
|
||||
Categories=Network;WebBrowser;Security;
|
||||
Exec=sh -c '"$(dirname "$*")"/browser/start-i2pd-browser --detach || ([ ! -x "$(dirname "$*")"/browser/start-i2pd-browser ] && "$(dirname "$*")"/start-i2pd-browser --detach)' dummy %k
|
||||
X-I2PdBrowser-ExecShell=./browser/start-i2pd-browser --detach
|
||||
Icon=web-browser
|
||||
StartupWMClass=I2Pd Browser
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,14 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICKDCCAc6gAwIBAgIUcPHZXtYSqGNRCD6z8gp79WUFtI0wCgYIKoZIzj0EAwIw
|
||||
gZMxCzAJBgNVBAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEPMA0GA1UEBwwGQXVzdGlu
|
||||
MRgwFgYDVQQKDA9TdG9ybXlDbG91ZCBJbmMxIzAhBgNVBAMMGnN0b3JteWNsb3Vk
|
||||
LmZhbWlseS5pMnAubmV0MSQwIgYJKoZIhvcNAQkBFhVhZG1pbkBzdG9ybXljbG91
|
||||
ZC5vcmcwHhcNMjIwMzE5MTU1MjU2WhcNMzIwMzE2MTU1MjU2WjCBkzELMAkGA1UE
|
||||
BhMCVVMxDjAMBgNVBAgMBVRleGFzMQ8wDQYDVQQHDAZBdXN0aW4xGDAWBgNVBAoM
|
||||
D1N0b3JteUNsb3VkIEluYzEjMCEGA1UEAwwac3Rvcm15Y2xvdWQuZmFtaWx5Lmky
|
||||
cC5uZXQxJDAiBgkqhkiG9w0BCQEWFWFkbWluQHN0b3JteWNsb3VkLm9yZzBZMBMG
|
||||
ByqGSM49AgEGCCqGSM49AwEHA0IABFUli0hvJEmowNjJVjbKEIWBJhqe973S4VdL
|
||||
cJuA5yY3dC4Y998abWEox7/Y1BhnBbpJuiodA341bXKkLMXQy/kwCgYIKoZIzj0E
|
||||
AwIDSAAwRQIgD12F/TfY3iV1/WDF7BSKgbD5g2MfELUIy1dtUlJQuJUCIQD69mZw
|
||||
V1Z9j2x0ZsuirS3i6AMfVyTDj0RFS3U1jeHzIQ==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFfzCCA2egAwIBAgIEctG1gDANBgkqhkiG9w0BAQ0FADBwMQswCQYDVQQGEwJY
|
||||
WDELMAkGA1UECAwCWFgxCzAJBgNVBAcMAlhYMR4wHAYDVQQKDBVJMlAgQW5vbnlt
|
||||
b3VzIE5ldHdvcmsxDDAKBgNVBAsMA0kyUDEZMBcGA1UEAwwQYWNldG9uZUBtYWls
|
||||
LmkycDAeFw0yMTAxMjUxMDMyMjBaFw0zMTAxMjMxMDMyMjBaMHAxCzAJBgNVBAYT
|
||||
AlhYMQswCQYDVQQIDAJYWDELMAkGA1UEBwwCWFgxHjAcBgNVBAoMFUkyUCBBbm9u
|
||||
eW1vdXMgTmV0d29yazEMMAoGA1UECwwDSTJQMRkwFwYDVQQDDBBhY2V0b25lQG1h
|
||||
aWwuaTJwMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAwqF/BRRmvZ54
|
||||
5XArgxbytDi7m7MDjFE/whUADruHj/9jXGCxE8DDiiKTt3yhfakV0SNo5xk7AMD+
|
||||
wqiSNC5JCHTm18gd2M4cQLIaOVRqucLLge4XVgk2WPX6OT98wfxh7mqA3wlSdEpj
|
||||
dY3Txtkf7VfZLicG76/RBtLFW3aBdsn63hZaQqZE4x/5MJyPVZx59+lys5RmMi0o
|
||||
LpXJy4HOu1/Gl1iKDJoI/ARFG3y7uP/B+ZtZBitJetTs0HcqycnNJq0tVZf2HiGF
|
||||
JNy67AL4foxNYPXP6QsvXvp6LRpGANaBCkFCBlriSF+x1zO2H3uAkRnuLYXuKIfB
|
||||
HudejTp4R57VgZGiHYoawHaF17FVAApue9G8O82XYECjhET35B9yFoOBHTvaMxLU
|
||||
CKrmayH8KMQon95mfe1qpoO3/YDa8DCxkjAfjdtytat7nt2pGZMH6/cLJxcFiofh
|
||||
RtRVvb+omv/X12j/6iCFrwP4NvBnAZsa736igbjpyee5n+CSyYxd9cJkRX1vQVk7
|
||||
WFSqL58Pz+g6CKJmdMPvqNOfUQ6mieBeejmx35B4pLzLcoNxw8R3O1+I2l4dg042
|
||||
dEydKRQNwdzOec4jYwnKR40iwIyZxpchXWGRbBdyF5RQCbIIo60QBJlfXMJ2svan
|
||||
q5lYIeWeY3mlODXu4KH4K09y10KT8FsCAwEAAaMhMB8wHQYDVR0OBBYEFMh+DoIL
|
||||
APNiu2o+6I9A49joNYQuMA0GCSqGSIb3DQEBDQUAA4ICAQBFeOJi0rmkqN5/E3IB
|
||||
nE2x4mUeLI82tUcN2D3Yu8J81vy4DnH+oMRQFDtYEHW5pfirRmgSZ7MQwYQnqWLp
|
||||
iTE7SyCxlqGrmVsYp7PzfS1pUT2QeWPtsNYUDdraG0Zr9BkIGB60VMhjMSa9WUrj
|
||||
lbchzr6E/j/EsEOE7IK08JxIDKCDZM2LLwis4tAM6tmiylkMf2RlUBIRBs1TCO+q
|
||||
x3yByttNE2P4nQyQVQpjc1qsaOMvJvbxun37dwo+oTQy+hwkA86BWTDRYdN3xwOk
|
||||
OfAOtlX6zM/wCKMN0ZRnjZoh59ZCn4JXokt3IjZ4n8qJOuJFRKeKGmGeKA8uaGW8
|
||||
ih5tdB99Gu5Z8LOT1FxAJKwQBn5My0JijPoMit4B0WKNC8hy2zc2YvNfflu1ZRj5
|
||||
wF4E5ktbtT/LWFSoRPas/GFS8wSXk/kbSB0ArDcRRszb3JHqbALmSQxngz3rfwb3
|
||||
SHwQIIg956gjMDueEX5CrGrMqigiK53b9fqtpghUrHDsqtEXqeImpAY65PX1asqo
|
||||
metDNuETHF7XrAjP7TGJfnrYQyeK90iS7j1G68ScBGkKY2nsTnFoXkSk5s5D338E
|
||||
SUzPaOlh91spmkVY6gQTVQ7BakADBHw+zBgDA1gBN/4JPvgN36hquj63+aG1cKy3
|
||||
3ZUnv2ipo2fpr69NtuBnutK6gw==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1,32 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFfTCCA2WgAwIBAgIEOprmhjANBgkqhkiG9w0BAQ0FADBvMQswCQYDVQQGEwJY
|
||||
WDELMAkGA1UECBMCWFgxCzAJBgNVBAcTAlhYMR4wHAYDVQQKExVJMlAgQW5vbnlt
|
||||
b3VzIE5ldHdvcmsxDDAKBgNVBAsTA0kyUDEYMBYGA1UEAwwPYmFja3VwQG1haWwu
|
||||
aTJwMB4XDTEzMTAxMzEzNDQ1NVoXDTIzMTAxMzEzNDQ1NVowbzELMAkGA1UEBhMC
|
||||
WFgxCzAJBgNVBAgTAlhYMQswCQYDVQQHEwJYWDEeMBwGA1UEChMVSTJQIEFub255
|
||||
bW91cyBOZXR3b3JrMQwwCgYDVQQLEwNJMlAxGDAWBgNVBAMMD2JhY2t1cEBtYWls
|
||||
LmkycDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAIoAkobXwk/Enf1d
|
||||
roHyqCyvcJfZJVTwb/LgYWAvCBMCr+RGqlSgtk3g69Y3I0xU08fD2kGt3r5Pwsbr
|
||||
omXIbJAcccyLqmQ5QX6QgL+X9VpMDp9C4h2RogCrqLBAWw4cuZ4RS9VCpP1Yis7H
|
||||
uejYqENP86p7BsRnuW/4cYnfunAdMpss4LpRGQXt1nTX+kfgCYgnKFbFqwAHt7yV
|
||||
Ds+Pe6FuBHPlp+sc1amKRcUnSvhXLsv43VicnT7xYL/kUsN83wrtHA3B4aGDx3aA
|
||||
3/EzuRmIXQB0BlTZILMEyYwG/nc4OsW82QYrvEZ9BIg9A4lF/wS/KZCICPxLF2zo
|
||||
dGjnmlgkiA4s8eO+va/ElHyELjckVXqmG1eXHhSkEsDvOQJy01IUuwLinvq7cUbJ
|
||||
HfJBZJllEg+sLDCv3FkEqN+XjBNFfQN4oNew4w6IPY6YH1INVB9LL0Cmdu4DudLv
|
||||
TY8OcI8eSfez3hmm+pYQ23PJRYYnvRDnRECyIWBegkckWRh8U/WvZUYUvETK6EDl
|
||||
/0KpTtfzX6MqHA5D6bTAB8Y3ijGMLrZ/B5vj5yCoZbLiGme9X2moR2k1LEhdhtzV
|
||||
exsqezCpg6dn48FTX7mHjvR5/r4kz2jqBGmdPUWIIxnjFUzDUK3llVQiHihleHpe
|
||||
jL4LqnhBGKWFRTaVwaIkBG4zAfIzAgMBAAGjITAfMB0GA1UdDgQWBBQNkfW7bSMl
|
||||
1/4KDbgwrkf9x1Zu/TANBgkqhkiG9w0BAQ0FAAOCAgEAGg3a3rTf0EznQocmio0T
|
||||
5gCoL0n8h6yKW/PyPAIELrd9wiYjhJFcWvMTcJJJnVqmAL5vpvhaAFVtAfx70MGa
|
||||
0DZ7FvytK5hEfF4IqOFDyEEVGJR5rIpVK4MeI1nmwEsxdbW+FhODjtRzgYO8XBME
|
||||
Xj4aY1FWg9vxc3reUj6PSFsZtsB0aLiRgL9JDovJIiRw0Uqr1v2wXBte5yVCxDge
|
||||
vTREZtpK4cKetoOa68pwSXI32JwKE18j6bfdKVBCcYQKlKP/3gHGduaDrQv3w32S
|
||||
DRym5s6MREeTUOtAw4wq46KpdOX8yyAqJPrCfMwS6ORd3t+egqOw0PUnsqb97w4O
|
||||
lUtrRYvb2cOj60SmRx4vJvItyuHbKqIK7o2e1RcUZPXYoAVx2ww4XB2Wk4D7LSAs
|
||||
cS7nLj8yAqzJ2qqtBzxu+zILJtkVa12dKF0xmS0BxBp4sCYiBtmAVE8AWQqEuSHA
|
||||
FrMWqoXcjcfdvvyX487FFWWUE7ZBIn0hee2sK9J9+SPtqczJaN7TF3K3nzo65WJG
|
||||
1epltmq2Ugjb67Gz7v4y7H23DJ/qhm8yLtCHTj69HTta5I08j6Kut924WLZaiMO/
|
||||
4YoEL5AE63X0sxYibKFQiq7FW5nUJA280GRlY3xSMFzlB2ggazrUV3YAWVDhfdnI
|
||||
flpzWXkFM2D36OUaubfe9YY=
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1,32 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFezCCA2OgAwIBAgIEUQYyQjANBgkqhkiG9w0BAQ0FADBuMQswCQYDVQQGEwJY
|
||||
WDELMAkGA1UECBMCWFgxCzAJBgNVBAcTAlhYMR4wHAYDVQQKExVJMlAgQW5vbnlt
|
||||
b3VzIE5ldHdvcmsxDDAKBgNVBAsTA0kyUDEXMBUGA1UEAwwOYnVnbWVAbWFpbC5p
|
||||
MnAwHhcNMTQxMTA2MDkxMTE0WhcNMjQxMTA1MDkxMTE0WjBuMQswCQYDVQQGEwJY
|
||||
WDELMAkGA1UECBMCWFgxCzAJBgNVBAcTAlhYMR4wHAYDVQQKExVJMlAgQW5vbnlt
|
||||
b3VzIE5ldHdvcmsxDDAKBgNVBAsTA0kyUDEXMBUGA1UEAwwOYnVnbWVAbWFpbC5p
|
||||
MnAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCrThOH0eSDT0VnCSBC
|
||||
sqYmAydWH+O8eNttDXr2mSvZLhvAW+6/xHTkKhaWvkIvvS0Vh8hujMnD90Cgp4Fk
|
||||
TKCxMj9K527o5xIZwWW05OevbjlBwIpVLO1PjmsfsoD1nIX14eEzJSEoAulKsv7V
|
||||
jGUC/6hC11mmVvH9buQLSRv6sCjuAcMszmw3TAD+XYBIs+z57KuwYXtX3+OA543c
|
||||
l1/ZKLYkkwY8cwzZqWDVWqTKP5TfVae58t40HhJk3bOsr21FZsaOjlmao3GO+d/3
|
||||
exKuUGJRcolSqskL3sZ1ovFqko81obvvx0upI0YA0iMr/NRGl3VPuf/LJvRppYGc
|
||||
LsJHgy9TIgtHvaXRi5Nt4CbKl9sZh/7WkkTTI5YGvevu00btlabAN+DSAZZqdsB3
|
||||
wY8HhM1MHiA9SWsqwU65TwErcRrjNna2FiDHEu0xk5+/iAGl6CSKHZBmNcYKXSv8
|
||||
cwShB0jjmciK0a05nC638RPgj0fng7KRrSglyzfjXRrljmZ40LSBL/GGMZMWpOM7
|
||||
mEsBH5UZJ/2BEmjc9X9257zBdx8BK8y1TXpAligpNBsERcTw1WP1PJ35einZvlXW
|
||||
qI3GwMf0sl26sn+evcK0gDl27jVDZ45MtNQEq64M4NV3Tn9zq0eg/39YvjVeqrI5
|
||||
l7sxmYqYGR6BuSncwdc4x+t6swIDAQABoyEwHzAdBgNVHQ4EFgQU/REZ7NMbVZHr
|
||||
Xkao6Q8Ccqv2kAMwDQYJKoZIhvcNAQENBQADggIBACc2YjLVNbl1kJUdg2klCLJt
|
||||
5LjNTiIZa2Cha5GStlC/lyoRRge6+q/y9TN3tTptlzLPS9pI9EE1GfIQaE+HAk+e
|
||||
/bC3KUOAHgVuETvsNAbfpaVsPCdWpFuXmp/4b9iDN7qZy4afTKUPA/Ir/cLfNp14
|
||||
JULfP4z2yFOsCQZ5viNFAs1u99FrwobV2LBzUSIJQewsksuOwj96zIyau0Y629oJ
|
||||
k+og88Tifd9EH3MVZNGhdpojQDDdwHQSITnCDgfRP5yER1WIA4jg6l+mM90QkvLY
|
||||
5NjWTna5kJ3X6UizvgCk365yzT2sbN3R9UGXfCJa9GBcnnviJtJF3+/gC0abwY2f
|
||||
NtVYp32Xky45NY/NdRhDg0bjHP3psxmX+Sc0M9NuQcDQ+fUR+CzM0IGeiszkzXOs
|
||||
RG+bOou2cZ81G4oxWdAALHIRrn7VvLGlkFMxiIZyhYcTGQZzsTPT6n18dY99+DAV
|
||||
yQWZfIRdm8DOnt0G+cwfeohc/9ZwDmj4jJAAi0aeTXdY6NEGIVydk6MAycEhg2Hx
|
||||
9EV96kRwZNIW0AGY8CozECFL3Eyo2ClQVV4Q35SsBibsitDjM03usc2DJ/qjynXA
|
||||
C8HoOSWgbddiBvqZueqK8GdhykOy3J3ysr+MNN/lbG48LqkQr1OWxev9rGGQ6RJT
|
||||
wpBgPyAFAwouPy1whmnx
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1,32 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
JNJOWTH/Vas1W6XlwGcOOAARTQ==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,34 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
CCOJyu3XtyzFf+tAeixOnuQ=
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
bSl5VHgPXHNM8mcnndMAuzvl7jEK
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,34 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
2Q==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1,32 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
o3eNsanvTU+TIFBh2Q==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
zc+BrVZOdcYPqu9iLXyRQ9JwwA==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,34 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
LD8d2z2Lgg==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1,34 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
Q5DD3jExbpwG5n35HEcHYw==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1,31 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
fpeOSDoGBYJGbIpzDreBDhxaZrwGq36k
|
||||
-----END CERTIFICATE-----
|
||||
@@ -1 +0,0 @@
|
||||
8ac8c1452a00b9654755be88ab805982c1d56a92
|
||||
@@ -1 +0,0 @@
|
||||
af5de0612c40f715740fd4d168aa444b4baca790
|
||||
+3
-10
@@ -2,8 +2,9 @@
|
||||
## See https://i2pd.readthedocs.org/en/latest/configuration.html
|
||||
## for more options you can use in this file.
|
||||
|
||||
#log = file
|
||||
#logfile = ./i2pd.log
|
||||
# log = file
|
||||
# logfile = ./i2pd.log
|
||||
loglevel = none
|
||||
|
||||
ipv4 = true
|
||||
ipv6 = false
|
||||
@@ -20,9 +21,6 @@ name = I2Pd
|
||||
[reseed]
|
||||
verify = true
|
||||
|
||||
[addressbook]
|
||||
subscriptions = http://inr.i2p/export/alive-hosts.txt,http://identiguy.i2p/hosts.txt,http://stats.i2p/cgi-bin/newhosts.txt,http://i2p-projekt.i2p/hosts.txt
|
||||
|
||||
[http]
|
||||
enabled = true
|
||||
address = 127.0.0.1
|
||||
@@ -42,8 +40,3 @@ port = 4447
|
||||
enabled = true
|
||||
address = 127.0.0.1
|
||||
port = 7656
|
||||
|
||||
[ntcp2]
|
||||
enabled = true
|
||||
published = true
|
||||
#port =
|
||||
|
||||
@@ -1,11 +1,3 @@
|
||||
#[IRC]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
#port = 6668
|
||||
#destination = irc.postman.i2p
|
||||
#destinationport = 6667
|
||||
#keys = irc-keys.dat
|
||||
|
||||
#[SMTP]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
@@ -22,12 +14,4 @@
|
||||
#destinationport = 110
|
||||
#keys = pop3-keys.dat
|
||||
|
||||
#[MTN]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
#port = 8998
|
||||
#destination = mtn.i2p-projekt.i2p
|
||||
#destinationport = 4691
|
||||
#keys = mtn-keys.dat
|
||||
|
||||
# see more examples in /usr/share/doc/i2pd/configuration.md.gz
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#[IRC-ILITA]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
#port = 6669
|
||||
#destination = irc.ilita.i2p
|
||||
#destinationport = 6667
|
||||
#keys = irc-keys.dat
|
||||
@@ -0,0 +1,7 @@
|
||||
[IRC-ILITA]
|
||||
type = client
|
||||
address = 127.0.0.1
|
||||
port = 6669
|
||||
destination = irc.ilita.i2p
|
||||
destinationport = 6667
|
||||
keys = irc-keys.dat
|
||||
@@ -1,7 +0,0 @@
|
||||
#[IRC-IRC2P]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
#port = 6668
|
||||
#destination = irc.postman.i2p
|
||||
#destinationport = 6667
|
||||
#keys = irc-keys.dat
|
||||
@@ -0,0 +1,7 @@
|
||||
[IRC-IRC2P]
|
||||
type = client
|
||||
address = 127.0.0.1
|
||||
port = 6668
|
||||
destination = irc.postman.i2p
|
||||
destinationport = 6667
|
||||
keys = irc-keys.dat
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Copyright (c) 2013-2019, The PurpleI2P Project
|
||||
# Copyright (c) 2013-2022, The PurpleI2P Project
|
||||
# This file is part of Purple I2P project and licensed under BSD3
|
||||
# See full license text in LICENSE file at top of project tree
|
||||
|
||||
@@ -12,15 +12,20 @@ cd $dir
|
||||
|
||||
arch=$(uname -m)
|
||||
language=$(osascript -e 'user locale of (get system info)' | sed -e 's/_/-/g')
|
||||
version="60.7.1esr"
|
||||
i2pdversion="2.26.0"
|
||||
version="91.9.1esr"
|
||||
i2pdversion="2.42.1"
|
||||
|
||||
ftpmirror="https://ftp.mozilla.org/pub/firefox/releases/${version}"
|
||||
|
||||
curlfind=$(which curl)
|
||||
if [ -z $curlfind ]; then
|
||||
echo "'cURL' does not seem to be installed. The script needs it!";
|
||||
exit 1;
|
||||
echo "'cURL' does not seem to be installed. The script needs it!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# We support only English (US) and Russian
|
||||
if [ "$language" != "ru" ]; then
|
||||
language="en-US"
|
||||
fi
|
||||
|
||||
echo "This script is preparing Firefox $version for use with I2Pd"
|
||||
@@ -33,14 +38,14 @@ echo "Downloading $application..."
|
||||
tmpfilepath=$(echo $filepath | sed 's/ /%20/g')
|
||||
curl -L -f -# -o "${file}" "${ftpmirror}/${tmpfilepath}"
|
||||
if [ $? -ne 0 ]; then # Not found error, trying to cut language variable
|
||||
echo "[TRY 2] I'll try downloading Firefox with shorter language code";
|
||||
echo "[TRY 2] I'll try downloading Firefox with shorter language code"
|
||||
language=$(echo $language | cut -c-2)
|
||||
# re-create variable with cutted lang
|
||||
filepath="mac/$language/$file"
|
||||
tmpfilepath=$(echo $filepath | sed 's/ /%20/g')
|
||||
curl -L -f -# -o "${file}" "${ftpmirror}/${tmpfilepath}"
|
||||
if [ $? -ne 0 ]; then # Not found error, trying to download english version
|
||||
echo "[TRY 3] I'll try downloading Firefox with the English language code";
|
||||
echo "[TRY 3] I'll try downloading Firefox with the English language code"
|
||||
language="en_US"
|
||||
# re-create lang variable
|
||||
filepath="mac/$language/$file"
|
||||
@@ -48,14 +53,14 @@ if [ $? -ne 0 ]; then # Not found error, trying to cut language variable
|
||||
curl -L -f -# -o "${file}" "${ftpmirror}/${tmpfilepath}"
|
||||
if [ $? -ne 0 ]; then # After that i can say only that user haven't internet connection
|
||||
echo "[Error] Can't download file. Check your internet connectivity."
|
||||
exit 1;
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f $file ]; then
|
||||
if [ ! -f "$file" ]; then
|
||||
echo "[Error] Can't find downloaded file. Does it really exist?"
|
||||
exit 1;
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Downloading checksum file and checking SHA512 checksum"
|
||||
@@ -64,7 +69,7 @@ recv_sum=$(grep "$filepath" SHA512SUMS | cut -c-128)
|
||||
file_sum=$(shasum -a 512 "$file" | cut -c-128)
|
||||
if [ $recv_sum != $file_sum ]; then
|
||||
echo "[Error] File checksum failed!"
|
||||
exit 1;
|
||||
exit 1
|
||||
else
|
||||
echo "Checksum correct."
|
||||
rm SHA512SUMS
|
||||
@@ -72,7 +77,7 @@ fi
|
||||
|
||||
echo "Attaching image and copying files..."
|
||||
hdiutil attach "$file"
|
||||
cp -rf /Volumes/Firefox/Firefox.app ../FirefoxESR.app
|
||||
cp -r /Volumes/Firefox/Firefox.app ../FirefoxESR.app
|
||||
mkdir ../data
|
||||
|
||||
echo "Detaching image and removing image file..."
|
||||
@@ -85,14 +90,8 @@ rm -r ../FirefoxESR.app/Contents/Library
|
||||
rm -r ../FirefoxESR.app/Contents/MacOS/crashreporter.app
|
||||
rm ../FirefoxESR.app/Contents/MacOS/pingsender
|
||||
rm -r ../FirefoxESR.app/Contents/MacOS/updater.app
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/blocklist.xml
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/crashreporter-override.ini
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/features/aushelper@mozilla.org.xpi
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/features/firefox@getpocket.com.xpi
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/features/followonsearch@mozilla.com.xpi
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/features/formautofill@mozilla.org.xpi
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/features/jaws-esr@mozilla.org.xpi
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/features/onboarding@mozilla.org.xpi
|
||||
rm ../FirefoxESR.app/Contents/Resources/browser/features/screenshots@mozilla.org.xpi
|
||||
rm ../FirefoxESR.app/Contents/Resources/precomplete
|
||||
rm ../FirefoxESR.app/Contents/Resources/removed-files
|
||||
@@ -103,15 +102,24 @@ sed -i '' -e "s/ServerURL=.*/ServerURL=-/" "../FirefoxESR.app/Contents/Resources
|
||||
# Done!
|
||||
|
||||
echo "Downloading language packs..."
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/langpack-ru@firefox.mozilla.org.xpi "https://addons.mozilla.org/firefox/downloads/file/978562/russian_ru_language_pack-60.0buildid20180605171542-an+fx.xpi"
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/langpack-en-US@firefox.mozilla.org.xpi "https://addons.mozilla.org/firefox/downloads/file/978493/english_us_language_pack-60.0buildid20180605171542-an+fx.xpi"
|
||||
mkdir ../FirefoxESR.app/Contents/Resources/browser/extensions
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/langpack-ru@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3829308/russian_ru_language_pack-91.0buildid20210823123856.xpi
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/ruspell-wiktionary@addons.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3957330/2696307-1.35.xpi
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/langpack-en-US@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3829281/english_us_language_pack-91.0buildid20210823123856.xpi
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/en-US@dictionaries.addons.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3893473/us_english_dictionary-91.0.xpi
|
||||
|
||||
echo "Downloading NoScript extension..."
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi "https://addons.mozilla.org/firefox/downloads/file/3028550/noscript_security_suite-10.6.3-an+fx.xpi"
|
||||
curl -L -f -# -o ../FirefoxESR.app/Contents/Resources/browser/extensions/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi https://addons.mozilla.org/firefox/downloads/file/3954910/noscript-11.4.6.xpi
|
||||
|
||||
echo "Adding standard configs..."
|
||||
cp profile/* ../data/
|
||||
cp -r preferences/* ../FirefoxESR.app/Contents/Resources/
|
||||
cp -r profile/* ../data/
|
||||
|
||||
if [ "$language" = "ru" ]; then
|
||||
cp -r profile-ru/* ../data/
|
||||
else
|
||||
cp -r profile-en/* ../data/
|
||||
fi
|
||||
|
||||
echo '#!/bin/sh' > "../i2pdbrowser-portable"
|
||||
echo 'dir=${0%/*}' >> "../i2pdbrowser-portable"
|
||||
@@ -0,0 +1,513 @@
|
||||
0xff.i2p,apo53zid3xe7rewxjw7whdym2rmyowsj7jeoiwrl5zlmf7oqrxwq
|
||||
0xpaste.i2p,oyfcxkrmrnaplu24aobv7s36hm3vyxszlbees4hl6kpk6izwa5da
|
||||
102chan-memorial.i2p,t6uwxydnfd7mo2knxklmnrudxafe4mw5ojiqikj7xfrc4ynltz3q
|
||||
111.i2p,s5ekktro7kk24gu67dgwi5xnhzhzjx6abujk44q4v56mmdnrv4lq
|
||||
333.i2p,ctvfe2fimcsdfxmzmd42brnbf7ceenwrbroyjx3wzah5eudjyyza
|
||||
4rum.i2p,ys54v3jkze77peoyzhbck5rswaaeu4j3wd4cueli5brcbws3plrq
|
||||
CrustyIRC.i2p,4ygmttynho5k32vfm64urriqx2vj3s6hkm52jwv2vlwrynu4z6iq
|
||||
aaoth.i2p,aaoth5tidbhizgerysxlfrqmg5t7jzb76zt6lattwjj3up524qwa
|
||||
abdlandrubbernetwork.i2p,asnpognglrcx34l5vywatfkoaashziedfylun4w6cf5wue5gujca
|
||||
acetone.i2p,tzwfy3dnqtm4wuofmcp3gcb5qjcytri635ei7kw7yrl6n3ul5n2a
|
||||
agentoocat.i2p,voanmdeayaccgaxumtehvxxiv4sdscsixoxsqmhh7nfwhusrvfaa
|
||||
alexi.i2p,ijbams5zzi2y2owbrm6cairjemsooh6ebsw4j3kblzntg4elfqaq
|
||||
alphabay.i2p,tnaefzkcnhryeusi7hdpqujqiqmnbtah3dmjcg3gvezohunjuxbq
|
||||
amogus.i2p,udcjqqoo7mc54ephxnhzaxdwtqxsgxjzvh4wr4boope6vyr4mrhq
|
||||
animal.i2p,5iedafy32swqq4t2wcmjb4fvg3onscng7ct7wb237jkvrclaftla
|
||||
anongw.i2p,owrnciwubb3f3dctvlmnaknb6tjdxtlzvv7klocb45mmhievdjhq
|
||||
apophis.i2p,aybax36xssplylkueyy3szi3n2spd7mgxcmzbawapg3vxznwlkda
|
||||
aqua.i2p,xqwrqfuoae43grkmzs63sw5upathbjerid3ch4bhskle3bibeqba
|
||||
arav.i2p,t42fkp6zp5dfqywantq3zp427ig3q2onrmfv246tyaztpg4ckb5a
|
||||
archaicbinarybbs.i2p,t7o2tw36cffedgfr6kahewpkrntofnliuapji2e4rucl3os55epa
|
||||
archiv.tutorials.i2p,lldr2miowq6353fxy44pnxfk37d6yn2f6kaivzecbmvvnnf5exyq
|
||||
archlinux.i2p,5ms4k3cn5dx53b46hqgwogigsjhtinuf4g6fdr6pplkldi5vjcxa
|
||||
arstechnica.i2p,rrlara3vp6vpkzbxy6xpdl2pbisig2xfcenctgxka4s6qsioyvpa
|
||||
ase64-image.i2p,keppeaoopqg5dyjwwtidwgqbt2vxgb5nwvd5yrusptt5y25pib3q
|
||||
autonomousdeflector.i2p,uq5hbw7bplczde3pbugbxnvtqbjjdba6wfggpvbmaghuwoulputq
|
||||
azathabar.i2p,v35rwae5zb6fcgd7phzkireghtuen43umi7l5yvahm7ezkqg5uwq
|
||||
b0nk.i2p,hxkzqqo4smyspzx7qv2wqqnbxod3ytabpat2ea5ilh7byvymdz2a
|
||||
bandura-yacy.i2p,e4t4yer7o6dbttk4xmpsfd56vhuse5upksgjqejnrvrdz35ia2qq
|
||||
bandura.i2p,n6eqyu6glmtgt544ys43ggrozhpiw7biyrelrvmkmg7llfcjwm4a
|
||||
base64-image.i2p,keppeaoopqg5dyjwwtidwgqbt2vxgb5nwvd5yrusptt5y25pib3q
|
||||
bellingcat.i2p,nk6hd2mzzoieui22xzcdiz7i2irp7gel3qscwanuqzstkdxqxp3a
|
||||
bentasker.i2p,gdncgijky3xvocpkq6xqk5uda4vsnvzuk7ke7jrvxnvyjwkq35iq
|
||||
bible4u.i2p,xs6lr2g5jiaajtb3nkno2zmy34eipitrggooxb7wtey7uko7bqmq
|
||||
bigbrother.i2p,tnxiifs6uticzyg6ac4lhv2l5luwi6xra7yngocro56ive5e4jsq
|
||||
bitchan.i2p,waycuw2c27ruakfblkf5tcegwmt3ot445dlfoypil6bzmm4yxg7a
|
||||
bizcochito.i2p,nlohuquv5gaqnhfdeano77ftswnfg674jet5qeualztoxtmsceka
|
||||
blawg.i2p,uq5hbw7bplczde3pbugbxnvtqbjjdba6wfggpvbmaghuwoulputq
|
||||
bloat.ryona.i2p,q256toxhs7m3ntmu4sq5l7levm6vr67f3rmqytiqpprgflhn42qa
|
||||
blog.raccoondad.i2p,ouc5i7xknchig3qdtkoydoeg2oqe354roxkjrrwzuzjcqr4xpvna
|
||||
blog.tinlans.i2p,ylkch2nkrwehakx4z6wiyjbeqwlgasknukdkex6r6yq4xusrjnda
|
||||
blog.torproject.i2p,woelslt2oh4dn5wlxfmpjggyyu6l7ntgk3rngrooldn57x4kduma
|
||||
boerse.i2p,7633w56hd53sesr6b532r5qlbdnvyl5bnvama6ign6xryaxol4rq
|
||||
bofh.i2p,auvuinzogu6gc4pwsgbjijuszxgcjygciu2wy53pfz7mo5nfpc5a
|
||||
bonobonet.acetone.i2p,keihicq2fcfooqvdqtufjpigg3ge5mw5mjdpdnxy5utazrqkcnxa
|
||||
bote.i2p,bhjhc3lsdqzoyhxwzyrd63kvyg4br6n2337d74blyintae66mr2a
|
||||
braindead.i2p,braindsku6jnpmnaats2cu2qzax4pga6dwhx436kxanpxgx2pcyq
|
||||
bridges.torproject.i2p,2tiwhibsjvys63t43xncar6y52dy3dpct6edglenhzlalmyirb2a
|
||||
bublik.i2p,npx6e6trk37ovoxzk3j3yoh5huenh24avbmsgeroiejkuzb2vo6q
|
||||
bugfuzz.i2p,ubszn4gsf22vga67rvzzlg4qj2bfcq6o52fmxz46xruawqm6z7rq
|
||||
bunkerfiles.i2p,lyrhscn2hfe6mjn7jo3titioitfzcy7x23hhkksydin6ildsgxiq
|
||||
bunkerirc.i2p,mdt7h4zsbwafsikg3r4iiqh5wriaisznjj5d3f3lyeahipudsxoq
|
||||
bunkertreffinfo.i2p,ow4q3pdfdwofiqb4btopg5ou734w32k3z4hoiinsezg5zkzdlq6a
|
||||
ca.i2pd.i2p,u5safmawcxj5vlrdtqrsqbsndkr5cfenpicgg5euu4xqm73yicba
|
||||
cake.i2p,hpdbe6o6qqqqvgygbcznssat46kybsm7rcauofqaoly4ajdi2jeq
|
||||
calculator.i2p,itj23yb325dma24i4qpnhuwrz26hzpps6izkaf3mowavtvoznnva
|
||||
cantonese.i2p,3r3d43jejiezwb6daqgtk23ccs4jm3bvkhxwwwnpymvjn2aymriq
|
||||
carvet.i2p,r5ukmkit6n3ztitar6clfc6te3o3235ys4jdbiugnkvzmfurxbnq
|
||||
cbs.i2p,u3lp7wazvq6opodzwjg5sc5w5kwxehmxd4wcdpt4s4j2k4dx4apq
|
||||
chaox.i2p,6bcqgkedaq2krrhvidjlmdsoltmzuwaqtrafycfzbc56h5swumoq
|
||||
cheapeth.i2p,x6pq4h33wu6txj6vvpgywrgew2y6cwzs5l63w726paqsvogeqdra
|
||||
chmok.i2p,w7eqh6nndwk4yr5vxtbnvizgsg776vamwingijetnnqojrzjxm3q
|
||||
chpok.i2p,chpoks4kkac3s274t5hhuz7umvy5nvedfxkhojkysckulrnsyccq
|
||||
ci.idk.i2p,antkos5hjxraxduyewoo4qwwr6vyceiggd562nctvmtpnfjsuqlq
|
||||
cipherlist.i2p,gbm4kiotqjqmklwsp3qibdtn7mhatjsyeebbb5zxwjlp6w22fuga
|
||||
citrus.i2p,citrusogkieyk3hleilk5scb5a64jdzoogi5wjv35klrvmqsh5ma
|
||||
cloaca.i2p,pnsyl5plmmwuqfvpg36cbvvhe6mpoy2j5zzemfb5sfbpvklyozta
|
||||
closedgl.i2p,5q5kqrnb2mji5lzfjj2wwdrpp4veg72jw53i3tvxb4qb5umawvha
|
||||
cobalt.idk.i2p,m63cbwomq4e4q6df3n6idnuveqa4yastxnls6kacseuutrp5um4q
|
||||
coffeejazz.i2p,mrt55kugqimzxeittpwwjwznejs3b3zxcfht3hp6dlujetyqh5ua
|
||||
coldhell.i2p,z2kerfik5dzqd2kj74cuhhtptkrizsblc5nm6ke2gcnj5mnwgwja
|
||||
community.i2p,64luakopnvffchxnibn3d2p7uqxixtyuallfqfgifkkcmfcrczxa
|
||||
community.torproject.i2p,wmw22z5c24b35hlepzc2g6k3cpcg44rcg46qdwfo5heiplv7m4ca
|
||||
contact.i2p,rn5hqxierph4eegft3hiiqkgn2zyyfgj2c6pq75bkahl3pu5shvq
|
||||
costeira.i2p,abhty5xlmnyab2kqdxcd56352kcescxoux3p6dbqdrghggyygnxa
|
||||
cssportal.i2p,lrcgr42clubpbmahmwgigan6v775xe6mew2xfjbl67v5zn6roxxq
|
||||
cyberchef.i2p,5k22kdukxkobertlyheal5aro32gls6nhgktneq3mtrracubt2bq
|
||||
cyberia.i2p,3jrfzgnetbjwnyrua5jpyeqk7gb6dgfw3hu5q6lyggnwqhrury5q
|
||||
darkboxmush.i2p,2ukjz3iflrzr5ew36n3l6kos2widifff2oovgj7iybur6zgczspa
|
||||
darknetbible.i2p,lcaocuhvocje2gociyyuiip5sxhbgmkvaicbm6g6axtflf5wc6pa
|
||||
darknetdaily.i2p,gehxh3zlns3ezyuc35bszc42hdr4g5uzasexzyrqfxwcwkeiulia
|
||||
darknethub.i2p,tnh5bp4si7x47vhwk6njtimbbk77gai3abkfh2gz2dhml46uu3uq
|
||||
darkrealm.i2p,gbh4eerxdsph7etxsxznfhvmuiz54trlkenakqep343u4xcoekzq
|
||||
darktech.i2p,nlkpudgmmgsdiemnbehq5llymdmxp6tn4rzjuse7nhvavr2kgkga
|
||||
dashninja.i2p,dzjzoefy7fx57h5xkdknikvfv3ckbxu2bx5wryn6taud343g2jma
|
||||
datagrip.i2p,ajreyxslv6lijap2hykp3uvnnsca6fyvax76u2w6n3vexngkif4a
|
||||
dcherukhin.i2p,qa4boq364ndjdgow4kadycr5vvch7hofzblcqangh3nobzvyew7a
|
||||
ddosecrets.i2p,vyhw7t7fbj7nghx3oe4y5komczeb5egnhuvlslpkqupaymnhtlka
|
||||
deadendshrine.i2p,2a55el42cobuxtls7iv6eoimejocybdekwnnaefcn4u2f5eydela
|
||||
deavmi.i2p,fh5r3hlkkwh7udtjeqmekmq4qd62jnjqmnqob5hm3ndiuo6lauza
|
||||
denshi.i2p,6iyjp36q6lvbodfpzekpcgz2tu23jlqgwb5zx3s7tumq5hr7ueia
|
||||
det.i2p,y6d4fs3rpqrctuv77ltfajf5m4tl4kzcu7rtwhxgiohylfxxow4q
|
||||
diasporg.i2p,edvccoobtjukjgw2os5eetywanbb2mpag5aknkrpia5qx2koksua
|
||||
dickinass.i2p,5x55ucmwxf2fvrcboapylnrcwdvunlokq5c7mnofno3bkrlqltza
|
||||
digitalsr.i2p,ldavoapfhoqpxvihdsdjjo3phlt5ujkgkzigzbesab3g42rwvbpq
|
||||
discuss.i2p,wrnowoalzz5mquzaygmcrm4feuqco5gsxyn42fizbqjaprtdx5gq
|
||||
dist.torproject.i2p,pbhgoronppg7tq3dssnwmhzkbrscbvtmy3d5pmar5hyhnqwjj46q
|
||||
diva.i2p,auoqibfnyujhcht4v3nzahpqztwlyomesfywltuls5bqqi3nd3ka
|
||||
dlms.i2p,krsbxsaw3lnb6ctdpydygm2gqobjcpm4pf367ddo5hylbscnynmq
|
||||
dnl.i2p,4pjdhyaot4kktjathgjmom4ykfccezyezasbtvgdtmar2b76cpqa
|
||||
dns.acetone.i2p,dnsgzxkak4zlrrs5tfh42ob57iley4xrp7srrltn2j2yl2ynbiaq
|
||||
donate.torproject.i2p,crxdz4n5viyy46upbd4amlzxcinkea7hwj3mkiudrw3nkpnfv42q
|
||||
donotafraid.i2p,w6jq5xsixmolxvh5xtxaqolary2nmx5n4orc5bilc2j7ejcytgfa
|
||||
drommedaris.i2p,2cth2loujyjvouft5z7cr2ajdv7r46tdxxew5xoqwpprucd7nf2a
|
||||
e-reading.i2p,z54dnry6rxtmzcg7e6y3qtsig5yf5fmehuvakcg5wnuahx3iafuq
|
||||
e8.i2p,5spb6cl4ffallahbaj2yadag2zgyuciouhz2rdcnyjcf5phqcu4a
|
||||
eanlib.i2p,dh4ae6vbrlk2nfdwcbsjbqkvh3dnrdcdfzmsxoddaefvatkw5q5a
|
||||
easygpg2.i2p,bwxry5alzx5ihgrd3glah4eotddblzhalvpheppnw4zcajzqoora
|
||||
ebooks.i2p,bvpy6xf6ivyws6mshhqmdmr36pruh2hvoceznzeag52mpu647nzq
|
||||
ebuild.agentoocat.i2p,lu56romn7lp6ggjtofbwwsaee6kcfonci2ezi5jb5nyo3vdo7vkq
|
||||
eddysblog.i2p,ieac3ub4g5sy3wuhsbqfembnpp7f3a37xgcx537ytzsmgfzexnbq
|
||||
eleven.i2p,n2er74vsv7szwvsbsukd2lwhz5epedws7eqwahsmxy65agvjizzq
|
||||
elvn.i2p,vwjtedtgyokakyxgfeoavg535bxe7ymdvfbdwsq4iqngljqtqi3a
|
||||
erotic-snake-gallery.i2p,wzgk77ifxl7kpgqxs4p2t6ujjyfpdvgjlqz3q3n4wfkdljfv3dya
|
||||
esperanto.i2p,2yryi2eb72hnxavjpfot7paiminbzgv5w6fv4sl5wez55ventdeq
|
||||
exit.stormycloud.i2p,5d4s7pcvfdpftfk7npc7hllyujhufsdprtrf4o53i44rgsa2xbwa
|
||||
explorer.gostcoin.i2p,ktoacmumifddtqdw6ewns3szxths2hq2fat2o7xnwq4y3auga3za
|
||||
fabrice.i2p,fabricexhumxqngfziy4xkao5m5ez27jpih4chtmigg46eu7rroa
|
||||
false.i2p,77mpz4z6s4eenjexleclqb36uxvqjtztqikjfqa4sovojh6gwwha
|
||||
fantasy-worlds.i2p,62a4xcyyhvfrcq2bkckb7ia37fmrssrgx467tlkxp32fjpq577wq
|
||||
fido.r4sas.i2p,i522xmu63hfbaw2k54cthffcoqmeao6urjyq3jg4hddf6wf57p3q
|
||||
files.arav.i2p,gajftpr47ze6ao7e3q2tb5xmcqneyaczu4edzvwwg2qzmnernpka
|
||||
fileshare.linuxfarm.i2p,rrx4hxejr4pod3tqrkj5ckzuauwy2aqsfvpiac2tkebp2iuv5qla
|
||||
fishsticks.i2p,btjbfuh2wav3c7bkjqylgatbkvqaireemvsvxwetkrifuvfa35da
|
||||
flibusta.i2p,zmw2cyw2vj7f6obx3msmdvdepdhnw2ctc4okza2zjxlukkdfckhq
|
||||
forbiddenhistory.i2p,nlduiogwtutni5nwf5kbuekrqf3ymqmkor3hughjkckz7tvruhva
|
||||
foto18+common.i2p,bwe4hnzsvnx73aye36hymhhqzi2dbbrgf4rbtqh2e2x3q3r67nfq
|
||||
fourth.i2p,2cq65hjlt7nnl7mctthj7oejlgep7nh7gmqc6bnbflxw2ti4bxxa
|
||||
freefallheavens.i2p,7etudb75nhe6vxslitptjlwrnbybdshvzxnweuiepsxbbkkxy5ka
|
||||
freehaven.i2p,y4giqqrbcb4xit5gp4y6njypupfklfdr74lfi424seenf7usjvza
|
||||
freifunkmobi.bandura.i2p,5shuxvx52e3qszylwn4w7qst4siap3latyap3ff7nfnpjgllkcea
|
||||
frontlinedefenders.i2p,pshxfoeefj67oj4jwjh3cqiztmrgcpsbuttclnc6fiwvv42p6inq
|
||||
fs.i2p,ah4r4vzunzfa67atljlbrdgtg3zak5esh7ablpm6xno6fhqij35q
|
||||
fuck-rkn.i2p,qmlmnhr3ul2lmuu4fjf43kmk6hf3dzsuxv5xu77vwys36xwuu4sa
|
||||
galacticreststop.i2p,uln6c2abwfzneakdz7dkfmdifwrjr3r53jvkmq6mxrjt2vflvbrq
|
||||
gedanken.i2p,kw6isjbs66uf7576fbb3aniokxtrpqmbegf4tf3xskg2bmrjci7a
|
||||
geekcode.i2p,hzmyzxa6jzag67zcqxhicydusdev77byf2qoyxjxhsrtkce4qiqa
|
||||
gfap.i2p,yasbny2ndcpofprdbtv7dxdtshbebyydjv5zlnwy54gii6xnlmqa
|
||||
ginnegappen.i2p,kbhfkzx5jeqhfgss4xixnf4cb3jpuo432l3hxc32feelcmnr3yja
|
||||
git-srv.b0nk.i2p,6mopdcovd7urmuxo35wopbgsfpv6ifpu7kq2625lyi5hfv5re6ua
|
||||
git.agentoocat.i2p,5ihrbnmcoewaax5kxsghnmxh6p6srufhmo5pqkybdwuz4yj7efja
|
||||
git.apophis.i2p,apep7dtwnuom6b7li6jirhrsygxgcdqb5svqpq6mh2rpindrzp2a
|
||||
git.arav.i2p,p5nkflgogwv4esy3ainup6mgurpugmdyufizhuufauznreyvprsa
|
||||
git.b0nk.i2p,7uupnvxwwkxo3au2fdt7ky66pk2eklshggf7r6mox5oofzpmjata
|
||||
git.community.i2p,giteabolfdejtdzblkooalqei6jr67imiugmhtsh6ocw4hlj5a4q
|
||||
git.deavmi.i2p,5jtgpuzaabxyhahvbmokb3oeh2lwzpiiqlrg3w7kyyg63lzkwabq
|
||||
git.i2p,giteayof3hpwkfnwnryy6l4qhq3cwdzqlr72jokzbkc6ol43mypa
|
||||
git.i2pd.i2p,7p7piii66oika4bkrkxpkqf3tabx3n5e4lkaz3hreb5nrllefj3q
|
||||
git.idk.i2p,7qeve4v2chmjdqlwpa3vl7aojf3nodbku7vepnjwrsxljzqipz6a
|
||||
git.kill-9.i2p,jf2mrxlbqsct67fces34x6kwbbnmlx6o7gd6g4knqk36soa6efqq
|
||||
git.qorg11.i2p,jf2mrxlbqsct67fces34x6kwbbnmlx6o7gd6g4knqk36soa6efqq
|
||||
git.raccoondad.i2p,lvdeb4zna75pmrdf5lsc3b4wswwbfco5vzrs3344qspbxh6bfqgq
|
||||
git.repo.i2p,vsd2vtgtuua2vwqsal2mpmxm2b2cpn3qzmqjoeumrrw2p4aot7uq
|
||||
git.spyware.i2p,zin764g7gchdgxub4bskkztbkjlgibs27cl6pfvbqvjqx3prjgjq
|
||||
git.varikvalefor.i2p,6sqxtpnpqqnlqbdxu7dadmorrffnpe3evbz5zye4y5kvljkzkbra
|
||||
gitssh.idk.i2p,g6u4vqiuy6bdc3dbu6a7gmi3ip45sqwgtbgrr6uupqaaqfyztrka
|
||||
gostcoin.i2p,4gzcllfxktrqzv3uys5k4vgkzbth4gqednwhfpt755yivm3davuq
|
||||
grom.i2p,lvfp4bj3opl4fqrjycx6vryeapondluh2oubvb2plg4zcm4bkpza
|
||||
gusion.i2p,4qyfdhizjixe2psu7wcvqufix5wlijocehpb2futurcmlhlktrta
|
||||
h0p3.i2p,k5fppzxc3bwoz2mjc7q37jojbrxo6vtprac3dzrk4wapv7irr4iq
|
||||
hackernews.i2p,zbfg6fntvx2ptmp2uzw2pmyfipeh4wophzmtxzlv6qs5bvplv3wq
|
||||
hagen.i2p,e2t6rqd2ysbvs53t5nnaf7drllkgk6kfriq3lfuz6mip6xfg644q
|
||||
harbour.i2p,zohxpycufzcslwb2dgdkfo75flahkl2q7n57ciqjooqia75ybada
|
||||
hardenedbsd.i2p,6ebmdsir52bi3q4wfwug7ylouoq6gdafl3wyy6ccfmpffijhtoca
|
||||
heaven.i2p,y6ejpmln3j2jvf4omb4ptyo2idognputhrccph74yn6eghkpxyhq
|
||||
heyguys.i2p,lzxre37ekc6asrhnbg6hdnmib3thrkt6mqyln532tjy7nlltprca
|
||||
hiddenbooru.i2p,zma5du344hy2ip5xcu6xmt4c7dgibnlv5jm4c2fre5nxv44sln3q
|
||||
hiddenchan.i2p,6y4tltjdgqwfdcz6tqwc7dxhhuradop2vejatisu64nwjzh5tuwa
|
||||
hiddenwiki.i2p,2iz3nkopz6fxbzlcjq3ofligi7mwdseuj4ndzqljogyvsggh6dvq
|
||||
hightimes.i2p,kkhti6od2xo65f25hxjsmexplfqrztgmsaa6b47mxhygynt46szq
|
||||
hisdarkmaterials.i2p,qcf3vxllflqfsbvxjlypfxsx36g5srknxnhpyz3ph5bcxdjawraq
|
||||
hopjoy.i2p,3wifx34yzdnj5vw3zu3kmqyz57tvlypmdnnyalqjdcaqrege6bpa
|
||||
hotline.i2p,6cczi27iuxkm3aivazaemzltdqgh42ljzurqp43uclbz2lid2uqq
|
||||
hp-net.bandura.i2p,z2ufexrgrxry37y4vs5hted35ygpleskfcs2enanl53hmlpzlqhq
|
||||
hq.postman.i2p,7ewjvbcwgah57n64cwbsxqai7eutqofkesuxfsuhfheijivdjqra
|
||||
htmlcolors.i2p,674zs7tghldg6kagvparow7xkkwa3gaizmug3hgwurekz6wpqtia
|
||||
http-false.telegram.i2p,77mpz4z6s4eenjexleclqb36uxvqjtztqikjfqa4sovojh6gwwha
|
||||
hub.i2p,pbm6jogo2u2rflvzishwgqkxo6lkjsdfesd3r4k6sf4gdewc4lha
|
||||
hungryewok.i2p,to3afquvmrmk4kvozisb562elb2hdka6hwk6oeud32m6h2qtkcqa
|
||||
hypestat.i2p,t6r6fsquaze4yo2mfmzyecbq5xe6y723lwdow2n55gd35cjrzrgq
|
||||
i2p-mirror.bandura.i2p,aq7r54ebou47b533y5seiod7dc3aeycucevl2pqvphnjhjwblr6q
|
||||
i2p-projekt.i2p,udhdrtrcetjm5sxzskjyr5ztpeszydbh4dpl3pl4utgqqw2v4jna
|
||||
i2pd.i2p,4bpcp4fmvyr46vb4kqjvtxlst6puz4r3dld24umooiy5mesxzspa
|
||||
i2pdocs.str4d.i2p,yfvbtrhjac3jutdsqzugog6mbz3jtyhpwovrt2mqc5mzv534y7cq
|
||||
i2peek-a-boo.i2p,qgv64klyy4tgk4ranaznet5sjgi7ccsrawtjx3j5tvekvvfl67aa
|
||||
i2pforum.i2p,tmipbl5d7ctnz3cib4yd2yivlrssrtpmuuzyqdpqkelzmnqllhda
|
||||
i2pjump.i2p,2mwcgdjvfvd3xwumzqzqntual3l57h3zo7lwdmkjboeraudpkyka
|
||||
i2pmetrics.i2p,v65p4czypwxrn35zlrfkar2w77vr42acd7gbszegsrqq4u7sip5a
|
||||
i2pnews.i2p,tc73n4kivdroccekirco7rhgxdg5f3cjvbaapabupeyzrqwv5guq
|
||||
i2podisy.i2p,3c2jzypzjpxuq2ncr3wn3swn5d4isxlulqgccb6oq5f6zylcrvcq
|
||||
i2pseed.bandura.i2p,2bpbnalf76ktxzhfekkwcklmo45xzedi5em5bdoyedrhw5bhvtia
|
||||
i2psurvey.i2p,pemwrlamhiiv74ok4kwoo4eqwzzjshp4q7ir3nlh4jfnt4zjncia
|
||||
i2ptimes.i2p,563tjwihw2ql5q2kl7d7md7ywedpapoqgkxgazkz4gmlrb2flqbq
|
||||
i2pwiki.bandura.i2p,isbf7tzeyrutnd5rvmjpqaohe7cz6onqgci2wvbuyfwc62w74r3q
|
||||
i2search.i2p,cpgupqyhxamjfgdd3qk5ux673qomu3o5kqszvq6fwuigzifkxzta
|
||||
ibft.i2p,ds36spqcf7dnj46in5vfnbbwcbjpslo6aafkdrkc47a2oq3zvtta
|
||||
icfteam.i2p,auvuinzogu6gc4pwsgbjijuszxgcjygciu2wy53pfz7mo5nfpc5a
|
||||
identiguy.i2p,3mzmrus2oron5fxptw7hw2puho3bnqmw2hqy7nw64dsrrjwdilva
|
||||
idk.i2p,b2o47zwxqjbn7jj37yqkmvbmci7kqubwgxu3umqid7cexmc7xudq
|
||||
ilcosmista.i2p,6u2rfuq3cyeb7ytjzjxgbfa73ipzpzen5wx3tihyast2f2oeo24q
|
||||
ilita.i2p,isxls447iuumsb35pq5r3di6xrxr2igugvshqwhi5hj5gvhwvqba
|
||||
infocon.i2p,ic7rentjh6ilzz6p5kveiuyzov534ksfcexmpeniyallzf5in67a
|
||||
infoserver.i2p,jd3agbakybnhfvkeoxrx7t33iln6suzomv3kxkxf77j7rkonch6q
|
||||
infox.i2p,qoz4bwrtnicqyxemrxubdc65uojrqn2iem6v55b6xmxzdmfzcvlq
|
||||
inr.i2p,joajgazyztfssty4w2on5oaqksz6tqoxbduy553y34mf4byv6gpq
|
||||
insecurities.i2p,4uggkxbumfoufekfu7scfx4vkqfoqslv4fsog7kgwjcat2yqzb2q
|
||||
intodns.i2p,4u6zxnqq4vxdtcxpogevmomrbny6taropyv4q25anflm47esiy6q
|
||||
irc.acetone.i2p,qyzbrdw26ejjdjzsrcmq5h3ggdzk6cq5xynrgee5t5q73gq545yq
|
||||
irc.coldhell.i2p,d4b3dcqt32yq55b6ct6f4rsib5svzgwkfz4klfczuz7e4p2v6rkq
|
||||
irc.crustyirc.i2p,4ygmttynho5k32vfm64urriqx2vj3s6hkm52jwv2vlwrynu4z6iq
|
||||
irc.echelon.i2p,ez2czsvej5p3z5bquue5q3thujcodfze7ptybctqhnqc7hms5uzq
|
||||
irc.ilita.i2p,5xeoyfvtddmo5k3kxzv7b3d5risil6333ntqrr3yvx3yubz5tk3a
|
||||
irc.nerds.i2p,nlqhsdd5a7hanjea33mwizg5ixh3xcv5dczufpf3qcfpo6tx4esa
|
||||
irc.postman.i2p,hhcy7zznltay2tzwdvtd37g2inptemz3hk5zmxyi57d3sxgxbseq
|
||||
irc.r4sas.i2p,hodhusp73gltozgrnianlbploon3rrvhrzfn5mf2g46o7aaau5la
|
||||
irc.rpi.i2p,ppqu4shst5hfjn6jgxyragcanyxurhmof7jdrxag5srpeobevh5q
|
||||
irc.shaderfence.i2p,noia2id7cyvnnoaiw7t4coa4dbuvlo4fr4z3ho62eozhlfnh4lna
|
||||
ircs.nerds.i2p,w4d6hj3q7eyfrkb3kcy7rox2fdjzywypvmyrudtf2q4gdzs2qlhq
|
||||
isitup.i2p,xk6ypey2az23vtdkitjxvanlshztmjs2ekd6sp77m4obszf6ocfq
|
||||
itphx.i2p,zwu2erk3wtyxlcbmd73kmxcirjghdkk4lpupy3xcavpm3qbob4da
|
||||
ivorytower.i2p,fpwrfvidfexsz7dspofkwtkmmizm7lyralfz5kvykffk7gubvxsq
|
||||
j6.i2p,heh6666m6vl4oj4kyirz3ghg2pnlycpiluvdms7pdxns6gbpolza
|
||||
javadoc.skank.i2p,us3amyq3emvm6rcxmrar3o3uoiifnafijgseho4dxdsjgonfyaxq
|
||||
javascript.i2p,idxpwvskkaq3pssrnqpxmiilgeqwf7d2hf5xpusossqz6r2nudva
|
||||
jbo.varikvalefor.i2p,3flbkdhahkgq47s7vytubh3v4vk3lyqgwwh6dd2k5szqlrivdmta
|
||||
jimkiebs.i2p,epqxjestvatyv2ala7iqbm45elnecqecz2zmpoklzvekwjapu45q
|
||||
k1773r.i2p,zam7u6vslhemddz347uusuzjdk5wma4h5hcmcqlng4ybbpdbjhnq
|
||||
karamba.i2p,g2lizyuyzms7m6gv24pzege5zapbinxfd2dzbaha6k246pl2xu3q
|
||||
kelvinchan.i2p,6s72dyf6jwlvk2u455lksvcs5r7deafc3iniwo5kp4ssm777noma
|
||||
keys.dlms.i2p,znl2swe5pez65qxrr2s2s4lmdfky6mnppvh3p5j6suuiovymhjtq
|
||||
kibykarni.i2p,xowcvzbeq72slpbrwmjl3zy6xkrkb2ncctpkkskeqts63vedtg7a
|
||||
kill-9.i2p,3i3bbs2zfabyleqxcqueeegakutrtk3hbxmvbtkrgwvetlmity4q
|
||||
kislitsa.i2p,khceo3smaxtng2tnuicmcbhdnkk2j6myi4nkigcux76qh3aabdhq
|
||||
kkk.i2p,kukluxklanib666d73z5fyeyb6vnystmvvreaodhjf73rhl4wxva
|
||||
knijka.i2p,knjkodsakcxihwk5w5new76hibywia5zqcgoqgjttzsausnd22oa
|
||||
kohlchan.i2p,kohlchanvn6vtsujobyw4pt5naaszmxqutd5hsdatmxfe2qaqhya
|
||||
korol4ik.i2p,mr3z5lggdppc3yw2r2egstpg33ga2wfocmozac6kjmhhfk3asm2q
|
||||
krebsonsecurity.i2p,xqglpgrpbdqeirurobtqel3xqt3p277iiadpz256bzxmtlbyq6ea
|
||||
kuchka.i2p,nzmvfaztssds5yaatmmnk2jdghfxizvr6lctmljvxqehnwsfsubq
|
||||
kycklingar.i2p,gctswdhp4447yibxfbqg3uq2bvx63qjeqnaoaux75zw73leakyva
|
||||
lbt.i2p,5uhjsgyca6ggdvwjjwf67bcmalpbxitopupjpygtahxvkwlh5mzq
|
||||
ledechaine.i2p,7s4vtwkvxvmigj3r4zrc7s5ajdeqtris4qnj3n35cuuvuzkpgqsq
|
||||
legalcases.i2p,tms2ibdkp67ddj5ez6l4zwvw33jdpz5tmavv3kpjdcpavfh7np4q
|
||||
legwork.i2p,cuss2sgthm5wfipnnztrjdvtaczb22hnmr2ohnaqqqz3jf6ubf3a
|
||||
lenczewski.i2p,7uypwo47x4vnryoz25vwisu5jpyhz7pcdvnfzvopww3wxc7wiiia
|
||||
letsdecentralize.i2p,mqtlargpv4247iylywxw6ibi6qpz6my5duqm33c4lcdhjg5yfh7q
|
||||
libreddit.i2p,libr7vbp7i3lsvqwy5aqgql44uxaufawi5yrloh3x7sezubsoaba
|
||||
limak.i2p,jzoxeuuqt6wo55pvt4uh7o5i47oyadrvhyjli4hidqldhihu6lna
|
||||
linuxfarm.i2p,br3njhezhzx7mcv25nrxkrwu5g553xp4oyavsjhfa7jwmzyp3q5q
|
||||
lkml.i2p,xnytorawa5vfykram2qnqks5zaef7s4ckvaayvq4ksih46mq3luq
|
||||
lnxcloud.i2p,wryxsgqp3xl7fuohijmxlugrndtp2vixqlt2obpgriwt3fpdjn6q
|
||||
lockdown.bnet.i2p,vgbvuawi5y7rh32xxjlqcmsoh6quigdvypqneoidiy7y7x7r2umq
|
||||
lockdown.i2p,vgbvuawi5y7rh32xxjlqcmsoh6quigdvypqneoidiy7y7x7r2umq
|
||||
lodikon.i2p,u3f67staiwhqxpacya3clmvurdwd2kp7qcthzhstqnhrmlwc2g4a
|
||||
lolicat.i2p,2mvlbpgzlawdxqv3zlcgcje475kv35ow2itpztjpdqegbtjpvbda
|
||||
lolicatgirls.i2p,pjhlh4h7zn3slglx46ffob5ifcccrcqr5dzbyyueh3wd6a6bizra
|
||||
longseason.i2p,ighnngssgd6p4kyrec6m556rasvbtx5xe7bsyxol4lie2dibi4da
|
||||
lucas.i2p,hcb6j5indzeqfyerq4igx45xgruijbs433mh22ye4osoxkxhumwq
|
||||
lunach.i2p,m27cpx55hqhcfjz4u62tiynjtzqdw4s3kanxdgluuthnndiquoeq
|
||||
madaidans-insecurities.i2p,4uggkxbumfoufekfu7scfx4vkqfoqslv4fsog7kgwjcat2yqzb2q
|
||||
mail.i2p,mail4okikc3tknhn2tfyqzq7mxgzltqg2tw5v5frtzkcsm45zdra
|
||||
major.acetone.i2p,majorivqe4wud5ksadgfycdkgqsesqbbnw4hpgcqfixy4sm77f4q
|
||||
major.i2p,majorwsiehucyqfqbw3g2on3xqq2pwrwdd6hhyludqqr6ct7xdoa
|
||||
mapwiki.i2p,p2lufcvbzq3smirs7ijwds3y34cxzchveogb4jflbpmk5pzy3wqa
|
||||
marenostrum.i2p,tlrae2xdtewfb262daw6ygm5nz5vusc7rbiefpndubjk4jvh5roq
|
||||
masflam.i2p,ucvzbekxpbzfizwndx4bgsj5bjbygdu4vc3xukiseiw5bvatxivq
|
||||
matrix.i2p,pbm6jogo2u2rflvzishwgqkxo6lkjsdfesd3r4k6sf4gdewc4lha
|
||||
mattermost.i2p,x5oovnhnuli5fnwtgkbd5z5jvrvdvprqyuofywx6uoxkk4bie6ya
|
||||
mayvaneday.i2p,zli2qsg54w7y42vgw4xxlnj4nktcpg7xp33yjxkp33sjafvznbwa
|
||||
maza.i2p,wiigkmy5je5ox4byjt7z7fh4btojbixbmfv4chnzqoovmgnvdpoa
|
||||
mdleom.i2p,ggucqf2jmtfxcw7us5sts3x7u2qljseocfzlhzebfpihkyvhcqfa
|
||||
mdn.i2p,u6i4kmhypgs4ccd4hae3rstcayvwl45wufeglwvcmha7jqqdtfna
|
||||
meeh.i2p,4oes3rlgrpbkmzv4lqcfili23h3cvpwslqcfjlk6vvguxyggspwa
|
||||
metacritic.i2p,n6tja4pkj7nrybakfqji6mvqshcvsufbzvwvp4iqrgspud3aodiq
|
||||
metager.i2p,4zdcetlcp3tdg5h23gd3aeyzbvodepid7a6mb3w4qvxkdnm2by6q
|
||||
metrics.i2p,z45ieamhex2ihqv7oowk5fz4qq47rbvxhhhbaaiinpajbhuevtpq
|
||||
mhatta.i2p,o4rsxdeepfrnncsnjq675xogp5v5qkbfgbt6ooqeyfvlifobrjxq
|
||||
minecraft.reloaded.i2p,qs5ihihltxhhfi6wesihgbvoaurqxgdpxgmwnmsk5d5beabtvmvq
|
||||
minecraftlog.i2p,vu2v5xnfk4ivrcmjx4fvofzts7fj47jcq23zfpg6ajj6p3ytt3hq
|
||||
mk16de.bandura.i2p,rrllz7nkoeaydqzc5tqdexbfpkvensi26nqg3ly3cxrm5qt6m5sq
|
||||
moneroauth.i2p,kt6uh4z24tendrol5zbm4wv4apq4nbv4w7k5vcguvbpg3alrqyxa
|
||||
moneroexplorer.i2p,je4vbduigce7pgjivvo26d4abn3u5mfsos5zemp3a75xzcv7nm4q
|
||||
monerujo.i2p,puri6y5dtwh6zr4u77ep6ozatun6iz7v4wai2dzxppz7654corlq
|
||||
mooks.i2p,6txhjmnxnrjku4cmdwtyacjzhwythc7l5euqaxieyrc4vjotqwzq
|
||||
mosfet.i2p,s5ynkgagndmpxpf2kmnenv4x72io664gzd2x3qef54ilammnte3q
|
||||
mozdev.i2p,u6i4kmhypgs4ccd4hae3rstcayvwl45wufeglwvcmha7jqqdtfna
|
||||
mtn.i2p-projekt.i2p,f52x5fp6uhq53f5zle5d6rq5un34xgmxgazvilvmzcby37xcmsfa
|
||||
mtproxy.ilita.i2p,vxxfipsygx6jpz57pmb3d3mjgsk5ls2idxeo2bffs3yp62muyq7q
|
||||
mumble.acetone.i2p,plpu63ftpi5wdr42ew7thndoyaclrjqmcmngu2az4tahfqtfjoxa
|
||||
muwire.i2p,c3r6by4k4kzbx7yvq36u5rieuymshuq2pebo3dzs6oovpzn52uoa
|
||||
nekit.i2p,axis6zcqacv7le2ms5xqaerecuk3jyrijifrstvxl3or5g5n4ova
|
||||
nekofiles.i2p,rutorktnoonk3t4sxmv6g5rj6mzsilfwxcplvfybemssjrva663q
|
||||
nerds.i2p,5wpwlbka4wj74rrnwbieopppgtivbqxljznl3bs542mxtvjz7ffq
|
||||
netbsd.i2p,jjz5ajknu5rku4p6xb6i5xwjnp3nd6c3jwi2qnzbpaodyf7g2lja
|
||||
news-i2pn.i2p,wwcqkwfo5yhe6uribv5tzylk25j5hkdk6gdnyftzd3k7dawlzwca
|
||||
newsnow.i2p,ee2w4j3tpn4t6gutk55tc4hajc65f63kc7m7dscalsma6wbmweia
|
||||
nexus.i2p,6uz2ihv4avlfhui5eyrisw7yx2t5mclxyl6blwjgw7zc5q4j3isa
|
||||
nitter.skank.i2p,l2aoqvwkq2prrv53cbk4k2ilxw5s2fc7eo2rjunnixp2hrv3iwda
|
||||
nntp.txtcon.i2p,nntpsqgdoky2fuctc2hc6vuls2b4okxpkocic2eo66uup3dtaq7q
|
||||
norml.i2p,rbnyo7zao6rkibzqr5uqy2iloismxzpqlgcolhvlsutoai5okdnq
|
||||
notbob.i2p,nytzrhrjjfsutowojvxi7hphesskpqqr65wpistz6wa7cpajhp7a
|
||||
notochina.i2p,h3xsjhfyf4wah4sou3gepzibetdntrmiax3zl3x7ozyjv5krakaa
|
||||
novabbs.i2p,bicoankyijabtj2nlwzjmr4mamybr6bgc6xclpvsgzaaalzhhola
|
||||
nsa.i2p,nsetvbclpomqxfcit4mghn6z7vdhnza6jdzczby4crnto32uykga
|
||||
nullchan.i2p,nullz2mkp7znirlcersxpk7qmkmgcc6u3yhe462p2qkpxsdb3mja
|
||||
nvspc.i2p,anlncoi2fzbsadbujidqmtji7hshfw3nrkqvbgdleepbxx3d5xra
|
||||
obmen.i2p,vodkv54jaetjw7q2t2iethc4cbi4gjdrmw2ovfmr43mcybt7ekxa
|
||||
ol.i2p,bnb46culzbssz6aipcjkuytanflz6dtndyhmlaxn3pfiv6zqrohq
|
||||
omitracker.i2p,a5ruhsktpdhfk5w46i6yf6oqovgdlyzty7ku6t5yrrpf4qedznjq
|
||||
openbsd.i2p,ahwlj76krc5do77pibighi2frqmfccpezyiqfmiernvivwomgvuq
|
||||
opentracker.dg2.i2p,w7tpbzncbcocrqtwwm3nezhnnsw4ozadvi2hmvzdhrqzfxfum7wa
|
||||
opentracker.r4sas.i2p,punzipidirfqspstvzpj6gb4tkuykqp6quurj6e23bgxcxhdoe7q
|
||||
opentracker.skank.i2p,by7luzwhx733fhc5ug2o75dcaunblq2ztlshzd7qvptaoa73nqua
|
||||
outproxy-tor.meeh.i2p,77igjr2pbg73ox5ngqy5ohzvrnur3ezqcogtl4vpuqtrcl3irsqq
|
||||
outproxy.bandura.i2p,smaie7bxvpy53iiabfxkhmsjtqs7vzjcr5xxsysjbbobunwrav2q
|
||||
outproxy.purokishi.i2p,nieasaidj7wy5nammqf4f7zzcdafi4apygwn5qwscpn4pq34hqia
|
||||
p2p-node.i2p,e7uvwnpkzbn5zdwr76ujlhym4lk5pfkqhvfwivt3mszx7l4lpj7q
|
||||
packages.i2p,2gbnylztt42dgpjh5r5tmy6oxm5xag6qv4femnbbqbpza4l2l6ja
|
||||
pagwin.i2p,qggplwxvsvctsdzgld2shfyjlokfoxur3pkfapygs26i4hwawfga
|
||||
panzerradio.i2p,rawdhtmxzynf5mhrpyhnbjqqxswidr6gvvcbbt4hbpjuv5jebw7q
|
||||
password.i2p,knmjkeabbhudejkikbzhhjqsb4r77o45vkdhve6d254quttfx3wa
|
||||
paste.r4sas.i2p,csen43keji3qiw6uobsgzysxyjd225g6446ylq5uuz6ur2glkzaa
|
||||
pharos.i2p,vathk2pyvaskeie63yyg4tshjkx5xt6zfvhwhgr3de67q46ob3sa
|
||||
pharoz.i2p,vathk2pyvaskeie63yyg4tshjkx5xt6zfvhwhgr3de67q46ob3sa
|
||||
photosarchive.bentasker.i2p,w4lnfcg2chbkwigogba7q3o5pgtq2baip7z3z4afaj65axhyc5ca
|
||||
phreeroma.i2p,44fu2fhq6q36re2xqnkuievdfsroi5xchgbowkqib6ekak3ynm6q
|
||||
pipe.viniciorl.i2p,waslgepj4zi7vzxaion467djzkrqwdhujkfzoaoxletrkkhdpqra
|
||||
piradio.i2p,m2tsjo2sxabwimkeffsy2mlvtyebnzs6qndm5zpuw6mpwlja2ewa
|
||||
pizda666.i2p,bczoowsc6ik7a4mya45qnlq5n6c6llpd5ni3u67r4r4drgohyira
|
||||
pizdabol.i2p,5vik2232yfwyltuwzq7ht2yocla46q76ioacin2bfofgy63hz6wa
|
||||
planet.i2p,pztcztaklof7s4me2vgtdddzesnunvk55zke6oz5e77ci3qk64yq
|
||||
play-it.i2p,oxt7gdu663baue7lugdmgxqkmtrfdy2izluneqdrpv4pfslxjlta
|
||||
pocketlint.i2p,pocketzsq4r4fef2bw57sn4paufjh5dw75azu5sr4hk2qwdvucsa
|
||||
podger.i2p,56pcmc4rxmtzs6ojvszpiqmh47et3m6amh7kfszp4wbvz2jbpnya
|
||||
polistern.i2p,ztqi2zewgtifrg4efs6eyxxi5www27ymley3aiz4obhulbnszlva
|
||||
pomoyka.i2p,omt56v4jxa4hurbwk44vqbbcwn3eavuynyc24c25cy7grucjh24q
|
||||
pool.gostcoin.i2p,m4f4k3eeaj7otbc254ccj7d5hivguqgnohwelkibr4ddk43qhywa
|
||||
pop.postman.i2p,i7vd76psp3oyocljiqkoyz7fpr4fy2xq2asclf7qih6k57aj5xrq
|
||||
porest.i2p,46l7beij4rerlbuj7xmcngarlkhlpgaztywrleiwagjuiipcebbq
|
||||
pornography.i2p,ko7e4u7sw2miwi2q6oy643bad5ihmwedkjhcnwqoqh2xff6nrbwa
|
||||
priv.i2p,m2t27aqw3ts4mb4vxgfhhgstqk4gzyb6ac5fdnezmsf2xbbtdiiq
|
||||
privacy-handbuch.i2p,3cccw3cxxghkalgichofulid36ekwplv3stubvfot522mwxcnu5q
|
||||
privatebin.i2p,e7qy5kc7ivqtnrbdn5ymx5nmbdedlrjkdchqmmkhud4ockrime5a
|
||||
programmer.i2p,cm62ucwrvbxzznqhjtwwkma22kzxbxsfcs5w33eo7r2aartu4cdq
|
||||
programthink.i2p,programygfltn24q6foacm5gbuo3z2geub2k2k366llx3bph4ula
|
||||
project-future.i2p,ivqynpfwxzl746gxf376lxqvgktql2lqshzwnwjk2twut6xq7xta
|
||||
proof-of-loss.i2p,ofhehzoj5p4khpkookxb63tmqvrmcxaapgb3v3nm7kd5wjgebs4a
|
||||
prophetgram.i2p,cufuwm75gjpt3svl4wjmo6r4zjv6eqyjdpiuqfckgb5aqqdbgyvq
|
||||
psv.i2p,pmzcuml2oi2ok2h5i6cepcyxxjrughzgliai6hzspdlyt2bucy7a
|
||||
psy.i2p,s3elzoj3wo6v6wqu5ehd56vevpz2vrhhjc5m6mxoazicrl43y62q
|
||||
psychonaut.i2p,laf5nvzn4wz7ndgtdysmhvebpyjo3fkth7i4z4c2kp7su3wi6e2a
|
||||
psyco.i2p,eoilbrgyaiikxzdtmk2zeoalteupjrvcu3ui23p4wvfqo25bb73q
|
||||
pubsub.i2p,kse52thhz4srsf2ibw7zj6ua27df5a2u5gnqgf5jxwvranbw6mpa
|
||||
pull.git.repo.i2p,3so7htzxzz6h46qvjm3fbd735zl3lrblerlj2xxybhobublcv67q
|
||||
purokishi.i2p,ia55kcrvskaitnxegirubvderl4vhva6bwkiducbkma4scy2rhca
|
||||
purplechan.i2p,tyiwxpgs7syjvz3cha3uckaxgondtiktlsvriebyy4qmzgbaj3gq
|
||||
push.git.repo.i2p,jef4g5vxnqybm4zpouum3lzbl6ti6456q57nbyj5kfyldkempm3a
|
||||
pvsur.i2p,pvsurxi2hz2n45kfrj5b3ny6ko4ipj2u2piftjen44npkpnbwh6q
|
||||
qorg11.i2p,ivusryc5mfrroomm6s5no4badevf7djzlgzlwarce33no2bsyi3q
|
||||
quest.idk.i2p,k6stkvw3jr6of4j5g3pu34jowfpl4k4jiqih3yozhcvinkok56aa
|
||||
r4sas.i2p,2gafixvoztrndawkmhfxamci5lgd3urwnilxqmlo6ittu552cndq
|
||||
raccoondad.i2p,utoagugf3imr6mpjsithhnpvvvyehsnebisovn6kqn4vma6va3ca
|
||||
radio.arav.i2p,plkybcgxt4cdanot75cy3pbnqlbqcsrib2fmrpsnug4bqphqvfda
|
||||
radio.nerds.i2p,tpbfxyluryodtfxdpwsfvw7fl35p5ezrjk3tlcv2atlmc4fl2ctq
|
||||
radio.r4sas.i2p,cv72xsje5ihg6e24atitmhyk2cbml6eggi6b6fjfh2vgw62gdpla
|
||||
radioliberty.i2p,libertyx5gywnmn4snrr2fborvugmthl2x5vf3rh43v3744kmpwa
|
||||
radioplayer.i2p,5tmr7qghx5eecoyvi77rsy7fqxeoyqcdpvg5wasoitn6ywkyobbq
|
||||
raklet.i2p,j3vnnihngp3ti2trktoxlyblltjn6gxscbmasb5zun5pdndkxkoq
|
||||
ramble.i2p,smv3cryi3n7d5ll7xpvlhstubi5yj4dadeltyrdwdr4onwd2jvvq
|
||||
ransack.i2p,mqamk4cfykdvhw5kjez2gnvse56gmnqxn7vkvvbuor4k4j2lbbnq
|
||||
realsite.i2p,ffacpzudiclaqh6fkck7ungeacfoafvijduhmwvnmp6e4jridhta
|
||||
recipebook.bentasker.i2p,ajagzagm5uyc2oac32ycx42znnatejliqorbk3y66xt25guxnh2q
|
||||
reg.i2p,shx5vqsw7usdaunyzr2qmes2fq37oumybpudrd4jjj4e4vk4uusa
|
||||
reloaded.i2p,wxbh2yq5twqinsw3ztjogqovvdd6h6j5uxeg3lh53x4w7klzv3tq
|
||||
repo.i2p,uxe3lqueuuyklel23sf5h25zwgqgjwsofrqchhnptd5y6pedzbxa
|
||||
repo.i2pd.i2p,ymzx5zgt6qzdg6nhxnecdgbqjd34ery6mpqolnbyo5kcwxadnodq
|
||||
repo.r4sas.i2p,ymzx5zgt6qzdg6nhxnecdgbqjd34ery6mpqolnbyo5kcwxadnodq
|
||||
retrobbs.i2p,mnn77stihntxdoade3ca2vcf456w6vhhvdsfepdvq5qggikvprxq
|
||||
retrobbs2.i2p,ejff7jtyaus37slkwgeqrrcmyhpj26carp7n27f5h6s5vlbeiy6q
|
||||
rfocke.i2p,pphesm2icsbqi7uzsmxpgyy4kc22b3cdpb4uwplkkjmupexva7dq
|
||||
ricycal.i2p,tfkz7rgqh6rwvlo2veftw4why2dej3gztiglzfqfvykyzak2syxa
|
||||
rpi.i2p,56p5qxsrvo5ereibevetw2qbj5bronmos7wxunku27g2s4kpbnlq
|
||||
rslight.i2p,bitag46q3465nylvzuikfwjcj7ewi4gjkjtvuxhn73f6vsxffyiq
|
||||
rufurus.i2p,7msryymfdta3ssyz34qur6gi4jyfkvca5iyfmnceviipwu7g2wca
|
||||
rus.azathabar.i2p,6gp6ykan6ovr7p6dln56msvmdk6nrtvzoypz5dbhkkt4bdnryjna
|
||||
russia.i2p,yycwiaemebdnhbw4slrxxscgmaoaxeqsxpxt3wgukhtl2ood66qq
|
||||
rutor.i2p,rutorktnoonk3t4sxmv6g5rj6mzsilfwxcplvfybemssjrva663q
|
||||
ryona.i2p,mzt45ux3budteuxz2b4xkwnphgspgljuwp3rxm3d2yr2sij6wopq
|
||||
s01.nullchan.i2p,mirrooeo34iokdgf3wno4ubx6x6uj7f2pqyjmmrvtg4m4parvguq
|
||||
salama.i2p,4uoef63gv2sg6dtqmom5oypt6taypklekvlejfox56eiylprzrmq
|
||||
satoshivision.i2p,rn5c533w5baghskquu3gtqlehwjkstzzbk5chbc5qhivsz3a3nqq
|
||||
scamdemia.i2p,fdkiv7o4kzaikwkw6hbn7iedidp25lv6eo7yeyeqxai3jz7mrvzq
|
||||
scanner.linuxfarm.i2p,kojzsg33v2zxwqp3twpqzfvflaeoxgzxrl3douf2x7xv27ggfnaa
|
||||
sciencedaily.i2p,hxvbh56wdcyu766aueocw4hkzi3ptvrutc7bkxohcfthd2ufzd5a
|
||||
secret-site.i2p,p6hbhjgdv2e6gyydrqh2ztl6onxnyilmj4ts7d7aj3uqssr7vvfq
|
||||
securityinabox.i2p,np3agu3ekd3isrzqzvsw4llwlr3hg5xbw7n7a23n2zfvhhm4e7iq
|
||||
serien.i2p,3z5k3anbbk32thinvwcy4g5al7dmb75fagcm3zgh4rzrt3maphda
|
||||
seven.i2p,anqf44jmf7kby2qcvcx7gug6nuyansdu4msdbnp5kojom27rrm7a
|
||||
shaderfence.i2p,6zibmpckg6hwsr7s5yk7tjnmuy6wjmy7x3etmklrauu4oecslzua
|
||||
shadowforums.i2p,dq65yxqpp6gcyo53y53eqouijhy7ameqxkcjthkr7wpfusqppxma
|
||||
shadowwiki.i2p,63gxkfc4hlcbxrdoepw2i2hyxai5qkxmi636ag3y7sf5tq3imoya
|
||||
sharefile.i2p,o7jgnp7bubzdn7mxfqmghn3lzsjtpgkbnpjjsn6ddevqbchz3rta
|
||||
shoieq3.i2p,3fjk4nfk3mccch4hdreghnyijcvovsi3yucjz3qzj5sxngqk5j6q
|
||||
shota.i2p,75xxnc5hkeg7a3z5re4cpybbxt7te3p2krgrrgoka4hib2nr7k4q
|
||||
silkr0adrel0aded.i2p,rdqt2xxpsc5tzj7gjvcrpi7jea5gtbetgx7w2npobveg5teatdvq
|
||||
silkroadreloaded.i2p,hyn3mwmyeovcn2paujxur2eury2ufqpoahvbbqshfoggljn25tra
|
||||
simplytranslate.i2p,mmiyv57bfhgc7p4pipk7jjqv5meuz5rjijoviquplvhxl3v7aoba
|
||||
skank.i2p,qiii4iqrj3fwv4ucaji2oykcvsob75jviycv3ghw7dhzxg2kq53q
|
||||
slashdot.i2p,7bkq3jzbvqirehxfo3gejnkfnktnhmxdxyuunauur5ucu5sn3xtq
|
||||
smtp.postman.i2p,3nrunsrgeo6grhx6y6vsx7vibm5vabtockdbys3sqdmj6vha7k5q
|
||||
snippets.bentasker.i2p,vgduvgxudaceslvwlvtda6b4csobvczygcqpklm3yeuke2zgvcaa
|
||||
speed-test.i2p,7lk5mgyi2knhqjjwjeiiuwlrn2rs2s577e7jh7z5rmbe2s6qkjpq
|
||||
spoika.i2p,u7uyxhgikc5ifj73oz6yedpy5pvtynbqo3n7rk5qyy5h5yhz4wbq
|
||||
sportloto.i2p,sportloto4cqlq6uhzzvgsgd7rcsfu6mqtk7wp6zmzqwcpflbsdq
|
||||
srr.i2p,t6vdyn5sbtorn3bp6i7ndnv4lmxhk4qnqmyqlaxykdhcwatchlza
|
||||
ssh.b0nk.i2p,fsxdci6r4c52q4ftvdmddxwc45b73h3s2liyg6th3h7hzhjk4q5a
|
||||
stackoverflow.i2p,jswqxcghynwlgihwbugz53nl2wswcimeibqhktwdd2htb6xhyklq
|
||||
stats.i2p,kqypgjpjwrphnzebod5ev3ts2vtii6e5tntrg4rnfijqc7rypldq
|
||||
stormycloud.i2p,46f3kyl2cwd5tdalegvkaqjfnwbitzn5d2lq4o5kp6keoujdhlvq
|
||||
str4d.i2p,wrrwzdgsppwl2g2bdohhajz3dh45ui6u3y7yuop5ivvfzxtwnipa
|
||||
streams.darkrealm.i2p,ud3gcmvysjch4lbjr2khmhqpf7r2x5if4q43xkqdptl4k7lc4muq
|
||||
support.i2p,supportpwqa4cc7q43hb67tgd3dvntrwsy6725iufahm7kiluysq
|
||||
support.torproject.i2p,6r7j6jlbrxb35k32zktopvr3w3pidm2baymwol33hq7xmy2sqm3a
|
||||
syndie-project.i2p,xa63tpfoaqt3zru2ehxjjfbpadwj4ha6qsdvtcqtyr3b7hmt4iaq
|
||||
syndie.echelon.i2p,vwrl2qmcif722fdkn3ldxcgz76df5cq4qypbndzthxwgmykyewta
|
||||
t-ru.i2p,bkhuehxydyprxpd4372h4boyluardjogyuff5p5l3u7syguavz5a
|
||||
tahoeserve.i2p,yhs7tsjeznxdenmdho5gjmk755wtredfzipb5t272oi5otipfkoa
|
||||
tails.i2p,5d7sl23h4uer4czjdtlomkb6ykeiss6vqkxzausp6f6gmty2plaa
|
||||
takipsizad.i2p,ufkhvmacngokfufxinfkdvfmbpvwvog5vrjiavw5zv32jnekcxia
|
||||
talk.community.i2p,talkakxfa6ihzn2mbzar6q5chdtkpnjp633w3tarul2bb6tfmoua
|
||||
talks.i2p,v45dmrrbjg3ucrazgl3t2tktyjajo7gvfexhmbdos3pi5kfuocaa
|
||||
techmeme.i2p,pvwyqrf4pbxbsigcxpubvywvng52hjxzc5mook3pel2c4rv64mpa
|
||||
teddit.i2p,k62ptris7p72aborr4zoanee7xai6wguucveptwgxs5vbgt7qzpq
|
||||
telegram.i2p,i6jow7hymogz2s42xq62gqgej2zdm4xtnmpc6vjcwktdxpdoupja
|
||||
term99.linuxfarm.i2p,dg3mso5klqqgcngalxdh5yvkwv56ou7yotsqxw3twneojytiehra
|
||||
tesla.i2p,em2x6bwsbelqfvlgypcywwoov2rib7mvxiy775dmpfs76m4zcdtq
|
||||
testmk16de.bandura.i2p,gbdgvcv6wkwctls3tdx4ljmzo4zry3awrr37rkvrxcwg7jzjoyra
|
||||
testshark.i2p,u64ropzplqkncdmi4wcknqehjqudxb6elyut2k44ocvgx7ilpgia
|
||||
theloliguide.i2p,qzyogy3d7v6ccs5s3mm3rv5hzuaus7qsfwe6ojnmtsistnvskj7q
|
||||
theyosh.i2p,5m7ygxhcdyfa3kx3wfjbbunk4pjey7a5zr5lnfb3upgjbhanrita
|
||||
thornworld.i2p,vinz4ygmodxarocntyjlfwk2wjpvzndlf4hxss2w2t3fk52oplva
|
||||
threatpost.i2p,kokflo7ovzxujqinafmxibhk6ytvlmxmuvha3doaqhjkgt3fpe3a
|
||||
tinypng.i2p,ri72pybxxb4mm6rbesplhn4ijk5ooyv7gv7ogh3spulwzr2par5q
|
||||
tmpsend.i2p,r2al7m32cg2ypjcny627wkoiyanrasmorub2wqla3y6gn6rwzzvq
|
||||
tomasgl.i2p,tyiu7xok7hvzymxtgg62rjz7mvzr3bryq4i7ii7gudncogn2lpfa
|
||||
torch.i2p,vdpmmcq4ysca5rdczr5lqohjtaf5togdy5itoos54s6nn6xqox3a
|
||||
torproject.i2p,torprojaxvxevo4c5qvor3ywgasxkubs5ukazrpq3qcxed6lgbrq
|
||||
torque.i2p,hc3mefp6cq2btwmmjl76atgtftzswu774dyv4a3qkl34wn4g6vta
|
||||
tosios.idk.i2p,4mfy2ggcynt5xjkrdstwju2cqicayq7tg5bcb6o575wvab2div7a
|
||||
trac.i2p2.i2p,i43xzkihpdq34f2jlmtgiyyay5quafg5rebog7tk7xil2c6kbyoa
|
||||
tracker2.postman.i2p,6a4kxkg5wp33p25qqhgwl6sj4yh4xuf5b3p3qldwgclebchm3eea
|
||||
traditio.i2p,wkpjjloylf6jopu2itgpktr45t2xvpjijxilxd5tq4i7wkqgwhhq
|
||||
ts.i2p,nebcjgfx3f7q4wzihqmguwcdeopaf7f6wyk2dojw4bcuku472zxq
|
||||
tube.i2p,vipzc556nzjraiqsk5xwvyhz54fvtqt3vrepdarat3zsj4a6eypq
|
||||
tumbach.i2p,u6pciacxnpbsq7nwc3tgutywochfd6aysgayijr7jxzoysgxklvq
|
||||
tutorials.i2p,zy37tq6ynucp3ufoyeegswqjaeofmj57cpm5ecd7nbanh2h6f2ja
|
||||
tv.i2p,znccrkhtgz4wqceyofwsqdsraqhdtteqzrag53lgmp6rhkutuy6q
|
||||
txtcon.i2p,txtcons5lrayl7bq7zsk2mt24clocassid3kh2rvyd3rd2xeklpq
|
||||
udonya.i2p,xx6ojsbjzosszqzdxfuopkib6aslzjd6jhcde36qvvm7hzqbddyq
|
||||
ukrainews.i2p,2bocbwrmakg252kicblp5i42feao7qpcw3xppms2i5oevkgelpsa
|
||||
umbra.i2p,xunb4chkeo5xxpfkwrkaqb5etmqpp4ddgvcmy7qkvtxhk5ihck2q
|
||||
umbrella-corp.i2p,un2dk5c7zp5eeppownhi5hbdrjbrz5a2qajk3khj6y6tvu6w4lea
|
||||
unqueued.i2p,3gvn4kwd7z74jxc2sn4ucx52dpvpscxbzjluux3ul4t3eu5g64xq
|
||||
upload.arav.i2p,a5txjx3gjrnw6do4zr66wpwlayxt3dg7kb43wbr3fjp53mkfkbdq
|
||||
urbandictionary.i2p,qpaj4limo5zro64k75k3tsckt7a7rr3tvjorwczmu4ug2yd5kh7q
|
||||
vanity-eth.i2p,6djvwwd3mtozyqhpuyvcwqkje5fk3rbxqbgqgdlr32b6hvdqeq5a
|
||||
varikvalefor.i2p,yn7ovvjf4nhf7hhk6qqph7utcoce4f2j325rfeuyapw3emlqfqna
|
||||
viniciorl.i2p,h24ivgpff7i26dvbfs4chtj66t5oewvzbiwnby6mckp2lv2jc7dq
|
||||
vps.webhosting.i2p,kfqflh2y36jzp26vloaptqpgwtvw4qtz232wv53xxbggkydhpkaq
|
||||
w3schools.i2p,kmf6zikzfttexa3pxeumdqt73gmzb5ybkpk4hxstuzpbup22yqna
|
||||
walker.i2p,5vik2232yfwyltuwzq7ht2yocla46q76ioacin2bfofgy63hz6wa
|
||||
wbnet.i2p,2deeocx7jmrbmjxcpkxecw7yy2z7ybzwz5i6mg3ska3p3d2dx45q
|
||||
web.telegram.i2p,re6cgwg2yrkgaixlqvt5ufajbb3w42fsldlq7k5brpvnd5gp6x5a
|
||||
webhosting.i2p,hxqjbkpn5fxnmurlab6oluyqf3dd2xnxszeawn4ak2s4rpjnfheq
|
||||
webirc.coldhell.i2p,k2d6bius63w3g35j32dn66fssqwbnyvegx6w6pl5mdeojpp4rjba
|
||||
wiki.i2p-projekt.i2p,b2rpg7xtzwwfvtorfkrc3m7h222qbobnklra7g4oqhfjx64k2voa
|
||||
wiki.ilita.i2p,r233yskmowqe4od4he4b37wydr5fqzvj3z77v5fdei2etp2kg34a
|
||||
wikiless.i2p,x33lx4h6d7h6xs4eiqwhvaxn3ea5gn2ifmu3jobnvuvn4k4aej7a
|
||||
wikimirror.i2p,2bhh73qhuwjkznnnzjfgo4buo7xy5l4ubhzt3oh23adksscx6gmq
|
||||
wired.i2p,6ezm53j3so5rywhhaxup7bw2oryy3qp5nyeb5qc6k3duluiddxqq
|
||||
wizardryandsteamworks.i2p,ioujrf2uwqairs7l3vyvqp7n2pia3x3wg5w5qtcqvg32zezuezza
|
||||
wlm.i2p,nigg3rveztrkpzoimq4z46pvbtml27mfhadt7n5bvl3pzzyzefxa
|
||||
women.i2p,dlabtr4su5l23za2p3l2jczozfwoc72qzslozsyd6vb43yqp7jga
|
||||
wopen.i2p,xvedtnzz3kpwpir23zyr3exrhkrn3267harw7gcjvp25yceyokza
|
||||
worcester.i2p,5jtgpuzaabxyhahvbmokb3oeh2lwzpiiqlrg3w7kyyg63lzkwabq
|
||||
www.imule.i2p,657xcllunctawyjtar5kgh3wpt6z4l7ba6mmam5rf7hev5w2lsvq
|
||||
www.infoserver.i2p,fq7xhxkdcauhwn4loufcadiiy24zbei25elnup33a3gfrdzrtlyq
|
||||
xadmpp.i2p,jb67tnpn67i3pwcuf45rtwu7gq6nkrs72iznhnakpkdzb6dkgfmq
|
||||
xd.i2p,jynrjzdp5qajf2jsdif6bgpijuk72zmuiohq3o7omeksw4pdgejq
|
||||
xeha.i2p,oartgetziabrdemxctowp7bbeggc7ktmj7tr4qgk5y5jcz4prbtq
|
||||
xinku.i2p,xlsmgjin444ccqu7ff5taoov7hecasdyg53keatpbr2qrvgmzvuq
|
||||
xmpp.ilita.i2p,2dpg43zlfophx5jo4xeqc6cx3zm4x3tfdoinbfuzychf5lwn3dhq
|
||||
xmpp.pubsub.i2p,yxbp3sn2x5t6k7hcxsg4njmaxjomr2wvh4xeldxjlij3ms3sikgq
|
||||
xmpp.reloaded.i2p,hioylmlm3lf3qgp2ncmym3igx6eyytlwioeq2fip4cwpzjtyxfuq
|
||||
xmpp.rpi.i2p,3yv65pfwiwfuv4ciwtx34clqps6o2mc3vtyltcbqdkcki6untbca
|
||||
xmpp.xadmpp.i2p,s5ekktro7kk24gu67dgwi5xnhzhzjx6abujk44q4v56mmdnrv4lq
|
||||
xmpp2.reloaded.i2p,ufeplugqot5e22kottvejlw7yq24kynw5v5faulehc6n2zs62ura
|
||||
xmrnode.i2p,moneroti7lckp4hjrqckoq5cfi2apuyxia42sp5x7tkbzjfwqfiq
|
||||
xmrradio.i2p,olwxvhwaq422rcrlmvh6wgrdczyfyeag645du4cwncutqblkfmaq
|
||||
xn--80ahmijpip2p.i2p,assist2a3jsikp7ufmzpa56mlflhi5kmoack5dm6ua5x2hbgckua
|
||||
xsden.i2p,4dofwhzlkz3k3sedwzs2sx2fudq3jfvaygffc6kp6hsawmfmz6qa
|
||||
xx.i2p,a7hrmb4kbftyk4ovr2la6azi7vjfqwt2zlckos4svoaclqu52j6a
|
||||
yellowonion.i2p,7l4kgsyatdmntck22i27oui3llftjim33ydav7kdew6ewfqvjzfa
|
||||
yggdrasil.acetone.i2p,tlfhgwzn4v5nlm2or5uy4leqmjbl5bncgcopbqnmcr4hbk3zrvqq
|
||||
yggdrasil.i2p,7hhvvtephitji3ibz4vhbapj4rikoppd5324yttp6k35gkqgri3q
|
||||
yggnet.i2p,deyg5puthy6tc44j56ee2zxv3wu36vlmgxjyz2zoc63w66l5ksua
|
||||
yourdomain.i2p,witqoik7gjzywta5nss5m6dvialeciismabksrukcvpfdpe6aqha
|
||||
yt2mp3.i2p,7ai77u54gxta2ry326amfq4ugiqgcxd4r663nmxtswcwezyxsbzq
|
||||
zab.i2p,n4xen5sohufgjhv327ex4qra77f4tpqohlcyoa3atoboknzqazeq
|
||||
zerobin.i2p,3564erslxzaoucqasxsjerk4jz2xril7j2cbzd4p7flpb4ut67hq
|
||||
zeronet.i2p,fe6pk5sibhkr64veqxkfochdfptehyxrrbs3edwjs5ckjbjn4bna
|
||||
znc.str4d.i2p,ufkajv3stxpxlwgwwb2ae6oixdjircnbwog77qxpxv7nt67rpcxq
|
||||
zx.i2p,4ru5b25ixgz2wt2aqskbr2iflv42gt6ta6qet7rv4et5rh2kq6fq
|
||||
zzz.i2p,lhbd7ojcaiofbfku7ixh47qj537g572zmhdc4oilvugzxdpdghua
|
||||
|
@@ -0,0 +1,14 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICKDCCAc6gAwIBAgIUcPHZXtYSqGNRCD6z8gp79WUFtI0wCgYIKoZIzj0EAwIw
|
||||
gZMxCzAJBgNVBAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEPMA0GA1UEBwwGQXVzdGlu
|
||||
MRgwFgYDVQQKDA9TdG9ybXlDbG91ZCBJbmMxIzAhBgNVBAMMGnN0b3JteWNsb3Vk
|
||||
LmZhbWlseS5pMnAubmV0MSQwIgYJKoZIhvcNAQkBFhVhZG1pbkBzdG9ybXljbG91
|
||||
ZC5vcmcwHhcNMjIwMzE5MTU1MjU2WhcNMzIwMzE2MTU1MjU2WjCBkzELMAkGA1UE
|
||||
BhMCVVMxDjAMBgNVBAgMBVRleGFzMQ8wDQYDVQQHDAZBdXN0aW4xGDAWBgNVBAoM
|
||||
D1N0b3JteUNsb3VkIEluYzEjMCEGA1UEAwwac3Rvcm15Y2xvdWQuZmFtaWx5Lmky
|
||||
cC5uZXQxJDAiBgkqhkiG9w0BCQEWFWFkbWluQHN0b3JteWNsb3VkLm9yZzBZMBMG
|
||||
ByqGSM49AgEGCCqGSM49AwEHA0IABFUli0hvJEmowNjJVjbKEIWBJhqe973S4VdL
|
||||
cJuA5yY3dC4Y998abWEox7/Y1BhnBbpJuiodA341bXKkLMXQy/kwCgYIKoZIzj0E
|
||||
AwIDSAAwRQIgD12F/TfY3iV1/WDF7BSKgbD5g2MfELUIy1dtUlJQuJUCIQD69mZw
|
||||
V1Z9j2x0ZsuirS3i6AMfVyTDj0RFS3U1jeHzIQ==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
3ZUnv2ipo2fpr69NtuBnutK6gw==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,34 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
CCOJyu3XtyzFf+tAeixOnuQ=
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
bSl5VHgPXHNM8mcnndMAuzvl7jEK
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,34 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
2Q==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
zc+BrVZOdcYPqu9iLXyRQ9JwwA==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,34 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
LD8d2z2Lgg==
|
||||
-----END CERTIFICATE-----
|
||||
Regular → Executable
@@ -2,8 +2,9 @@
|
||||
## See https://i2pd.readthedocs.org/en/latest/configuration.html
|
||||
## for more options you can use in this file.
|
||||
|
||||
#log = file
|
||||
#logfile = ./i2pd.log
|
||||
# log = file
|
||||
# logfile = ./i2pd.log
|
||||
loglevel = none
|
||||
|
||||
ipv4 = true
|
||||
ipv6 = false
|
||||
@@ -20,9 +21,6 @@ name = I2Pd
|
||||
[reseed]
|
||||
verify = true
|
||||
|
||||
[addressbook]
|
||||
subscriptions = http://inr.i2p/export/alive-hosts.txt,http://identiguy.i2p/hosts.txt,http://stats.i2p/cgi-bin/newhosts.txt,http://i2p-projekt.i2p/hosts.txt
|
||||
|
||||
[http]
|
||||
enabled = true
|
||||
address = 127.0.0.1
|
||||
@@ -42,8 +40,3 @@ port = 4447
|
||||
enabled = true
|
||||
address = 127.0.0.1
|
||||
port = 7656
|
||||
|
||||
[ntcp2]
|
||||
enabled = true
|
||||
published = true
|
||||
#port =
|
||||
@@ -1,11 +1,3 @@
|
||||
#[IRC]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
#port = 6668
|
||||
#destination = irc.postman.i2p
|
||||
#destinationport = 6667
|
||||
#keys = irc-keys.dat
|
||||
|
||||
#[SMTP]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
@@ -22,12 +14,4 @@
|
||||
#destinationport = 110
|
||||
#keys = pop3-keys.dat
|
||||
|
||||
#[MTN]
|
||||
#type = client
|
||||
#address = 127.0.0.1
|
||||
#port = 8998
|
||||
#destination = mtn.i2p-projekt.i2p
|
||||
#destinationport = 4691
|
||||
#keys = mtn-keys.dat
|
||||
|
||||
# see more examples in /usr/share/doc/i2pd/configuration.md.gz
|
||||
@@ -0,0 +1,7 @@
|
||||
[IRC-ILITA]
|
||||
type = client
|
||||
address = 127.0.0.1
|
||||
port = 6669
|
||||
destination = irc.ilita.i2p
|
||||
destinationport = 6667
|
||||
keys = irc-keys.dat
|
||||
@@ -0,0 +1,7 @@
|
||||
[IRC-IRC2P]
|
||||
type = client
|
||||
address = 127.0.0.1
|
||||
port = 6668
|
||||
destination = irc.postman.i2p
|
||||
destinationport = 6667
|
||||
keys = irc-keys.dat
|
||||
@@ -0,0 +1,96 @@
|
||||
{
|
||||
"policies": {
|
||||
"AppUpdateURL": "http://127.0.0.1/",
|
||||
"CaptivePortal": false,
|
||||
"Certificates": {
|
||||
"ImportEnterpriseRoots": false
|
||||
},
|
||||
"DNSOverHTTPS": {
|
||||
"Enabled": false,
|
||||
"Locked": true
|
||||
},
|
||||
"DisableAppUpdate": true,
|
||||
"DisableFeedbackCommands": true,
|
||||
"DisableFirefoxAccounts": true,
|
||||
"DisableFirefoxScreenshots": true,
|
||||
"DisableFirefoxStudies": true,
|
||||
"DisablePasswordReveal": true,
|
||||
"DisablePocket": true,
|
||||
"DisableProfileImport": true,
|
||||
"DisableProfileRefresh": true,
|
||||
"DisableSafeMode": true,
|
||||
"DisableSetDesktopBackground": true,
|
||||
"DisableSystemAddonUpdate": true,
|
||||
"DisableTelemetry": true,
|
||||
"DontCheckDefaultBrowser": true,
|
||||
"ExtensionUpdate": false,
|
||||
"Extensions": {
|
||||
"Locked": [
|
||||
"73a6fe31-595d-460b-a920-fcc0f8843232"
|
||||
]
|
||||
},
|
||||
"FirefoxHome": {
|
||||
"Highlights": false,
|
||||
"Pocket": false,
|
||||
"Search": true,
|
||||
"Snippets": false,
|
||||
"TopSites": true
|
||||
},
|
||||
"FlashPlugin": {
|
||||
"Default": false
|
||||
},
|
||||
"NetworkPrediction": false,
|
||||
"NoDefaultBookmarks": true,
|
||||
"OfferToSaveLoginsDefault": false,
|
||||
"OverrideFirstRunPage": "http://i2pd.i2p/",
|
||||
"OverridePostUpdatePage": "",
|
||||
"Permissions": {
|
||||
"Camera": {
|
||||
"BlockNewRequests": true
|
||||
},
|
||||
"Location": {
|
||||
"BlockNewRequests": true
|
||||
},
|
||||
"Microphone": {
|
||||
"BlockNewRequests": true
|
||||
}
|
||||
},
|
||||
"PopupBlocking": {
|
||||
"Default": true
|
||||
},
|
||||
"Preferences": {
|
||||
"browser.cache.disk.enable": true,
|
||||
"browser.fixup.dns_first_for_single_words": false,
|
||||
"browser.search.update": false,
|
||||
"browser.tabs.warnOnClose": false,
|
||||
"browser.urlbar.suggest.bookmark": true,
|
||||
"browser.urlbar.suggest.history": true,
|
||||
"browser.urlbar.suggest.openpage": true,
|
||||
"datareporting.policy.dataSubmissionPolicyBypassNotification": true,
|
||||
"dom.disable_window_flip": true,
|
||||
"dom.disable_window_move_resize": true,
|
||||
"dom.event.contextmenu.enabled": false,
|
||||
"network.IDN_show_punycode": false,
|
||||
"network.dns.disableIPv6": true,
|
||||
"places.history.enabled": true,
|
||||
"privacy.file_unique_origin": true
|
||||
},
|
||||
"PromptForDownloadLocation": true,
|
||||
"Proxy": {
|
||||
"AutoLogin": true,
|
||||
"FTPProxy": "127.0.0.1:4444",
|
||||
"HTTPProxy": "127.0.0.1:4444",
|
||||
"Mode": "manual",
|
||||
"SOCKSVersion": 5,
|
||||
"SSLProxy": "127.0.0.1:4444",
|
||||
"UseHTTPProxyForAllProtocols": false,
|
||||
"UseProxyForDNS": true
|
||||
},
|
||||
"SearchBar": "unified",
|
||||
"SearchSuggestEnabled": false,
|
||||
"SupportMenu": {
|
||||
"Title": "Ilita IRC",
|
||||
"URL": "http://irc.r4sas.i2p/?nick=WebClient...&channels=dev%2Cen%2Cru&prompt=1&uio=OT10cnVlde"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,38 +6,46 @@
|
||||
* See full license text in LICENSE file at top of project tree
|
||||
*/
|
||||
|
||||
/* Do not edit this file.
|
||||
*
|
||||
* If you make changes to this file while the browser is running,
|
||||
* the changes will be overwritten when the browser exits.
|
||||
*
|
||||
* To make a manual change to preferences, you can visit the URL about:config
|
||||
* For more information, see http://www.mozilla.org/unix/customizing.html#prefs
|
||||
*/
|
||||
|
||||
lockPref("accessibility.force_disabled", 1);
|
||||
defaultPref("app.normandy.first_run", false);
|
||||
lockPref("app.normandy.enabled", false);
|
||||
lockPref("app.normandy.optoutstudies.enabled", false);
|
||||
lockPref("app.shield.optoutstudies.enabled", false);
|
||||
lockPref("app.update.auto", false);
|
||||
lockPref("app.update.BITS.enabled", false);
|
||||
lockPref("app.update.channel", "i2pdbrowser");
|
||||
lockPref("app.update.disable_button.showUpdateHistory", true);
|
||||
lockPref("app.update.enabled", false);
|
||||
lockPref("app.update.interval", 0);
|
||||
lockPref("app.update.service.enabled", false);
|
||||
lockPref("app.update.url", "");
|
||||
defaultPref("beacon.enabled", false);
|
||||
pref("breakpad.reportURL", "");
|
||||
pref("browser.aboutHomeSnippets.updateUrl", "");
|
||||
defaultPref("browser.aboutHomeSnippets.updateUrl", "");
|
||||
lockPref("browser.aboutwelcome.enabled", false);
|
||||
defaultPref("browser.cache.disk.capacity", 131072);
|
||||
defaultPref("browser.cache.offline.enable", false);
|
||||
defaultPref("browser.casting.enabled", false);
|
||||
lockPref("browser.contentblocking.database.enabled", false);
|
||||
lockPref("browser.contentblocking.report.lockwise.enabled", false);
|
||||
lockPref("browser.contentblocking.report.monitor.enabled", false);
|
||||
lockPref("browser.discovery.enabled", false);
|
||||
pref("browser.download.manager.retention", 0);
|
||||
defaultPref("browser.download.useDownloadDir", false);
|
||||
defaultPref("browser.feeds.showFirstRunUI", false);
|
||||
defaultPref("browser.fixup.alternate.enabled", false);
|
||||
defaultPref("browser.formfill.enable", false);
|
||||
defaultPref("browser.formfill.expire_days", 0);
|
||||
lockPref("browser.messaging-system.whatsNewPanel.enabled", false);
|
||||
lockPref("browser.newtabpage.activity-stream.feeds.asrouterfeed", false);
|
||||
lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false);
|
||||
lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false);
|
||||
lockPref("browser.newtabpage.activity-stream.default.sites", "http://i2pd.i2p/,http://333.i2p/,http://inr.i2p/,http://102chan.i2p/,http://flibusta.i2p/,http://fsoc.i2p/,http://lifebox.i2p/,http://onelon.i2p/,http://wiki.ilita.i2p/");
|
||||
lockPref("browser.newtabpage.activity-stream.discoverystream.enabled", false);
|
||||
lockPref("browser.newtabpage.activity-stream.feeds.section.highlights", false);
|
||||
lockPref("browser.newtabpage.activity-stream.feeds.snippets", false);
|
||||
defaultPref("browser.newtabpage.activity-stream.showSearch", true);
|
||||
lockPref("browser.newtabpage.activity-stream.showSponsored", false);
|
||||
lockPref("browser.newtabpage.activity-stream.telemetry", false);
|
||||
pref("browser.newtabpage.activity-stream.topSitesRows", 2);
|
||||
pref("browser.newtabpage.enhanced", false);
|
||||
@@ -49,6 +57,7 @@ defaultPref("browser.onboarding.tour.onboarding-tour-performance.completed", tru
|
||||
defaultPref("browser.onboarding.tour.onboarding-tour-private-browsing.completed", true);
|
||||
defaultPref("browser.onboarding.tour.onboarding-tour-screenshots.completed", true);
|
||||
defaultPref("browser.pagethumbnails.capturing_disabled", true);
|
||||
lockPref("browser.ping-centre.telemetry", false);
|
||||
defaultPref("browser.places.smartBookmarksVersion", -1);
|
||||
pref("browser.reader.detectedFirstArticle", false);
|
||||
pref("browser.rights.3.shown", true);
|
||||
@@ -79,24 +88,30 @@ defaultPref("browser.safebrowsing.updateURL", "");
|
||||
defaultPref("browser.safebrowsing.warning.infoURL", "");
|
||||
defaultPref("browser.search.countryCode", "US");
|
||||
defaultPref("browser.search.defaultenginename", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.defaultenginename.US", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.geoSpecificDefaults", false);
|
||||
defaultPref("browser.search.geoSpecificDefaults.url", "");
|
||||
defaultPref("browser.search.geoip.url", "");
|
||||
defaultPref("browser.search.hiddenOneOffs", "Amazon.com,Bing,DuckDuckGo,eBay,Google,Twitter,Wikipedia (en)");
|
||||
defaultPref("browser.search.official", false);
|
||||
defaultPref("browser.search.order.1", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.order.2", "");
|
||||
defaultPref("browser.search.order.3", "");
|
||||
defaultPref("browser.search.order.US.1", "YaCy 'legwork'");
|
||||
defaultPref("browser.search.order.US.2", "");
|
||||
defaultPref("browser.search.order.US.3", "");
|
||||
defaultPref("browser.search.redirectWindowsSearch", false);
|
||||
defaultPref("browser.search.region", "US");
|
||||
defaultPref("browser.search.searchEnginesURL", "");
|
||||
defaultPref("browser.search.suggest.enabled", false);
|
||||
defaultPref("browser.search.update", false);
|
||||
pref("browser.search.widget.inNavBar", true);
|
||||
lockPref("browser.send_pings", false);
|
||||
pref("browser.send_pings.require_same_host", true);
|
||||
defaultPref("browser.shell.checkDefaultBrowser", false);
|
||||
pref("browser.startup.homepage", "http://i2pd.i2p/");
|
||||
defaultPref("browser.startup.homepage_override.mstone", "ignore");
|
||||
defaultPref("browser.tabs.closeWindowWithLastTab", false);
|
||||
lockPref("browser.tabs.crashReporting.sendReport", false);
|
||||
defaultPref("browser.translation.engine", "");
|
||||
defaultPref("browser.uitour.enabled", false);
|
||||
defaultPref("browser.urlbar.formatting.enabled", false);
|
||||
defaultPref("browser.urlbar.maxRichResults", 12);
|
||||
@@ -125,6 +140,8 @@ pref("devtools.debugger.remote-enabled", false);
|
||||
pref("devtools.webide.autoinstallADBHelper", false);
|
||||
pref("devtools.webide.autoinstallFxdtAdapters", false);
|
||||
pref("devtools.webide.enabled", false);
|
||||
defaultPref("devtools.whatsnew.enabled", false);
|
||||
defaultPref("devtools.whatsnew.feature-enabled", false);
|
||||
pref("dom.allow_cut_copy", false);
|
||||
pref("dom.archivereader.enabled", false);
|
||||
pref("dom.battery.enabled", false);
|
||||
@@ -139,6 +156,7 @@ pref("dom.maxHardwareConcurrency", 2);
|
||||
pref("dom.mozTCPSocket.enabled", false);
|
||||
pref("dom.netinfo.enabled", false);
|
||||
pref("dom.network.enabled", false);
|
||||
defaultPref("dom.push.enabled", false);
|
||||
pref("dom.telephony.enabled", false);
|
||||
pref("dom.vibrator.enabled", false);
|
||||
pref("dom.vr.enabled", false);
|
||||
@@ -148,13 +166,17 @@ pref("dom.workers.enabled", false);
|
||||
pref("experiments.enabled", false);
|
||||
pref("experiments.manifest.uri", "");
|
||||
pref("experiments.supported", false);
|
||||
pref("extensions.abuseReport.enabled", false);
|
||||
pref("extensions.autoDisableScopes", 0);
|
||||
pref("extensions.blocklist.enabled", false);
|
||||
pref("extensions.blocklist.url", "");
|
||||
pref("extensions.getAddons.cache.enabled", false);
|
||||
defaultPref("extensions.getAddons.cache.enabled", false);
|
||||
pref("extensions.lazarus.showDonateNotification", false);
|
||||
lockPref("extensions.pocket.enabled", false);
|
||||
lockPref("extensions.screenshots.upload-disabled", true);
|
||||
pref("extensions.shownSelectionUI", true);
|
||||
defaultPref("extensions.systemAddon.update.enabled", false);
|
||||
defaultPref("extensions.systemAddon.update.url", "");
|
||||
pref("extensions.ui.lastCategory", "addons://list/extension");
|
||||
pref("extensions.update.autoUpdateDefault", false);
|
||||
defaultPref("extensions.update.enabled", false);
|
||||
@@ -163,23 +185,26 @@ pref("full-screen-api.warning.timeout", 0);
|
||||
pref("general.buildID.override", "20100101");
|
||||
lockPref("general.platform.override", "Win32");
|
||||
lockPref("general.useragent.locale", "en-US");
|
||||
lockPref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0");
|
||||
lockPref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/78.0");
|
||||
pref("general.warnOnAboutConfig", false);
|
||||
defaultPref("geo.enabled", false);
|
||||
lockPref("geo.wifi.logging.enabled", false);
|
||||
defaultPref("geo.wifi.uri", "");
|
||||
lockPref("identity.fxaccounts.commands.enabled", false);
|
||||
lockPref("identity.fxaccounts.enabled", false);
|
||||
defaultPref("intl.locale.matchOS", true);
|
||||
pref("javascript.use_us_english_locale", true);
|
||||
pref("keyword.enabled", false);
|
||||
pref("lightweightThemes.update.enabled", false);
|
||||
pref("loop.logDomains", false);
|
||||
lockPref("marionette.enabled", false);
|
||||
defaultPref("media.eme.enabled", false);
|
||||
lockPref("media.getusermedia.audiocapture.enabled", false);
|
||||
lockPref("media.getusermedia.screensharing.enabled", false);
|
||||
pref("media.gmp-eme-adobe.enabled", false);
|
||||
pref("media.gmp-gmpopenh264.enabled", false);
|
||||
defaultPref("media.gmp-gmpopenh264.enabled", false);
|
||||
pref("media.gmp-gmpopenh264.provider.enabled", false);
|
||||
pref("media.gmp-manager.cert.checkAttributes", false);
|
||||
pref("media.gmp-manager.url", "");
|
||||
defaultPref("media.navigator.enabled", false);
|
||||
defaultPref("media.navigator.video.enabled", false);
|
||||
@@ -192,34 +217,25 @@ defaultPref("media.peerconnection.use_document_iceservers", false);
|
||||
defaultPref("media.video_stats.enabled", false);
|
||||
defaultPref("media.webspeech.recognition.enable", false);
|
||||
defaultPref("media.webspeech.synth.enabled", false);
|
||||
defaultPref("messaging-system.rsexperimentloader.enabled", false);
|
||||
defaultPref("network.IDN.whitelist.i2p", true);
|
||||
defaultPref("network.IDN_show_punycode", true);
|
||||
defaultPref("network.allow-experiments", false);
|
||||
lockPref("network.captive-portal-service.enabled", false);
|
||||
lockPref("network.connectivity-service.enabled", false);
|
||||
pref("network.cookie.prefsMigrated", true);
|
||||
defaultPref("network.dns.disableIPv6", true);
|
||||
defaultPref("network.dns.disablePrefetchFromHTTPS", true);
|
||||
defaultPref("network.dns.disableprefetch", true);
|
||||
pref("network.http.speculative-parallel-limit", 0);
|
||||
defaultPref("network.dns.disablePrefetch", true);
|
||||
defaultPref("network.http.speculative-parallel-limit", 0);
|
||||
defaultPref("network.jar.open-unsafe-types", false);
|
||||
pref("network.manage-offline-status", false);
|
||||
defaultPref("network.negotiate-auth.allow-insecure-ntlm-v1", false);
|
||||
defaultPref("network.notify.changed", false);
|
||||
pref("network.predictor.enabled", false);
|
||||
defaultPref("network.prefetch-next", false);
|
||||
pref("network.protocol-handler.expose-all", false);
|
||||
pref("network.protocol-handler.expose.about", true);
|
||||
pref("network.protocol-handler.expose.file", true);
|
||||
pref("network.protocol-handler.expose.ftp", true);
|
||||
pref("network.protocol-handler.expose.http", true);
|
||||
pref("network.protocol-handler.expose.https", true);
|
||||
pref("network.protocol-handler.expose.javascript", true);
|
||||
pref("network.protocol-handler.expose.moz-extension", true);
|
||||
pref("network.protocol-handler.external.about", false);
|
||||
pref("network.protocol-handler.external.file", false);
|
||||
pref("network.protocol-handler.external.ftp", false);
|
||||
pref("network.protocol-handler.external.http", false);
|
||||
pref("network.protocol-handler.external.https", false);
|
||||
pref("network.protocol-handler.external.javascript", false);
|
||||
pref("network.protocol-handler.external.moz-extension", false);
|
||||
pref("network.protocol-handler.expose-all", true);
|
||||
defaultPref("network.protocol-handler.external-default", false);
|
||||
defaultPref("network.protocol-handler.warn-external-default", true);
|
||||
defaultPref("network.proxy.ftp", "127.0.0.1");
|
||||
defaultPref("network.proxy.ftp_port", 4444);
|
||||
@@ -250,19 +266,23 @@ defaultPref("privacy.resistFingerprinting", true);
|
||||
pref("privacy.sanitize.timeSpan", 0);
|
||||
defaultPref("privacy.spoof_english", 2);
|
||||
defaultPref("privacy.trackingprotection.enabled", true);
|
||||
lockPref("privacy.userContext.enabled", true);
|
||||
//lockPref("privacy.userContext.enabled", true);
|
||||
defaultPref("reader.parse-on-load.enabled", false);
|
||||
defaultPref("reader.parse-on-load.force-enabled", false);
|
||||
defaultPref("security.insecure_field_warning.contextual.enabled", false);
|
||||
defaultPref("security.insecure_password.ui.enabled", false);
|
||||
defaultPref("security.ssl.errorReporting.enabled", false);
|
||||
defaultPref("security.OCSP.enabled", 0);
|
||||
defaultPref("services.blocklist.update_enabled", false);
|
||||
pref("services.settings.server", "");
|
||||
lockPref("services.sync.enabled", false);
|
||||
pref("services.sync.prefs.sync.browser.download.manager.scanWhenDone", false);
|
||||
pref("services.sync.prefs.sync.browser.safebrowsing.enabled", false);
|
||||
pref("services.sync.prefs.sync.browser.search.update", false);
|
||||
pref("services.sync.prefs.sync.extensions.update.enabled", false);
|
||||
pref("signon.autofillForms", false);
|
||||
defaultPref("signon.management.page.breach-alerts.enabled", false);
|
||||
defaultPref("signon.management.page.vulnerable-passwords.enabled", false);
|
||||
pref("signon.rememberSignons", false);
|
||||
defaultPref("startup.homepage_welcome_url", "http://i2pd.i2p/");
|
||||
pref("startup.homepage_welcome_url.additional", "about:blank");
|
||||
@@ -278,96 +298,3 @@ defaultPref("webgl.disable-fail-if-major-performance-caveat", true);
|
||||
defaultPref("webgl.disabled", true);
|
||||
defaultPref("webgl.enable-debug-renderer-info", false);
|
||||
defaultPref("webgl.min_capability_mode", true);
|
||||
|
||||
var config = {
|
||||
"cckVersion": "2.2.9",
|
||||
"name": "I2Pd Browser",
|
||||
"description": "Preconfigured for use with I2P browser",
|
||||
"version": "1.2.8",
|
||||
"homePage": "http://i2pd.i2p/",
|
||||
"welcomePage": "http://i2pd.i2p/",
|
||||
"titlemodifier": "I2Pd Browser",
|
||||
"extension": {
|
||||
"name": "I2Pd Browser"
|
||||
},
|
||||
"noWelcomePage": true,
|
||||
"noUpgradePage": true,
|
||||
"removeSetDesktopBackground": true,
|
||||
"removeSafeModeMenu": true,
|
||||
"noGetAddons": true,
|
||||
"noAddonCompatibilityCheck": true,
|
||||
"disableSearchEngineInstall": true,
|
||||
"removeDefaultSearchEngines": false,
|
||||
"displayBookmarksToolbar": true,
|
||||
"removeSmartBookmarks": true,
|
||||
"removeDefaultBookmarks": true,
|
||||
"removeDuplicateBookmarkNames": true,
|
||||
"dontCheckDefaultBrowser": true,
|
||||
"dontUseDownloadDir": true,
|
||||
"disableFormFill": true,
|
||||
"disableSync": true,
|
||||
"disableCrashReporter": true,
|
||||
"disableTelemetry": true,
|
||||
"disableFirefoxHealthReportUpload": true,
|
||||
"disableFirefoxHealthReport": true,
|
||||
"disableFirefoxUpdates": true,
|
||||
"removeSnippets": true,
|
||||
"disableResetFirefox": true,
|
||||
"disableWebApps": true,
|
||||
"disableHello": true,
|
||||
"disableSharePage": true,
|
||||
"disableForget": true,
|
||||
"disableHeartbeat": true,
|
||||
"disablePocket": true,
|
||||
"disableAboutSupport": true,
|
||||
"disableAboutProfiles": true,
|
||||
"showSearchBar": true,
|
||||
"autoconfig": {
|
||||
"disableProfileMigrator": true
|
||||
},
|
||||
"id": "i2pdbrowser",
|
||||
"hiddenUI": [
|
||||
"#defaultBrowserBox",
|
||||
"#enableSearchUpdate",
|
||||
"#dataCollectionCategory",
|
||||
"#dataCollectionGroup",
|
||||
".help-button",
|
||||
"#onboarding-overlay-button",
|
||||
".prefs-modal-inner-wrapper > section:nth-child(6)"
|
||||
],
|
||||
"searchplugins": {
|
||||
"YaCy 'legwork'": "http://legwork.i2p/opensearchdescription.xml"
|
||||
},
|
||||
"defaultSearchEngine": "YaCy 'legwork'",
|
||||
"certs": {
|
||||
"ca": [
|
||||
{
|
||||
"url": "resource://cck2_i2pdbrowser/certs/purplei2p_ca.pem",
|
||||
"trust": "CTc,CTc,CTc"
|
||||
}
|
||||
]
|
||||
}
|
||||
};
|
||||
|
||||
var io = Components.classes["@mozilla.org/network/io-service;1"]
|
||||
.getService(Components.interfaces.nsIIOService);
|
||||
var resource = io.getProtocolHandler("resource")
|
||||
.QueryInterface(Components.interfaces.nsIResProtocolHandler);
|
||||
|
||||
var greDir = Components.classes["@mozilla.org/file/directory_service;1"]
|
||||
.getService(Components.interfaces.nsIProperties)
|
||||
.get("GreD", Components.interfaces.nsIFile);
|
||||
var cck2ModuleDir = greDir.clone();
|
||||
cck2ModuleDir.append("cck2");
|
||||
cck2ModuleDir.append("modules");
|
||||
var cck2Alias = io.newFileURI(cck2ModuleDir);
|
||||
resource.setSubstitution("cck2", cck2Alias);
|
||||
|
||||
var configModuleDir = greDir.clone();
|
||||
configModuleDir.append("cck2");
|
||||
configModuleDir.append("resources");
|
||||
var configAlias = io.newFileURI(configModuleDir);
|
||||
resource.setSubstitution("cck2_i2pdbrowser", configAlias);
|
||||
|
||||
Components.utils.import("resource://cck2/CCK2.jsm");
|
||||
CCK2.init(config, "ä"[0], "ä");
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user