mirror of
https://github.com/i2p/i2p.firefox.git
synced 2024-12-06 19:16:37 +01:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 51a7f0f1d7 | |||
| 99e3ddb05a | |||
| 13a5cab2c1 | |||
| 125b711de2 | |||
| a267bb7d65 | |||
| c5b2f958c2 | |||
| 56b8b5470f | |||
| 15cbddb5b0 | |||
| c4bd64a559 | |||
| f4f7935cdc |
@@ -1,3 +1,7 @@
|
||||
2022-09-20 idk
|
||||
* improve compatibility with local service installs and with un-bundled installs side-by-side with bundled intalls
|
||||
* version 1.9.7
|
||||
|
||||
2022-09-18 idk
|
||||
* remove unstable/deprecated targets from Makefile.
|
||||
* make it fatal if a jpackaged I2P is not found, the profile launcher is now part of the jpackage
|
||||
|
||||
@@ -9,6 +9,7 @@ if [ -f i2pversion_override ]; then
|
||||
. "$SCRIPT_DIR/i2pversion_override"
|
||||
fi
|
||||
|
||||
mv "$SCRIPT_DIR/config_override.sh" "$SCRIPT_DIR/config_override.sh.bak"
|
||||
. "$SCRIPT_DIR/config.sh"
|
||||
|
||||
### How to set up this script:
|
||||
|
||||
+2
-2
@@ -2,13 +2,13 @@
|
||||
|
||||
JNA_VERSION=5.11.0
|
||||
export JNA_VERSION=5.11.0
|
||||
I2PFIREFOX_VERSION=0.0.34
|
||||
I2PFIREFOX_VERSION=0.0.36
|
||||
export I2PFIREFOX_VERSION=0.0.36
|
||||
# Comment this out to build from an alternate branch or
|
||||
# the tip of the master branch.
|
||||
VERSIONMAJOR=1
|
||||
VERSIONMINOR=9
|
||||
VERSIONBUILD=6
|
||||
VERSIONBUILD=7
|
||||
I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
|
||||
export I2P_VERSION="$VERSIONMAJOR.$VERSIONMINOR.$VERSIONBUILD"
|
||||
VERSION=i2p-jpackage-1.9.4
|
||||
|
||||
@@ -88,25 +88,6 @@ public class WinLauncher extends CopyConfigDir {
|
||||
File programs = programFile();
|
||||
File home = homeDir();
|
||||
|
||||
boolean continuerunning = promptServiceStartIfAvailable("i2p");
|
||||
if (!continuerunning) {
|
||||
logger.severe(
|
||||
"Service startup failure, please start I2P service with services.msc");
|
||||
System.exit(2);
|
||||
}
|
||||
continuerunning = promptUserInstallStartIfAvailable();
|
||||
if (!continuerunning) {
|
||||
logger.severe("User-install startup required.");
|
||||
System.exit(2);
|
||||
}
|
||||
|
||||
// This actually does most of what we use NSIS for if NSIS hasn't
|
||||
// already done it, which essentially makes this whole thing portable.
|
||||
if (!copyConfigDir()) {
|
||||
logger.severe("Cannot copy the configuration directory");
|
||||
System.exit(1);
|
||||
}
|
||||
|
||||
System.setProperty("i2p.dir.base", programs.getAbsolutePath());
|
||||
System.setProperty("i2p.dir.config", home.getAbsolutePath());
|
||||
System.setProperty("router.pid",
|
||||
@@ -122,6 +103,29 @@ public class WinLauncher extends CopyConfigDir {
|
||||
logger.info("\t" + System.getProperty("i2p.dir.base"));
|
||||
logger.info("\t" + System.getProperty("i2p.dir.config"));
|
||||
logger.info("\t" + System.getProperty("router.pid"));
|
||||
boolean continuerunning = promptServiceStartIfAvailable("i2p");
|
||||
if (!continuerunning) {
|
||||
logger.severe(
|
||||
"Service startup failure, please start I2P service with services.msc");
|
||||
System.exit(2);
|
||||
} else {
|
||||
fixServiceConfig();
|
||||
}
|
||||
continuerunning = promptUserInstallStartIfAvailable();
|
||||
if (!continuerunning) {
|
||||
logger.severe("User-install startup required.");
|
||||
System.exit(2);
|
||||
} else {
|
||||
fixServiceConfig();
|
||||
}
|
||||
|
||||
// This actually does most of what we use NSIS for if NSIS hasn't
|
||||
// already done it, which essentially makes this whole thing portable.
|
||||
if (!copyConfigDir()) {
|
||||
logger.severe("Cannot copy the configuration directory");
|
||||
System.exit(1);
|
||||
}
|
||||
|
||||
if (launchBrowser(privateBrowsing, usabilityMode, chromiumFirst,
|
||||
proxyTimeoutTime, newArgsList)) {
|
||||
System.exit(0);
|
||||
@@ -148,6 +152,51 @@ public class WinLauncher extends CopyConfigDir {
|
||||
i2pRouter.runRouter();
|
||||
}
|
||||
|
||||
private static void fixServiceConfig() {
|
||||
// If the user installed the Easy bundle before installing the
|
||||
// regulalr bundle, then they have a config file which contains the
|
||||
// wrong update URL. Check for it, and change it back if necessary.
|
||||
// closes #23
|
||||
i2pRouter = new Router(routerConfig(), System.getProperties());
|
||||
if (isInstalled("i2p") || checkProgramFilesInstall()) {
|
||||
String newsURL = i2pRouter.getConfigSetting("router.newsURL");
|
||||
if (newsURL != null) {
|
||||
if (newsURL.contains("win/beta")) {
|
||||
logger.info(
|
||||
"checked router.newsURL config, containes win/beta in a service install, invalid update type");
|
||||
if (i2pRouter.saveConfig("router.newsURL", ServiceUpdaterString())) {
|
||||
logger.info("updated routerconsole.browser config " +
|
||||
appImageExe());
|
||||
}
|
||||
}
|
||||
}
|
||||
String backupNewsURL = i2pRouter.getConfigSetting("router.backupNewsURL");
|
||||
if (backupNewsURL != null) {
|
||||
if (backupNewsURL.contains("win/beta")) {
|
||||
logger.info(
|
||||
"checked router.backupNewsURL config, containes win/beta in a service install, invalid update type");
|
||||
if (i2pRouter.saveConfig("router.backupNewsURL",
|
||||
ServiceBackupUpdaterString())) {
|
||||
logger.info("updated routerconsole.browser config " +
|
||||
appImageExe());
|
||||
}
|
||||
}
|
||||
}
|
||||
String updateURL = i2pRouter.getConfigSetting("router.updateURL");
|
||||
if (updateURL != null) {
|
||||
if (updateURL.contains("i2pwinupdate.su3")) {
|
||||
logger.info(
|
||||
"checked router.updateURL config, containes win/beta in a service install, invalid update type");
|
||||
if (i2pRouter.saveConfig("router.updateURL",
|
||||
ServiceStaticUpdaterString())) {
|
||||
logger.info("updated routerconsole.browser config " +
|
||||
appImageExe());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static void setupLauncher() {
|
||||
File jrehome = javaHome();
|
||||
logger.info("jre home is: " + jrehome.getAbsolutePath());
|
||||
|
||||
@@ -131,16 +131,17 @@ public class WindowsServiceUtil {
|
||||
// user can start the service themselves. OR maybe we ask for
|
||||
// elevation here? May need to refactor Elevator and Shell32X to
|
||||
// achieve it though
|
||||
ProcessBuilder pb = new ProcessBuilder("C:\\Windows\\System32\\services.msc");
|
||||
try{
|
||||
ProcessBuilder pb =
|
||||
new ProcessBuilder("C:\\Windows\\System32\\services.msc");
|
||||
try {
|
||||
Process p = pb.start();
|
||||
int exitCode = p.waitFor();
|
||||
if (exitCode != 0){
|
||||
if (exitCode != 0) {
|
||||
return false;
|
||||
}
|
||||
}catch(IOException e){
|
||||
} catch (IOException e) {
|
||||
return false;
|
||||
}catch(InterruptedException e){
|
||||
} catch (InterruptedException e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -154,27 +155,42 @@ public class WindowsServiceUtil {
|
||||
public static String ServiceUpdaterString() {
|
||||
return "http://tc73n4kivdroccekirco7rhgxdg5f3cjvbaapabupeyzrqwv5guq.b32.i2p/news.su3";
|
||||
}
|
||||
public static String ServiceBackupUpdaterString() {
|
||||
return "http://dn3tvalnjz432qkqsvpfdqrwpqkw3ye4n4i2uyfr4jexvo3sp5ka.b32.i2p/news.su3";
|
||||
}
|
||||
public static String ServiceStaticUpdaterString() {
|
||||
return "http://echelon.i2p/i2p/i2pupdate.sud,http://stats.i2p/i2p/i2pupdate.sud";
|
||||
}
|
||||
|
||||
public static String getProgramFilesInstall() {
|
||||
String programFiles = System.getenv("PROGRAMFILES");
|
||||
File programFilesI2P = new File(programFiles, "i2p/i2p.exe");
|
||||
if (programFilesI2P.exists())
|
||||
return programFilesI2P.getAbsolutePath();
|
||||
if (programFiles != null) {
|
||||
File programFilesI2P = new File(programFiles, "i2p/i2p.exe");
|
||||
if (programFilesI2P.exists())
|
||||
return programFilesI2P.getAbsolutePath();
|
||||
}
|
||||
String programFiles86 = System.getenv("PROGRAMFILES86");
|
||||
File programFiles86I2P = new File(programFiles86, "i2p/i2p.exe");
|
||||
if (programFiles86I2P.exists())
|
||||
return programFiles86I2P.getAbsolutePath();
|
||||
if (programFiles86 != null) {
|
||||
File programFiles86I2P = new File(programFiles86, "i2p/i2p.exe");
|
||||
if (programFiles86I2P.exists())
|
||||
return programFiles86I2P.getAbsolutePath();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static boolean checkProgramFilesInstall() {
|
||||
String programFiles = System.getenv("PROGRAMFILES");
|
||||
File programFilesI2P = new File(programFiles, "i2p/i2p.exe");
|
||||
if (programFilesI2P.exists())
|
||||
return true;
|
||||
if (programFiles != null) {
|
||||
File programFilesI2P = new File(programFiles, "i2p/i2p.exe");
|
||||
if (programFilesI2P.exists())
|
||||
return true;
|
||||
}
|
||||
String programFiles86 = System.getenv("PROGRAMFILES86");
|
||||
File programFiles86I2P = new File(programFiles86, "i2p/i2p.exe");
|
||||
if (programFiles86I2P.exists())
|
||||
return true;
|
||||
if (programFiles86 != null) {
|
||||
File programFiles86I2P = new File(programFiles86, "i2p/i2p.exe");
|
||||
if (programFiles86I2P.exists())
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -198,7 +214,9 @@ public class WindowsServiceUtil {
|
||||
return true;
|
||||
} else {
|
||||
try {
|
||||
Runtime.getRuntime().exec(getProgramFilesInstall());
|
||||
String pfi = getProgramFilesInstall();
|
||||
if (pfi != null)
|
||||
Runtime.getRuntime().exec(pfi);
|
||||
} catch (IOException e) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -1 +1 @@
|
||||
1.9.6
|
||||
1.9.7
|
||||
|
||||
@@ -221,19 +221,6 @@ Function installerFunction
|
||||
SetOutPath "$INSTDIR"
|
||||
|
||||
SetShellVarContext current
|
||||
Var /Global I2PAPPDATA
|
||||
|
||||
IfFileExists "$I2PINSTEXE\clients.config" 0 +2
|
||||
StrCpy $I2PAPPDATA "$I2PINSTEXE"
|
||||
IfFileExists "$APPDATA\I2P\clients.config.d" 0 +2
|
||||
StrCpy $I2PAPPDATA "$APPDATA\I2P\"
|
||||
IfFileExists "$LOCALAPPDATA\I2P\clients.config.d" 0 +2
|
||||
StrCpy $I2PAPPDATA "$LOCALAPPDATA\I2P\"
|
||||
IfFileExists "$LOCALAPPDATA\I2P\clients.config" 0 +2
|
||||
StrCpy $I2PAPPDATA "$LOCALAPPDATA\I2P\"
|
||||
|
||||
createDirectory "$I2PAPPDATA"
|
||||
SetOutPath "$I2PAPPDATA"
|
||||
|
||||
IfFileExists "$LOCALAPPDATA\I2P\eepsite\docroot" +2 0
|
||||
File /a /r "I2P\eepsite"
|
||||
|
||||
@@ -1 +1 @@
|
||||
!define I2P_VERSION 1.9.6
|
||||
!define I2P_VERSION 1.9.7
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
!define VERSIONMAJOR 1
|
||||
!define VERSIONMINOR 9
|
||||
!define VERSIONBUILD 6
|
||||
!define VERSIONBUILD 7
|
||||
|
||||
@@ -1 +1 @@
|
||||
1.9.6
|
||||
1.9.7
|
||||
|
||||
Reference in New Issue
Block a user