Merge pull request #261166 from martinetd/anki-sync-server

anki-sync-server: init at 2.1.66

Changed files
+48 -1
pkgs
+7 -1
pkgs/games/anki/default.nix
···
fetchSubmodules = true;
};
-
cargoDeps = rustPlatform.importCargoLock {
+
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"fsrs-0.1.0" = "sha256-bnLmJk2aaWBdgdsiasRrDG4NiTDMCDCXotCSoc0ldlk=";
···
"percent-encoding-iri-2.2.0" = "sha256-kCBeS1PNExyJd4jWfDfctxq6iTdAq69jtxFQgCCQ8kQ=";
};
};
+
cargoDeps = rustPlatform.importCargoLock cargoLock;
yarnOfflineCache = fetchYarnDeps {
yarnLock = "${src}/yarn.lock";
···
--prefix PATH ':' "${lame}/bin:${mpv-unwrapped}/bin"
)
'';
+
+
passthru = {
+
# cargoLock is reused in anki-sync-server
+
inherit cargoLock;
+
};
meta = with lib; {
description = "Spaced repetition flashcard program";
+40
pkgs/games/anki/sync-server.nix
···
+
{ lib
+
, stdenv
+
, rustPlatform
+
, anki
+
, darwin
+
+
, openssl
+
, pkg-config
+
, protobuf
+
}:
+
+
rustPlatform.buildRustPackage {
+
pname = "anki-sync-server";
+
inherit (anki) version src cargoLock;
+
+
# only build sync server
+
cargoBuildFlags = [
+
"--bin"
+
"anki-sync-server"
+
];
+
+
nativeBuildInputs = [ protobuf pkg-config ];
+
+
buildInputs = [
+
openssl
+
] ++ lib.optionals stdenv.isDarwin [
+
darwin.apple_sdk.frameworks.Security
+
darwin.apple_sdk.frameworks.SystemConfiguration
+
];
+
+
env.PROTOC = lib.getExe protobuf;
+
+
meta = with lib; {
+
description = "Standalone official anki sync server";
+
homepage = "https://apps.ankiweb.net";
+
license = with licenses; [ agpl3Plus ];
+
maintainers = with maintainers; [ martinetd ];
+
mainProgram = "anki-sync-server";
+
};
+
}
+1
pkgs/top-level/all-packages.nix
···
inherit (darwin.apple_sdk.frameworks) AVKit CoreAudio;
anki-bin = callPackage ../games/anki/bin.nix { };
+
anki-sync-server = callPackage ../games/anki/sync-server.nix { };
armagetronad = callPackage ../games/armagetronad { };