1{ appimageTools, fetchurl, lib }:
2
3let
4 pname = "marktext";
5 version = "0.17.1";
6
7 src = fetchurl {
8 url = "https://github.com/marktext/marktext/releases/download/v${version}/marktext-x86_64.AppImage";
9 sha256 = "2e2555113e37df830ba3958efcccce7020907b12fd4162368cfd906aeda630b7";
10 };
11
12 appimageContents = appimageTools.extractType2 {
13 inherit pname version src;
14 };
15in
16appimageTools.wrapType2 rec {
17 inherit pname version src;
18
19 profile = ''
20 export LC_ALL=C.UTF-8
21 '';
22
23 multiArch = false; # no 32bit needed
24 extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [
25 p.libsecret
26 p.xorg.libxkbfile
27 ];
28
29 extraInstallCommands = ''
30 # Strip version from binary name.
31 mv $out/bin/${pname}-${version} $out/bin/${pname}
32
33 install -m 444 -D ${appimageContents}/marktext.desktop $out/share/applications/marktext.desktop
34 substituteInPlace $out/share/applications/marktext.desktop \
35 --replace "Exec=AppRun" "Exec=${pname} --"
36
37 cp -r ${appimageContents}/usr/share/icons $out/share
38 '';
39
40 meta = with lib; {
41 description = "A simple and elegant markdown editor, available for Linux, macOS and Windows";
42 homepage = "https://marktext.app";
43 license = licenses.mit;
44 maintainers = with maintainers; [ nh2 eduarrrd ];
45 platforms = [ "x86_64-linux" ];
46 mainProgram = "marktext";
47 };
48}