diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/editors/typora/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/editors/typora/default.nix | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/editors/typora/default.nix b/nixpkgs/pkgs/applications/editors/typora/default.nix new file mode 100644 index 000000000000..bd183f97c126 --- /dev/null +++ b/nixpkgs/pkgs/applications/editors/typora/default.nix @@ -0,0 +1,68 @@ +{ stdenv +, lib +, fetchurl +, makeWrapper +, electron_5 +, dpkg +, gtk3 +, glib +, gsettings-desktop-schemas +, wrapGAppsHook +, withPandoc ? false +, pandoc +}: + +stdenv.mkDerivation rec { + pname = "typora"; + version = "0.9.73"; + + src = fetchurl { + url = "https://www.typora.io/linux/typora_${version}_amd64.deb"; + sha256 = "1fgcb4bx5pw8ah5j30d38gw7qi1cmqarfhvgdns9f2n0d57bvvw3"; + }; + + nativeBuildInputs = [ + dpkg + makeWrapper + wrapGAppsHook + ]; + + buildInputs = [ + glib + gsettings-desktop-schemas + gtk3 + ]; + + unpackPhase = "dpkg-deb -x $src ."; + + dontWrapGApps = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin $out/share + { + cd usr + mv share/typora/resources/app $out/share/typora + mv share/{applications,icons,doc} $out/share/ + } + + runHook postInstall + ''; + + postFixup = '' + makeWrapper ${electron_5}/bin/electron $out/bin/typora \ + --add-flags $out/share/typora \ + "''${gappsWrapperArgs[@]}" \ + ${lib.optionalString withPandoc ''--prefix PATH : "${lib.makeBinPath [ pandoc ]}"''} \ + --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ]}" + ''; + + meta = with lib; { + description = "A minimal Markdown reading & writing app"; + homepage = "https://typora.io"; + license = licenses.unfree; + maintainers = with maintainers; [ jensbin worldofpeace ]; + platforms = [ "x86_64-linux"]; + }; +} |