msbuild-structured-log-viewer: init at 2.2.383

This commit is contained in:
js6pak
2024-10-13 20:57:07 +02:00
parent fe02fc114d
commit 99be9899fa
2 changed files with 163 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
# This file was automatically generated by passthru.fetch-deps.
# Please dont edit it manually, your changes might get overwritten!
{ fetchNuGet }: [
(fetchNuGet { pname = "AutomaticGraphLayout"; version = "1.1.12"; hash = "sha256-Fe4pGr+Ln1FfgHD3Odq2WOTrhi2nD/jjnh2cKLC2pwo="; })
(fetchNuGet { pname = "AutomaticGraphLayout.Drawing"; version = "1.1.12"; hash = "sha256-KPyc4JxcQkGTeb5tceB3zRN8FqTj7jzimb97NOhZPl0="; })
(fetchNuGet { pname = "Avalonia"; version = "11.0.0"; hash = "sha256-7QE0MtD1QDiG3gRx5xW33E33BXyEtASQSw+Wi3Lmy3E="; })
(fetchNuGet { pname = "Avalonia"; version = "11.1.3"; hash = "sha256-kz+k/vkuWoL0XBvRT8SadMOmmRCFk9W/J4k/IM6oYX0="; })
(fetchNuGet { pname = "Avalonia.Angle.Windows.Natives"; version = "2.1.22045.20230930"; hash = "sha256-RxPcWUT3b/+R3Tu5E5ftpr5ppCLZrhm+OTsi0SwW3pc="; })
(fetchNuGet { pname = "Avalonia.AvaloniaEdit"; version = "11.1.0"; hash = "sha256-K9+hK+4aK93dyuGytYvVU25daz605+KN54hmwQYXFF8="; })
(fetchNuGet { pname = "Avalonia.BuildServices"; version = "0.0.28"; hash = "sha256-7NQWQl3xrBDOXhGihCkt5DIrws48KyDGon/7+gPzMDU="; })
(fetchNuGet { pname = "Avalonia.BuildServices"; version = "0.0.29"; hash = "sha256-WPHRMNowRnYSCh88DWNBCltWsLPyOfzXGzBqLYE7tRY="; })
(fetchNuGet { pname = "Avalonia.Controls.ColorPicker"; version = "11.1.3"; hash = "sha256-W17Wvmi8/47cf5gCF3QRcaKLz0ZpXtZYCCkaERkbyXU="; })
(fetchNuGet { pname = "Avalonia.Controls.DataGrid"; version = "11.1.3"; hash = "sha256-OOKTovi5kckn0x/8dMcq56cvq57UVMLzA9LRXDxm2Vc="; })
(fetchNuGet { pname = "Avalonia.Desktop"; version = "11.1.3"; hash = "sha256-mNFscbtyqLlodzGa3SJ3oVY467JjWwY45LxZiKDAn/w="; })
(fetchNuGet { pname = "Avalonia.Diagnostics"; version = "11.1.3"; hash = "sha256-PD9ZIeBZJrLaVDjmWBz4GocrdUSNUou11gAERU+xWDo="; })
(fetchNuGet { pname = "Avalonia.FreeDesktop"; version = "11.1.3"; hash = "sha256-nUBhSRE0Bly3dVC14wXwU19vP3g0VbE4bCUohx7DCVI="; })
(fetchNuGet { pname = "Avalonia.Native"; version = "11.1.3"; hash = "sha256-byAVGW7XgkyzDj1TnqaCeDU/xTD9z8ACGrSJgwJ+XXs="; })
(fetchNuGet { pname = "Avalonia.Remote.Protocol"; version = "11.0.0"; hash = "sha256-gkVpdbk/0RDM7Hhq0jwZwltDpTsGRmbX+ZFTjWYYoKw="; })
(fetchNuGet { pname = "Avalonia.Remote.Protocol"; version = "11.1.3"; hash = "sha256-CKF+62zCbK1Rd/HiC6MGrags3ylXrVQ1lni3Um0Muqk="; })
(fetchNuGet { pname = "Avalonia.Skia"; version = "11.1.3"; hash = "sha256-EtB86g+nz6i8wL6xytMkYl2Ehgt3GFMMNPzQfhbfopM="; })
(fetchNuGet { pname = "Avalonia.Themes.Fluent"; version = "11.1.3"; hash = "sha256-qfmRK2gLGSgHx4dNIeVesWxLUjcook9ET2xru/Xyiw8="; })
(fetchNuGet { pname = "Avalonia.Themes.Simple"; version = "11.1.3"; hash = "sha256-Q6jL5J/6aBtOY85I641RVp8RpuqJbPy6C6LxnRkFtMM="; })
(fetchNuGet { pname = "Avalonia.Win32"; version = "11.1.3"; hash = "sha256-zcxTpEnpLf50p8Yaiylk5/CS9MNDe7lK1uX1CPaJBUc="; })
(fetchNuGet { pname = "Avalonia.X11"; version = "11.1.3"; hash = "sha256-M2+y661/znDxZRdwNRIQi4mS2m6T4kQkBbYeE7KyQAw="; })
(fetchNuGet { pname = "DotUtils.StreamUtils.Sources"; version = "0.0.8"; hash = "sha256-KL5PkSsuZ9uPgtzK7rB0W6XGTcJQGqHoZqMLhpFR7tw="; })
(fetchNuGet { pname = "GuiLabs.Language.Xml"; version = "1.2.93"; hash = "sha256-4fvD+8QBxEpVqcQtZ+gE8GhY7Iaay4aFr5HWQ9LGeqk="; })
(fetchNuGet { pname = "HarfBuzzSharp"; version = "7.3.0.2"; hash = "sha256-ibgoqzT1NV7Qo5e7X2W6Vt7989TKrkd2M2pu+lhSDg8="; })
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "7.3.0.2"; hash = "sha256-SSfyuyBaduGobJW+reqyioWHhFWsQ+FXa2Gn7TiWxrU="; })
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "7.3.0.2"; hash = "sha256-dmEqR9MmpCwK8AuscfC7xUlnKIY7+Nvi06V0u5Jff08="; })
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.WebAssembly"; version = "7.3.0.2"; hash = "sha256-aEZr9uKAlCTeeHoYNR1Rs6L3P54765CemyrgJF8x09c="; })
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "7.3.0.2"; hash = "sha256-x4iM3NHs9VyweG57xA74yd4uLuXly147ooe0mvNQ8zo="; })
(fetchNuGet { pname = "MicroCom.Runtime"; version = "0.11.0"; hash = "sha256-VdwpP5fsclvNqJuppaOvwEwv2ofnAI5ZSz2V+UEdLF0="; })
(fetchNuGet { pname = "Microsoft.Build.Framework"; version = "17.5.0"; hash = "sha256-FVomTQ8rZ5Ga09piFxSDFQ+b3gpC2ddZd+pQBSn5Csw="; })
(fetchNuGet { pname = "Microsoft.Build.Tasks.Git"; version = "8.0.0"; hash = "sha256-vX6/kPij8vNAu8f7rrvHHhPrNph20IcufmrBgZNxpQA="; })
(fetchNuGet { pname = "Microsoft.Build.Utilities.Core"; version = "17.5.0"; hash = "sha256-W4bN0E9/DgEw0fxopXUhMK9tuGGwm0NYK3APytAzNRI="; })
(fetchNuGet { pname = "Microsoft.NET.StringTools"; version = "17.5.0"; hash = "sha256-9eoXaPQvt6YAeb+cK5/ekh3YFfjymZCzJAxsDsIPlMQ="; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; hash = "sha256-FeM40ktcObQJk4nMYShB61H/E8B7tIKfl9ObJ0IOcCM="; })
(fetchNuGet { pname = "Microsoft.SourceLink.Common"; version = "8.0.0"; hash = "sha256-AfUqleVEqWuHE7z2hNiwOLnquBJ3tuYtbkdGMppHOXc="; })
(fetchNuGet { pname = "Microsoft.SourceLink.GitHub"; version = "8.0.0"; hash = "sha256-hNTkpKdCLY5kIuOmznD1mY+pRdJ0PKu2HypyXog9vb0="; })
(fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "5.0.0"; hash = "sha256-9kylPGfKZc58yFqNKa77stomcoNnMeERXozWJzDcUIA="; })
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "6.0.0"; hash = "sha256-N9EVZbl5w1VnMywGXyaVWzT9lh84iaJ3aD48hIBk1zA="; })
(fetchNuGet { pname = "Nerdbank.GitVersioning"; version = "3.6.141"; hash = "sha256-i1pBJ12vlPmde6qSQK4PG2QLSpjaUCoY+odTi24R5XI="; })
(fetchNuGet { pname = "NETStandard.Library"; version = "2.0.3"; hash = "sha256-Prh2RPebz/s8AzHb2sPHg3Jl8s31inv9k+Qxd293ybo="; })
(fetchNuGet { pname = "Nullable"; version = "1.3.1"; hash = "sha256-5x5+l+7YhKjlBR9GEFKrZ8uewyB7eNxMAREwITDJmUM="; })
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.8"; hash = "sha256-rD5gc4SnlRTXwz367uHm8XG5eAIQpZloGqLRGnvNu0A="; })
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.8"; hash = "sha256-fOmNbbjuTazIasOvPkd2NPmuQHVCWPnow7AxllRGl7Y="; })
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.8"; hash = "sha256-CdcrzQHwCcmOCPtS8EGtwsKsgdljnH41sFytW7N9PmI="; })
(fetchNuGet { pname = "SkiaSharp.NativeAssets.WebAssembly"; version = "2.88.8"; hash = "sha256-GWWsE98f869LiOlqZuXMc9+yuuIhey2LeftGNk3/z3w="; })
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.8"; hash = "sha256-b8Vb94rNjwPKSJDQgZ0Xv2dWV7gMVFl5GwTK/QiZPPM="; })
(fetchNuGet { pname = "System.Buffers"; version = "4.5.1"; hash = "sha256-wws90sfi9M7kuCPWkv1CEYMJtCqx9QB/kj0ymlsNaxI="; })
(fetchNuGet { pname = "System.Collections.Immutable"; version = "8.0.0"; hash = "sha256-F7OVjKNwpqbUh8lTidbqJWYi476nsq9n+6k0+QVRo3w="; })
(fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.5.0"; hash = "sha256-15yE2NoT9vmL9oGCaxHClQR1jLW1j1ef5hHMg55xRso="; })
(fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "6.0.0"; hash = "sha256-fPV668Cfi+8pNWrvGAarF4fewdPVEDwlJWvJk0y+Cms="; })
(fetchNuGet { pname = "System.Drawing.Common"; version = "6.0.0"; hash = "sha256-/9EaAbEeOjELRSMZaImS1O8FmUe8j4WuFUw1VOrPyAo="; })
(fetchNuGet { pname = "System.IO.Pipelines"; version = "6.0.0"; hash = "sha256-xfjF4UqTMJpf8KsBWUyJlJkzPTOO/H5MW023yTYNQSA="; })
(fetchNuGet { pname = "System.Memory"; version = "4.5.5"; hash = "sha256-EPQ9o1Kin7KzGI5O3U3PUQAZTItSbk9h/i4rViN3WiI="; })
(fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.4.0"; hash = "sha256-auXQK2flL/JpnB/rEcAcUm4vYMCYMEMiWOCAlIaqu2U="; })
(fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.5.0"; hash = "sha256-qdSTIFgf2htPS+YhLGjAGiLN8igCYJnCCo6r78+Q+c8="; })
(fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "6.0.0"; hash = "sha256-bEG1PnDp7uKYz/OgLOWs3RWwQSVYm+AnPwVmAmcgp2I="; })
(fetchNuGet { pname = "System.Security.AccessControl"; version = "5.0.0"; hash = "sha256-ueSG+Yn82evxyGBnE49N4D+ngODDXgornlBtQ3Omw54="; })
(fetchNuGet { pname = "System.Security.AccessControl"; version = "6.0.0"; hash = "sha256-qOyWEBbNr3EjyS+etFG8/zMbuPjA+O+di717JP9Cxyg="; })
(fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "6.0.0"; hash = "sha256-Wi9I9NbZlpQDXgS7Kl06RIFxY/9674S7hKiYw5EabRY="; })
(fetchNuGet { pname = "System.Security.Permissions"; version = "6.0.0"; hash = "sha256-/MMvtFWGN/vOQfjXdOhet1gsnMgh6lh5DCHimVsnVEs="; })
(fetchNuGet { pname = "System.Security.Principal.Windows"; version = "5.0.0"; hash = "sha256-CBOQwl9veFkrKK2oU8JFFEiKIh/p+aJO+q9Tc2Q/89Y="; })
(fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "6.0.0"; hash = "sha256-nGc2A6XYnwqGcq8rfgTRjGr+voISxNe/76k2K36coj4="; })
(fetchNuGet { pname = "System.Windows.Extensions"; version = "6.0.0"; hash = "sha256-N+qg1E6FDJ9A9L50wmVt3xPQV8ZxlG1xeXgFuxO+yfM="; })
(fetchNuGet { pname = "Tmds.DBus.Protocol"; version = "0.16.0"; hash = "sha256-vKYEaa1EszR7alHj48R8G3uYArhI+zh2ZgiBv955E98="; })
]

View File

@@ -0,0 +1,94 @@
{
lib,
stdenv,
buildDotnetModule,
fetchFromGitHub,
dotnetCorePackages,
autoPatchelfHook,
copyDesktopItems,
icu,
openssl,
libkrb5,
makeDesktopItem,
writeShellScript,
nix-update,
}:
buildDotnetModule (finalAttrs: rec {
pname = "msbuild-structured-log-viewer";
version = "2.2.383";
src = fetchFromGitHub {
owner = "KirillOsenkov";
repo = "MSBuildStructuredLog";
rev = "v${version}";
hash = "sha256-re1owocdiPKwoORCPD+A0eiRi4Nk4i9a1l0XTQJcxqE=";
};
dotnet-sdk = dotnetCorePackages.sdk_8_0;
dotnet-runtime = dotnetCorePackages.runtime_8_0;
projectFile = [ "src/StructuredLogViewer.Avalonia/StructuredLogViewer.Avalonia.csproj" ];
nugetDeps = ./deps.nix;
# HACK: Clear out RuntimeIdentifiers that's set in StructuredLogViewer.Avalonia.csproj, otherwise our --runtime has no effect
dotnetFlags = [ "-p:RuntimeIdentifiers=" ];
nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [
autoPatchelfHook
copyDesktopItems
];
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
stdenv.cc.cc.lib
icu
openssl
libkrb5
];
dontDotnetFixup = true;
postFixup =
''
wrapDotnetProgram $out/lib/${finalAttrs.pname}/StructuredLogViewer.Avalonia $out/bin/${meta.mainProgram}
''
+ lib.optionalString stdenv.hostPlatform.isLinux ''
install -Dm444 $src/src/StructuredLogViewer/icons/msbuild-structured-log-viewer.png $out/share/icons/hicolor/32x32/apps/${finalAttrs.pname}.png
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace src/StructuredLogViewer.Avalonia/Info.plist \
--replace-fail "0.0.1" "${finalAttrs.version}"
install -Dm444 src/StructuredLogViewer.Avalonia/Info.plist $out/Applications/StructuredLogViewer.app/Contents/Info.plist
install -Dm444 src/StructuredLogViewer.Avalonia/StructuredLogViewer.icns $out/Applications/StructuredLogViewer.app/Contents/Resources/StructuredLogViewer.icns
mkdir -p $out/Applications/StructuredLogViewer.app/Contents/MacOS
ln -s $out/bin/${meta.mainProgram} $out/Applications/StructuredLogViewer.app/Contents/MacOS/StructuredLogViewer.Avalonia
'';
desktopItems = makeDesktopItem {
name = finalAttrs.pname;
desktopName = "MSBuild Structured Log Viewer";
comment = finalAttrs.meta.description;
icon = finalAttrs.pname;
exec = meta.mainProgram;
categories = [ "Development" ];
};
passthru.updateScript = writeShellScript "update-${finalAttrs.pname}" ''
${lib.getExe nix-update}
"$(nix-build -A "$UPDATE_NIX_ATTR_PATH.fetch-deps" --no-out-link)"
'';
meta = {
description = "Rich interactive log viewer for MSBuild logs";
homepage = "https://github.com/KirillOsenkov/MSBuildStructuredLog";
changelog = "https://github.com/KirillOsenkov/MSBuildStructuredLog/releases/tag/v${finalAttrs.version}";
sourceProvenance = with lib.sourceTypes; [
fromSource
binaryBytecode
binaryNativeCode
];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ js6pak ];
mainProgram = "msbuild-structured-log-viewer";
};
})