Merge pull request #297136 from srhb/ceph-workaround-mgr-pyo3-bcrypt

ceph: workaround broken mgr modules
This commit is contained in:
Niklas Hambüchen 2024-03-21 01:32:07 +01:00 committed by GitHub
commit 527e02169a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -169,7 +169,28 @@ let
# Watch out for python <> boost compatibility
python = python310.override {
packageOverrides = self: super: let cryptographyOverrideVersion = "40.0.1"; in {
packageOverrides = self: super: let
cryptographyOverrideVersion = "40.0.1";
bcryptOverrideVersion = "4.0.1";
in {
# Ceph does not support `bcrypt` > 4.0 yet:
# * Upstream issue: https://tracker.ceph.com/issues/63529
# > Python Sub-Interpreter Model Used by ceph-mgr Incompatible With Python Modules Based on PyO3
bcrypt = super.bcrypt.overridePythonAttrs (old: rec {
pname = "bcrypt";
version = bcryptOverrideVersion;
src = fetchPypi {
inherit pname version;
hash = "sha256-J9N1kDrIJhz+QEf2cJ0W99GNObHskqr3KvmJVSplDr0=";
};
cargoRoot = "src/_bcrypt";
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
sourceRoot = "${pname}-${version}/${cargoRoot}";
name = "${pname}-${version}";
hash = "sha256-lDWX69YENZFMu7pyBmavUZaalGvFqbHSHfkwkzmDQaY=";
};
});
# Ceph does not support `cryptography` > 40 yet:
# * https://github.com/NixOS/nixpkgs/pull/281858#issuecomment-1899358602
# * Upstream issue: https://tracker.ceph.com/issues/63529