commit:     2bd084d33405f55015fc67a3a64e4c122005dac5
Author:     Filip Kobierski <fkobi <AT> pm <DOT> me>
AuthorDate: Sun Jun  8 12:15:38 2025 +0000
Commit:     Dennis Lamm <expeditioneer <AT> gentoo <DOT> org>
CommitDate: Mon Jun  9 07:19:07 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2bd084d3

mail-mta/proton-mail-bridge: add 3.20.0-r1 with minor improvements

- make primary LICENSE the first
- add conditional re2 dependency
- add Changelog.md to installed DOCS

Closes: https://bugs.gentoo.org/955072
Signed-off-by: Filip Kobierski <fkobi <AT> pm.me>
Part-of: https://github.com/gentoo/gentoo/pull/42498
Signed-off-by: Dennis Lamm <expeditioneer <AT> gentoo.org>

 .../proton-mail-bridge-3.20.0-r1.ebuild            | 120 +++++++++++++++++++++
 1 file changed, 120 insertions(+)

diff --git a/mail-mta/proton-mail-bridge/proton-mail-bridge-3.20.0-r1.ebuild 
b/mail-mta/proton-mail-bridge/proton-mail-bridge-3.20.0-r1.ebuild
new file mode 100644
index 000000000000..1d9078270c02
--- /dev/null
+++ b/mail-mta/proton-mail-bridge/proton-mail-bridge-3.20.0-r1.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake desktop go-env go-module systemd xdg-utils
+
+MY_PN="${PN/-mail/}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Serves Proton Mail to IMAP/SMTP clients"
+HOMEPAGE="https://proton.me/mail/bridge 
https://github.com/ProtonMail/proton-bridge/";
+SRC_URI="https://github.com/ProtonMail/${MY_PN}/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tar.gz"
+SRC_URI+=" 
https://dev.gentoo.org/~expeditioneer/distfiles/${CATEGORY}/${PN}/${P}-vendor.tar.xz";
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-3+ Apache-2.0 BSD BSD-2 ISC LGPL-3+ MIT MPL-2.0 Unlicense"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gui"
+
+# Quite a few tests require Internet access
+PROPERTIES="test_network"
+RESTRICT="test"
+
+RDEPEND="
+       app-crypt/libsecret
+       gui? (
+               >=dev-libs/protobuf-21.12:=
+               dev-libs/re2:=
+               >=dev-libs/sentry-native-0.6.5-r1
+               dev-qt/qtbase:6=[gui,icu,widgets]
+               dev-qt/qtdeclarative:6=[widgets]
+               dev-qt/qtsvg:6=
+               media-libs/mesa
+               net-libs/grpc:=
+       )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.15.1-gui_gentoo.patch
+)
+
+DOCS=( {README,Changelog}.md )
+
+src_unpack() {
+       default
+
+       if [[ -d "${WORKDIR}"/vendor ]]; then # if we ship the dependencies
+               mv "${WORKDIR}"/vendor "${S}"/vendor || die # move them into 
the tree
+       fi
+
+       go-env_set_compile_environment
+}
+
+src_prepare() {
+       xdg_environment_reset
+       default
+       if use gui; then
+               # prepare desktop file
+               local desktopFilePath="${S}"/dist/${MY_PN}.desktop
+               sed -i 's/protonmail/proton-mail/g' ${desktopFilePath} || die
+               sed -i 
's/Exec=proton-mail-bridge/Exec=proton-mail-bridge-gui/g' ${desktopFilePath} || 
die
+
+               # build GUI
+               local PATCHES=()
+               BUILD_DIR="${WORKDIR}"/gui_build \
+                       
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
+                       cmake_src_prepare
+       fi
+}
+
+src_configure() {
+       if use gui; then
+               local mycmakeargs=(
+                       -DBRIDGE_APP_FULL_NAME="Proton Mail Bridge"
+                       -DBRIDGE_APP_VERSION="${PV}+git"
+                       -DBRIDGE_REPO_ROOT="${S}"
+                       -DBRIDGE_TAG="NOTAG"
+                       -DBRIDGE_VENDOR="Gentoo Linux"
+                       -DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF
+               )
+               BUILD_DIR="${WORKDIR}"/gui_build \
+                       
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
+                       cmake_src_configure
+       fi
+}
+
+src_compile() {
+       emake -Onone build-nogui
+
+       if use gui; then
+               BUILD_DIR="${WORKDIR}"/gui_build \
+                       
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
+                       cmake_src_compile
+       fi
+}
+
+src_test() {
+       emake -Onone test
+}
+
+src_install() {
+       exeinto /usr/bin
+       newexe bridge ${PN}
+
+       if use gui; then
+               BUILD_DIR="${WORKDIR}"/gui_build \
+                       
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
+                       cmake_src_install
+               mv "${ED}"/usr/bin/bridge-gui "${ED}"/usr/bin/${PN}-gui || die
+               newicon {"${S}"/dist/bridge,${PN}}.svg
+               newmenu {dist/${MY_PN},${PN}}.desktop
+       fi
+
+       systemd_newuserunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
+
+       einstalldocs
+}

Reply via email to