mirror of
https://github.com/CHN-beta/nixos.git
synced 2024-10-23 17:28:59 +08:00
44 lines
991 B
Nix
44 lines
991 B
Nix
{ lib, stdenv, steam, fetchurl, writeShellScript }:
|
|
let
|
|
typora-dist = stdenv.mkDerivation rec
|
|
{
|
|
pname = "typora-dist";
|
|
version = "1.6.6";
|
|
src = fetchurl
|
|
{
|
|
url = "https://download.typora.io/linux/typora_${version}_amd64.deb";
|
|
sha256 = lib.fakeSha256;
|
|
};
|
|
|
|
dontFixup = true;
|
|
|
|
unpackPhase =
|
|
''
|
|
ar x ${src}
|
|
tar xf data.tar.xz
|
|
'';
|
|
installPhase =
|
|
''
|
|
mkdir -p $out
|
|
mv usr/share $out
|
|
'';
|
|
};
|
|
steam-run = (steam.override {
|
|
extraPkgs = p: [ license resource ];
|
|
runtimeOnly = true;
|
|
}).run;
|
|
in stdenv.mkDerivation rec
|
|
{
|
|
pname = "typora";
|
|
inherit (typora-dist) version;
|
|
BuildInputs = [ typora-dist steam-run ];
|
|
startScript = writeShellScript "typora" "${steam-run}/bin/steam-run ${typora-dist}/share/typora/Typora $@";
|
|
phases = [ "installPhase" ];
|
|
installPhase =
|
|
''
|
|
mkdir -p $out/bin $out/share/applications
|
|
ln -s ${startScript} $out/bin/typora
|
|
cp ${typora-dist}/share/applications/ $out/share/applications/typora.desktop
|
|
'';
|
|
}
|