aports/community/ceph19/APKBUILD
2025-05-11 11:08:10 +00:00

774 lines
21 KiB
Text

# Contributor: John Coyle <dx9err@gmail.com>
# Contributor: Iggy Jackson <iggy@kws1.com>
# Contributor: Duncan Bellamy <dunk@denkimushi.com>
# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
_pkgname=ceph
pkgver=19.2.2
pkgrel=2
_majorver=${pkgver%%.*}
pkgname=$_pkgname$_majorver
pkgdesc="Ceph is a distributed object store and file system, version $_majorver"
pkgusers="ceph"
pkggroups="ceph"
url="https://ceph.io/en/"
# 32-bit: needs more patching specific to 32bit builds
arch="all !armhf !armv7 !x86"
# https://github.com/ceph/ceph/blob/master/COPYING
license="LGPL-2.1-only AND BSD-3-Clause AND CC-BY-SA-3.0 AND BSL-1.0 AND Apache-2.0 AND MIT AND CC0-1.0"
depends="$pkgname-mds=$pkgver-r$pkgrel $pkgname-mgr=$pkgver-r$pkgrel $pkgname-mon=$pkgver-r$pkgrel $pkgname-osd=$pkgver-r$pkgrel"
builddir="$srcdir/ceph-$pkgver"
_lua=5.4
_base_deps="
cryptsetup
e2fsprogs
logrotate
parted
psmisc
xfsprogs
"
_osd_daemon_deps="fuse snappy lz4-libs"
_osd_tools_deps="lz4-libs"
_ceph_volume_deps="$pkgname-common=$pkgver-r$pkgrel $pkgname-osd-tools=$pkgver-r$pkgrel lvm2 py3-$pkgname-common=$pkgver-r$pkgrel"
_ceph_test_deps="
gtest-dev
py3-coverage
py3-flake8
py3-nodeenv
py3-pytest
py3-tox
py3-yaml
xmlstarlet
"
_dashboard_deps="
py3-bcrypt-ceph
py3-cherrypy
py3-more-itertools
py3-openssl
py3-prettytable
py3-requests
py3-routes
py3-yaml
"
_mgr_modules_deps="
py3-bcrypt-ceph
py3-cherrypy
py3-dateutil
py3-natsort
py3-openssl
py3-pecan
py3-requests
py3-werkzeug
"
_arrow_deps="apache-arrow-dev c-ares-dev re2-dev"
# TODO
#_crimson_deps="gnutls-dev libucontext-dev lksctp-tools-dev numactl-dev protobuf-dev ragel valgrind-dev yaml-cpp-dev"
makedepends="
acl-dev
argp-standalone
bc
boost-dev
btrfs-progs
bzip2-dev
cmake
coreutils
cryptsetup-dev
cunit-dev
curl-dev
cython
diffutils
doxygen
eudev-dev
expat-dev
fcgi-dev
flex
fuse-dev
git
graphviz-dev
gperf
isa-l-dev
jq
keyutils-dev
libaio-dev
libatomic_ops-dev
libcap-dev
libcap-ng-dev
libedit-dev
librdkafka-dev
libnl3-dev
libtirpc-dev
libtool
liburing-dev
libxml2-dev
linux-headers
lmdb-dev
lua$_lua-dev
lvm2-dev
lz4-dev
nasm
nodejs
npm
nss-dev
oath-toolkit-dev
openldap-dev
openssl-dev>3
procps
python3-dev
py3-setuptools
py3-sphinx
rabbitmq-c-dev
readline-dev
rocksdb7-dev
rpcgen
samurai
snappy-dev
sqlite-dev
userspace-rcu-dev
util-linux-dev
xfsprogs-dev
xxhash-dev
yarn
zstd-dev
$_dashboard_deps
$_mgr_modules_deps
$_base_deps
$_osd_daemon_deps
$_osd_tools_deps
$_ceph_volume_deps
$_ceph_test_deps
$_arrow_deps
"
case "$CARCH" in
aarch64|x86_64) makedepends="$makedepends isa-l_crypto-dev" ;;
esac
source="https://download.ceph.com/tarballs/ceph-$pkgver.tar.gz
ceph.confd
ceph.initd
10-isal_crypto.patch
10-isal.patch
10-musl-fixes.patch
10-xxhash.patch
11-dump_time_header_impl.patch
11-lfs.patch
11-parse_rfc1123_alt.patch
21-yarn.patch
35-fix_ErasureCodeShec.patch
47-bcrypt.patch
48-arrow.patch
gcc13.patch
boost-url.patch
ppc64le.patch
py3-importlib-metadata-5.0.0.patch
ceph-19.2.2-py313-1.patch
ceph-19.2.2-py313-2.patch
ceph-19.2.2-py313-3.patch
"
# to prevent things from installing wrong ceph libs, since they have the same SOMAJOR
sonameprefix="ceph$_majorver:"
options="!check" # todo
subpackages="
$pkgname-doc
$pkgname-base
$pkgname-common
$pkgname-mds
$pkgname-mgr-diskprediction-local:mgr_diskpredicton_local:noarch
$pkgname-mgr-modules-core:mgr_modules_core:noarch
$pkgname-mgr-rook:mgr_rook:noarch
$pkgname-mgr-k8events:mgr_k8events:noarch
$pkgname-mgr
$pkgname-mon::noarch
$pkgname-mon-daemon:mon_daemon
$pkgname-mon-tools:mon_tools
$pkgname-mount:ceph_mount
$pkgname-fuse:ceph_fuse
$pkgname-openrc
$pkgname-osd::noarch
$pkgname-osd-daemon:osd_daemon
$pkgname-osd-tools:osd_tools
$pkgname-volume:ceph_volume:noarch
$pkgname-radosgw
$pkgname-bash-completion:bash_completion:noarch
$pkgname-dev
$pkgname-user::noarch
$pkgname-utils
$pkgname-cephadm::noarch
cephfs$_majorver-mirror:mirror
cephfs$_majorver-shell:shell:noarch
cephfs$_majorver-top:top:noarch
rbd-fuse$_majorver:rbd_fuse
rbd-mirror$_majorver:rbd_mirror
rbd-nbd$_majorver:rbd_nbd
librbd$_majorver:librbd
libcephfs$_majorver:libcephfs
libcephsqlite$_majorver:libcephsqlite
librados$_majorver:librados
py3-rados$_majorver:_py3_rados
libradosstriper$_majorver:libradosstriper
py3-rbd$_majorver:_py3_rbd
py3-cephfs$_majorver:_py3_cephfs
py3-$pkgname-common:_py3_ceph_common:noarch
"
case "$CARCH" in
riscv64) ;;
*) subpackages="$pkgname-mgr-dashboard:mgr_dashboard:noarch $subpackages" ;;
esac
# Whether this package is the default (latest) ceph version.
_default_ceph="yes"
if [ "$_default_ceph" = yes ]; then
provides="ceph=$pkgver-r$pkgrel"
replaces="ceph"
subpackages="$subpackages ceph-dev:_dev"
_libdir=""
else
_libdir=/ceph$_majorver
fi
_ceph_uid=167
_ceph_gid=167
_py3_sitelib() {
python3 -c "import site; print(site.getsitepackages()[0])"
}
prepare() {
default_prepare
rm -r src/isa-l
rm -r src/xxHash
rm -r src/seastar
}
build() {
export CEPH_BUILD_VIRTUALENV="$builddir"
export CFLAGS="${CFLAGS/-fno-plt} -O2 -DNDEBUG"
export CXXFLAGS="${CXXFLAGS/-fno-plt} -O2 -DNDEBUG -Wno-deprecated-declarations -fno-permissive"
case "$CARCH" in
riscv64) local _dash="OFF" ;;
*) local _dash="ON" ;;
esac
cmake -B build -G Ninja -Wno-dev \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=/usr/lib$_libdir \
-DCMAKE_INSTALL_LOCALSTATEDIR=/var \
-DCMAKE_INSTALL_SYSCONFDIR=/etc \
-DNINJA_MAX_COMPILE_JOBS=$JOBS \
-DALLOCATOR=libc \
-DENABLE_GIT_VERSION=OFF \
-DLUA_LIBRARIES=/usr/lib/lua"$_lua"/liblua.so \
-DWITH_BABELTRACE=OFF \
-DWITH_JAEGER=OFF \
-DWITH_LTTNG=OFF \
-DWITH_MANPAGE=ON \
-DWITH_MGR_DASHBOARD_FRONTEND="$_dash" \
-DWITH_PYTHON3=3 \
-DWITH_RADOSGW_AMQP_ENDPOINT=OFF \
-DWITH_RADOSGW_SELECT_PARQUET=ON \
-DWITH_RADOSGW_POSIX=OFF \
-DWITH_RDMA=OFF \
-DWITH_REENTRANT_STRSIGNAL=ON \
-DWITH_SEASTAR=OFF \
-DWITH_SPDK=OFF \
-DWITH_SYSTEMD=OFF \
-DWITH_CEPHFS_SHELL=ON \
-DWITH_SYSTEM_ARROW=ON \
-DWITH_SYSTEM_BOOST=ON \
-DWITH_SYSTEM_FMT=OFF \
-DWITH_SYSTEM_LIBURING=ON \
-DWITH_SYSTEM_NPM=ON \
-DWITH_SYSTEM_ROCKSDB=ON \
-DWITH_SYSTEM_ZSTD=ON \
-DWITH_QATLIB=OFF \
-DWITH_QATZIP=OFF \
-DWITH_TESTS="$(want_check && echo ON || echo OFF)" \
-DWITH_THREAD_SAFE_RES_QUERY=ON
export NODE_OPTIONS="--openssl-legacy-provider"
cmake --build build --target common-options-objs
cmake --build build
}
package() {
DESTDIR="$pkgdir" cmake --install build
# remove the upstream init file and put in openrc ones
rm -f "$pkgdir"/etc/init.d/ceph
install -D -m 755 "$srcdir"/"$_pkgname".initd "$pkgdir"/etc/init.d/ceph
install -D -m 644 "$srcdir"/"$_pkgname".confd "$pkgdir"/etc/conf.d/ceph
# move mount.* binaries to /sbin
mkdir -p "$pkgdir"/sbin
mv "$pkgdir"/usr/sbin/mount.* "$pkgdir"/sbin
install -m 644 -D src/etc-rbdmap "$pkgdir"/etc/ceph/rbdmap
install -m 644 -D src/logrotate.conf "$pkgdir"/etc/logrotate.d/ceph
install -m 644 -D etc/sysctl/90-ceph-osd.conf "$pkgdir"/etc/sysctl.d/90-ceph-osd.conf
# udev rules
install -m 644 -D udev/50-rbd.rules "$pkgdir"/usr/lib/udev/rules.d/50-rbd.rules
# sudoers.d
install -m 600 -D sudoers.d/ceph-smartctl "$pkgdir"/etc/sudoers.d/ceph-smartctl
# delete systemd related stuff
rm -f "$pkgdir"/usr/sbin/ceph-volume-systemd
# move docs to docs
mkdir -p "$pkgdir"/usr/share/doc/ceph/dashboard
mv "$pkgdir"/usr/share/ceph/mgr/dashboard/*.rst "$pkgdir"/usr/share/doc/ceph/dashboard/
mv "$pkgdir"/usr/share/ceph/mgr/cephadm/HACKING.rst "$pkgdir"/usr/share/doc/ceph/cephadm-HACKING.rst
}
check() {
cd "$builddir"/build
ctest
}
_dev() {
mkdir -p "$subpkgdir"
depends="$pkgname-dev=$pkgver-r$pkgrel"
}
# This subpackage is a little weird and a side effect of trying to keep
# the daemon packages as small as possible. We might be able to roll this into
# the base/common package later if we can slim those down or break them up in a
# different way
user() {
pkgdesc="Minimal package to create a user for other ceph packages."
depends=""
install="$pkgname-user.pre-install"
_default_replace_majorversion
mkdir -p "$subpkgdir"
}
base() {
pkgdesc="Base is the package that includes all the files shared amongst ceph servers"
depends="$_base_deps
$pkgname-user=$pkgver-r$pkgrel
$pkgname-common=$pkgver-r$pkgrel
librbd$_majorver=$pkgver-r$pkgrel
librados$_majorver=$pkgver-r$pkgrel
libcephfs$_majorver=$pkgver-r$pkgrel
"
_default_replace_majorversion
amove usr/bin/ceph-crash \
usr/bin/crushtool \
usr/bin/*maptool \
usr/bin/ceph-kvstore-tool \
usr/bin/ceph-run \
usr/sbin/ceph-create-keys \
usr/libexec/ceph/ceph_common.sh \
usr/lib/rados-classes/*.so* \
usr/lib/ceph/erasure-code/libec_*.so* \
usr/lib/ceph/compressor/libceph_*.so* \
usr/lib/ceph/crypto/libceph_*.so* \
usr/lib/ceph/extblkdev/*.so* \
etc/logrotate.d/ceph
for dir in crash crash/posted tmp bootstrap-osd bootstrap-mds \
bootstrap-rgw bootstrap-mgr bootstrap-rbd \
bootstrap-rbd-mirror; do
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph/$dir
done
}
common() {
pkgdesc="Common utilities to mount and interact with a ceph storage cluster."
depends="py3-cephfs$_majorver=$pkgver-r$pkgrel
py3-prettytable
py3-rados$_majorver=$pkgver-r$pkgrel
py3-rbd$_majorver=$pkgver-r$pkgrel
"
_default_replace_majorversion
amove usr/bin/ceph \
usr/bin/ceph-authtool \
usr/bin/ceph-conf \
usr/bin/ceph-rbdnamer \
usr/bin/rados \
usr/bin/rbd \
usr/bin/rbdmap \
usr/share/ceph/*.ceph.com* \
etc/ceph/rbdmap
amove "$(_py3_sitelib)"/ceph_argparse.py* "$(_py3_sitelib)"/ceph_daemon.py*
amove usr/lib/udev/rules.d/50-rbd.rules
install -m 3770 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/log/ceph
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph
}
mds() {
pkgdesc="Metadata server daemon for the Ceph distributed file system."
depends="$pkgname-base=$pkgver-r$pkgrel"
_default_replace_majorversion
amove usr/bin/ceph-mds
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph/mds
}
mon() {
pkgdesc="Cluster monitor daemon virtual package for the Ceph distributed file system."
depends="$pkgname-base=$pkgver-r$pkgrel
$pkgname-mon-daemon=$pkgver-r$pkgrel
$pkgname-mon-tools=$pkgver-r$pkgrel
"
_default_replace_majorversion
mkdir -p "$subpkgdir"
}
mon_daemon() {
pkgdesc="Cluster monitor daemon for the Ceph distributed file system."
depends="$pkgname-user=$pkgver-r$pkgrel"
_default_replace_majorversion
amove usr/bin/ceph-mon
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph/mon
}
mon_tools() {
pkgdesc="Cluster monitor tools for the Ceph distributed file system."
depends=
_default_replace_majorversion
amove usr/bin/ceph-monstore-tool
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph/mon
}
ceph_fuse() {
pkgdesc="FUSE based client for Ceph distributed network file system."
depends=
_default_replace_majorversion
amove usr/bin/ceph-fuse sbin/mount.fuse.ceph
}
ceph_mount() {
pkgdesc="CephFS mount tools"
depends="librados$_majorver=$pkgver-r$pkgrel"
_default_replace_majorversion
amove sbin/mount.ceph
}
rbd_fuse() {
pkgdesc="FUSE based client to map Ceph rbd images to files."
depends=
_default_replace_majorversion
amove usr/bin/rbd-fuse
}
rbd_mirror() {
pkgdesc="Daemon for mirroring RBD images between Ceph clusters."
depends="$pkgname-common=$pkgver-r$pkgrel"
_default_replace_majorversion
amove usr/bin/rbd-mirror
}
rbd_nbd() {
pkgdesc="NBD based client to map Ceph rbd images to local device."
depends=
_default_replace_majorversion
amove usr/bin/rbd-nbd
}
radosgw() {
pkgdesc="Rados REST gateway which implements Amazon's S3 and OpenStack's Swift APIs."
depends="$pkgname-common=$pkgver-r$pkgrel oath-toolkit-liboath"
_default_replace_majorversion
amove usr/bin/radosgw*
amove usr/bin/rgw-*
mkdir -p "$subpkgdir"/var/lib/ceph/radosgw
}
osd() {
pkgdesc="Object storage daemon virtual package for the Ceph distributed file system."
depends="$pkgname-osd-daemon=$pkgver-r$pkgrel
$pkgname-osd-tools=$pkgver-r$pkgrel
$pkgname-volume=$pkgver-r$pkgrel"
_default_replace_majorversion
mkdir -p "$subpkgdir"
}
osd_daemon() {
pkgdesc="Object storage daemon for the Ceph distributed file system."
depends="$_osd_daemon_deps $pkgname-user=$pkgver-r$pkgrel"
_default_replace_majorversion
amove usr/bin/ceph-osd \
usr/libexec/ceph/ceph-osd-prestart.sh \
etc/sudoers.d/ceph-smartctl \
etc/sysctl.d/90-ceph-osd.conf
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph/osd
}
osd_tools() {
pkgdesc="Object storage daemon tools for the Ceph distributed file system."
depends="$pkgname-base=$pkgver-r$pkgrel $_osd_tools_deps"
_default_replace_majorversion
amove usr/bin/ceph-clsinfo usr/bin/ceph-*-tool
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph/osd
}
ceph_volume() {
pkgdesc="ceph-volume tool for the Ceph distributed file system."
depends="$_ceph_volume_deps"
_default_replace_majorversion
amove usr/sbin/ceph-volume \
"$(_py3_sitelib)"/ceph_volume "$(_py3_sitelib)"/ceph_volume-*
}
librados() {
pkgdesc="RADOS distributed object store client library"
depends=
_default_replace_majorversion
amove usr/lib/librados.so.* usr/lib/ceph/libceph-common.so.*
}
_py3_rados() {
pkgdesc="Python libraries for the RADOS object store"
depends=py3-$pkgname-common=$pkgver-r$pkgrel
_default_replace_majorversion
amove "$(_py3_sitelib)"/rados*
}
libradosstriper() {
pkgdesc="RADOS striping library"
depends=
_default_replace_majorversion
amove usr/lib/libradosstriper.so.*
}
librbd() {
pkgdesc="RADOS block device client library"
depends=
_default_replace_majorversion
amove usr/lib/librbd.so.*
}
_py3_rbd() {
pkgdesc="Python libraries for the RADOS block device"
depends="py3-rados$_majorver=$pkgver-r$pkgrel"
_default_replace_majorversion
amove "$(_py3_sitelib)"/rbd*
}
libcephsqlite() {
pkgdesc="SQLite Virtual File System (VFS) on top of RADOS"
depends=
_default_replace_majorversion
amove usr/lib/libcephsqlite.so*
}
libcephfs() {
pkgdesc="Ceph distributed file system client library"
depends=
_default_replace_majorversion
amove usr/lib/libcephfs.so.*
}
mirror() {
pkgdesc="daemon for mirroring CephFS directory snapshots between Ceph clusters"
depends=
_default_replace_majorversion
amove /usr/bin/cephfs-mirror
}
shell() {
pkgdesc="interactive shell for the Ceph distributed file system"
depends="py3-rados$_majorver=$pkgver-r$pkgrel"
_default_replace_majorversion
amove "$(_py3_sitelib)"/cephfs_shell*
amove /usr/bin/cephfs-shell
}
top() {
pkgdesc="top like utility to display various filesystem metrics in realtime"
depends="py3-rados$_majorver=$pkgver-r$pkgrel"
_default_replace_majorversion
amove "$(_py3_sitelib)"/cephfs_top*
amove /usr/bin/cephfs-top
}
_py3_cephfs() {
pkgdesc="Python libraries for Ceph distributed file system"
depends="py3-rados$_majorver=$pkgver-r$pkgrel"
_default_replace_majorversion
amove "$(_py3_sitelib)"/cephfs*
}
_py3_ceph_common() {
pkgdesc="Python dependencies for $pkgname distributed file system"
depends="py3-setuptools py3-yaml"
_default_replace_majorversion
amove "$(_py3_sitelib)"/ceph-*.egg-info "$(_py3_sitelib)"/ceph
}
utils() {
pkgdesc="Ceph utils and recovery tools"
depends="$pkgname-common=$pkgver-r$pkgrel"
_default_replace_majorversion
amove usr/bin/ceph-diff-sorted \
usr/bin/ceph-post-file \
usr/bin/ceph-syn \
usr/bin/cephfs-data-scan \
usr/bin/ceph-dencoder \
usr/lib/ceph/denc \
usr/bin/cephfs-journal-tool \
usr/bin/cephfs-table-tool \
usr/bin/rbd-replay* \
usr/bin/crushdiff
}
bash_completion() {
pkgdesc="Bash completions for Ceph"
depends=
_default_replace_majorversion
install_if="ceph=$pkgver-r$pkgrel bash-completion"
amove etc/bash_completion.d/*
}
mgr_dashboard() {
pkgdesc="Dashboard module for ceph-mgr"
depends="
$pkgname-common=$pkgver-r$pkgrel
$pkgname-mgr=$pkgver-r$pkgrel
$_dashboard_deps
"
_default_replace_majorversion
amove usr/share/ceph/mgr/dashboard
}
mgr_diskpredicton_local() {
pkgdesc="diskprediction-local module for ceph-mgr"
depends="$pkgname-mgr=$pkgver-r$pkgrel
py3-numpy
py3-scikit-learn
py3-scipy
"
_default_replace_majorversion
amove usr/share/ceph/mgr/diskprediction_local
}
mgr_modules_core() {
pkgdesc="ceph manager modules which are always enabled"
depends="
$_mgr_modules_deps
"
_default_replace_majorversion
local _mod="alerts balancer crash devicehealth influx insights iostat localpool mirroring nfs orchestrator \
osd_perf_query osd_support pg_autoscaler progress prometheus rbd_support restful selftest snap_schedule \
stats status telegraf telemetry test_orchestrator volumes zabbix"
for _m in ${_mod}; do
amove usr/share/ceph/mgr/"$_m"
done
}
mgr_rook() {
pkgdesc="rook module for ceph-mgr"
depends="$pkgname-mgr=$pkgver-r$pkgrel
py3-jsonpatch
py3-kubernetes"
_default_replace_majorversion
amove usr/share/ceph/mgr/rook
}
mgr_k8events() {
pkgdesc="kubernetes events module for ceph-mgr"
depends="$pkgname-mgr=$pkgver-r$pkgrel
py3-kubernetes
py3-yaml"
_default_replace_majorversion
amove usr/share/ceph/mgr/k8sevents
}
mgr() {
pkgdesc="Ceph Manager Daemon"
depends="$pkgname-base=$pkgver-r$pkgrel
$pkgname-mgr-modules-core=$pkgver-r$pkgrel"
_default_replace_majorversion
amove usr/bin/ceph-mgr usr/share/ceph/mgr
install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
"$subpkgdir"/var/lib/ceph/mgr
}
cephadm() {
pkgdesc="cephadm tool $pkgver"
depends="lvm2"
_default_replace_majorversion
amove usr/sbin/cephadm
}
_default_replace_majorversion() {
if [ "$_default_ceph" = "yes" ]; then
local stripped="${subpkgname/"$_majorver"/}"
# we want to replace both the generic name (ceph-) and the prior major (ceph1X-)
replaces="$stripped ${subpkgname/"$_majorver"/"$(( _majorver - 1 ))"}"
provides="$stripped=$pkgver-r$pkgrel"
fi
}
sha512sums="
ee47c1cb7cb5084b87bcc5a35b3df88fb49683524bba8f2e1ced9d2f8891af53e4b5fb5aa153ed6bce31683625d9bf5176bab9f55bc71671f0e34667948f7285 ceph-19.2.2.tar.gz
110bdbcb40216c7ed155a8d23020784741b4992d895f4f04a146d275506e4e68053854d3b063b41e9c9b3e3e4f95b6b90602f92c185c853c0d8f47ad0c6b7121 ceph.confd
ce5f162501f6b67fe254546dddf880d1a5b1d1a0fa69e0b1918de17e8da45c5c6124512b8cbd98b76f29d931403de0d11c5ffd330ed8ee1f4dc75bb04baecae3 ceph.initd
3b5d0e7082755598c0f8d5a3bc26bcecd2dd110d80a4dfb0673568b837b8e4a565ec41742a43ffbd992538756ac1fc819f115544c5878bbbc0c0864aef4aef5f 10-isal_crypto.patch
439f39e62468c55654156832041acb1eec4cf1204c8e7c5a7530974461eb864d5c3a4615ce4baff9633de39d02c8a88965c5407961fd455708d378f46ecc13e1 10-isal.patch
94687578411bf0de1b17555ed81c188c88ea63ac4a25993bd8fde9cf68afbbfbdec7b2d7c54fdcfbd4aed4eb78754e8061c308955596cbe037ff15b575874cc6 10-musl-fixes.patch
54ff5e84b3b6fea2e259b74d4cba9c0bedda89ad6b11ec8be24507bca1c6175912b71b9006ea616af8d7527ae7339c24d74c68b4379ebc110b1315d0e3d47f85 10-xxhash.patch
211e6f5f8fc962878196ec917984781eb4a8a9495bcc8d1729b34ac66abd2d4a0b7388ae2caee9d5deb664d54860d120a37215924625e82eac9bfca16179667a 11-dump_time_header_impl.patch
149cdeccedcd9cf951769814a93b2eea654fd98361853ae040c18862e133c4419d3cf0de2d77dc5328e9c437122424159c6384c74e55e297309f58ae9933e36f 11-lfs.patch
253a7bf9fa6a68547f2c9269570be86aa659ef75ab0ed4c9d1a53be70de1ca6079508f19fe5ddb02ed9edda349e121037f8ed4d6b5b0e640edaab863ce6b280d 11-parse_rfc1123_alt.patch
b947a8f13e08b1cfaad82906ac04fa875c651cff660e64c43c7ba52eedb2a79fb2dc276f8e3ac9ee7d1264414bcee78640ec0cfc31600394313ddb0c6baf76c8 21-yarn.patch
abb3cab9c01cc3d6d42a9858678059a8c9c43bda2649bf97b489fdc205eb10ae27f9fb7302062e0fb41f5cffddbfc2ae529130569034f373732a0a5d33aba86e 35-fix_ErasureCodeShec.patch
71ffe6f3263b3546bb3d3593981a288ee8136d44f8c1e734ecfae65b71ea3f7c91e6040c337f237fa41269328378c955e93ed13b9d35e0ad8efd785b75d0f595 47-bcrypt.patch
df20d148f0a2aec170d2ef5afa2fda30ecb2f91ea206d00556736936529fa8ef8b47c6e6b88f29a4d779a025612fe0d1ea964316f46d61cc557ea07aaa8274d6 48-arrow.patch
afef1cc7e43f500d95d2ffd1687cfcb756e9d8dec729186a25d513d4401b38f00edac922562a161575b1da1a65ded3e99d01cf34f9bc329f6d08cf2b896acd0c gcc13.patch
8290fdfe74573ad5558066425f59185230f040e01c6a5437116b27715914dc56fda86a1b73fbed7abf727a574f1d50fe643c62958d9ce7162e769b6eaf880d80 boost-url.patch
c2e047da6f721bf64053571bbad60c5948a2bfd7c28f01b4816a274c2f0b8a60812344030d9b2cfd224edaf54fcfa94858d7ba5d3c0d3e2519585f3e61d34cda ppc64le.patch
bf088eeeac8554a66012f076745714326ab31632021ca2eeffa3b525bfa7fa5263096f2b0e0157e16c50c77ecf8b7771ee388e9472852e6860b160e1417e7ee1 py3-importlib-metadata-5.0.0.patch
bdb5e3bc3e2449b92570ddd2874982f4286ab3406a149d222d4ad4d6362ae3d20c519999b83efea4febab1cf01522b0bee9c0334cd059394e54004def14658e9 ceph-19.2.2-py313-1.patch
e393c7754c9977a3aeba85db29d4b9ed66a1687cc7d164849af50030a2c55ee5980a2619deb0e80395cde9679982fc42cf77e28e6c4242a6e4819ded6dee5e07 ceph-19.2.2-py313-2.patch
780f327b6d86511eb8128b4742a082d79ab617fbb11203090e01bd0b35ba887d9f33ef515f35d4d2fbee36d28a63548591b4a5ea8dd42aee0a93cb6b849e32e4 ceph-19.2.2-py313-3.patch
"