Merge pull request #292527 from massix/feat/add-tana

tana: init at 1.0.15

authored by a-n-n-a-l-e-e and committed by GitHub ff8d247d c2e0c0ba

+111
+111
pkgs/by-name/ta/tana/package.nix
···
··· 1 + { libX11 2 + , libxcb 3 + , libXcomposite 4 + , libXdamage 5 + , libXext 6 + , libXfixes 7 + , libXrandr 8 + , stdenv 9 + , lib 10 + , alsa-lib 11 + , at-spi2-atk 12 + , atkmm 13 + , cairo 14 + , cups 15 + , dbus 16 + , expat 17 + , glib 18 + , gtk3 19 + , libdrm 20 + , libglvnd 21 + , libxkbcommon 22 + , mesa 23 + , nspr 24 + , nss 25 + , pango 26 + , systemd 27 + , fetchurl 28 + , autoPatchelfHook 29 + , dpkg 30 + }: 31 + let 32 + glLibs = [ libglvnd mesa ]; 33 + libs = [ 34 + alsa-lib 35 + atkmm 36 + at-spi2-atk 37 + cairo 38 + cups 39 + dbus 40 + expat 41 + glib 42 + gtk3 43 + libdrm 44 + libX11 45 + libxcb 46 + libXcomposite 47 + libXdamage 48 + libXext 49 + libXfixes 50 + libxkbcommon 51 + libXrandr 52 + nspr 53 + nss 54 + pango 55 + ]; 56 + buildInputs = glLibs ++ libs; 57 + runpathPackages = glLibs ++ [ stdenv.cc.cc stdenv.cc.libc ]; 58 + version = "1.0.15"; 59 + in 60 + stdenv.mkDerivation { 61 + pname = "tana"; 62 + inherit version buildInputs; 63 + 64 + src = fetchurl { 65 + url = "https://github.com/tanainc/tana-desktop-releases/releases/download/v${version}/tana_${version}_amd64.deb"; 66 + hash = "sha256-94AyAwNFN5FCol97US1Pv8IN1+WMRA3St9kL2w+9FJU="; 67 + }; 68 + 69 + nativeBuildInputs = [ 70 + autoPatchelfHook 71 + dpkg 72 + ]; 73 + 74 + appendRunpaths = map (pkg: "${lib.getLib pkg}/lib") runpathPackages ++ [ "${placeholder "out"}/lib/tana" ]; 75 + 76 + # Needed for Zygote 77 + runtimeDependencies = [ 78 + systemd 79 + ]; 80 + 81 + installPhase = '' 82 + runHook preInstall 83 + mkdir -p $out 84 + cp -r usr/* $out 85 + runHook postInstall 86 + ''; 87 + 88 + postFixup = '' 89 + substituteInPlace $out/share/applications/tana.desktop \ 90 + --replace "Exec=tana" "Exec=$out/bin/tana" \ 91 + --replace "Name=tana" "Name=Tana" 92 + ''; 93 + 94 + meta = with lib; { 95 + description = "Tana is an intelligent all-in-one workspace"; 96 + longDescription = '' 97 + At its core, Tana is an outline editor which can be extended to 98 + cover multiple use-cases and different workflows. 99 + For individuals, it supports GTD, P.A.R.A., Zettelkasten note-taking 100 + out of the box. Teams can leverage the powerful project management 101 + views, like Kanban. 102 + To complete all, a powerful AI system is integrated to help with most 103 + of the tasks. 104 + ''; 105 + homepage = "https://tana.inc"; 106 + license = licenses.unfree; 107 + maintainers = [ maintainers.massimogengarelli ]; 108 + platforms = platforms.linux; 109 + mainProgram = "tana"; 110 + }; 111 + }