Browse Source

Working, ish

Rob Austein 5 years ago
parent
commit
d0eb10aebb
4 changed files with 36 additions and 7 deletions
  1. 10 6
      Dockerfile
  2. 22 0
      README.md
  3. 0 0
      icewm.menu
  4. 4 1
      startup.sh

+ 10 - 6
Dockerfile

@@ -6,6 +6,7 @@ RUN apt-get --yes update && apt-get --yes install --no-install-recommends \
     bzip2 \
     bzip2 \
     fonts-droid-fallback \
     fonts-droid-fallback \
     fonts-noto \
     fonts-noto \
+    icewm \
     libasound2 \
     libasound2 \
     libdbus-glib-1-2 \
     libdbus-glib-1-2 \
     libgtk-3-0 \
     libgtk-3-0 \
@@ -15,14 +16,16 @@ RUN apt-get --yes update && apt-get --yes install --no-install-recommends \
     x11-xserver-utils \
     x11-xserver-utils \
     xterm
     xterm
 
 
-COPY startup.sh ratpoisonrc waterfox*.tar.bz2 jre-*.tar.gz /
+COPY startup.sh waterfox*.tar.bz2 jre-*.tar.gz /root/
+COPY icewm.menu  /root/.icewm/menu
+COPY ratpoisonrc /root/.ratpoisonrc
 
 
 RUN set -x; \
 RUN set -x; \
     mkdir -p /usr/local/java && \
     mkdir -p /usr/local/java && \
-    tar -C /usr/local	   -xf	/waterfox*.tar.bz2 && \
-    rm -f			/waterfox*.tar.bz2 && \
-    tar -C /usr/local/java -xf	/jre-*.tar.gz && \
-    rm -f			/jre-*.tar.gz && \
+    tar -C /usr/local	   -xf	/root/waterfox*.tar.bz2 && \
+    rm -f			/root/waterfox*.tar.bz2 && \
+    tar -C /usr/local/java -xf	/root/jre-*.tar.gz && \
+    rm -f			/root/jre-*.tar.gz && \
     echo >>/etc/profile export JRE_HOME=`echo /usr/local/java/jre*` && \
     echo >>/etc/profile export JRE_HOME=`echo /usr/local/java/jre*` && \
     echo >>/etc/profile export 'PATH="$PATH:$JRE_HOME/bin"' && \
     echo >>/etc/profile export 'PATH="$PATH:$JRE_HOME/bin"' && \
     update-alternatives --install /usr/bin/java   java   /usr/local/java/jre*/bin/java   1 && \
     update-alternatives --install /usr/bin/java   java   /usr/local/java/jre*/bin/java   1 && \
@@ -31,6 +34,7 @@ RUN set -x; \
     update-alternatives --set javaws                     /usr/local/java/jre*/bin/javaws   && \
     update-alternatives --set javaws                     /usr/local/java/jre*/bin/javaws   && \
     ln -s /usr/local/waterfox/waterfox /usr/local/bin
     ln -s /usr/local/waterfox/waterfox /usr/local/bin
 
 
-CMD ["/startup.sh"]
+CMD   ["/root/startup.sh"]
+WORKDIR /root
 
 
 EXPOSE 5900
 EXPOSE 5900

+ 22 - 0
README.md

@@ -25,3 +25,25 @@ Oracle, get an account, and check through a license agreement, so I
 can't just give it away, you'll have to download the JRE yourself.
 can't just give it away, you'll have to download the JRE yourself.
 
 
 [Kate's reference on installing Java](https://www.wikihow.com/Install-Oracle-Java-on-Ubuntu-Linux)
 [Kate's reference on installing Java](https://www.wikihow.com/Install-Oracle-Java-on-Ubuntu-Linux)
+
+Even with this, Java still whines a lot when dealing with the kind of
+crappy old IPMI consoles that require this insanity in the first
+place.  Among other things, Java whines that the crappy Java app
+supplied by IPMI isn't signed properly (true), and therefore refuses
+to run it (why were we doing this again?).  Once one gets past that,
+one has to argue with Waterfox a bit to get it to believe that you
+want to use `javaws` as the launcher for `jnlp` files.
+
+You can bypass the Java whining by prepopulating
+`/root/.java/deployment/security/exception.sites` with a URL
+whitelist.  The format appears to be one URL per line, no comments or
+other formatting.  Example:
+
+```
+https://ipmi.foo.example.org
+https://ipmi.bar.example.org
+```
+
+There's probably some way to preset Waterfox's MIME handler for `jnlp`
+files to run `/usr/bin/javaws` but after working out all of the above
+I lack the patience to dig further today.

+ 0 - 0
menu → icewm.menu


+ 4 - 1
startup.sh

@@ -7,5 +7,8 @@ echo '' | vncpasswd -f >$HOME/.vnc/passwd
 chmod -R go= $HOME/.vnc
 chmod -R go= $HOME/.vnc
 
 
 vncserver $DISPLAY -geometry 1280x768 -depth 16 -nolisten tcp
 vncserver $DISPLAY -geometry 1280x768 -depth 16 -nolisten tcp
-ratpoison -f /ratpoisonrc
+
+#ratpoison
+icewm
+
 vncserver -kill $DISPLAY
 vncserver -kill $DISPLAY