forked from Mouws/protonmail-bridge-nextcoud-podman
Add build from source
This commit is contained in:
parent
cc6eba9bf2
commit
55175292b0
8
build/.dockerignore
Normal file
8
build/.dockerignore
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
*
|
||||||
|
|
||||||
|
!.dockerignore
|
||||||
|
!VERSION
|
||||||
|
!entrypoint.sh
|
||||||
|
!gpgparams
|
||||||
|
!Dockerfile
|
||||||
|
!build.sh
|
||||||
28
build/Dockerfile
Normal file
28
build/Dockerfile
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
FROM golang:1.13 AS build
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
RUN apt-get update && apt-get install -y libsecret-1-dev
|
||||||
|
|
||||||
|
# Build
|
||||||
|
WORKDIR /build/
|
||||||
|
COPY build.sh VERSION /build/
|
||||||
|
RUN bash build.sh
|
||||||
|
|
||||||
|
FROM ubuntu:20.04
|
||||||
|
LABEL maintainer="Xiaonan Shen <s@sxn.dev>"
|
||||||
|
|
||||||
|
EXPOSE 25/tcp
|
||||||
|
EXPOSE 143/tcp
|
||||||
|
|
||||||
|
# Install dependencies and protonmail bridge
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends socat pass libsecret-1-0 \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Copy bash scripts
|
||||||
|
COPY gpgparams entrypoint.sh /protonmail/
|
||||||
|
|
||||||
|
# Copy protonmail
|
||||||
|
COPY --from=build /build/proton-bridge/Desktop-Bridge /protonmail/
|
||||||
|
|
||||||
|
ENTRYPOINT ["bash", "/protonmail/entrypoint.sh"]
|
||||||
1
build/VERSION
Normal file
1
build/VERSION
Normal file
@ -0,0 +1 @@
|
|||||||
|
v1.2.7-live.1
|
||||||
16
build/build.sh
Normal file
16
build/build.sh
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
VERSION=`cat VERSION`
|
||||||
|
|
||||||
|
# Clone new code
|
||||||
|
git clone https://github.com/ProtonMail/proton-bridge.git
|
||||||
|
cd proton-bridge
|
||||||
|
git checkout $VERSION
|
||||||
|
|
||||||
|
# Enable debug log
|
||||||
|
sed -i "s/build desktop/-debug build desktop/" Makefile
|
||||||
|
|
||||||
|
# Build
|
||||||
|
make build-nogui
|
||||||
29
build/entrypoint.sh
Normal file
29
build/entrypoint.sh
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
# Initialize
|
||||||
|
if [[ $1 == init ]]; then
|
||||||
|
|
||||||
|
# Initialize pass
|
||||||
|
gpg --generate-key --batch /protonmail/gpgparams
|
||||||
|
pass init pass-key
|
||||||
|
|
||||||
|
# Login
|
||||||
|
/protonmail/Desktop-Bridge --cli
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
# socat will make the conn appear to come from 127.0.0.1
|
||||||
|
# ProtonMail Bridge currently expects that.
|
||||||
|
# It also allows us to bind to the real ports :)
|
||||||
|
socat TCP-LISTEN:25,fork TCP:127.0.0.1:1025 &
|
||||||
|
socat TCP-LISTEN:143,fork TCP:127.0.0.1:1143 &
|
||||||
|
|
||||||
|
# Start protonmail
|
||||||
|
# Fake a terminal, so it does not quit because of EOF...
|
||||||
|
rm -f faketty
|
||||||
|
mkfifo faketty
|
||||||
|
cat faketty | /protonmail/Desktop-Bridge --cli
|
||||||
|
|
||||||
|
fi
|
||||||
Loading…
Reference in New Issue
Block a user