depot/third_party/nixpkgs/pkgs/by-name/sk/skeditor/package.nix

68 lines
1.5 KiB
Nix

{
lib,
buildDotnetModule,
fetchFromGitHub,
dotnetCorePackages,
makeDesktopItem,
copyDesktopItems,
iconConvTools,
}:
buildDotnetModule rec {
pname = "skeditor";
version = "2.8.1";
src = fetchFromGitHub {
owner = "skeditorteam";
repo = "skeditor";
rev = "v${version}";
hash = "sha256-ojE276nonX52UTjvdKL5mX8dj3MNElqlR1A/c0vT9WE=";
};
projectFile = "SkEditor/SkEditor.csproj";
executables = [ "SkEditor" ];
nugetDeps = ./nuget-deps.nix;
dotnet-sdk = dotnetCorePackages.sdk_8_0;
dotnet-runtime = dotnetCorePackages.runtime_8_0;
nativeBuildInputs = [
iconConvTools
copyDesktopItems
];
postInstall = ''
icoFileToHiColorTheme SkEditor/Assets/SkEditor.ico skeditor $out
'';
desktopItems = [
(makeDesktopItem {
name = pname;
desktopName = "SkEditor";
exec = meta.mainProgram;
icon = "SkEditor";
startupWMClass = "SkEditor";
genericName = "Skript Editor";
keywords = [
"skeditor"
"SkEditor"
];
categories = [
"Utility"
"TextEditor"
"Development"
"IDE"
];
})
];
passthru.updateScript = ./update.sh;
meta = {
description = "App for editing Skript files";
homepage = "https://github.com/SkEditorTeam/SkEditor";
changelog = "https://github.com/SkEditorTeam/SkEditor/releases/tag/v${version}";
license = lib.licenses.mit;
mainProgram = "SkEditor";
maintainers = with lib.maintainers; [ eveeifyeve ];
};
}