From 589bc86ef255ff722d4c14cb26ec937e11371713 Mon Sep 17 00:00:00 2001 From: Shin'ya Minazuki Date: Thu, 16 Apr 2026 09:20:47 -0300 Subject: [PATCH] Finally fix the dreaded packaging problem of net-im/deltachat-desktop-bin Signed-off-by: Shin'ya Minazuki --- net-im/deltachat-desktop-bin/Manifest | 2 + .../deltachat-desktop-bin-2.48.0-r1.ebuild | 29 +++-- .../deltachat-desktop-bin-2.49.0.ebuild | 120 ++++++++++++++++++ 3 files changed, 139 insertions(+), 12 deletions(-) create mode 100644 net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.49.0.ebuild diff --git a/net-im/deltachat-desktop-bin/Manifest b/net-im/deltachat-desktop-bin/Manifest index 2a8601f..f3c247d 100644 --- a/net-im/deltachat-desktop-bin/Manifest +++ b/net-im/deltachat-desktop-bin/Manifest @@ -1,2 +1,4 @@ DIST deltachat-desktop-2.48.0-arm64.tar.gz 145067886 BLAKE2B 216229f5213e32870c00c9babdd6fb92d06e13e069aca17a5b86884c66c4bdd48ce3d6312339d629104c1b2af1f7782fcca15aaacafd4949b257381c5549d66e SHA512 f3c1f52c5b6afe0afcf63a8940424c1f3af3569c4d6889fe84ad4e00b3da69dabc93762d7ef7cec941d4036363a7baff560596d48fa6ad8a288be13c5f52ead9 DIST deltachat-desktop-2.48.0.tar.gz 145311040 BLAKE2B 07c4f85bb61312d5c0905b910492fe8fc412ca570884e7b7f02a24dbdea70efcae25f856c517319fc08faddff61d72ffdb26516c97fc061e782727943eb65174 SHA512 cf2d46f7ef008810a9be24c3dcf4c53d1e55ab7d4e4ddf1d7514e02a335236a67f255bdbbba6be72e7692bcdd797e991078f4a2ea38be6c1329c69641c25accb +DIST deltachat-desktop-2.49.0-arm64.tar.gz 145090262 BLAKE2B a0d69ccb18051484512b53ba8eff9cd46215c743bb1f3ebfe84bb2392702094354df528ed3bc25a7103251a98354d30c701b62b642d069002471ff3b06af73e7 SHA512 a953a371ef4ad98d4cacee7ab9b5447cd06d00c3f198545b571ebbc180fe59ae548ef2f9b8996eb448275d13dd3923d2affe6554cc85eb7555c18077a39b2650 +DIST deltachat-desktop-2.49.0.tar.gz 145340382 BLAKE2B 63247cea6ca9c6d39504800a420da80f10b1c3a5e1046fff35830d67e52a0a786e715d0bfe5072af9fed56f14cb1d9d7f82246a65a67595c1c48664bf2967e70 SHA512 77399848fd9bc506641d6790a2e3afafee2d3840d3d79af513667d1e274fa0691b4482d6e16760fdfad85319131fe0a4f3f59005c3b2bcf0584fdd3656359606 diff --git a/net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.48.0-r1.ebuild b/net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.48.0-r1.ebuild index d786bb3..af23535 100644 --- a/net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.48.0-r1.ebuild +++ b/net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.48.0-r1.ebuild @@ -19,10 +19,8 @@ SRC_URI=" S="${WORKDIR}" -DELTACHAT_HOME="opt/${DC_PN}" IUSE="suid" - QA_PREBUILT=" opt/deltachat-desktop/deltachat-desktop opt/deltachat-desktop/libEGL.so @@ -91,7 +89,23 @@ src_install() { doins locales/*.pak insinto "/opt/${DC_PN}/resources" - doins -r resources/*.asar* + doins resources/app.asar + insinto "/opt/${DC_PN}/resources/app.asar.unpacked" + doins -r resources/app.asar.unpacked/html-dist/ + + if use amd64; then + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat" + doins -r resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-x64/ + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@parcel" + doins -r resources/app.asar.unpacked/node_modules/@parcel/watcher-linux-x64-glibc/ + fperms 0755 "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-x64/deltachat-rpc-server" + elif use arm64; then + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat" + doins -r resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-arm64/ + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@parcel" + doins -r resources/app.asar.unpacked/node_modules/@parcel/watcher-linux-arm64-glibc/ + fperms 0755 "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-arm64/deltachat-rpc-server" + fi insinto "/opt/${DC_PN}" doins *.pak *.bin *.dat @@ -100,15 +114,6 @@ src_install() { dosym -r "/opt/${DC_PN}/${DC_PN}" "/usr/bin/${DC_PN}" - rm -rf "${DELTACHAT_HOME}/resources/app.asar.unpacked/node_modules/@parcel/watcher-win32*" - rm -rf "${DELTACHAT_HOME}/resources/app.asar.unpacked/node_modules/@parcel/watcher-darwin*" - if use amd64; then - rm -rf "${DELTACHAT_HOME}/resources/app.asar.unpacked/node_modules/@parcel/watcher-linux-arm64*" - rm -rf "${DELTACHAT_HOME}/resources/app.asar.unpacked/node_modules/@parcel/watcher-linux-x64-musl*" - elif use arm64; then - rm -rf "${DELTACHAT_HOME}/resources/app.asar.unpacked/node_modules/@parcel/watcher-linux-x64*" - fi - make_desktop_entry "${DC_PN} --enable-features=WaylandWindowDecorations --ozone-platform-hint=auto %U" \ "Delta Chat" "${DC_PN}" "Network;InstantMessaging;" \ "StartupWMClass=DeltaChat" diff --git a/net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.49.0.ebuild b/net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.49.0.ebuild new file mode 100644 index 0000000..af23535 --- /dev/null +++ b/net-im/deltachat-desktop-bin/deltachat-desktop-bin-2.49.0.ebuild @@ -0,0 +1,120 @@ +# Copyright 2026 Shin'ya Minazuki +EAPI=8 + +inherit desktop xdg + +DESCRIPTION="Decentralized and secure messenger app (binary)" +HOMEPAGE="https://delta.chat" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="-* ~amd64 ~arm64" + +DC_PN="${PN%-bin}" + +SRC_URI=" + amd64? ( https://download.delta.chat/desktop/v${PV}/${DC_PN}-${PV}.tar.gz ) + arm64? ( https://download.delta.chat/desktop/v${PV}/${DC_PN}-${PV}-arm64.tar.gz ) +" + +S="${WORKDIR}" + +IUSE="suid" + +QA_PREBUILT=" + opt/deltachat-desktop/deltachat-desktop + opt/deltachat-desktop/libEGL.so + opt/deltachat-desktop/libffmpeg.so + opt/deltachat-desktop/libGLESv2.so + opt/deltachat-desktop/libvk_swiftshader.so + opt/deltachat-desktop/libvulkan.so.1 + opt/deltachat-desktop/resources/* +" + +RDEPEND=" + app-accessibility/at-spi2-core:2[X] + dev-libs/expat + dev-libs/fribidi + dev-libs/glib:2 + dev-libs/libpcre2 + dev-libs/libunistring + dev-libs/nettle + dev-libs/nspr + dev-libs/nss + dev-libs/wayland + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz + media-libs/libpng + net-dns/libidn2 + net-libs/gnutls + net-print/cups + sys-apps/dbus + sys-libs/glibc + virtual/jpeg + virtual/libudev + virtual/zlib + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3[X] + x11-libs/libX11 + x11-libs/libXau + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/libdrm + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/pango + x11-libs/pixman +" + +RESTRICT="mirror strip" + +src_install() { + if use amd64; then + cd deltachat-desktop-${PV} || die + elif use arm64; then + cd deltachat-desktop-${PV}-arm64 || die + fi + + newicon "${FILESDIR}/delta-chat.svg" "${DC_PN}.svg" + + insinto "/opt/${DC_PN}/locales" + doins locales/*.pak + + insinto "/opt/${DC_PN}/resources" + doins resources/app.asar + insinto "/opt/${DC_PN}/resources/app.asar.unpacked" + doins -r resources/app.asar.unpacked/html-dist/ + + if use amd64; then + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat" + doins -r resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-x64/ + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@parcel" + doins -r resources/app.asar.unpacked/node_modules/@parcel/watcher-linux-x64-glibc/ + fperms 0755 "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-x64/deltachat-rpc-server" + elif use arm64; then + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat" + doins -r resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-arm64/ + insinto "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@parcel" + doins -r resources/app.asar.unpacked/node_modules/@parcel/watcher-linux-arm64-glibc/ + fperms 0755 "/opt/${DC_PN}/resources/app.asar.unpacked/node_modules/@deltachat/stdio-rpc-server-linux-arm64/deltachat-rpc-server" + fi + + insinto "/opt/${DC_PN}" + doins *.pak *.bin *.dat + exeinto "/opt/${DC_PN}" + doexe *.so *.so.* "${DC_PN}" + + dosym -r "/opt/${DC_PN}/${DC_PN}" "/usr/bin/${DC_PN}" + + make_desktop_entry "${DC_PN} --enable-features=WaylandWindowDecorations --ozone-platform-hint=auto %U" \ + "Delta Chat" "${DC_PN}" "Network;InstantMessaging;" \ + "StartupWMClass=DeltaChat" +}