diff --git a/INSTALL-headless.txt b/INSTALL-headless.txt
index 03229c796..d4b066d73 100644
--- a/INSTALL-headless.txt
+++ b/INSTALL-headless.txt
@@ -1,12 +1,17 @@
Headless I2P installation instructions
-1) tar xjf i2p.tar.bz2 (you've already done this)
-2) cd i2p ; vi INSTALL-headless.txt (you're doing this now)
-3) sh postinstall.sh (this launches the router)
-4) lynx http://localhost:7657/index.jsp (configure the router)
+1) java -jar i2pinstall.exe -console (you've already done this)
-If you're having trouble, swing by http://forum.i2p.net/, check the
-website at http://www.i2p.net/, or get on irc://irc.freenode.net/#i2p
+This will run the installer in text mode, including running the postinstall.sh
+script, which will start the router and launch a browser.
+
+If you do not have an X server running, the browser launch will fail, and
+you may use:
+ lynx http://localhost:7657/index.jsp
+to configure the router.
+
+If you're having trouble, swing by http://forum.i2p2.de/, check the
+website at http://www.i2p2.de/, or get on irc://irc.freenode.net/#i2p
To run I2P explicitly:
(*nix): sh i2prouter start
diff --git a/INSTALL.txt b/INSTALL.txt
index 22f631bfe..15a962df2 100644
--- a/INSTALL.txt
+++ b/INSTALL.txt
@@ -6,16 +6,20 @@ and package up the appropriate installer by running:
ant pkg
This will produce a few key files:
-* i2p.tar.bz2: the headless installation
-* install.jar: the GUI installer
-* i2pupdate.zip: the update package
+* install.jar: the GUI and console installer
+* i2pinstall.exe: the GUI and console installer wrapped for cross-platform execution
+* i2pupdate.zip: the update package
-From there, you can follow the headless installation instructions
-with the headless installer, run the GUI installer, or deploy
-the update into an existing installation.
+From there, you can run the headless (console mode) installer:
+ java -jar i2pinstall.exe -console
+
+Or run the GUI installer:
+ java -jar i2pinstall.exe
+
+Or move the update file into an existing installation directory and restart.
You will need to have ant installed from http://ant.apache.org/
-(1.5 or newer)
+(1.7.0 or newer)
Supported JVMs:
Windows: Latest available from http://java.sun.com/ (1.5+ supported)
diff --git a/LICENSE.txt b/LICENSE.txt
index dd3b3c517..1ce8412e6 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -116,8 +116,9 @@ Installer:
Forms were created using Abeille Forms Designer (https://abeille.dev.java.net/)
- Izpack:
- See licenses/LICENSE-Apache1.1.txt
+ Izpack 4.3.0:
+ Copyright (c) 2001-2008 Julien Ponge
+ See licenses/LICENSE-Apache2.0.txt
diff --git a/apps/routerconsole/java/build.xml b/apps/routerconsole/java/build.xml
index da04fc9ba..d571e4809 100644
--- a/apps/routerconsole/java/build.xml
+++ b/apps/routerconsole/java/build.xml
@@ -75,8 +75,9 @@
+
+ basedir="../jsp/" excludes="web.xml, *.css, *.java, *.jsp, web-fragment.xml">
diff --git a/apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java
new file mode 100644
index 000000000..643c8c45c
--- /dev/null
+++ b/apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java
@@ -0,0 +1,20 @@
+package net.i2p.router.web;
+
+/**
+ * Copied and modded from I2PTunnel IndexBean (GPL)
+ * @author zzz
+ */
+public class CSSHelper extends HelperBase {
+ public CSSHelper() {}
+
+ public static final String PROP_THEME_NAME = "routerconsole.theme";
+ private static final String BASE = "/themes/console/";
+
+ public String getTheme() {
+ String url = BASE;
+ String theme = _context.getProperty(PROP_THEME_NAME);
+ if (theme != null)
+ url += theme + "/";
+ return url;
+ }
+}
diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NoticeHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/NoticeHelper.java
deleted file mode 100644
index d5ce2b0d9..000000000
--- a/apps/routerconsole/java/src/net/i2p/router/web/NoticeHelper.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package net.i2p.router.web;
-
-import net.i2p.data.DataHelper;
-import net.i2p.router.RouterContext;
-
-/**
- * Simple helper to query the appropriate router for data necessary to render
- * any emergency notices
- */
-public class NoticeHelper extends HelperBase {
- public String getSystemNotice() {
- if (true) return ""; // moved to the left hand nav
- if (_context.router().gracefulShutdownInProgress()) {
- long remaining = _context.router().getShutdownTimeRemaining();
- if (remaining > 0)
- return "Graceful shutdown in " + DataHelper.formatDuration(remaining);
- else
- return "Graceful shutdown imminent, please be patient as state is written to disk";
- } else {
- return "";
- }
- }
-}
diff --git a/apps/routerconsole/jsp/config.jsp b/apps/routerconsole/jsp/config.jsp
index ba95c8d56..933401913 100644
--- a/apps/routerconsole/jsp/config.jsp
+++ b/apps/routerconsole/jsp/config.jsp
@@ -3,7 +3,7 @@
I2P Router Console - config networking
-
+<%@include file="css.jsp" %>
<%@include file="nav.jsp" %>
diff --git a/apps/routerconsole/jsp/configadvanced.jsp b/apps/routerconsole/jsp/configadvanced.jsp
index d3bfbeea1..d2097c252 100644
--- a/apps/routerconsole/jsp/configadvanced.jsp
+++ b/apps/routerconsole/jsp/configadvanced.jsp
@@ -4,7 +4,7 @@
I2P Router Console - config advanced
-
+<%@include file="css.jsp" %>
<%@include file="nav.jsp" %>
diff --git a/apps/routerconsole/jsp/configclients.jsp b/apps/routerconsole/jsp/configclients.jsp
index 96916fff1..701e39aff 100644
--- a/apps/routerconsole/jsp/configclients.jsp
+++ b/apps/routerconsole/jsp/configclients.jsp
@@ -4,7 +4,7 @@
I2P Router Console - config clients
-
+<%@include file="css.jsp" %>