1{
2 lib,
3 appimageTools,
4 fetchurl,
5 gitUpdater,
6}:
7
8let
9 pname = "simplex-chat-desktop";
10 version = "6.4.0";
11
12 src = fetchurl {
13 url = "https://github.com/simplex-chat/simplex-chat/releases/download/v${version}/simplex-desktop-x86_64.AppImage";
14 hash = "sha256-DxOq0pimXxvXDi65Hryp7Fv++M6a+V1qYyDSSEgttQs=";
15 };
16
17 appimageContents = appimageTools.extract {
18 inherit pname version src;
19 };
20in
21appimageTools.wrapType2 {
22 inherit pname version src;
23
24 extraBwrapArgs = [
25 "--setenv _JAVA_AWT_WM_NONREPARENTING 1"
26 ];
27
28 extraInstallCommands = ''
29 install --mode=444 -D ${appimageContents}/chat.simplex.app.desktop --target-directory=$out/share/applications
30 substituteInPlace $out/share/applications/chat.simplex.app.desktop \
31 --replace-fail 'Exec=simplex' 'Exec=simplex-chat-desktop'
32 cp -r ${appimageContents}/usr/share/icons $out/share
33 '';
34
35 passthru.updateScript = gitUpdater {
36 url = "https://github.com/simplex-chat/simplex-chat";
37 rev-prefix = "v";
38 # skip tags that does not correspond to official releases, like vX.Y.Z-(beta,fdroid,armv7a).
39 ignoredVersions = "-";
40 };
41
42 meta = {
43 description = "Desktop application for SimpleX Chat";
44 mainProgram = "simplex-chat-desktop";
45 homepage = "https://simplex.chat";
46 changelog = "https://github.com/simplex-chat/simplex-chat/releases/tag/v${version}";
47 license = lib.licenses.agpl3Only;
48 maintainers = with lib.maintainers; [ terryg ];
49 platforms = [ "x86_64-linux" ];
50 };
51}