From 18aeb624cdf922ca339f86cdd37e82f4a5663fa2 Mon Sep 17 00:00:00 2001
From: Paul Pham <148553+cryptogoth@users.noreply.github.com>
Date: Sat, 26 Dec 2020 21:22:31 -0500
Subject: [PATCH 1/2] Dockerfile and instructions for a verifiable build of
MultiBit Classic 0.5.19
---
Dockerfile | 11 +++++++++++
docker.md | 17 +++++++++++++++++
pom.xml | 8 ++++----
3 files changed, 32 insertions(+), 4 deletions(-)
create mode 100644 Dockerfile
create mode 100644 docker.md
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 000000000..616d64444
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,11 @@
+FROM mcr.microsoft.com/java/maven:11u9-zulu-debian10
+
+RUN apt update && apt install -y git
+RUN mkdir /src /build
+ADD pom.xml /pom.xml
+ADD src /src
+# RUN cd /src; git clone https://github.com/Multibit-Legacy/multibit.git
+RUN mvn package -Dmaven.test.skip=true
+RUN cp -prv target/multibit-exe.jar /build/
+
+ENTRYPOINT echo $(ls -lh target/multibit-exe.jar)
diff --git a/docker.md b/docker.md
new file mode 100644
index 000000000..723b3c1bc
--- /dev/null
+++ b/docker.md
@@ -0,0 +1,17 @@
+# Building MultiBit Classic in Docker
+
+The included `Dockerfile` allows verifiable building of the
+last release of MultiBit Classic.
+
+This is useful for recovering old
+Bitcoin wallets, exporting private keys, and importing it
+into a supported wallet, including Bitcoin forks.
+
+## Instructions
+
+```
+docker build . -t multibit:0.5.19
+docker create -ti --name dummy multibit:0.5.19 bash
+docker cp dummy:/target/multibit-exe.jar .
+java -jar .\multibit-exe.jar
+```
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index c2e17d267..51b620ac6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,7 +22,7 @@
4.0.0
org.multibit
multibit
- 0.5.19
+ 0.5.18
MultiBit
A Java Swing client for Bitcoin
https://multibit.org
@@ -253,10 +253,10 @@
com.google.protobuf:protobuf-java:2.4.1:jar:null:compile:0c589509ec6fd86d5d2fda37e07c08538235d3b9
- com.google.zxing:core:1.6:jar:null:compile:f6d1452ca591861d139c8d5b82a75444b7c2434a
+ com.google.zxing:core:1.7:jar:null:compile:f6d1452ca591861d139c8d5b82a75444b7c2434a
- com.google.zxing:javase:1.6:jar:null:compile:a247611f2d7decb734c6eb796b02b902341312e3
+ com.google.zxing:javase:1.7:jar:null:compile:a247611f2d7decb734c6eb796b02b902341312e3
com.lambdaworks:scrypt:1.3.2:jar:null:compile:b144d80b2b915a900730dd156ae749a88c0e2555
@@ -415,7 +415,7 @@
com.google.zxing
javase
- 1.6
+ 1.7
com.google.guava
From 0db349ea42119ff8324ac8d3f7d082528045bf25 Mon Sep 17 00:00:00 2001
From: Paul Pham <148553+cryptogoth@users.noreply.github.com>
Date: Sat, 26 Dec 2020 21:46:38 -0500
Subject: [PATCH 2/2] Instructions for pulling a prebuilt image.
---
docker.md | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/docker.md b/docker.md
index 723b3c1bc..a85692df2 100644
--- a/docker.md
+++ b/docker.md
@@ -7,11 +7,31 @@ This is useful for recovering old
Bitcoin wallets, exporting private keys, and importing it
into a supported wallet, including Bitcoin forks.
-## Instructions
+You can build the image from scratch, or pull a pre-built
+image from DockerHub, then continue to the last section
+for copying out the built Java JAR executable.
+
+## Instructions for Building
+
+If you'd like to build this from scratch after
+examining `Dockerfile`:
+
+```
+docker build . -t /multibit:0.5.19
+```
+
+## Instructions for Pulling
+
+```
+docker pull cryptogoth/multibit:0.5.19
+```
+
+## Instructions for Running Executable
```
-docker build . -t multibit:0.5.19
docker create -ti --name dummy multibit:0.5.19 bash
docker cp dummy:/target/multibit-exe.jar .
java -jar .\multibit-exe.jar
-```
\ No newline at end of file
+```
+
+Enjoy.
\ No newline at end of file