From c9f742f7bc09672c661a0597f048fa3d5d9f399f Mon Sep 17 00:00:00 2001 From: dnaq Date: Mon, 11 Apr 2022 20:14:38 +0200 Subject: [PATCH] anki -> 2.1.51 Since the previous version of anki no longer works on nixos-unstable due to glibc changes the version was bumped to 2.1.51 which works. Also adds support for aarch64 on apple silicon Fixes #167765 --- pkgs/games/anki/bin.nix | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/pkgs/games/anki/bin.nix b/pkgs/games/anki/bin.nix index 7e62f006102..aade2aaae9e 100644 --- a/pkgs/games/anki/bin.nix +++ b/pkgs/games/anki/bin.nix @@ -1,24 +1,31 @@ -{ fetchurl, stdenv, lib, buildFHSUserEnv, appimageTools, writeShellScript, anki, undmg }: +{ fetchurl, stdenv, lib, buildFHSUserEnv, appimageTools, writeShellScript, anki, undmg, zstd }: let pname = "anki-bin"; # Update hashes for both Linux and Darwin! - version = "2.1.49"; + version = "2.1.51"; sources = { linux = fetchurl { - url = "https://github.com/ankitects/anki/releases/download/${version}/anki-${version}-linux.tar.bz2"; - sha256 = "sha256-uG39g9CXnquArFsxtFHWWoDaNwu8y2KKh+SqGt8aqi0="; + url = "https://github.com/ankitects/anki/releases/download/${version}/anki-${version}-linux-qt6.tar.zst"; + sha256 = "sha256-ZKVc+TvkNu5mGgibhRIuoLuIfvyoVDy+c4h+Apz9P+0="; }; - darwin = fetchurl { - url = "https://github.com/ankitects/anki/releases/download/${version}/anki-${version}-mac.dmg"; - sha256 = "sha256-sEVWZQpICL7RYrOuPm1Y5XhzPxCwNk1WGP1rctTtE4Y="; + + # For some reason anki distributes completely separate dmg-files for the aarch64 version and the x86_64 version + darwin-x86_64 = fetchurl { + url = "https://github.com/ankitects/anki/releases/download/${version}/anki-${version}-mac-intel-qt6.dmg"; + sha256 = "sha256-wZMJEbcpezVAuBSKlwNTHlqjp0FfmyDB7XD6BBuJhyA="; + }; + darwin-aarch64 = fetchurl { + url = "https://github.com/ankitects/anki/releases/download/${version}/anki-${version}-mac-apple-qt6.dmg"; + sha256 = "sha256-6RDTYKoisX5DJ9VPWrP9VH9DCABabb9MB3nG4S8jtR0="; }; }; unpacked = stdenv.mkDerivation { inherit pname version; + nativeBuildInputs = [ zstd ]; src = sources.linux; installPhase = '' @@ -47,6 +54,9 @@ in if stdenv.isLinux then buildFHSUserEnv (appimageTools.defaultFhsEnvArgs // { name = "anki"; + # Dependencies of anki + targetPkgs = pkgs: (with pkgs; [ xorg.libxkbfile krb5 ]); + runScript = writeShellScript "anki-wrapper.sh" '' exec ${unpacked}/bin/anki ''; @@ -63,7 +73,7 @@ if stdenv.isLinux then buildFHSUserEnv (appimageTools.defaultFhsEnvArgs // { }) else stdenv.mkDerivation { inherit pname version passthru; - src = sources.darwin; + src = if stdenv.isAarch64 then sources.darwin-aarch64 else sources.darwin-x86_64; nativeBuildInputs = [ undmg ]; sourceRoot = ".";