Commit Graph
21 Commits
Author SHA1 Message Date
Guofang dd06661179 Add Rust installation with USTC mirrors and symlink binaries in Dockerfile 2026-09-24 15:32:18 +08:00
GuofangandClaude Opus 5.5 aa85a6f77b Build Apache Arrow and Parquet from source in debian13 image
Add pinned xsimd 14.2.0, Apache Thrift v0.22.0 (C++ library only),
Snappy 1.2.2, LZ4 v1.10.0, and Apache Arrow 25.0.1 with Parquet as
static PIC builds. Arrow uses ARROW_DEPENDENCY_SOURCE=SYSTEM so no
dependencies are fetched implicitly, disables the bundled jemalloc and
mimalloc allocators, and enables Parquet encryption via OpenSSL.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01M5XtQocmT1zExJBt4oh3YK
2026-09-24 15:17:12 +08:00
Guofang 3a0bb4e0c8 Add 'which' package to installation in Dockerfiles for Debian and Rocky9 2026-09-20 14:26:26 +08:00
Guofang 524b90737e Refactor build scripts to consistently use Podman for image building 2026-09-18 09:52:47 +08:00
GuofangandClaude Sonnet 5 52ea874506 Fetch debian13 sources via curl and unify libs under lib/x86_64-linux-gnu
Mirrors rocky9's curl-based fetching and consistent-libdir goals but
adapted to Debian's own conventions: replaces git clone with curl
tarball downloads (matching rocky9's URLs), drops sha256sum checks, and
installs every vendored library under /usr/local/lib/x86_64-linux-gnu
instead of rocky9's lib64.

lib64 was tried first but abandoned: on Debian, CMake's find_package()
Config-mode search, find_library(), and pkg-config's default search
path all detect /etc/debian_version and never look in lib64 (that's an
RHEL-only default), so cross-package lookups like spdlog finding fmt
or folly's FindLibEvent.cmake kept failing. lib/x86_64-linux-gnu is
Debian's native multiarch path and is found by all three mechanisms
with no extra CMAKE_PREFIX_PATH/PKG_CONFIG_PATH workarounds, verified
by building the full image end to end.

libevent-lib64-install.patch is renamed and retargeted at
lib/x86_64-linux-gnu since libevent hardcodes "lib" in its CMake
install rules with no override flag. CacheLib keeps building its
default interface/cachebench targets (no patch needed here, unlike
rocky9).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UV2yJRkL6CnChX3D2zhoXH
2026-09-17 16:48:53 +08:00
GuofangandClaude Sonnet 5 e685a177d5 Enable jemalloc heap profiling with libunwind backtraces
Build libunwind 1.8.3 as a static library before jemalloc, then
configure jemalloc with --enable-prof --enable-prof-libunwind so the
static libjemalloc.a can dump heap profiles with accurate stack
traces.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Sd7pBDVxQENBX1CP2z6Lip
2026-09-17 13:59:41 +08:00
GuofangandClaude Sonnet 5 30f1a3f771 Use wangguofang.net proxy and Tsinghua mirror for GitHub and libaio downloads
Switches the remaining gh-proxy.com references (rockylinux9, debian13) to
wangguofang.net for consistency with alpine3.24, and points the libaio
0.3.113 download at the Tsinghua mirror instead of releases.pagure.org for
faster access from mainland China.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019T6ypNZ1EUpKJQkXLopojx
2026-09-14 16:09:12 +08:00
Guofang 0852115a0e Update log4cplus clone URL to use GitHub instead of Gitee 2026-09-14 16:00:31 +08:00
GuofangandClaude Sonnet 5 3c1f37e1d5 Add libproxyprotocol to the Debian, Rocky, and Alpine build environments
Upstream ships only a Makefile with no install target, so each image
compiles src/proxy_protocol.c with -fPIC, archives it into
libproxyprotocol.a, and installs the header manually, matching this
project's static-PIC-library convention.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016Xj6cCTEVsr5PM43uTsbq8
2026-09-14 15:15:52 +08:00
Guofang e384a71dc9 Add epel-release and makeself to Dockerfile dependencies 2026-09-10 13:54:57 +08:00
Guofang 056b7dc854 Add CXXFLAGS to jemalloc configuration for static build 2026-09-10 08:48:50 +08:00
GuofangandClaude Sonnet 5 951ebf0907 Build jemalloc from source instead of via package manager
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QKAbAkPvqqKCRZKXtZAvTx
2026-09-07 13:03:27 +08:00
Guofang 3cbeb5340c Fix RapidJSON compatibility with newer compilers 2026-08-31 17:10:02 +08:00
Guofang eac0b8df0d Use USTC mirror for Nettle source 2026-08-28 09:52:56 +08:00
Guofang 79bcac2040 Use USTC mirror for GMP source 2026-08-28 09:51:25 +08:00
Guofang 3e8418da24 Use Ninja for CMake builds 2026-08-28 09:17:33 +08:00
Guofang 03fb4aece5 build: use autotools for libyaml 2026-08-28 08:59:17 +08:00
Guofang ebf0867db6 build: add redis-plus-plus 2026-08-25 14:35:49 +08:00
Guofang 68d8bfef21 Update RapidJSON version in Dockerfiles and included libraries 2026-08-19 11:07:27 +08:00
Guofang 3d679d8682 Add Zstd and zlib installation to Dockerfiles and update dependencies 2026-08-13 15:58:09 +08:00
Guofang 2a96844f99 Initial commit 2026-08-13 15:50:03 +08:00