summaryrefslogtreecommitdiff
path: root/pkgs/by-name/lu/lunatask/package.nix
blob: 6c4d5a680b3ad0556bfbf13ea8e9db68de442d4e (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{
  lib,
  appimageTools,
  fetchurl,
  nix-update-script,
}:

let
  version = "2.0.20";
  pname = "lunatask";

  src = fetchurl {
    url = "https://github.com/lunatask/lunatask/releases/download/v${version}/Lunatask-${version}.AppImage";
    hash = "sha256-yhlRN2Owp+wbNgoAgJD4U21LvaZc+sSCfyp0AU0slWo=";
  };

  appimageContents = appimageTools.extract {
    inherit pname version src;
  };

in
appimageTools.wrapType2 {
  inherit pname version src;

  extraInstallCommands = ''
    install -m 444 -D -t $out/share/applications ${appimageContents}/lunatask.desktop
    install -m 444 -D -t $out/share/icons/hicolor/512x512/apps ${appimageContents}/lunatask.png
    substituteInPlace $out/share/applications/lunatask.desktop \
      --replace-fail 'Exec=AppRun' 'Exec=lunatask'
  '';

  passthru.updateScript = nix-update-script { };

  meta = {
    description = "All-in-one encrypted todo list, notebook, habit and mood tracker, pomodoro timer, and journaling app";
    longDescription = ''
      Lunatask is an all-in-one encrypted todo list, notebook, habit and mood tracker, pomodoro timer, and journaling app. It remembers stuff for you and keeps track of your mental health.
    '';
    homepage = "https://lunatask.app";
    downloadPage = "https://lunatask.app/download";
    changelog = "https://lunatask.app/releases/${version}";
    license = lib.licenses.unfree;
    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
    maintainers = with lib.maintainers; [ zi3m5f ];
    platforms = [ "x86_64-linux" ];
    mainProgram = "lunatask";
  };
}