I can help provide the prebuilt binaries in the arch4edu repository. If the PKGBUILD works then the binaries will be in the repository tommorow.
Build log: https://github.com/arch4edu/cactus/actions/runs/3150309101/jobs/5122945341
Git Clone URL: | https://aur.archlinux.org/ceph.git (read-only, click to copy) |
---|---|
Package Base: | ceph |
Description: | Ceph Storage python library for libcephfs |
Upstream URL: | https://ceph.com/ |
Licenses: | GPL-2.0-or-later OR LGPL-2.1-or-later OR LGPL-3.0-or-later |
Submitter: | foxxx0 |
Maintainer: | pbazaah |
Last Packager: | pbazaah |
Votes: | 7 |
Popularity: | 0.147730 |
First Submitted: | 2022-08-08 09:09 (UTC) |
Last Updated: | 2025-02-13 18:29 (UTC) |
« First ‹ Previous 1 .. 6 7 8 9 10 11 12 Next › Last »
I can help provide the prebuilt binaries in the arch4edu repository. If the PKGBUILD works then the binaries will be in the repository tommorow.
Build log: https://github.com/arch4edu/cactus/actions/runs/3150309101/jobs/5122945341
I've pushed the first functional version of this package to AUR now.
That is: 15.2.14-9 can actually be built. I'm currently building the binaries for ceph-bin, and should hopefully get that out today, too; for those who don't want to build ceph from source.
What still needs to be done at this point:
I find the last PKGBUILD for ceph 15.2.7 in the official repository and change it to ceph-octopus
. You can focus on upgrading to 16.x or even 17.x now.
Also I find a way to bypass the previous error by set WITH_TESTS=OFF
.
ceph doesn't exist in the official repository anymore. See https://archlinux.org/packages/?q=ceph .
And I tried to solve the error I get. It seems to be a new error about boost asio. I find a similar issue at https://github.com/yandex/ozo/issues/127 . But I'm not familiar to boost and the solution is quite complicated.
Hi,
You'll need to bare with me at the moment as I'm currently quite busy with my day job.
I have a suggestion which is creating packages like ceph-octopus to provide ceph=15 and ceph-pacific to provide ceph=16 and so on. And ceph always provides the latest.
I simply don't have a bandwidth to maintain more than one version of ceph, particularly due to archlinux's rolling release.
However, you are welcome to fork the origin repo and use the release/15.2.14 branch link as a base for your own packages.
Also, the build fails with the current PKGBUILD:
Yes, upstream (aur) has not been updated yet to my working PKGBUILD, see:
Here's what still needs to be done: - Push the latest changes to aur.archlinux.org -- blocked until community/ceph is removed
I have not checked recently if the maintainers have finally removed community/ceph, but I'll look into this once work has calmed done a bit (probably next week/end)
I'd love to see version-specific packages like ceph-octopus and ceph-pacific as @petronny suggested.
I'm also hopeful that there will be a libvirt-storage-rbd AUR package to make use of ceph from libvirt, as the official package for that also disappeared due to the policy against official packages being dependent on AUR packages.
Also, the build fails with the current PKGBUILD:
In file included from /usr/include/boost/asio/io_context.hpp:22,^M
from /build/ceph/src/ceph-15.2.14/src/common/async/yield_context.h:19,^M
from /build/ceph/src/ceph-15.2.14/src/rgw/rgw_dmclock_scheduler.h:21,^M
from /build/ceph/src/ceph-15.2.14/src/rgw/rgw_dmclock_sync_scheduler.h:18,^M
from /build/ceph/src/ceph-15.2.14/src/test/rgw/test_rgw_dmclock_scheduler.cc:17:^M
/usr/include/boost/asio/async_result.hpp: In instantiation of ‘struct boost::asio::async_completion<boost::asio::basic_yield_context<boost::asio::executor>, void(boost::system::error_code, crimson::dmclock::PhaseType)>’:^M
/build/ceph/src/ceph-15.2.14/src/rgw/rgw_dmclock_async_scheduler.h:132:61: required from ‘auto rgw::dmclock::AsyncScheduler::async_request(const rgw::dmclock::client_id&, const crimson::dmclock::ReqParams&, const crimson::dmclock::Time&, crimson::dmclock::Cost, CompletionToken&&) [with CompletionToken = boost::asio::basic_yield_context<boost::asio::executor>; crimson::dmclock::Time = double; crimson::dmclock::Cost = unsigned int]’^M
/build/ceph/src/ceph-15.2.14/src/test/rgw/test_rgw_dmclock_scheduler.cc:418:34: required from here^M
/usr/include/boost/asio/async_result.hpp:651:9: error: no type named ‘completion_handler_type’ in ‘class boost::asio::async_result<boost::asio::basic_yield_context<boost::asio::executor>, void(boost::system::error_code, crimson::dmclock::PhaseType)>’^M
651 | completion_handler_type;^M
| ^~~~~~~~~~~~~~~~~~~~~~~^M
/usr/include/boost/asio/async_result.hpp:684:62: error: no type named ‘completion_handler_type’ in ‘class boost::asio::async_result<boost::asio::basic_yield_context<boost::asio::executor>, void(boost::system::error_code, crimson::dmclock::PhaseType)>’^M
684 | completion_handler_type&, completion_handler_type>::type completion_handler;^M
| ^~~~~~~~~~~~~~~~~~^M
Full build log can be downloaded from https://github.com/arch4edu/cactus/actions/runs/3089392900
Hi, thank you for maintaining this package.
I have a suggestion which is creating packages like ceph-octopus
to provide ceph=15
and ceph-pacific
to provide ceph=16
and so on. And ceph
always provides the latest.
Then users can install the version same to their server.
So here's summary of the work I've done so far to handle the move out of community for ceph.
Here's what still needs to be done:
Unlike official packages which tend to be binary only, AUR prefers the 'build-it-yourself' approach. Unfortunately for something as big as ceph, that typically means spending 40-50 minutes compiling (assuming 16+ cores) per upgrade, which simply isn't feasible.
So, to keep the ease of prebuilt packages I've created a sister package, 'ceph-bin' which consumes the binary products of this package.
So TLDR:
I'll leave the decision of which to use up to you, but if you want a similar experience to the previous, official packages, pick ceph-bin.
{0} https://aur.archlinux.org/packages/ceph-bin
{1} https://github.com/bazaah/aur-ceph/tree/feature/16-2-7_1
Update: I have successfully built a 15.2.14_7 that is functional, but are blocked because community/ceph still exists, and the AUR git server therefore refuses the fast forward.
This is probably okay, as I think I'll need to add a ceph-xxx-bin series of packages that use the artifacts produced by this package's build. This keeps inline with AUR guidelines around package naming, and also keeps the previous utility of being able to just install the built binaries (without paying for a 1:30h build on a 12 core machine)
Pinned Comments
pbazaah commented on 2022-10-05 13:03 (UTC) (edited on 2022-10-05 13:03 (UTC) by pbazaah)
For future commenters:
TLDR:
https://aur.archlinux.org/pkgbase/ceph | From source build (slow)
https://aur.archlinux.org/pkgbase/ceph-bin | Pre-built binaries (fast)
Unlike the original community version, this repo builds ceph from source. Ceph is a large, complicated project so this takes several hours on a good build server.
To get a similar experience to how community/ceph worked (pre-built binaries) use ceph-bin instead.