trilium-next-desktop: add arm64 distributions (#389103)

authored by

Arne Keller and committed by
GitHub
96dbe3b4 743fcc1b

+40 -17
+34 -15
pkgs/by-name/tr/trilium-next-desktop/package.nix
··· 3 3 lib, 4 4 unzip, 5 5 fetchurl, 6 - fetchzip, 7 6 makeBinaryWrapper, 8 7 # use specific electron since it has to load a compiled module 9 8 electron_34, ··· 18 17 pname = "trilium-next-desktop"; 19 18 version = "0.91.6"; 20 19 21 - linuxSource.url = "https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-v${version}-linux-x64.zip"; 22 - linuxSource.sha256 = "13r9akfakmrpvnyab182irhraf9hpqb24205r8rxjfgj8dpmfa4p"; 20 + triliumSource = os: arch: sha256: { 21 + url = "https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-v${version}-${os}-${arch}.zip"; 22 + inherit sha256; 23 + }; 23 24 24 - darwinSource.url = "https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-v${version}-macos-x64.zip"; 25 - darwinSource.sha256 = "0iaz4wim11x110phg4xgzdw3sjcbmxwbksk5gpygjbhlzhjprnnp"; 25 + linuxSource = triliumSource "linux"; 26 + darwinSource = triliumSource "macos"; 27 + 28 + # exposed like this for update.sh 29 + x86_64-linux.sha256 = "13r9akfakmrpvnyab182irhraf9hpqb24205r8rxjfgj8dpmfa4p"; 30 + aarch64-linux.sha256 = "07bh5fcdcw3al5w8nqx5kxzqa5vgni27gb6591y6j6jynz6cmyqp"; 31 + x86_64-darwin.sha256 = "0iaz4wim11x110phg4xgzdw3sjcbmxwbksk5gpygjbhlzhjprnnp"; 32 + aarch64-darwin.sha256 = "1x2s8sdz89sy69lvdg552qmr3chj20d32sskks1r8g5rs16fwqd1"; 33 + 34 + sources = { 35 + x86_64-linux = linuxSource "x64" x86_64-linux.sha256; 36 + aarch64-linux = linuxSource "arm64" aarch64-linux.sha256; 37 + x86_64-darwin = darwinSource "x64" x86_64-darwin.sha256; 38 + aarch64-darwin = darwinSource "arm64" aarch64-darwin.sha256; 39 + }; 40 + 41 + src = fetchurl sources.${stdenv.hostPlatform.system}; 26 42 27 43 meta = { 28 44 description = "Hierarchical note taking application with focus on building large personal knowledge bases"; ··· 34 50 fliegendewurst 35 51 ]; 36 52 mainProgram = "trilium"; 37 - platforms = [ 38 - "x86_64-linux" 39 - "x86_64-darwin" 40 - ]; 53 + platforms = lib.attrNames sources; 41 54 }; 42 55 43 56 linux = stdenv.mkDerivation rec { 44 - inherit pname version meta; 45 - 46 - src = fetchurl linuxSource; 57 + inherit 58 + pname 59 + version 60 + meta 61 + src 62 + ; 47 63 48 64 # Remove trilium-portable.sh, so trilium knows it is packaged making it stop auto generating a desktop item on launch 49 65 postPatch = '' ··· 113 129 }; 114 130 115 131 darwin = stdenv.mkDerivation { 116 - inherit pname version meta; 117 - 118 - src = fetchurl darwinSource; 132 + inherit 133 + pname 134 + version 135 + meta 136 + src 137 + ; 119 138 120 139 nativeBuildInputs = [ 121 140 unzip
+6 -2
pkgs/by-name/tr/trilium-next-desktop/update.sh
··· 13 13 14 14 # Update desktop application 15 15 sha256_linux64=$(nix-prefetch-url --quiet https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-v${version}-linux-x64.zip) 16 + sha256_linux64_arm=$(nix-prefetch-url --quiet https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-v${version}-linux-arm64.zip) 16 17 sha256_darwin64=$(nix-prefetch-url --quiet https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-v${version}-macos-x64.zip) 17 - setKV ./package.nix linuxSource.sha256 $sha256_linux64 18 - setKV ./package.nix darwinSource.sha256 $sha256_darwin64 18 + sha256_darwin64_arm=$(nix-prefetch-url --quiet https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-v${version}-macos-arm64.zip) 19 + setKV ./package.nix x86_64-linux.sha256 $sha256_linux64 20 + setKV ./package.nix aarch64-linux.sha256 $sha256_linux64_arm 21 + setKV ./package.nix x86_64-darwin.sha256 $sha256_darwin64 22 + setKV ./package.nix aarch64-darwin.sha256 $sha256_darwin64_arm 19 23 20 24 # Update server 21 25 sha256_linux64_server=$(nix-prefetch-url --quiet https://github.com/TriliumNext/Notes/releases/download/v${version}/TriliumNextNotes-linux-x64-v${version}.tar.xz)