44 lines
901 B
Nix
44 lines
901 B
Nix
{
|
|
lib,
|
|
rustPlatform,
|
|
anki,
|
|
|
|
openssl,
|
|
pkg-config,
|
|
buildPackages,
|
|
}:
|
|
|
|
rustPlatform.buildRustPackage {
|
|
pname = "anki-sync-server";
|
|
inherit (anki) version src cargoLock;
|
|
|
|
# only build sync server
|
|
cargoBuildFlags = [
|
|
"--bin"
|
|
"anki-sync-server"
|
|
];
|
|
|
|
checkFlags = [
|
|
# this test is flaky, see https://github.com/ankitects/anki/issues/3619
|
|
# also remove from anki when removing this
|
|
"--skip=deckconfig::update::test::should_keep_at_least_one_remaining_relearning_step"
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
pkg-config
|
|
];
|
|
|
|
buildInputs = [
|
|
openssl
|
|
];
|
|
|
|
env.PROTOC = lib.getExe buildPackages.protobuf;
|
|
|
|
meta = {
|
|
description = "Standalone official anki sync server";
|
|
homepage = "https://apps.ankiweb.net";
|
|
license = with lib.licenses; [ agpl3Plus ];
|
|
maintainers = with lib.maintainers; [ martinetd ];
|
|
mainProgram = "anki-sync-server";
|
|
};
|
|
}
|