FROM debian:sid-slim
RUN set -ex; \
mkdir -p /usr/share/man/man1/; \
apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install --yes -o APT::Install-Suggests=false --no-install-recommends \
npm \
git \
g++ \
make \
node-gyp \
openjdk-8-jdk ; \
rm -rf /var/lib/apt/lists/*; \
useradd -ms /bin/bash appuser;
USER appuser
ENV NODE_ENV="development" \
ANDROID_SDK_ROOT="/home/appuser/app/sdk/" \
ANDROID_HOME="/home/appuser/app/sdk/" \
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/"
RUN set -ex; \
mkdir -p "/home/appuser/app/sdk/licenses" "/home/appuser/app/"; \
printf "\n24333f8a63b6825ea9c5514f83c2829b004d1fee" > "/home/appuser/app/sdk/licenses/android-sdk-license"; \
cd /home/appuser/app/; \
git clone https://github.com/samotari/crypto-terminal/;
WORKDIR /home/appuser/app/crypto-terminal/
RUN set -ex; \
git checkout 73a42c10551f6e5c558404a62038ce15682b9ad8; \
npm install; \
./node_modules/.bin/cordova telemetry off; \
npm run build;
Run:
podman run --rm --name cryptoterminal_build_apk_deb -ti cryptoterminal_build_apk_deb
in container run:
npm run prepare:android;
npm run android-generate-signing-key;
npm run build:prod;
npm run build:apk;
which fail with errors:
Discovered saved plugin "cz.blocshop.socketsforcordova". Adding it to the project
Failed to restore plugin "cz.blocshop.socketsforcordova" from config.xml. You might need to try adding it again. Error: Failed to fetch plugin https://github.com/chill117/sockets-for-cordova.git via registry.
Probably this is either a connection problem, or plugin spec is incorrect.
Check your connection and plugin name/version/URL.
Failed to restore plugin "cz.blocshop.socketsforcordova" from config.xml. You might need to try adding it again. Error: Failed to fetch plugin https://github.com/chill117/sockets-for-cordova.git via registry.
Probably this is either a connection problem, or plugin spec is incorrect.
Check your connection and plugin name/version/URL.
Error: npm: Command failed with exit code 235 Error output:
npm ERR! code EISDIR
npm ERR! syscall copyfile
npm ERR! path /home/appuser/app/crypto-terminal/node_modules/sockets-for-cordova
npm ERR! dest /home/appuser/app/crypto-terminal/node_modules/.sockets-for-cordova-jpdlnUaz
npm ERR! errno -21
npm ERR! EISDIR: illegal operation on a directory, copyfile '/home/appuser/app/crypto-terminal/node_modules/sockets-for-cordova' -> '/home/appuser/app/crypto-terminal/node_modules/.sockets-for-cordova-jpdlnUaz'
Tried to build the latest commit and check if the build is reproducible (compare to app downloaded from google-play or github release https://github.com/samotari/crypto-terminal/releases/download/v1.6.0/cryptoterminal-v1_6_0.apk ) & if not what the diff are, but failed to build the app with steps:
Compile with:
podman build --rm -t cryptoterminal_build_apk_deb -f Containerfile
Run:
podman run --rm --name cryptoterminal_build_apk_deb -ti cryptoterminal_build_apk_deb
in container run:
which fail with errors: