biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / applications / office / ticktick / default.nix
blob6d1876082917e524ccaf1171cda0bf56f9359310
1 { lib
2 , fetchurl
3 , stdenv
4 , wrapGAppsHook3
5 , dpkg
6 , autoPatchelfHook
7 , glibc
8 , gcc-unwrapped
9 , nss
10 , libdrm
11 , mesa
12 , alsa-lib
13 , xdg-utils
14 , systemd
16 stdenv.mkDerivation (finalAttrs: {
17   pname = "ticktick";
18   version = "6.0.0";
20   src = fetchurl {
21     url = "https://d2atcrkye2ik4e.cloudfront.net/download/linux/linux_deb_x64/ticktick-${finalAttrs.version}-amd64.deb";
22     hash = "sha256-yoskJ7v0RgRZ16gs9UY1xf/PunLoFkNGKmVMkPJDPmM=";
23   };
25   nativeBuildInputs = [
26     wrapGAppsHook3
27     autoPatchelfHook
28     dpkg
29   ];
31   buildInputs = [
32     nss
33     glibc
34     libdrm
35     gcc-unwrapped
36     mesa
37     alsa-lib
38     xdg-utils
39   ];
41   # Needed to make the process get past zygote_linux fork()'ing
42   runtimeDependencies = [
43     systemd
44   ];
46   unpackPhase = ''
47     runHook preUnpack
49     mkdir -p "$out/share" "$out/opt/${finalAttrs.pname}" "$out/bin"
50     dpkg-deb --fsys-tarfile "$src" | tar --extract --directory="$out"
52     runHook postUnpack
53   '';
55   installPhase = ''
56     runHook preInstall
58     cp -av $out/opt/TickTick/* $out/opt/${finalAttrs.pname}
59     cp -av $out/usr/share/* $out/share
60     rm -rf $out/usr $out/opt/TickTick
61     ln -sf "$out/opt/${finalAttrs.pname}/${finalAttrs.pname}" "$out/bin/${finalAttrs.pname}"
63     substituteInPlace "$out/share/applications/${finalAttrs.pname}.desktop" \
64       --replace "Exec=/opt/TickTick/ticktick" "Exec=$out/bin/${finalAttrs.pname}"
66     runHook postInstall
67   '';
69   meta = with lib; {
70     description = "Powerful to-do & task management app with seamless cloud synchronization across all your devices";
71     homepage = "https://ticktick.com/home/";
72     license = licenses.unfree;
73     maintainers = with maintainers; [ hbjydev ];
74     platforms = [ "x86_64-linux" ];
75     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
76   };