packaging: bump Docker + AUR to v5.9.20
Docker: - Dockerfile now extracts from cryptographic-triangles-daemon_5.9.20_amd64.deb (release no longer ships raw linux-x64 binaries) - Multi-stage build with .deb extraction - Includes triangles-cli alongside trianglesd - LD_LIBRARY_PATH wrapper for the bundled lib/ dir AUR: - Bump triangles-qt-bin to 5.9.20 - Switch from raw linux-x64 binary download (no longer published) to extracting the official .deb packages - Bundle version-pinned libs in /opt/triangles/lib - Add triangles-cli to provides
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
pkgbase = triangles-qt-bin
|
||||
pkgdesc = Cryptographic Triangles (TRI) cryptocurrency wallet - Qt GUI
|
||||
pkgver = 5.9.20
|
||||
pkgrel = 1
|
||||
url = https://cryptographic-triangles.org
|
||||
arch = x86_64
|
||||
license = MIT
|
||||
depends = qt5-base
|
||||
depends = openssl
|
||||
depends = boost-libs
|
||||
depends = db
|
||||
depends = leveldb
|
||||
depends = libevent
|
||||
depends = miniupnpc
|
||||
depends = tor
|
||||
optdepend = tor: anonymous networking support
|
||||
provides = triangles-qt
|
||||
provides = trianglesd
|
||||
provides = triangles-cli
|
||||
conflicts = triangles-qt
|
||||
conflicts = trianglesd
|
||||
conflicts = triangles-cli
|
||||
source = https://github.com/SamiAhmed7777/triangles_v5/releases/download/v5.9.20/cryptographic-triangles_5.9.20_amd64.deb
|
||||
source = https://github.com/SamiAhmed7777/triangles_v5/releases/download/v5.9.20/cryptographic-triangles-daemon_5.9.20_amd64.deb
|
||||
source = triangles-qt.desktop
|
||||
sha256sums = b4afcf758f55c8fb256f4742917971414078ce37c0fe346383ccda5251917bde
|
||||
sha256sums = 068d015cf73206f3f3604b0c8fbf60db307c20234cbe06e236996fb9a336df51
|
||||
sha256sums = SKIP
|
||||
|
||||
pkgname = triangles-qt-bin
|
||||
+57
-14
@@ -1,6 +1,6 @@
|
||||
# Maintainer: Cryptographic Triangles Team
|
||||
# Maintainer: Sami Ahmed <https://github.com/SamiAhmed7777>
|
||||
pkgname=triangles-qt-bin
|
||||
pkgver=5.5.6
|
||||
pkgver=5.9.20
|
||||
pkgrel=1
|
||||
pkgdesc="Cryptographic Triangles (TRI) cryptocurrency wallet - Qt GUI"
|
||||
arch=('x86_64')
|
||||
@@ -8,21 +8,64 @@ url="https://cryptographic-triangles.org"
|
||||
license=('MIT')
|
||||
depends=('qt5-base' 'openssl' 'boost-libs' 'db' 'leveldb' 'libevent' 'miniupnpc' 'tor')
|
||||
optdepends=('tor: anonymous networking support')
|
||||
provides=('triangles-qt' 'trianglesd')
|
||||
conflicts=('triangles-qt' 'trianglesd')
|
||||
provides=('triangles-qt' 'trianglesd' 'triangles-cli')
|
||||
conflicts=('triangles-qt' 'trianglesd' 'triangles-cli')
|
||||
source=(
|
||||
"triangles-qt-${pkgver}::https://github.com/SamiAhmed7777/triangles_v5/releases/download/v${pkgver}/Cryptographic-Triangles-v${pkgver}-linux-x64-qt"
|
||||
"trianglesd-${pkgver}::https://github.com/SamiAhmed7777/triangles_v5/releases/download/v${pkgver}/Cryptographic-Triangles-v${pkgver}-linux-x64-daemon"
|
||||
"https://github.com/SamiAhmed7777/triangles_v5/releases/download/v${pkgver}/cryptographic-triangles_${pkgver}_amd64.deb"
|
||||
"https://github.com/SamiAhmed7777/triangles_v5/releases/download/v${pkgver}/cryptographic-triangles-daemon_${pkgver}_amd64.deb"
|
||||
"triangles-qt.desktop"
|
||||
)
|
||||
sha256sums=(
|
||||
'ed220eb8d0b403f62cdac28988541fd1a27864491e233216f9c00a4c2537b4a3'
|
||||
'4d2ab25d61127d6aff3e6f3069556d04f4b823f8849e97629c12871ad4779517'
|
||||
'SKIP'
|
||||
)
|
||||
sha256sums=('b4afcf758f55c8fb256f4742917971414078ce37c0fe346383ccda5251917bde'
|
||||
'068d015cf73206f3f3604b0c8fbf60db307c20234cbe06e236996fb9a336df51'
|
||||
'SKIP')
|
||||
|
||||
prepare() {
|
||||
cd "$srcdir"
|
||||
# Qt GUI + bundled Qt/libs come from the full wallet .deb
|
||||
ar x "cryptographic-triangles_${pkgver}_amd64.deb"
|
||||
tar --use-compress-program=unzstd -xf data.tar.zst
|
||||
rm -f control.tar.zst data.tar.zst debian-binary
|
||||
|
||||
# Headless daemon + JSON-RPC client come from the daemon .deb
|
||||
ar x "cryptographic-triangles-daemon_${pkgver}_amd64.deb"
|
||||
tar --use-compress-program=unzstd -xf data.tar.zst
|
||||
rm -f control.tar.zst data.tar.zst debian-binary
|
||||
}
|
||||
|
||||
package() {
|
||||
install -Dm755 "triangles-qt-${pkgver}" "${pkgdir}/usr/bin/triangles-qt"
|
||||
install -Dm755 "trianglesd-${pkgver}" "${pkgdir}/usr/bin/trianglesd"
|
||||
install -Dm644 "triangles-qt.desktop" "${pkgdir}/usr/share/applications/triangles-qt.desktop"
|
||||
cd "$srcdir"
|
||||
|
||||
# Install the actual binaries to /opt/triangles
|
||||
install -dm755 "${pkgdir}/opt/triangles"
|
||||
install -m755 usr/lib/cryptographic-triangles/triangles-qt \
|
||||
"${pkgdir}/opt/triangles/triangles-qt"
|
||||
install -m755 usr/lib/cryptographic-triangles/trianglesd \
|
||||
"${pkgdir}/opt/triangles/trianglesd"
|
||||
install -m755 usr/lib/cryptographic-triangles/triangles-cli \
|
||||
"${pkgdir}/opt/triangles/triangles-cli"
|
||||
|
||||
# Install bundled shared libraries to /opt/triangles/lib.
|
||||
# Many are version-pinned (librocksdb.so.6.11, libgflags.so.2.2,
|
||||
# libdb_cxx-5.3.so, libboost_program_options.so.1.74.0) and are not
|
||||
# available at the right version on Arch, so we ship them ourselves.
|
||||
install -dm755 "${pkgdir}/opt/triangles/lib"
|
||||
# Use GUI .deb libs (it has the full Qt set + everything daemon needs)
|
||||
install -m644 usr/lib/cryptographic-triangles/lib/* \
|
||||
"${pkgdir}/opt/triangles/lib/"
|
||||
|
||||
# Wrapper scripts in /usr/bin set LD_LIBRARY_PATH and exec the real binary.
|
||||
# System Qt5/openssl/etc. are still on the default loader path and take
|
||||
# precedence for libs NOT in our private directory.
|
||||
install -dm755 "${pkgdir}/usr/bin"
|
||||
for bin in triangles-qt trianglesd triangles-cli; do
|
||||
install -m755 /dev/stdin "${pkgdir}/usr/bin/${bin}" <<EOF
|
||||
#!/bin/bash
|
||||
export LD_LIBRARY_PATH=/opt/triangles/lib\${LD_LIBRARY_PATH:+:\${LD_LIBRARY_PATH}}
|
||||
exec /opt/triangles/${bin} "\$@"
|
||||
EOF
|
||||
done
|
||||
|
||||
# .desktop file
|
||||
install -Dm644 triangles-qt.desktop \
|
||||
"${pkgdir}/usr/share/applications/triangles-qt.desktop"
|
||||
}
|
||||
|
||||
+41
-23
@@ -1,39 +1,57 @@
|
||||
FROM ubuntu:22.04 AS builder
|
||||
|
||||
ARG VERSION=5.9.20
|
||||
ARG DEB_URL=https://github.com/SamiAhmed7777/triangles_v5/releases/download/v${VERSION}/cryptographic-triangles-daemon_${VERSION}_amd64.deb
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
curl ca-certificates binutils zstd && \
|
||||
curl -fsSL -o /tmp/triangles.deb "${DEB_URL}" && \
|
||||
cd /tmp && ar x /tmp/triangles.deb && \
|
||||
tar --use-compress-program=unzstd -xf data.tar.zst && \
|
||||
rm -f /tmp/triangles.deb /tmp/control.tar.zst /tmp/debian-binary /tmp/data.tar.zst
|
||||
|
||||
# ---------- Runtime ----------
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ARG VERSION=5.9.20
|
||||
|
||||
LABEL maintainer="Cryptographic Triangles Team"
|
||||
LABEL description="Cryptographic Triangles (TRI) headless daemon"
|
||||
LABEL version="5.7.6"
|
||||
|
||||
ARG VERSION=5.7.6
|
||||
LABEL version="${VERSION}"
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
curl \
|
||||
ca-certificates \
|
||||
libssl3 \
|
||||
libevent-2.1-7 \
|
||||
libboost-system1.74.0 \
|
||||
libboost-filesystem1.74.0 \
|
||||
libboost-program-options1.74.0 \
|
||||
libboost-thread1.74.0 \
|
||||
libboost-chrono1.74.0 \
|
||||
libdb5.3++ \
|
||||
libminiupnpc17 \
|
||||
tor \
|
||||
ca-certificates \
|
||||
libssl3 \
|
||||
libevent-2.1-7 \
|
||||
libboost-system1.74.0 \
|
||||
libboost-filesystem1.74.0 \
|
||||
libboost-program-options1.74.0 \
|
||||
libboost-thread1.74.0 \
|
||||
libboost-chrono1.74.0 \
|
||||
libdb5.3++ \
|
||||
libminiupnpc17 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN curl -L -o /usr/local/bin/trianglesd \
|
||||
"https://github.com/SamiAhmed7777/triangles_v5/releases/download/v${VERSION}/Cryptographic-Triangles-v${VERSION}-linux-x64-daemon" \
|
||||
&& chmod +x /usr/local/bin/trianglesd
|
||||
COPY --from=builder /tmp/usr/lib/cryptographic-triangles/ /opt/triangles/
|
||||
COPY --from=builder /tmp/usr/bin/trianglesd /usr/local/bin/trianglesd
|
||||
COPY --from=builder /tmp/usr/bin/triangles-cli /usr/local/bin/triangles-cli
|
||||
|
||||
RUN useradd -m -s /bin/bash triangles
|
||||
# Wrapper sets LD_LIBRARY_PATH so the dynamic libs resolve
|
||||
RUN printf '#!/bin/bash\nexport LD_LIBRARY_PATH=/opt/triangles/lib:${LD_LIBRARY_PATH}\nexec /opt/triangles/%s "$@"\n' trianglesd \
|
||||
> /usr/local/bin/trianglesd-wrap && \
|
||||
printf '#!/bin/bash\nexport LD_LIBRARY_PATH=/opt/triangles/lib:${LD_LIBRARY_PATH}\nexec /opt/triangles/%s "$@"\n' triangles-cli \
|
||||
> /usr/local/bin/triangles-cli-wrap && \
|
||||
mv /usr/local/bin/trianglesd-wrap /usr/local/bin/trianglesd && \
|
||||
mv /usr/local/bin/triangles-cli-wrap /usr/local/bin/triangles-cli && \
|
||||
chmod +x /usr/local/bin/trianglesd /usr/local/bin/triangles-cli
|
||||
|
||||
RUN useradd -m -s /bin/bash triangles && \
|
||||
mkdir -p /home/triangles/.triangles && \
|
||||
chown -R triangles:triangles /home/triangles
|
||||
|
||||
USER triangles
|
||||
WORKDIR /home/triangles
|
||||
|
||||
RUN mkdir -p /home/triangles/.triangles
|
||||
|
||||
VOLUME /home/triangles/.triangles
|
||||
|
||||
EXPOSE 24112 19112
|
||||
|
||||
ENTRYPOINT ["trianglesd"]
|
||||
|
||||
Reference in New Issue
Block a user