Files
Florian Klink f7ebebed87 casync: drop fuse support
Upstream does not seem to support fuse3 any time soon:
https://github.com/systemd/casync/issues/269

Drop fuse support for now to get rid of our FUSE dependency.

Closes #534923.
2026-07-19 23:35:40 +02:00

89 lines
1.6 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
pkg-config,
python3,
sphinx,
acl,
curl,
libselinux,
udev,
xz,
zstd,
selinuxSupport ? true,
udevSupport ? true,
glibcLocales,
rsync,
udevCheckHook,
}:
stdenv.mkDerivation {
pname = "casync";
version = "2-unstable-2023-10-16";
src = fetchFromGitHub {
owner = "systemd";
repo = "casync";
rev = "e6817a79d89b48e1c6083fb1868a28f1afb32505";
hash = "sha256-L7I80kSG4/ES2tGvHHgvOxJZzF76yeqy2WquKCPhnFk=";
};
buildInputs = [
acl
curl
xz
zstd
]
++ lib.optionals selinuxSupport [ libselinux ]
++ lib.optionals udevSupport [ udev ];
nativeBuildInputs = [
meson
ninja
pkg-config
python3
sphinx
];
nativeCheckInputs = [
glibcLocales
rsync
]
++ lib.optionals udevSupport [
udevCheckHook
];
postPatch = ''
for f in test/test-*.sh.in; do
patchShebangs $f
done
patchShebangs test/http-server.py
'';
env.PKG_CONFIG_UDEV_UDEVDIR = "lib/udev";
mesonFlags = [
# fuse2 only, https://github.com/systemd/casync/issues/269
"-Dfuse=false"
]
++ lib.optionals (!udevSupport) [ "-Dudev=false" ]
++ lib.optionals (!selinuxSupport) [ "-Dselinux=false" ];
doCheck = true;
preCheck = ''
export LC_ALL="en_US.utf-8"
'';
doInstallCheck = true;
meta = {
description = "Content-Addressable Data Synchronizer";
mainProgram = "casync";
homepage = "https://github.com/systemd/casync";
license = lib.licenses.lgpl21Plus;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ flokli ];
};
}