Compare commits

..

23 Commits

Author SHA1 Message Date
idk
c2485eeea0 enable -private flag for temp identity in Shortcuts(as opposed to on-by-default or container-manged only) 2022-08-30 11:20:45 -04:00
idk
603c10ed9f un-comment broken Firefox languages now that we're compiling with NSIS v3 2022-08-30 11:19:08 -04:00
idk
7806b6f232 make sure to copy default hosts.txt file too 2022-08-30 09:45:40 -04:00
idk
3d67aa4dca eliminate redundant parentoptions 2022-08-29 19:53:52 -04:00
idk
646778680d This enables the jpackage to launch almost any browser as an I2P-enabled browser. It will choose Firefox variants first, Chromium variants second, and falls back to setting environment variables before spawning the browser process. It also removes the Firefox dependency from the NSIS build 2022-08-29 19:42:25 -04:00
idk
910aeed82c add /a to signer script 2022-08-29 09:44:18 -04:00
idk
2f0e553b20 update changelog 2022-08-28 23:16:39 -04:00
idk
bc33051d8d bump version 2022-08-28 13:58:32 -04:00
idk
e4d0be36c9 update UPDATES.html 2022-08-27 11:33:03 -04:00
idk
9374b1b274 update LICENSE.html 2022-08-27 11:32:59 -04:00
idk
e4e3df90dc update index.html 2022-08-27 11:32:55 -04:00
idk
acb66c97d0 update page title 2022-08-27 11:31:04 -04:00
idk
a8ac47966c update i2p.plugin.firefox version 2022-08-22 17:36:15 -04:00
idk
acf67d93c6 disable https-only mode to get rid of warning from profile 2022-08-21 19:01:40 -04:00
idk
07f7b84817 update the i2pfirefox version one last time 2022-08-21 18:15:04 -04:00
idk
c7a42e6447 Don't delay at launch time, delay at run/check time 2022-08-21 11:52:39 -04:00
idk
66e93709ca Delay launch by 2 seconds to make sure that router.ping is written before trying to launch a browser when a router is already running 2022-08-21 11:31:23 -04:00
idk
a7eba5f5ae Change message when refusing to start because we think I2P is already running 2022-08-21 11:18:09 -04:00
idk
ba0e2fb8c0 Reduce rate-limit on restarts to one a minute, 2 minutes is too long 2022-08-21 11:16:21 -04:00
idk
8ee2a1170e always copy i2ptunnel.config on first install but not updates 2022-08-21 10:46:48 -04:00
idk
a08046655b update i2p.firefox 2022-08-21 01:14:13 -04:00
idk
54be1d3acd don't return after private browsing check 2022-08-21 00:49:29 -04:00
idk
e7e40a96ba update i2p.firefox 2022-08-21 00:26:13 -04:00
20 changed files with 87 additions and 116 deletions

View File

@@ -1,12 +1,13 @@
<html>
<head>
<title>
I2P Browsing Pro...
I2P Easy-Install...
</title>
<meta name="author" content="eyedeekay" />
<meta name="description" content="i2p.firefox" />
<meta name="keywords" content="master" />
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="stylesheet" type="text/css" href="showhider.css" />
</head>
<body>
<div id="navbar">
@@ -98,6 +99,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
</div>
<div>
<a href="https://geti2p.net/">
<img src="i2plogo.png"></img>
I2P
</a>
</div>

View File

@@ -1,5 +1,5 @@
I2P Browsing Profile for Firefox
================================
I2P Easy-Install Bundle for Windows(Also/formerly)I2P Browsing Profile for Firefox
==================================================================================
Features:
---------

View File

@@ -1,12 +1,13 @@
<html>
<head>
<title>
I2P Browsing Pro...
I2P Easy-Install...
</title>
<meta name="author" content="eyedeekay" />
<meta name="description" content="i2p.firefox" />
<meta name="keywords" content="master" />
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="stylesheet" type="text/css" href="showhider.css" />
</head>
<body>
<div id="navbar">
@@ -135,6 +136,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
</div>
<div>
<a href="https://geti2p.net/">
<img src="i2plogo.png"></img>
I2P
</a>
</div>

View File

@@ -66,7 +66,7 @@ if [ ! -f "$HERE/build/jna-platform.jar" ]; then
fi
if [ ! -f "$HERE/build/i2pfirefox.jar" ]; then
wget -O "$HERE/build/i2pfirefox.jar" https://github.com/eyedeekay/i2p.plugins.firefox/releases/download/0.0.8/i2pfirefox.jar
wget -O "$HERE/build/i2pfirefox.jar" https://github.com/eyedeekay/i2p.plugins.firefox/releases/download/0.0.16/i2pfirefox.jar
fi
cd java

View File

@@ -1,3 +1,9 @@
2022-08-28 idk
* Migrate away from batch scripts and simply launch a browser if I2P is already running.
This is more flexible, stable, and simplet to install
* Improves compatibility with detatched and un-bundled routers on the same system
* Fixes bugs in Firefox path finding
2022-05-8 idk
* Add translations for Arabic, German, French, Italian, Japanese, Portuguese, Russian,
and Chinese.

BIN
i2plogo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@@ -6,12 +6,12 @@ export JNA_VERSION=5.11.0
#Comment this out to build from an alternate branch or
# the tip of the master branch.
VERSIONMAJOR=1
VERSIONMINOR=8
VERSIONBUILD=1
VERSIONMINOR=9
VERSIONBUILD=0
I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
export I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
VERSION=i2p-1.8.8
export VERSION=i2p-1.8.0
VERSION=i2p-1.9.0
export VERSION=i2p-1.9.0
#Uncomment this to build from the tip of the master.
#I2P_VERSION=1.8.0

View File

@@ -1,12 +1,13 @@
<html>
<head>
<title>
I2P Browsing Pro...
I2P Easy-Install...
</title>
<meta name="author" content="eyedeekay" />
<meta name="description" content="i2p.firefox" />
<meta name="keywords" content="master" />
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="stylesheet" type="text/css" href="showhider.css" />
</head>
<body>
<div id="navbar">
@@ -40,7 +41,7 @@
</div>
</div>
<h1>
I2P Browsing Profile for Firefox
I2P Easy-Install Bundle for Windows(Also/formerly)I2P Browsing Profile for Firefox
</h1>
<h2>
Features:
@@ -714,6 +715,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
</div>
<div>
<a href="https://geti2p.net/">
<img src="i2plogo.png"></img>
I2P
</a>
</div>

View File

@@ -52,9 +52,10 @@ public class WinLauncher {
}
boolean privateBrowsing = false;
if (args != null && args.length > 0) {
logger.info("checking for private browsing");
if (args[0].equals("-private")) {
privateBrowsing = true;
return;
logger.info("private browsing is true, profile will be discarded at end of session");
}
}
@@ -76,9 +77,9 @@ public class WinLauncher {
if (i2pIsRunning()) {
logger.warning("I2P is already running");
I2PFirefox i2pFirefox = new I2PFirefox();
System.out.println("I2PFirefox");
i2pFirefox.launch(privateBrowsing);
I2PBrowser i2pBrowser = new I2PBrowser();
System.out.println("i2pBrowser");
i2pBrowser.launch(privateBrowsing);
return;
}
@@ -112,18 +113,24 @@ public class WinLauncher {
}
private static boolean i2pIsRunning() {
// check if there's something listening on port 7657
sleep(2000);
// check if there's something listening on port 7657(Router Console)
if (!isAvailable(7657)) {
return true;
}
// check if there's something listening on port 7654(I2CP)
if (!isAvailable(7654)) {
return true;
}
// check for the existence of router.ping file, if it's less then 2 minutes old,
// exit
File home = selectHome();
File ping = new File(home, "router.ping");
if (ping.exists()) {
long diff = System.currentTimeMillis() - ping.lastModified();
if (diff < 2 * 60 * 1000) {
logger.info("router.ping exists and is less than 2 minutes old, I2P appears to be running already.");
if (diff < 60 * 1000) {
logger.info("router.ping exists and is less than 1 minute old, I2P appears to be running already.");
logger.info("If I2P is not running, wait 60 seconds and try again.");
return true;
}
}

View File

@@ -11,6 +11,8 @@ src/app-profile/user.js:
wget -O src/app-profile/user.js "https://github.com/arkenfox/user.js/raw/master/user.js"
sed -i 's|user_pref("extensions.autoDisableScopes", 15);|user_pref("extensions.autoDisableScopes", 0);|g src/app-profile/user.js
sed -i 's|user_pref("extensions.enabledScopes", 5);|user_pref("extensions.enabledScopes", 1);|g' src/app-profile/user.js
sed -i 's|user_pref("dom.security.https_only_mode", true);|user_pref("dom.security.https_only_mode", false);|g' src/app-profile/user.js
build/app-profile/user.js: build/app-profile src/app-profile/user.js
cp src/app-profile/user.js build/app-profile/user.js

View File

@@ -12,6 +12,7 @@ src/profile/user.js:
wget -O src/profile/user.js "https://github.com/arkenfox/user.js/raw/master/user.js"
sed -i 's|user_pref("extensions.autoDisableScopes", 15);|user_pref("extensions.autoDisableScopes", 0);|g src/profile/user.js
sed -i 's|user_pref("extensions.enabledScopes", 5);|user_pref("extensions.enabledScopes", 1);|g' src/profile/user.js
sed -i 's|user_pref("dom.security.https_only_mode", true);|user_pref("dom.security.https_only_mode", false);|g' src/profile/user.js
build/profile/user.js: build/profile src/profile/user.js
cp src/profile/user.js build/profile/user.js

10
showhider.css Normal file
View File

@@ -0,0 +1,10 @@
/* edgar showhider CSS file */
#show {display:none; }
#hide {display:block; }
#show:target {display: block; }
#hide:target {display: none; }
#shownav {display:none; }
#hidenav {display:block; }
#shownav:target {display: block; }
#hidenav:target {display: none; }

View File

@@ -40,6 +40,6 @@ if [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then
linuxsign I2P-Profile-Installer-$I2P_VERSION.exe
cp "I2P-Profile-Installer-$I2P_VERSION.exe" "I2P-Profile-Installer-$I2P_VERSION-signed.exe"
else
signtool.exe sign "I2P-Profile-Installer-$I2P_VERSION.exe"
signtool.exe sign /a "I2P-Profile-Installer-$I2P_VERSION.exe"
cp "I2P-Profile-Installer-$I2P_VERSION.exe" "I2P-Profile-Installer-$I2P_VERSION-signed.exe"
fi

View File

@@ -517,7 +517,7 @@ user_pref("security.mixed_content.block_display_content", true);
* [SETTING] Privacy & Security>HTTPS-Only Mode (and manage exceptions)
* [TEST] http://example.com [upgrade]
* [TEST] http://httpforever.com/ [no upgrade] ***/
user_pref("dom.security.https_only_mode", true); // [FF76+]
user_pref("dom.security.https_only_mode", false); // [FF76+]
// user_pref("dom.security.https_only_mode_pbm", true); // [FF80+]
/* 1245: enable HTTPS-Only mode for local resources [FF77+] ***/
// user_pref("dom.security.https_only_mode.upgrade_local", true);

View File

@@ -1 +1 @@
1.8.1
1.9.0

View File

@@ -14,21 +14,13 @@ UniCode true
!include i2pbrowser-jpackage.nsi
!include FindProcess.nsh
var FFINSTEXE
var FFNONTORINSTEXE
var I2PINSTEXE
Var PARENTOPTIONS
SetOverwrite on
!define FFINSTEXE
!define FFNONTORINSTEXE
!define FFINSTEXE32 "$PROGRAMFILES32\Mozilla Firefox\"
!define FFINSTEXE64 "$PROGRAMFILES64\Mozilla Firefox\"
!define I2PINSTEXE
!define I2PINSTEXE_USERMODE "$LOCALAPPDATA\i2p"
!define RAM_NEEDED_FOR_64BIT 0x80000000
InstallDir "$PROGRAMFILES64\${COMPANYNAME}\${APPNAME}"
@@ -109,15 +101,15 @@ RequestExecutionLevel user
!insertmacro MUI_LANGUAGE "Basque"
!insertmacro MUI_LANGUAGE "Welsh"
# Commented out languages below do not compile on NSIS v2
# !insertmacro MUI_LANGUAGE "Asturian"
# !insertmacro MUI_LANGUAGE "Pashto"
# !insertmacro MUI_LANGUAGE "ScotsGaelic"
# !insertmacro MUI_LANGUAGE "Georgian"
# !insertmacro MUI_LANGUAGE "Vietnamese"
# !insertmacro MUI_LANGUAGE "Armenian"
# !insertmacro MUI_LANGUAGE "Corsican"
# !insertmacro MUI_LANGUAGE "Tatar"
# !insertmacro MUI_LANGUAGE "Hindi"
!insertmacro MUI_LANGUAGE "Asturian"
!insertmacro MUI_LANGUAGE "Pashto"
!insertmacro MUI_LANGUAGE "ScotsGaelic"
!insertmacro MUI_LANGUAGE "Georgian"
!insertmacro MUI_LANGUAGE "Vietnamese"
!insertmacro MUI_LANGUAGE "Armenian"
!insertmacro MUI_LANGUAGE "Corsican"
!insertmacro MUI_LANGUAGE "Tatar"
!insertmacro MUI_LANGUAGE "Hindi"
### END LANGUAGES
# small speed optimization
@@ -129,12 +121,6 @@ PageEx license
licensetext "${LICENSE_TITLE}"
licensedata "licenses\LICENSE.txt"
PageExEnd
PageEx directory
dirtext "${FIREFOX_MESSAGE}"
dirvar $FFINSTEXE
dirvar $FFNONTORINSTEXE
PageCallbacks firefoxDetect
PageExEnd
PageEx directory
dirtext "${I2P_MESSAGE}"
dirvar $I2PINSTEXE
@@ -142,7 +128,7 @@ PageEx directory
PageExEnd
Page instfiles
!include i2pbrowser-mozcompat.nsi
#!include i2pbrowser-mozcompat.nsi
Function .onInit
StrCpy $I2PINSTEXE "${I2PINSTEXE_USERMODE}"
@@ -153,65 +139,34 @@ Function .onInit
StrCpy $I2PINSTEXE "${I2PINSTEXE_USERMODE}"
${EndIf}
!insertmacro MUI_LANGDLL_DISPLAY
Call ShouldInstall64Bit
${If} $0 == 1
${If} ${FileExists} "${FFINSTEXE64}\firefox.exe"
StrCpy $FFINSTEXE "${FFINSTEXE64}"
StrCpy $FFNONTORINSTEXE "${FFINSTEXE64}"
${ElseIf} ${FileExists} "${FFINSTEXE32}\firefox.exe"
StrCpy $FFINSTEXE "${FFINSTEXE32}"
StrCpy $FFNONTORINSTEXE "${FFINSTEXE32}"
${EndIf}
${If} ${FileExists} "$PROFILE\OneDrive\Desktop\Tor Browser\Browser\firefox.exe"
StrCpy $FFINSTEXE "$PROFILE\OneDrive\Desktop\Tor Browser\Browser\"
${EndIf}
${If} ${FileExists} "$PROFILE\Desktop\Tor Browser\Browser\firefox.exe"
StrCpy $FFINSTEXE "$PROFILE\Desktop\Tor Browser\Browser\"
${EndIf}
${Else}
${If} ${FileExists} "${FFINSTEXE32}\firefox.exe"
StrCpy $FFINSTEXE "${FFINSTEXE32}"
StrCpy $FFNONTORINSTEXE "${FFINSTEXE32}"
${EndIf}
${If} ${FileExists} "$PROFILE\OneDrive\Desktop\Tor Browser\Browser\firefox.exe"
StrCpy $FFINSTEXE "$PROFILE\OneDrive\Desktop\Tor Browser\Browser\"
${EndIf}
${If} ${FileExists} "$PROFILE\Desktop\Tor Browser\Browser\firefox.exe"
StrCpy $FFINSTEXE "$PROFILE\Desktop\Tor Browser\Browser\"
${EndIf}
${EndIf}
#Call ShouldInstall64Bit
# look for user installs
FunctionEnd
Function firefoxDetect
${If} ${FileExists} "$FFINSTEXE\firefox.exe"
Abort directory
${EndIf}
FunctionEnd
Function routerDetect
createDirectory $I2PINSTEXE
SetOutPath $I2PINSTEXE
File /nonfatal /a /r "I2P\"
File /nonfatal /a /r "I2P\I2P.exe"
File /nonfatal "I2P\config\jpackaged"
File /a /r "I2P\"
File /nonfatal /a /r "I2P\I2P.exe"
File "I2P\config\jpackaged"
createDirectory "$I2PINSTEXE\"
SetOutPath "$I2PINSTEXE\"
IfFileExists $I2PINSTEXE\router.config +2 0
File /nonfatal /a /r "I2P/config/router.config"
File /a /r "I2P/config/router.config"
IfFileExists $I2PINSTEXE\clients.config +2 0
File /nonfatal /a /r "I2P/config/clients.config"
IfFileExists $I2PINSTEXE\i2ptunnel.config +2 0
File /nonfatal /a /r "I2P/config/i2ptunnel.config"
File /a /r "I2P/config/clients.config"
IfFileExists $I2PINSTEXE\wrapper.config +2 0
File /nonfatal /a /r "I2P/config/wrapper.config"
File /a /r "I2P/config/wrapper.config"
IfFileExists $I2PINSTEXE\hosts.txt +2 0
File /a /r "I2P/config/hosts.txt"
IfFileExists $I2PINSTEXE\eepsite +2 0
File /nonfatal /a /r "I2P/config/eepsite"
File /a /r "I2P/config/eepsite"
IfFileExists $I2PINSTEXE\webapps +2 0
File /nonfatal /a /r "I2P/config/webapps"
File /nonfatal /a /r "I2P/config/certificates"
File /nonfatal /a /r "I2P/config/geoip"
File /a /r "I2P/config/webapps"
File /a /r "I2P/config/certificates"
File /a /r "I2P/config/geoip"
File /a /r "I2P/config/i2ptunnel.config"
Abort directory
FunctionEnd
@@ -237,27 +192,11 @@ ${If} ${Silent}
${If} ${Silent}
ReadEnvStr $0 OLD_I2P_VERSION
${If} $0 < ${I2P_VERSION}
rmDir /r $I2PINSTEXE/app
rmDir /r $I2PINSTEXE/runtime
File /nonfatal /a /r "I2P\"
File /nonfatal "I2P\config\jpackaged"
createDirectory "$I2PINSTEXE\"
SetOutPath "$I2PINSTEXE\"
File /nonfatal /a /r "I2P/config/certificates"
File /nonfatal /a /r "I2P/config/geoip"
call routerDetect
${EndIf}
${Else}
rmDir /r $I2PINSTEXE/app
rmDir /r $I2PINSTEXE/runtime
File /nonfatal /a /r "I2P\"
File /nonfatal "I2P\config\jpackaged"
createDirectory "$I2PINSTEXE\"
SetOutPath "$I2PINSTEXE\"
File /nonfatal /a /r "I2P/config/certificates"
File /nonfatal /a /r "I2P/config/geoip"
call routerDetect
${EndIf}
${EndIf}
@@ -285,11 +224,11 @@ ${If} ${Silent}
SetOutPath "$I2PINSTEXE"
createDirectory "$SMPROGRAMS\${APPNAME}"
CreateShortCut "$SMPROGRAMS\${APPNAME}\Browse I2P.lnk" "$I2PINSTEXE\I2P.exe" "" "$INSTDIR\ui2pbrowser_icon.ico"
CreateShortCut "$SMPROGRAMS\${APPNAME}\Browse I2P - Temporary Identity.lnk" "$I2PINSTEXE\I2P.exe" "" "$INSTDIR\ui2pbrowser_icon.ico"
CreateShortCut "$SMPROGRAMS\${APPNAME}\Browse I2P - Temporary Identity.lnk" "$I2PINSTEXE\I2P.exe -private" "" "$INSTDIR\ui2pbrowser_icon.ico"
; CreateShortCut "$SMPROGRAMS\${APPNAME}\I2P Applications.lnk" "C:\Windows\system32\cmd.exe" "/c $\"$INSTDIR\i2pconfig.bat$\"" "$INSTDIR\ui2pbrowser_icon.ico"
CreateShortCut "$DESKTOP\Browse I2P.lnk" "$I2PINSTEXE\I2P.exe" "" "$INSTDIR\ui2pbrowser_icon.ico"
CreateShortCut "$DESKTOP\Browse I2P - Temporary Identity.lnk" "$I2PINSTEXE\I2P.exe" "" "$INSTDIR\ui2pbrowser_icon.ico"
CreateShortCut "$DESKTOP\Browse I2P - Temporary Identity.lnk" "$I2PINSTEXE\I2P.exe -private" "" "$INSTDIR\ui2pbrowser_icon.ico"
; CreateShortCut "$DESKTOP\I2P Applications.lnk" "C:\Windows\system32\cmd.exe" "/c $\"$INSTDIR\i2pconfig.bat$\"" "$INSTDIR\ui2pbrowser_icon.ico"
SetOutPath "$INSTDIR"
@@ -309,7 +248,7 @@ ${If} ${Silent}
SetOutPath "$I2PAPPDATA"
IfFileExists "$LOCALAPPDATA\I2P\eepsite\docroot" +2 0
File /nonfatal /a /r "I2P\eepsite"
File /a /r "I2P\eepsite"
createDirectory "$I2PINSTEXE"
SetOutPath "$I2PINSTEXE"

View File

@@ -1 +1 @@
!define I2P_VERSION 1.8.1
!define I2P_VERSION 1.9.0

View File

@@ -1,3 +1,3 @@
!define VERSIONMAJOR 1
!define VERSIONMINOR 8
!define VERSIONBUILD 1
!define VERSIONMINOR 9
!define VERSIONBUILD 0

View File

@@ -517,7 +517,7 @@ user_pref("security.mixed_content.block_display_content", true);
* [SETTING] Privacy & Security>HTTPS-Only Mode (and manage exceptions)
* [TEST] http://example.com [upgrade]
* [TEST] http://httpforever.com/ [no upgrade] ***/
user_pref("dom.security.https_only_mode", true); // [FF76+]
user_pref("dom.security.https_only_mode", false); // [FF76+]
// user_pref("dom.security.https_only_mode_pbm", true); // [FF80+]
/* 1245: enable HTTPS-Only mode for local resources [FF77+] ***/
// user_pref("dom.security.https_only_mode.upgrade_local", true);

View File

@@ -1 +1 @@
1.8.1
1.9.0