Compare commits
38 Commits
Author | SHA1 | Date | |
---|---|---|---|
51039cf32b | |||
7867e774a4 | |||
3766b4458b | |||
6ddbfdbc0b | |||
9ae6287f88 | |||
a4b5ede5cf | |||
9b79fb806b | |||
63a684ed14 | |||
e577eb9119 | |||
fcd50d49bb | |||
0e64f57f35 | |||
53628a907f | |||
93b5db908a | |||
625fc24c6b | |||
48ad48dcba | |||
c6f01c48df | |||
c92941df14 | |||
2cd46a1f6d | |||
ded9b0a7f9 | |||
812c63e5e8 | |||
31449cbabb | |||
7d4e53b82c | |||
fbd76aad9a | |||
128d0aa9f7 | |||
b1f7c68860 | |||
768f9e3b71 | |||
2aab7b230d | |||
c037c97e94 | |||
5c05c3ee0f | |||
20ec8dda68 | |||
0ec6a4a352 | |||
28b07aeba1 | |||
ddec443df4 | |||
a79b2a6a97 | |||
4c70d78401 | |||
72920869d7 | |||
d6ebf85efc | |||
9eacfaaaab |
17
CHANGES.html
17
CHANGES.html
@ -138,6 +138,23 @@
|
||||
<a id="returnhome" href="/">
|
||||
/
|
||||
</a>
|
||||
<h2>
|
||||
Sat, October 1
|
||||
</h2>
|
||||
<ul>
|
||||
<li>
|
||||
Work around anti-automation measures on OSX by writing final command out to shell script and running that
|
||||
</li>
|
||||
<li>
|
||||
Deterministically generate .zip files
|
||||
</li>
|
||||
<li>
|
||||
Add Tor Browser support to OSX
|
||||
</li>
|
||||
<li>
|
||||
Improve Tor Browser support on Linux
|
||||
</li>
|
||||
</ul>
|
||||
<h2>
|
||||
Sun, September 25
|
||||
</h2>
|
||||
|
@ -1,3 +1,11 @@
|
||||
Sat, October 1
|
||||
--------------
|
||||
|
||||
- Work around anti-automation measures on OSX by writing final command out to shell script and running that
|
||||
- Deterministically generate .zip files
|
||||
- Add Tor Browser support to OSX
|
||||
- Improve Tor Browser support on Linux
|
||||
|
||||
Sun, September 25
|
||||
-----------------
|
||||
|
||||
|
@ -184,9 +184,24 @@
|
||||
<li>
|
||||
java.io.File
|
||||
</li>
|
||||
<li>
|
||||
java.io.FileWriter
|
||||
</li>
|
||||
<li>
|
||||
java.io.IOException
|
||||
</li>
|
||||
<li>
|
||||
java.io.PrintWriter
|
||||
</li>
|
||||
<li>
|
||||
java.util.ArrayList
|
||||
</li>
|
||||
<li>
|
||||
java.util.Arrays
|
||||
</li>
|
||||
<li>
|
||||
java.util.stream.Stream
|
||||
</li>
|
||||
</ul>
|
||||
<br />
|
||||
</details>
|
||||
@ -228,7 +243,7 @@
|
||||
</h2>
|
||||
<h3>
|
||||
FIND_CHROMIUM_SEARCH_PATHS_UNIX
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L51">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L56">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -254,7 +269,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_CHROMIUM_SEARCH_PATHS_OSX
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L67">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L72">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -280,7 +295,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_CHROMIUM_SEARCH_PATHS_WINDOWS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L85">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L84">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -306,7 +321,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_ALL_CHROMIUM_SEARCH_PATHS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L122">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L121">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -332,7 +347,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_CHROMIUM_SEARCH_PATHS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L142">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L141">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -358,7 +373,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
NEARBY_CHROMIUM_SEARCH_PATHS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L156">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L155">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -384,7 +399,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
CHROMIUM_FINDER
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L210">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L209">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -410,7 +425,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
getOperatingSystem
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L222">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L221">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -436,7 +451,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
onlyValidChromiums
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L244">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L243">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -459,7 +474,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
topChromium
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L264">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L263">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -482,7 +497,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
topChromium
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L293">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L292">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -509,7 +524,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
defaultProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L311">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L310">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -532,7 +547,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
defaultProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L324">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L323">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -559,7 +574,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
privateProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L336">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L335">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -582,7 +597,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
privateProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L349">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L348">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -609,7 +624,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
appProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L371">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L370">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -632,7 +647,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
appProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L384">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L383">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -659,7 +674,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
processBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L431">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L430">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -686,7 +701,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launchAndDetatch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L522">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L549">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -715,7 +730,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launchAndDetatch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L529">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L556">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -744,7 +759,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L586">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L613">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -773,7 +788,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L592">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L619">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -802,7 +817,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L617">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L644">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -829,7 +844,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L626">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L653">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -852,7 +867,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
ValidURL
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L628">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L655">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -882,7 +897,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
main
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L638">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L665">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -912,7 +927,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
sleep
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L677">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PChromium.java#L704">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
|
@ -18,7 +18,12 @@ package: net.i2p.i2pfirefox
|
||||
</summary>
|
||||
<ul>
|
||||
<li>java.io.File</li>
|
||||
<li>java.io.FileWriter</li>
|
||||
<li>java.io.IOException</li>
|
||||
<li>java.io.PrintWriter</li>
|
||||
<li>java.util.ArrayList</li>
|
||||
<li>java.util.Arrays</li>
|
||||
<li>java.util.stream.Stream</li>
|
||||
</ul>
|
||||
</details>
|
||||
|
||||
@ -39,7 +44,7 @@ package: net.i2p.i2pfirefox
|
||||
|
||||
## Methods
|
||||
|
||||
### FIND_CHROMIUM_SEARCH_PATHS_UNIX [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L51)
|
||||
### FIND_CHROMIUM_SEARCH_PATHS_UNIX [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L56)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -49,7 +54,7 @@ package: net.i2p.i2pfirefox
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_CHROMIUM_SEARCH_PATHS_OSX [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L67)
|
||||
### FIND_CHROMIUM_SEARCH_PATHS_OSX [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L72)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -59,7 +64,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_CHROMIUM_SEARCH_PATHS_WINDOWS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L85)
|
||||
### FIND_CHROMIUM_SEARCH_PATHS_WINDOWS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L84)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -69,7 +74,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_ALL_CHROMIUM_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L122)
|
||||
### FIND_ALL_CHROMIUM_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L121)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -79,7 +84,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_CHROMIUM_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L142)
|
||||
### FIND_CHROMIUM_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L141)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -89,7 +94,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### NEARBY_CHROMIUM_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L156)
|
||||
### NEARBY_CHROMIUM_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L155)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -99,7 +104,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### CHROMIUM_FINDER [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L210)
|
||||
### CHROMIUM_FINDER [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L209)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -109,7 +114,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### getOperatingSystem [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L222)
|
||||
### getOperatingSystem [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L221)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -119,7 +124,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### onlyValidChromiums [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L244)
|
||||
### onlyValidChromiums [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L243)
|
||||
|
||||
+ Description: Check our list of chrome paths for a valid chrome binary. Just an existence check for now but should check versions in the future.
|
||||
+ Access: public
|
||||
@ -128,7 +133,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### topChromium [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L264)
|
||||
### topChromium [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L263)
|
||||
|
||||
+ Description: Return the best available Chromium from the list of Chromiums we have.
|
||||
+ Access: public
|
||||
@ -137,7 +142,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### topChromium [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L293)
|
||||
### topChromium [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L292)
|
||||
|
||||
+ Description: Return the best available Chromium from the list of Chromiums we have. if override is passed it will be validated and if it validates it will be used.
|
||||
+ Access: public
|
||||
@ -148,7 +153,7 @@ This method has no parameters.
|
||||
| overrideChromium | String | |
|
||||
|
||||
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L311)
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L310)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Chromium binary and the default profile.
|
||||
+ Access: public
|
||||
@ -157,7 +162,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L324)
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L323)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Chromium binary and the default profile. @args the arguments to pass to the Chromium binary
|
||||
+ Access: public
|
||||
@ -168,7 +173,7 @@ This method has no parameters.
|
||||
| args | String[] | |
|
||||
|
||||
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L336)
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L335)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Chromium binary and the default profile.
|
||||
+ Access: public
|
||||
@ -177,7 +182,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L349)
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L348)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Chromium binary and the default profile.
|
||||
+ Access: public
|
||||
@ -188,7 +193,7 @@ This method has no parameters.
|
||||
| args | String[] | the arguments to pass to the Chromium binary. |
|
||||
|
||||
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L371)
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L370)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Chromium binary and the default profile.
|
||||
+ Access: public
|
||||
@ -197,7 +202,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L384)
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L383)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Chromium binary and the default profile.
|
||||
+ Access: public
|
||||
@ -208,7 +213,7 @@ This method has no parameters.
|
||||
| args | String[] | the arguments to pass to the Chromium binary. |
|
||||
|
||||
|
||||
### processBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L431)
|
||||
### processBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L430)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Chromium binary and the default profile with a specific set of extended arguments.
|
||||
+ Access: public
|
||||
@ -219,7 +224,7 @@ This method has no parameters.
|
||||
| args | String[] | the extended arguments to pass to the Chromium binary. |
|
||||
|
||||
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L522)
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L549)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -231,7 +236,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L529)
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L556)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -243,7 +248,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L586)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L613)
|
||||
|
||||
+ Description: Populates a profile directory with a proxy configuration. Waits for an HTTP proxy on the port 4444 to be ready. Launches Chromium with the profile directory.
|
||||
+ Access: public
|
||||
@ -255,7 +260,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L592)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L619)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -267,7 +272,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L617)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L644)
|
||||
|
||||
+ Description: Populates a profile directory with a proxy configuration. Waits for an HTTP proxy on the port 4444 to be ready. Launches Chromium with the profile directory.
|
||||
+ Access: public
|
||||
@ -278,7 +283,7 @@ This method has no parameters.
|
||||
| privateWindow | boolean | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L626)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L653)
|
||||
|
||||
+ Description: Populates a profile directory with a proxy configuration. Waits for an HTTP proxy on the port 4444 to be ready. Launches Chromium with the profile directory.
|
||||
+ Access: public
|
||||
@ -287,7 +292,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### ValidURL [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L628)
|
||||
### ValidURL [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L655)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -299,7 +304,7 @@ This method has no parameters.
|
||||
| inUrl | String | |
|
||||
|
||||
|
||||
### main [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L638)
|
||||
### main [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L665)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -311,7 +316,7 @@ This method has no parameters.
|
||||
| args | String[] | |
|
||||
|
||||
|
||||
### sleep [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L677)
|
||||
### sleep [[src]](src/java/net/i2p/i2pfirefox/I2PChromium.java#L704)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
|
@ -283,7 +283,7 @@
|
||||
</h2>
|
||||
<h3>
|
||||
runtimeDirectory
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L131">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L153">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -315,7 +315,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
runtimeDirectory
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L148">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L170">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -345,7 +345,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
profileDirectory
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L196">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L218">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -379,7 +379,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
profileDir
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L208">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L230">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -413,7 +413,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
unpackProfile
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L218">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L240">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -444,7 +444,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
copyDirectory
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L264">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L286">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -480,7 +480,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
copyDirectoryCompatibityMode
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L280">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L302">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -516,7 +516,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
copyFile
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L289">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L311">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -548,7 +548,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
validateProfileFirstRun
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L300">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L322">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -578,7 +578,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
waitForProxy
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L326">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L348">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -601,7 +601,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
waitForProxy
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L336">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L358">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -628,7 +628,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
waitForProxy
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L348">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L370">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -657,7 +657,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
waitForProxy
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L363">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L385">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -688,7 +688,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
checkifPortIsOccupied
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L381">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L403">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -717,7 +717,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
setProxyTimeoutTime
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L396">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L418">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -742,6 +742,36 @@
|
||||
<br />
|
||||
| time | int | |
|
||||
</p>
|
||||
<h3>
|
||||
join
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L423">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
<ul>
|
||||
<li>
|
||||
Description:
|
||||
<br />
|
||||
</li>
|
||||
<li>
|
||||
Access: protected
|
||||
<br />
|
||||
</li>
|
||||
<li>
|
||||
Modifiers: static
|
||||
</li>
|
||||
<li>
|
||||
return: String
|
||||
<br />
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
| Name | Type | Description |
|
||||
<br />
|
||||
| —– | —– | —– |
|
||||
<br />
|
||||
| arr | String[] | |
|
||||
</p>
|
||||
<div id="sourcecode">
|
||||
<span id="sourcehead">
|
||||
<strong>
|
||||
|
@ -58,7 +58,7 @@ package: net.i2p.i2pfirefox
|
||||
|
||||
## Methods
|
||||
|
||||
### runtimeDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L131)
|
||||
### runtimeDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L153)
|
||||
|
||||
+ Description: get the runtime directory creating it if create=true
|
||||
+ Access: protected
|
||||
@ -71,7 +71,7 @@ package: net.i2p.i2pfirefox
|
||||
| override | String | |
|
||||
|
||||
|
||||
### runtimeDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L148)
|
||||
### runtimeDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L170)
|
||||
|
||||
+ Description: get the correct runtime directory
|
||||
+ Access: protected
|
||||
@ -83,7 +83,7 @@ package: net.i2p.i2pfirefox
|
||||
| override | String | |
|
||||
|
||||
|
||||
### profileDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L196)
|
||||
### profileDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L218)
|
||||
|
||||
+ Description: get the profile directory creating it if necessary
|
||||
+ Access: protected
|
||||
@ -97,7 +97,7 @@ package: net.i2p.i2pfirefox
|
||||
| app | boolean | |
|
||||
|
||||
|
||||
### profileDir [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L208)
|
||||
### profileDir [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L230)
|
||||
|
||||
+ Description:
|
||||
+ Access: protected
|
||||
@ -111,7 +111,7 @@ package: net.i2p.i2pfirefox
|
||||
| app | boolean | |
|
||||
|
||||
|
||||
### unpackProfile [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L218)
|
||||
### unpackProfile [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L240)
|
||||
|
||||
+ Description:
|
||||
+ Access: protected
|
||||
@ -124,7 +124,7 @@ package: net.i2p.i2pfirefox
|
||||
| base | String | |
|
||||
|
||||
|
||||
### copyDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L264)
|
||||
### copyDirectory [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L286)
|
||||
|
||||
+ Description:
|
||||
+ Access: protected
|
||||
@ -139,7 +139,7 @@ package: net.i2p.i2pfirefox
|
||||
| base | String | |
|
||||
|
||||
|
||||
### copyDirectoryCompatibityMode [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L280)
|
||||
### copyDirectoryCompatibityMode [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L302)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -154,7 +154,7 @@ package: net.i2p.i2pfirefox
|
||||
| base | String | |
|
||||
|
||||
|
||||
### copyFile [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L289)
|
||||
### copyFile [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L311)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -167,7 +167,7 @@ package: net.i2p.i2pfirefox
|
||||
| destinationFile | File | |
|
||||
|
||||
|
||||
### validateProfileFirstRun [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L300)
|
||||
### validateProfileFirstRun [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L322)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -179,7 +179,7 @@ package: net.i2p.i2pfirefox
|
||||
| profileDirectory | String | |
|
||||
|
||||
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L326)
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L348)
|
||||
|
||||
+ Description: Waits for an HTTP proxy on port 4444 to be ready. Returns false on timeout of 200 seconds.
|
||||
+ Access: public
|
||||
@ -188,7 +188,7 @@ package: net.i2p.i2pfirefox
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L336)
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L358)
|
||||
|
||||
+ Description: Waits for an HTTP proxy on port 4444 to be ready. Returns false on timeout of the specified number of seconds.
|
||||
+ Access: public
|
||||
@ -199,7 +199,7 @@ This method has no parameters.
|
||||
| timeout | int | the number of seconds to wait for the proxy to be ready. |
|
||||
|
||||
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L348)
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L370)
|
||||
|
||||
+ Description: Waits for an HTTP proxy on the specified port to be ready. Returns false on timeout of the specified number of seconds.
|
||||
+ Access: public
|
||||
@ -211,7 +211,7 @@ This method has no parameters.
|
||||
| port | int | the port to wait for the proxy to be ready on. |
|
||||
|
||||
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L363)
|
||||
### waitForProxy [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L385)
|
||||
|
||||
+ Description: Waits for an HTTP proxy on the specified port to be ready. Returns false on timeout of the specified number of seconds. If the timeout is zero or less the check is disabled and always returns true.
|
||||
+ Access: public
|
||||
@ -224,7 +224,7 @@ This method has no parameters.
|
||||
| host | String | the host to wait for the proxy to be ready on. |
|
||||
|
||||
|
||||
### checkifPortIsOccupied [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L381)
|
||||
### checkifPortIsOccupied [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L403)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -236,7 +236,7 @@ This method has no parameters.
|
||||
| host | String | |
|
||||
|
||||
|
||||
### setProxyTimeoutTime [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L396)
|
||||
### setProxyTimeoutTime [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L418)
|
||||
|
||||
+ Description: Alters the proxy timeout to customized value time in seconds. May be zero.
|
||||
+ Access: public
|
||||
@ -247,3 +247,15 @@ This method has no parameters.
|
||||
| time | int | |
|
||||
|
||||
|
||||
### join [[src]](src/java/net/i2p/i2pfirefox/I2PCommonBrowser.java#L423)
|
||||
|
||||
+ Description:
|
||||
+ Access: protected
|
||||
+ Modifiers: static
|
||||
+ return: String
|
||||
|
||||
| Name | Type | Description |
|
||||
| ----- | ----- | ----- |
|
||||
| arr | String[] | |
|
||||
|
||||
|
||||
|
@ -184,15 +184,27 @@
|
||||
<li>
|
||||
java.io.File
|
||||
</li>
|
||||
<li>
|
||||
java.io.FileWriter
|
||||
</li>
|
||||
<li>
|
||||
java.io.IOException
|
||||
</li>
|
||||
<li>
|
||||
java.io.PrintWriter
|
||||
</li>
|
||||
<li>
|
||||
java.util.ArrayList
|
||||
</li>
|
||||
<li>
|
||||
java.util.Arrays
|
||||
</li>
|
||||
<li>
|
||||
java.util.concurrent.TimeUnit
|
||||
</li>
|
||||
<li>
|
||||
java.util.stream.Stream
|
||||
</li>
|
||||
</ul>
|
||||
<br />
|
||||
</details>
|
||||
@ -250,7 +262,7 @@
|
||||
</h2>
|
||||
<h3>
|
||||
FIND_FIREFOX_SEARCH_PATHS_UNIX
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L44">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L48">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -276,7 +288,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_FIREFOX_SEARCH_PATHS_OSX
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L59">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L63">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -302,7 +314,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_FIREFOX_SEARCH_PATHS_WINDOWS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L76">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L81">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -328,7 +340,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_ALL_FIREFOX_SEARCH_PATHS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L112">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L117">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -354,7 +366,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIND_FIREFOX_SEARCH_PATHS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L132">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L137">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -380,7 +392,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
NEARBY_FIREFOX_SEARCH_PATHS
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L146">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L151">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -406,7 +418,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
FIREFOX_FINDER
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L202">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L235">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -432,7 +444,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
getOperatingSystem
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L214">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L247">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -458,7 +470,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
onlyValidFirefoxes
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L236">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L269">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -481,7 +493,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
topFirefox
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L256">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L289">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -504,7 +516,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
topFirefox
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L285">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L318">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -531,7 +543,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
defaultProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L303">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L336">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -554,7 +566,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
defaultProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L315">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L348">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -581,7 +593,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
privateProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L329">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L362">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -604,7 +616,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
privateProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L342">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L375">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -631,7 +643,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
appProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L365">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L398">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -654,7 +666,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
appProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L378">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L411">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -681,7 +693,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
headlessProcessBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L399">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L432">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -708,7 +720,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
processBuilder
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L427">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L460">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -737,7 +749,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
usabilityMode
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L453">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L518">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -760,7 +772,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launchAndDetatch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L459">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L524">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -789,7 +801,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launchAndDetatch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L465">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L530">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -818,7 +830,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L558">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L623">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -847,7 +859,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L564">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L629">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -876,7 +888,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L588">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L653">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -903,7 +915,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
launch
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L598">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L663">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -926,7 +938,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
ValidURL
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L600">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L665">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -956,7 +968,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
main
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L611">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L676">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
@ -986,7 +998,7 @@
|
||||
</p>
|
||||
<h3>
|
||||
sleep
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L648">
|
||||
<a href="src/java/net/i2p/i2pfirefox/I2PFirefox.java#L713">
|
||||
[src]
|
||||
</a>
|
||||
</h3>
|
||||
|
@ -18,9 +18,13 @@ package: net.i2p.i2pfirefox
|
||||
</summary>
|
||||
<ul>
|
||||
<li>java.io.File</li>
|
||||
<li>java.io.FileWriter</li>
|
||||
<li>java.io.IOException</li>
|
||||
<li>java.io.PrintWriter</li>
|
||||
<li>java.util.ArrayList</li>
|
||||
<li>java.util.Arrays</li>
|
||||
<li>java.util.concurrent.TimeUnit</li>
|
||||
<li>java.util.stream.Stream</li>
|
||||
</ul>
|
||||
</details>
|
||||
|
||||
@ -48,7 +52,7 @@ package: net.i2p.i2pfirefox
|
||||
|
||||
## Methods
|
||||
|
||||
### FIND_FIREFOX_SEARCH_PATHS_UNIX [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L44)
|
||||
### FIND_FIREFOX_SEARCH_PATHS_UNIX [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L48)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -58,7 +62,7 @@ package: net.i2p.i2pfirefox
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_FIREFOX_SEARCH_PATHS_OSX [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L59)
|
||||
### FIND_FIREFOX_SEARCH_PATHS_OSX [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L63)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -68,7 +72,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_FIREFOX_SEARCH_PATHS_WINDOWS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L76)
|
||||
### FIND_FIREFOX_SEARCH_PATHS_WINDOWS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L81)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -78,7 +82,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_ALL_FIREFOX_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L112)
|
||||
### FIND_ALL_FIREFOX_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L117)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -88,7 +92,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIND_FIREFOX_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L132)
|
||||
### FIND_FIREFOX_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L137)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -98,7 +102,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### NEARBY_FIREFOX_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L146)
|
||||
### NEARBY_FIREFOX_SEARCH_PATHS [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L151)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -108,7 +112,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### FIREFOX_FINDER [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L202)
|
||||
### FIREFOX_FINDER [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L235)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -118,7 +122,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### getOperatingSystem [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L214)
|
||||
### getOperatingSystem [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L247)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -128,7 +132,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### onlyValidFirefoxes [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L236)
|
||||
### onlyValidFirefoxes [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L269)
|
||||
|
||||
+ Description: Check our list of firefox paths for a valid firefox binary. Just an existence check for now but should check versions in the future.
|
||||
+ Access: public
|
||||
@ -137,7 +141,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### topFirefox [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L256)
|
||||
### topFirefox [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L289)
|
||||
|
||||
+ Description: Return the best available Firefox from the list of Firefoxes we have.
|
||||
+ Access: public
|
||||
@ -146,7 +150,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### topFirefox [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L285)
|
||||
### topFirefox [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L318)
|
||||
|
||||
+ Description: Return the best available Firefox from the list of Firefoxes we have. if override is passed it will be validated and if it validates it will be used.
|
||||
+ Access: public
|
||||
@ -157,7 +161,7 @@ This method has no parameters.
|
||||
| overrideFirefox | String | |
|
||||
|
||||
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L303)
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L336)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Firefox binary and the default profile.
|
||||
+ Access: public
|
||||
@ -166,7 +170,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L315)
|
||||
### defaultProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L348)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Firefox binary and the default profile.
|
||||
+ Access: public
|
||||
@ -177,7 +181,7 @@ This method has no parameters.
|
||||
| args | String[] | the args to pass to the Firefox binary |
|
||||
|
||||
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L329)
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L362)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Firefox binary and the default profile. Pass the --private-window flag to open a window.
|
||||
+ Access: public
|
||||
@ -186,7 +190,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L342)
|
||||
### privateProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L375)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Firefox binary and the default profile. Pass the --private-window flag to open a window.
|
||||
+ Access: public
|
||||
@ -197,7 +201,7 @@ This method has no parameters.
|
||||
| args | String[] | the arguments to pass to the Firefox binary |
|
||||
|
||||
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L365)
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L398)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Firefox binary and the default profile. Pass the --private-window flag to open a window.
|
||||
+ Access: public
|
||||
@ -206,7 +210,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L378)
|
||||
### appProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L411)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Firefox binary and the default profile. Pass the --private-window flag to open a window.
|
||||
+ Access: public
|
||||
@ -217,7 +221,7 @@ This method has no parameters.
|
||||
| args | String[] | the arguments to pass to the Firefox binary |
|
||||
|
||||
|
||||
### headlessProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L399)
|
||||
### headlessProcessBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L432)
|
||||
|
||||
+ Description: Build a ProcessBuilder for the top Firefox binary and the default profile. Pass the --headless flag to open without a window.
|
||||
+ Access: public
|
||||
@ -228,7 +232,7 @@ This method has no parameters.
|
||||
| args | String[] | the arguments to pass to the Firefox binary |
|
||||
|
||||
|
||||
### processBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L427)
|
||||
### processBuilder [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L460)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -240,7 +244,7 @@ This method has no parameters.
|
||||
| app | boolean | |
|
||||
|
||||
|
||||
### usabilityMode [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L453)
|
||||
### usabilityMode [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L518)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -249,7 +253,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L459)
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L524)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -261,7 +265,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L465)
|
||||
### launchAndDetatch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L530)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -273,7 +277,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L558)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L623)
|
||||
|
||||
+ Description: Populates a profile directory with a proxy configuration. Waits for an HTTP proxy on the port 4444 to be ready. Launches Firefox with the profile directory.
|
||||
+ Access: public
|
||||
@ -285,7 +289,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L564)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L629)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -297,7 +301,7 @@ This method has no parameters.
|
||||
| url | String[] | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L588)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L653)
|
||||
|
||||
+ Description: Populates a profile directory with a proxy configuration. Waits for an HTTP proxy on the port 4444 to be ready. Launches Firefox with the profile directory.
|
||||
+ Access: public
|
||||
@ -308,7 +312,7 @@ This method has no parameters.
|
||||
| privateWindow | boolean | |
|
||||
|
||||
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L598)
|
||||
### launch [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L663)
|
||||
|
||||
+ Description: Populates a profile directory with a proxy configuration. Waits for an HTTP proxy on the port 4444 to be ready. Launches Firefox with the profile directory. Uses a semi-permanent profile.
|
||||
+ Access: public
|
||||
@ -317,7 +321,7 @@ This method has no parameters.
|
||||
This method has no parameters.
|
||||
|
||||
|
||||
### ValidURL [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L600)
|
||||
### ValidURL [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L665)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
@ -329,7 +333,7 @@ This method has no parameters.
|
||||
| inUrl | String | |
|
||||
|
||||
|
||||
### main [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L611)
|
||||
### main [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L676)
|
||||
|
||||
+ Description:
|
||||
+ Access: public
|
||||
@ -341,7 +345,7 @@ This method has no parameters.
|
||||
| args | String[] | |
|
||||
|
||||
|
||||
### sleep [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L648)
|
||||
### sleep [[src]](src/java/net/i2p/i2pfirefox/I2PFirefox.java#L713)
|
||||
|
||||
+ Description:
|
||||
+ Access: private
|
||||
|
28
README.md
28
README.md
@ -44,7 +44,7 @@ directory for Firefox, and the `src/i2p.chromium.*.profile/extensions/*.js/*` di
|
||||
```sh
|
||||
|
||||
mkdir ~/tmp-i2pfirefox && cd ~/tmp-i2pfirefox
|
||||
wget https://github.com/eyedeekay/i2p.plugins.firefox/releases/download/1.0.0/i2pfirefox.zip
|
||||
wget https://github.com/eyedeekay/i2p.plugins.firefox/releases/download/1.0.1/i2pfirefox.zip
|
||||
unzip i2pfirefox.zip
|
||||
./i2pfirefox.cmd
|
||||
|
||||
@ -93,6 +93,25 @@ want to update the profiles, you don't need it.
|
||||
go install github.com/eyedeekay/amo-version@latest
|
||||
```
|
||||
|
||||
One last Go application, called `dzip` is used to generate zip files deterministically for
|
||||
redistribution.
|
||||
|
||||
```sh
|
||||
go install github.com/delicb/dzip@latest
|
||||
```
|
||||
|
||||
If you don't want to use it, you can work around it by creating a file called
|
||||
`dzip` in `/usr/local/bin/dzip` and adding the contents:
|
||||
|
||||
```sh
|
||||
#! /usr/bin/env sh
|
||||
zip -r $@
|
||||
```
|
||||
|
||||
This will break deterministic builds, but for testing it will continue to work. More elaborate
|
||||
scripts or other deterministic zip utilities can be easily substituted in by placing them
|
||||
in the `$PATH` under the name `dzip`.
|
||||
|
||||
For Fedora, use Yum, for Arch use pacman or something else but make sure to tell everyone
|
||||
about it. Once you have that installed, when building, make sure to add `$GOPATH/bin/`
|
||||
to your `$PATH`.
|
||||
@ -192,11 +211,16 @@ There is a little subtlety here though.
|
||||
resulting in a positive test for Chromium when launching the browser in auto-select
|
||||
mode. So Windows will never reach stage 3 unless expressly forced to. If Firefox or
|
||||
a variant is installed, it will be chosen before Edgium unless directed otherwise.
|
||||
- Even though it will launch you into Edgium if it has no other choice, I recommend
|
||||
you do not use it. Edgium will in a constant, incessant way try to induce you to
|
||||
share your behavior with Microsoft. If you try to resist this, it negatively affects
|
||||
the performance of the browser. Google also does this with Chrome, ant this negatively
|
||||
affects Chrome performance too, but less than with Edgium. TL:DR Edgium sucks and is
|
||||
pointless and terrible. Literally any other browser would be better.
|
||||
- Linux is unaware of a Tor Browser path because Tor Browser is rarely, if ever,
|
||||
installed on-path. What is on path is virtually always a wrapper for Tor Browser
|
||||
which is installed either as the main user or it's own user. Linux will only use
|
||||
Tor Browser if it's discovered in "Local" mode.
|
||||
- The above is also true of OSX for now but doesn't have to remain so.
|
||||
- I really only test Phase 3 with Dillo and Edgium. **YMMV.**
|
||||
|
||||
### Usability vs Strict
|
||||
|
@ -151,8 +151,8 @@ noscript
|
||||
11.4.11
|
||||
https://addons.mozilla.org/firefox/downloads/file/4002416/noscript-11.4.11.xpi
|
||||
localcdn-fork-of-decentraleyes
|
||||
2.6.35
|
||||
https://addons.mozilla.org/firefox/downloads/file/4003760/localcdn_fork_of_decentraleyes-2.6.35.xpi
|
||||
2.6.36
|
||||
https://addons.mozilla.org/firefox/downloads/file/4009967/localcdn_fork_of_decentraleyes-2.6.36.xpi
|
||||
https-everywhere
|
||||
2021.7.13
|
||||
https://addons.mozilla.org/firefox/downloads/file/3809748/https_everywhere-2021.7.13.xpi
|
||||
|
@ -12,8 +12,8 @@ noscript
|
||||
11.4.11
|
||||
https://addons.mozilla.org/firefox/downloads/file/4002416/noscript-11.4.11.xpi
|
||||
localcdn-fork-of-decentraleyes
|
||||
2.6.35
|
||||
https://addons.mozilla.org/firefox/downloads/file/4003760/localcdn_fork_of_decentraleyes-2.6.35.xpi
|
||||
2.6.36
|
||||
https://addons.mozilla.org/firefox/downloads/file/4009967/localcdn_fork_of_decentraleyes-2.6.36.xpi
|
||||
https-everywhere
|
||||
2021.7.13
|
||||
https://addons.mozilla.org/firefox/downloads/file/3809748/https_everywhere-2021.7.13.xpi
|
||||
|
24
build.xml
24
build.xml
@ -2,7 +2,7 @@
|
||||
<project basedir="." default="all" name="i2pfirefox">
|
||||
<property file="override.properties"/>
|
||||
|
||||
<target name="all" depends="clean,i2pFirefoxBaseProfileZip,i2pChromiumBaseProfileZip,plugin" />
|
||||
<target name="all" depends="clean,i2pFirefoxBaseProfileZip,i2pChromiumBaseProfileZip,jar" />
|
||||
|
||||
<target name="war" >
|
||||
<ant dir="src" target="build" />
|
||||
@ -177,8 +177,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
<arg value="-rf" />
|
||||
<arg value="i2p.firefox.base.profile.zip" />
|
||||
</exec>
|
||||
<exec executable="zip" failonerror="true" dir="src">
|
||||
<arg value="-r"/>
|
||||
<exec executable="dzip" failonerror="true" dir="src">
|
||||
<arg value="i2p.firefox.base.profile.zip"/>
|
||||
<arg value="i2p.firefox.base.profile"/>
|
||||
</exec>
|
||||
@ -189,8 +188,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
<arg value="-rf" />
|
||||
<arg value="i2p.firefox.usability.profile.zip" />
|
||||
</exec>
|
||||
<exec executable="zip" failonerror="true" dir="src">
|
||||
<arg value="-r"/>
|
||||
<exec executable="dzip" failonerror="true" dir="src">
|
||||
<arg value="i2p.firefox.usability.profile.zip"/>
|
||||
<arg value="i2p.firefox.usability.profile"/>
|
||||
</exec>
|
||||
@ -201,8 +199,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
<arg value="-rf" />
|
||||
<arg value="i2p.chromium.base.profile.zip" />
|
||||
</exec>
|
||||
<exec executable="zip" failonerror="true" dir="src">
|
||||
<arg value="-r"/>
|
||||
<exec executable="dzip" failonerror="true" dir="src">
|
||||
<arg value="i2p.chromium.base.profile.zip"/>
|
||||
<arg value="i2p.chromium.base.profile"/>
|
||||
</exec>
|
||||
@ -213,8 +210,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
<arg value="-rf" />
|
||||
<arg value="i2p.chromium.usability.profile.zip" />
|
||||
</exec>
|
||||
<exec executable="zip" failonerror="true" dir="src">
|
||||
<arg value="-r"/>
|
||||
<exec executable="dzip" failonerror="true" dir="src">
|
||||
<arg value="i2p.chromium.usability.profile.zip"/>
|
||||
<arg value="i2p.chromium.usability.profile"/>
|
||||
</exec>
|
||||
@ -225,8 +221,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
<arg value="-rf" />
|
||||
<arg value="i2pbrowser.zip" />
|
||||
</exec>
|
||||
<exec executable="zip" failonerror="true">
|
||||
<arg value="-r"/>
|
||||
<exec executable="dzip" failonerror="true">
|
||||
<arg value="i2pfirefox.zip"/>
|
||||
<arg value="src/build/i2pfirefox.jar"/>
|
||||
<arg value="i2pfirefox.cmd"/>
|
||||
@ -235,7 +230,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
<arg value="i2pchromium-private.cmd"/>
|
||||
<arg value="i2pfirefox-usability.cmd"/>
|
||||
<arg value="i2pchromium-usability.cmd"/>
|
||||
<arg value="i2pfirefox-usability-private.cmd"/>
|
||||
<arg value="i2pfirefox-private-usability.cmd"/>
|
||||
<arg value="i2pchromium-usability-private.cmd"/>
|
||||
<arg value="LICENSE.md"/>
|
||||
<arg value="README.md"/>
|
||||
@ -330,7 +325,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
|
||||
<target name="buildNum">
|
||||
<buildnumber file="scripts/build.number" />
|
||||
<property name="release.number" value="1.0.0" />
|
||||
<property name="release.number" value="1.0.1" />
|
||||
<exec executable="echo" osfamily="unix">
|
||||
<arg value="${release.number}-${build.number}" />
|
||||
</exec>
|
||||
@ -464,8 +459,7 @@ Linux(because the top command will be run and the script will exit).\n\nBoth det
|
||||
<arg value="-rf" />
|
||||
<arg value="i2pbrowser.zip" />
|
||||
</exec>
|
||||
<exec executable="zip" failonerror="true">
|
||||
<arg value="-r"/>
|
||||
<exec executable="dzip" failonerror="true">
|
||||
<arg value="i2pbrowser.zip"/>
|
||||
<arg value="i2pbrowser"/>
|
||||
</exec>
|
||||
|
@ -1,6 +1,6 @@
|
||||
#! /usr/bin/env sh
|
||||
export GITHUB_USER=eyedeekay
|
||||
export GITHUB_REPO=i2p.plugins.firefox
|
||||
export GITHUB_NAME="Add app-mode for local-only browsing, buildsystem improvements"
|
||||
export GITHUB_NAME="Make OSX support as good as everywhere else"
|
||||
export GITHUB_DESCRIPTION=$(cat CHANGES.md VERSION.md)
|
||||
export GITHUB_TAG=1.0.0
|
||||
export GITHUB_TAG=1.0.1
|
22
etc/scripts/torbrowser.sh
Executable file
22
etc/scripts/torbrowser.sh
Executable file
@ -0,0 +1,22 @@
|
||||
#!/bin/sh
|
||||
version="$(curl -s https://aus1.torproject.org/torbrowser/update_3/release/downloads.json | jq -r ".version")"
|
||||
locale="en-US" # mention your locale. default = en-US
|
||||
if [ -d /etc/default/locale ]; then
|
||||
. /etc/default/locale
|
||||
locale=$(echo "${LANG}" | cut -d . -f1)
|
||||
fi
|
||||
|
||||
if [ ! -f ./tor.keyring ]; then
|
||||
gpg --auto-key-locate nodefault,wkd --locate-keys torbrowser@torproject.org
|
||||
gpg --output ./tor.keyring --export torbrowser@torproject.org
|
||||
fi
|
||||
|
||||
if [ ! -f "tor-browser-linux64-"$version"_"$locale".tar.xz" ]; then
|
||||
wget -cv "https://www.torproject.org/dist/torbrowser/"$version"/tor-browser-linux64-"$version"_"$locale".tar.xz"
|
||||
wget -cv "https://www.torproject.org/dist/torbrowser/"$version"/tor-browser-linux64-"$version"_"$locale".tar.xz.asc"
|
||||
fi
|
||||
|
||||
gpgv --keyring ./tor.keyring "tor-browser-linux64-"$version"_"$locale".tar.xz.asc" "tor-browser-linux64-"$version"_"$locale".tar.xz"
|
||||
|
||||
tar xvJf "tor-browser-linux64-"$version"_"$locale".tar.xz"
|
||||
|
50
index.html
50
index.html
@ -240,7 +240,7 @@
|
||||
</h3>
|
||||
<pre><code class="language-sh">
|
||||
mkdir ~/tmp-i2pfirefox && cd ~/tmp-i2pfirefox
|
||||
wget https://github.com/eyedeekay/i2p.plugins.firefox/releases/download/1.0.0/i2pfirefox.zip
|
||||
wget https://github.com/eyedeekay/i2p.plugins.firefox/releases/download/1.0.1/i2pfirefox.zip
|
||||
unzip i2pfirefox.zip
|
||||
./i2pfirefox.cmd
|
||||
|
||||
@ -325,6 +325,43 @@ unzip i2pfirefox.zip
|
||||
</p>
|
||||
<pre><code class="language-sh">go install github.com/eyedeekay/amo-version@latest
|
||||
</code></pre>
|
||||
<p>
|
||||
One last Go application, called
|
||||
<code>
|
||||
dzip
|
||||
</code>
|
||||
is used to generate zip files deterministically for
|
||||
redistribution.
|
||||
</p>
|
||||
<pre><code class="language-sh">go install github.com/delicb/dzip@latest
|
||||
</code></pre>
|
||||
<p>
|
||||
If you don’t want to use it, you can work around it by creating a file called
|
||||
<code>
|
||||
dzip
|
||||
</code>
|
||||
in
|
||||
<code>
|
||||
/usr/local/bin/dzip
|
||||
</code>
|
||||
and adding the contents:
|
||||
</p>
|
||||
<pre><code class="language-sh">#! /usr/bin/env sh
|
||||
zip -r $@
|
||||
</code></pre>
|
||||
<p>
|
||||
This will break deterministic builds, but for testing it will continue to work. More elaborate
|
||||
scripts or other deterministic zip utilities can be easily substituted in by placing them
|
||||
in the
|
||||
<code>
|
||||
$PATH
|
||||
</code>
|
||||
under the name
|
||||
<code>
|
||||
dzip
|
||||
</code>
|
||||
.
|
||||
</p>
|
||||
<p>
|
||||
For Fedora, use Yum, for Arch use pacman or something else but make sure to tell everyone
|
||||
about it. Once you have that installed, when building, make sure to add
|
||||
@ -447,15 +484,20 @@ if (i2pIsRunning()) {
|
||||
mode. So Windows will never reach stage 3 unless expressly forced to. If Firefox or
|
||||
a variant is installed, it will be chosen before Edgium unless directed otherwise.
|
||||
</li>
|
||||
<li>
|
||||
Even though it will launch you into Edgium if it has no other choice, I recommend
|
||||
you do not use it. Edgium will in a constant, incessant way try to induce you to
|
||||
share your behavior with Microsoft. If you try to resist this, it negatively affects
|
||||
the performance of the browser. Google also does this with Chrome, ant this negatively
|
||||
affects Chrome performance too, but less than with Edgium. TL:DR Edgium sucks and is
|
||||
pointless and terrible. Literally any other browser would be better.
|
||||
</li>
|
||||
<li>
|
||||
Linux is unaware of a Tor Browser path because Tor Browser is rarely, if ever,
|
||||
installed on-path. What is on path is virtually always a wrapper for Tor Browser
|
||||
which is installed either as the main user or it’s own user. Linux will only use
|
||||
Tor Browser if it’s discovered in “Local” mode.
|
||||
</li>
|
||||
<li>
|
||||
The above is also true of OSX for now but doesn’t have to remain so.
|
||||
</li>
|
||||
<li>
|
||||
I really only test Phase 3 with Dillo and Edgium.
|
||||
<strong>
|
||||
|
@ -3,7 +3,6 @@
|
||||
jpackage \
|
||||
--verbose \
|
||||
--type dmg \
|
||||
--license-file LICENSE.md \
|
||||
--name i2pbrowser \
|
||||
--app-version "$GITHUB_TAG" \
|
||||
--input src/build \
|
||||
|
39
profiles-upload.sh
Executable file
39
profiles-upload.sh
Executable file
@ -0,0 +1,39 @@
|
||||
#! /usr/bin/env sh
|
||||
|
||||
. ./config.sh
|
||||
profilezipsum=$(sha256sum src/i2p.chromium.base.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Chromium strict extensions ${profilezipsum}" \
|
||||
--name "i2p.chromium.base.profile.zip" \
|
||||
--file "src/i2p.chromium.base.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Chromium base profile"
|
||||
profilezipsum=$(sha256sum src/i2p.chromium.usability.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Chromium usability extensions ${profilezipsum}" \
|
||||
--name "i2p.chromium.usability.profile.zip" \
|
||||
--file "src/i2p.chromium.usability.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Chromium usability profile"
|
||||
profilezipsum=$(sha256sum src/i2p.firefox.base.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Firefox strict profile ${profilezipsum}" \
|
||||
--name "i2p.firefox.base.profile.zip" \
|
||||
--file "src/i2p.firefox.base.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Firefox base profile"
|
||||
profilezipsum=$(sha256sum src/i2p.firefox.usability.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Firefox usability profile ${profilezipsum}" \
|
||||
--name "i2p.firefox.usability.profile.zip" \
|
||||
--file "src/i2p.firefox.usability.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Firefox usability profile"
|
36
release.sh
36
release.sh
@ -2,42 +2,6 @@
|
||||
|
||||
. ./config.sh
|
||||
./preprelease.sh
|
||||
profilezipsum=$(sha256sum src/i2p.chromium.base.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Chromium strict extensions ${profilezipsum}" \
|
||||
--name "i2p.chromium.base.profile.zip" \
|
||||
--file "src/i2p.chromium.base.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Chromium base profile"
|
||||
profilezipsum=$(sha256sum src/i2p.chromium.usability.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Chromium usability extensions ${profilezipsum}" \
|
||||
--name "i2p.chromium.usability.profile.zip" \
|
||||
--file "src/i2p.chromium.usability.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Chromium usability profile"
|
||||
profilezipsum=$(sha256sum src/i2p.firefox.base.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Firefox strict profile ${profilezipsum}" \
|
||||
--name "i2p.firefox.base.profile.zip" \
|
||||
--file "src/i2p.firefox.base.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Firefox base profile"
|
||||
profilezipsum=$(sha256sum src/i2p.firefox.usability.profile.zip)
|
||||
github-release upload --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--tag "${GITHUB_TAG}" \
|
||||
--label "Firefox usability profile ${profilezipsum}" \
|
||||
--name "i2p.firefox.usability.profile.zip" \
|
||||
--file "src/i2p.firefox.usability.profile.zip" \
|
||||
--replace
|
||||
echo "Uploaded Firefox usability profile"
|
||||
github-release release --user "${GITHUB_USER}" \
|
||||
--repo "${GITHUB_REPO}" \
|
||||
--name "${GITHUB_NAME}" \
|
||||
|
@ -1,3 +1,3 @@
|
||||
#Build Number for ANT. Do not edit!
|
||||
#Sun Sep 25 16:21:47 EDT 2022
|
||||
build.number=108
|
||||
#Sat Oct 01 21:07:15 EDT 2022
|
||||
build.number=115
|
||||
|
@ -25,7 +25,7 @@
|
||||
</target>
|
||||
|
||||
<property name="javac.compilerargs" value="" />
|
||||
<property name="javac.version" value="1.7" />
|
||||
<property name="javac.version" value="1.8" />
|
||||
|
||||
<target name="compile">
|
||||
<mkdir dir="./build" />
|
||||
|
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
Profile Version
|
||||
===============
|
||||
|
||||
1.0.0-107
|
||||
1.0.1-114
|
||||
|
||||
|
BIN
src/i2p.chromium.usability.profile.zip
Normal file
BIN
src/i2p.chromium.usability.profile.zip
Normal file
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
Profile Version
|
||||
===============
|
||||
|
||||
1.0.0-107
|
||||
1.0.1-114
|
||||
|
||||
|
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
Profile Version
|
||||
===============
|
||||
|
||||
1.0.0-107
|
||||
1.0.1-114
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
Profile Version
|
||||
===============
|
||||
|
||||
1.0.0-107
|
||||
1.0.1-114
|
||||
|
||||
|
@ -1,7 +1,12 @@
|
||||
package net.i2p.i2pfirefox;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* I2PChromium.java
|
||||
@ -66,19 +71,13 @@ public class I2PChromium extends I2PCommonBrowser {
|
||||
}
|
||||
private static String[] FIND_CHROMIUM_SEARCH_PATHS_OSX() {
|
||||
String[] path =
|
||||
new String[] {"/Applications/Chromium.app/Contents/MacOS/",
|
||||
"/Applications/Waterfox.app/Contents/MacOS/",
|
||||
"/Applications/Librewolf.app/Contents/MacOS/"};
|
||||
String[] exes =
|
||||
new String[] {"ungoogled-chromium", "chromium", "brave", "edge",
|
||||
"ungoogled-chromium", "chrome"};
|
||||
String[] exePath = new String[path.length * exes.length];
|
||||
new String[] {"/Applications/Chromium.app", "/Applications/Chrome.app",
|
||||
"/Applications/Brave.app"};
|
||||
String[] exePath = new String[path.length];
|
||||
int i = 0;
|
||||
for (String s : path) {
|
||||
for (String exe : exes) {
|
||||
exePath[i] = s + "/" + exe;
|
||||
i++;
|
||||
}
|
||||
exePath[i] = s;
|
||||
i++;
|
||||
}
|
||||
return exePath;
|
||||
}
|
||||
@ -511,12 +510,40 @@ public class I2PChromium extends I2PCommonBrowser {
|
||||
}
|
||||
}
|
||||
}
|
||||
return new ProcessBuilder(newArgs).directory(
|
||||
I2PChromiumProfileBuilder.runtimeDirectory(true));
|
||||
} else {
|
||||
logger.info("No Chromium found.");
|
||||
return new ProcessBuilder(args);
|
||||
if (isOSX()) {
|
||||
String argString = join(Arrays.copyOfRange(newArgs, 1, newArgs.length));
|
||||
String[] fg = {""};
|
||||
String[] lastArgs =
|
||||
Stream.concat(Arrays.stream(newArgs), Arrays.stream(fg))
|
||||
.toArray(String[] ::new);
|
||||
// String[] finalArgs = Stream.concat(Arrays.stream(initArgs),
|
||||
// Arrays.stream(lastArgs)).toArray(String[]::new);
|
||||
File bashScript = new File("i2pchromium.sh");
|
||||
if (bashScript.exists()) {
|
||||
bashScript.delete();
|
||||
}
|
||||
try {
|
||||
FileWriter bWriter = new FileWriter(bashScript);
|
||||
PrintWriter bpWriter = new PrintWriter(bWriter);
|
||||
bpWriter.println("#! /usr/bin/env sh");
|
||||
bpWriter.println(join(lastArgs));
|
||||
bpWriter.close();
|
||||
bWriter.close();
|
||||
if (!bashScript.canExecute()) {
|
||||
bashScript.setExecutable(true);
|
||||
}
|
||||
return new ProcessBuilder(bashScript.getAbsolutePath())
|
||||
.directory(I2PFirefoxProfileBuilder.runtimeDirectory(true));
|
||||
} catch (IOException e) {
|
||||
logger.warning(e.toString());
|
||||
}
|
||||
} else {
|
||||
return new ProcessBuilder(newArgs).directory(
|
||||
I2PChromiumProfileBuilder.runtimeDirectory(true));
|
||||
}
|
||||
}
|
||||
logger.info("No Chromium found.");
|
||||
return new ProcessBuilder(args);
|
||||
}
|
||||
|
||||
public Process launchAndDetatch(boolean privateWindow, String[] url) {
|
||||
|
@ -110,6 +110,28 @@ public class I2PCommonBrowser {
|
||||
return false;
|
||||
}
|
||||
|
||||
protected static boolean isOSX() {
|
||||
String osName = System.getProperty("os.name");
|
||||
logger.info("os.name" + osName);
|
||||
if (osName.contains("OSX"))
|
||||
return true;
|
||||
if (osName.contains("osx"))
|
||||
return true;
|
||||
if (osName.contains("mac"))
|
||||
return true;
|
||||
if (osName.contains("Mac"))
|
||||
return true;
|
||||
if (osName.contains("apple"))
|
||||
return true;
|
||||
if (osName.contains("Apple"))
|
||||
return true;
|
||||
if (osName.contains("Darwin"))
|
||||
return true;
|
||||
if (osName.contains("darwin"))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
// public static void logger.info(String line) { logger.info(line); }
|
||||
|
||||
private static File logFile() {
|
||||
@ -394,4 +416,17 @@ public class I2PCommonBrowser {
|
||||
* @param time
|
||||
*/
|
||||
public void setProxyTimeoutTime(int time) { CONFIGURED_TIMEOUT = time; }
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
protected static String join(String[] arr) {
|
||||
StringBuilder val = new StringBuilder("");
|
||||
for (int x = 0; x < arr.length; x++) {
|
||||
val.append(" \"");
|
||||
val.append(arr[x]);
|
||||
val.append("\"");
|
||||
}
|
||||
return val.toString();
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,13 @@
|
||||
package net.i2p.i2pfirefox;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* I2PFirefox.java
|
||||
@ -58,9 +62,10 @@ public class I2PFirefox extends I2PCommonBrowser {
|
||||
}
|
||||
private static String[] FIND_FIREFOX_SEARCH_PATHS_OSX() {
|
||||
String[] path =
|
||||
new String[] {"/Applications/Firefox.app/Contents/MacOS/",
|
||||
"/Applications/Waterfox.app/Contents/MacOS/",
|
||||
"/Applications/Librewolf.app/Contents/MacOS/"};
|
||||
new String[] {"/Applications/Tor Browser.app/Contents/MacOS",
|
||||
"/Applications/Firefox.app/Contents/MacOS",
|
||||
"/Applications/Waterfox.app/Contents/MacOS",
|
||||
"/Applications/Librewolf.app/Contents/MacOS"};
|
||||
String[] exes = new String[] {"firefox", "firefox-bin", "firefox-esr",
|
||||
"waterfox", "waterfox-bin", "librewolf"};
|
||||
String[] exePath = new String[path.length * exes.length];
|
||||
@ -150,22 +155,37 @@ public class I2PFirefox extends I2PCommonBrowser {
|
||||
// "firefox-esr", "waterfox", "waterfox-bin", "librewolf" up to a depth of 2
|
||||
// directories deep. list the directories in the plugin directory
|
||||
if (plugin != null && !plugin.isEmpty()) {
|
||||
File pluginDir = new File(plugin);
|
||||
if (pluginDir.exists()) {
|
||||
File[] pluginDirs = pluginDir.listFiles();
|
||||
// list the files in the plugin directory
|
||||
for (File pluginDir1 : pluginDirs) {
|
||||
File[] pluginFiles = pluginDir1.listFiles();
|
||||
// list the files in the plugin directory
|
||||
if (pluginFiles != null) {
|
||||
for (File pluginFile : pluginFiles) {
|
||||
if (pluginFile.getName().equals("firefox") ||
|
||||
pluginFile.getName().equals("firefox-bin") ||
|
||||
pluginFile.getName().equals("firefox-esr") ||
|
||||
pluginFile.getName().equals("waterfox") ||
|
||||
pluginFile.getName().equals("waterfox-bin") ||
|
||||
pluginFile.getName().equals("librewolf")) {
|
||||
return new String[] {pluginFile.getAbsolutePath()};
|
||||
File userDir = new File(plugin);
|
||||
if (userDir.exists()) {
|
||||
File[] userDirs = userDir.listFiles();
|
||||
for (File userDir1 : userDirs) {
|
||||
File[] userFiles = userDir1.listFiles();
|
||||
if (userFiles != null) {
|
||||
for (File userFile : userFiles) {
|
||||
// logger.info("CHECKING NEARBY" + userFile.getAbsolutePath());
|
||||
if (userFile.isDirectory()) {
|
||||
File[] userFiles2 = userFile.listFiles();
|
||||
for (File userFile2 : userFiles2) {
|
||||
if (userFile2.isDirectory())
|
||||
continue;
|
||||
if (userFile2.getName().equals("firefox") ||
|
||||
userFile2.getName().equals("firefox-bin") ||
|
||||
userFile2.getName().equals("firefox-esr") ||
|
||||
userFile2.getName().equals("waterfox") ||
|
||||
userFile2.getName().equals("waterfox-bin") ||
|
||||
userFile2.getName().equals("librewolf")) {
|
||||
logger.info("FOUND NEARBY" + userFile2.getAbsolutePath());
|
||||
return new String[] {userFile2.getAbsolutePath()};
|
||||
}
|
||||
}
|
||||
}
|
||||
if (userFile.getName().equals("firefox") ||
|
||||
userFile.getName().equals("firefox-bin") ||
|
||||
userFile.getName().equals("firefox-esr") ||
|
||||
userFile.getName().equals("waterfox") ||
|
||||
userFile.getName().equals("waterfox-bin") ||
|
||||
userFile.getName().equals("librewolf")) {
|
||||
return new String[] {userFile.getAbsolutePath()};
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -180,11 +200,24 @@ public class I2PFirefox extends I2PCommonBrowser {
|
||||
// list the files in the user.dir directory
|
||||
for (File userDir1 : userDirs) {
|
||||
File[] userFiles = userDir1.listFiles();
|
||||
// list the files in the user.dir directory
|
||||
if (userFiles != null) {
|
||||
for (File userFile : userFiles) {
|
||||
if (userFile.isDirectory())
|
||||
continue;
|
||||
if (userFile.isDirectory()) {
|
||||
File[] userFiles2 = userFile.listFiles();
|
||||
for (File userFile2 : userFiles2) {
|
||||
if (userFile2.isDirectory())
|
||||
continue;
|
||||
if (userFile2.getName().equals("firefox") ||
|
||||
userFile2.getName().equals("firefox-bin") ||
|
||||
userFile2.getName().equals("firefox-esr") ||
|
||||
userFile2.getName().equals("waterfox") ||
|
||||
userFile2.getName().equals("waterfox-bin") ||
|
||||
userFile2.getName().equals("librewolf")) {
|
||||
logger.info("FOUND NEARBY" + userFile2.getAbsolutePath());
|
||||
return new String[] {userFile2.getAbsolutePath()};
|
||||
}
|
||||
}
|
||||
}
|
||||
if (userFile.getName().equals("firefox") ||
|
||||
userFile.getName().equals("firefox-bin") ||
|
||||
userFile.getName().equals("firefox-esr") ||
|
||||
@ -442,12 +475,44 @@ public class I2PFirefox extends I2PCommonBrowser {
|
||||
}
|
||||
}
|
||||
}
|
||||
return new ProcessBuilder(newArgs).directory(
|
||||
I2PFirefoxProfileBuilder.runtimeDirectory(true));
|
||||
} else {
|
||||
logger.info("No Firefox found.");
|
||||
return new ProcessBuilder(args);
|
||||
}
|
||||
if (isOSX()) {
|
||||
|
||||
String[] fg = {""};
|
||||
String[] lastArgs =
|
||||
Stream.concat(Arrays.stream(newArgs), Arrays.stream(fg))
|
||||
.toArray(String[] ::new);
|
||||
// String[] finalArgs = Stream.concat(Arrays.stream(initArgs),
|
||||
// Arrays.stream(lastArgs)).toArray(String[]::new);
|
||||
File bashScript = new File("i2pfirefox.sh");
|
||||
if (bashScript.exists()) {
|
||||
bashScript.delete();
|
||||
}
|
||||
try {
|
||||
FileWriter bWriter = new FileWriter(bashScript);
|
||||
PrintWriter bpWriter = new PrintWriter(bWriter);
|
||||
bpWriter.println("#! /usr/bin/env sh");
|
||||
bpWriter.println(join(lastArgs));
|
||||
bpWriter.close();
|
||||
bWriter.close();
|
||||
if (!bashScript.canExecute()) {
|
||||
bashScript.setExecutable(true);
|
||||
}
|
||||
return new ProcessBuilder(bashScript.getAbsolutePath())
|
||||
.directory(I2PFirefoxProfileBuilder.runtimeDirectory(true));
|
||||
} catch (IOException e) {
|
||||
logger.warning(e.toString());
|
||||
}
|
||||
return null;
|
||||
} else {
|
||||
return new ProcessBuilder(newArgs).directory(
|
||||
I2PFirefoxProfileBuilder.runtimeDirectory(true));
|
||||
}
|
||||
|
||||
} // else {
|
||||
logger.info("No Firefox found.");
|
||||
return new ProcessBuilder(args);
|
||||
//}
|
||||
// return null;
|
||||
}
|
||||
|
||||
private String usabilityMode() {
|
||||
|
Reference in New Issue
Block a user