Commit Graph
26 Commits
Author SHA1 Message Date
GuofangandClaude Sonnet 5.5 9a2b8b5db4 Add DuckDB build to debian13 and drop Boost submodule rule from AGENTS.md
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-24 14:30:19 +08:00
Guofang b3676923c3 Update CMake installation paths to use /usr/local for libraries and pkgconfig 2026-10-22 16:01:39 +08:00
Guofang 5222ae6843 Replace Rust installation with aria2 downloads from multiple mirrors 2026-10-22 14:40:05 +08:00
GuofangandClaude Sonnet 5.5 86f11507e1 Download gmp and nettle with aria2 using USTC and Tsinghua mirrors
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 12:14:46 +08:00
GuofangandClaude Sonnet 5.5 97dc5c4561 Download Boost with aria2 using two mirrors
Install aria2 in the image and fetch Boost from the Aliyun and official
mirrors, limited to one connection per host.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 12:14:46 +08:00
GuofangandClaude Sonnet 5.5 7f2ad60c18 Fix missing line continuation in Rust installation step
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 12:14:46 +08:00
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
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