Files
protonmail-bridge/build/entrypoint.sh
T
GitHub Actions 7ee9b4aed8
Build and Push Docker Container / build-and-push (push) Successful in 5m29s
fixing error that can't get correct password manger and other errors
2026-03-10 10:20:13 +01:00

38 lines
1.1 KiB
Bash

#!/bin/bash
set -ex
# Initialize
if [[ $1 == init ]]; then
# Initialize pass
gpg --generate-key --batch /protonmail/gpgparams
pass init pass-key
# Kill the other instance as only one can be running at a time.
# This allows users to run entrypoint init inside a running conainter
# which is useful in a k8s environment.
# || true to make sure this would not fail in case there is no running instance.
pkill protonmail-bridge || true
# Login
/protonmail/proton-bridge --cli $@
else
export $(dbus-launch --sh-syntax --exit-with-session)
dbus-daemon --session --fork --print-address # keep it alive
# 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/proton-bridge --cli $@
fi