packages: add undertale-mod-tool avalonia cusotm package

This commit is contained in:
2026-08-06 16:26:10 -04:00
parent e0e42cd479
commit b7ff65accf
3 changed files with 435 additions and 0 deletions
+1
View File
@@ -188,6 +188,7 @@ in
dotnet-sdk
dotnet-runtime
dotnet-runtime_8
dotnet-runtime_10
];
};
+312
View File
@@ -0,0 +1,312 @@
[
{
"pname": "Avalonia",
"version": "12.1.0",
"hash": "sha256-G824thlSx6grixZdFX0yonwGXQYequFLwFAyhEyuPzk="
},
{
"pname": "Avalonia.Angle.Windows.Natives",
"version": "2.1.27548.20260419",
"hash": "sha256-dtZ5AQl+kXPRVe/EwrfSyOMSLywuBBUCjrDIhHijhvk="
},
{
"pname": "Avalonia.AvaloniaEdit",
"version": "12.0.0",
"hash": "sha256-DDopKuyhufekxFDxV39vqjQSbldUKRTHiXTZ4woe2eE="
},
{
"pname": "Avalonia.BuildServices",
"version": "11.3.2",
"hash": "sha256-6wx06tjSKWQOlX2czdp6Wh0nuwVapx5qf/s8Qj5we40="
},
{
"pname": "Avalonia.Controls.ColorPicker",
"version": "12.1.0",
"hash": "sha256-oq1powrap87bypo0K2APlecS1AGxS/9s4MGAlyLLVpo="
},
{
"pname": "Avalonia.Controls.DataGrid",
"version": "12.1.0",
"hash": "sha256-ivrjda3meZJMpoCglss5cYXxeldsR8li76tILwNQO/g="
},
{
"pname": "Avalonia.Desktop",
"version": "12.1.0",
"hash": "sha256-bKqjBBIqTmFJ6qX4HHzHUM0B8qWOL6bQWX+FSkDEHI0="
},
{
"pname": "Avalonia.FreeDesktop",
"version": "12.1.0",
"hash": "sha256-ba4NDAxe4kp8TooGwws1HekMdF9MBezHbsYZb2Agjt4="
},
{
"pname": "Avalonia.FreeDesktop.AtSpi",
"version": "12.1.0",
"hash": "sha256-3CVUOuKLXjTvcEYozutyX/gLmjM5TsE69pSKM1CBaqE="
},
{
"pname": "Avalonia.HarfBuzz",
"version": "12.1.0",
"hash": "sha256-0uxtp+KmAFQz78Szvxa4hwo/vLNSkdgvcCynpaSeCjQ="
},
{
"pname": "Avalonia.Markup.Xaml.Loader",
"version": "12.1.0",
"hash": "sha256-P05Q1d4malCTuBqEHePfjcKFgqnz1SmmxjPzypshVDk="
},
{
"pname": "Avalonia.Native",
"version": "12.1.0",
"hash": "sha256-fshmU1Px5n8nRGmKKevLi0zPgyZJSNF3N0bqdiYQFPg="
},
{
"pname": "Avalonia.Remote.Protocol",
"version": "12.1.0",
"hash": "sha256-PXrrCyFLIdrcEnNUz2ZzjFjs65hVaxEm5h/ux8tOo0k="
},
{
"pname": "Avalonia.Skia",
"version": "12.1.0",
"hash": "sha256-6f/isIqnWUCEeWlfooN32tkbi78DKdBBuTka70br9U4="
},
{
"pname": "Avalonia.Themes.Fluent",
"version": "12.1.0",
"hash": "sha256-lvDXmhWLaB20IzRXKdrl6lTEF86nNd9MbZ7FspDK0wc="
},
{
"pname": "Avalonia.Win32",
"version": "12.1.0",
"hash": "sha256-eU0pezq/1PLB/iDGDt9NWn183uSr29P3Nr58vYsQztM="
},
{
"pname": "Avalonia.X11",
"version": "12.1.0",
"hash": "sha256-n2QWzUw5UsDtMEHI/MSkbPFucdStdz/1gLDqVR5zW/A="
},
{
"pname": "AvaloniaEdit.TextMate",
"version": "12.0.0",
"hash": "sha256-LEmuy0CF8zQiChzpv3kLJZMUhRQo4u7/+yu4ls0BkPk="
},
{
"pname": "CommunityToolkit.Mvvm",
"version": "8.4.2",
"hash": "sha256-jLS1vo6V+fHsJs80HYT77oJE6IEC68fIgkLpYODjWAU="
},
{
"pname": "Fody",
"version": "6.9.3",
"hash": "sha256-JLom3mbO4NCUXDHoU86l720QXlRx52+ROb5wBwcC5nM="
},
{
"pname": "HarfBuzzSharp",
"version": "8.3.1.3",
"hash": "sha256-/+ZEhjpOs8B4tMPw3vDyuQqGGZHJEWvy3WaKMaDwmrU="
},
{
"pname": "HarfBuzzSharp.NativeAssets.Linux",
"version": "8.3.1.3",
"hash": "sha256-feWOna/8ncvmrq7CxnDczv1facV2poZV5R+OyCtocpU="
},
{
"pname": "HarfBuzzSharp.NativeAssets.macOS",
"version": "8.3.1.3",
"hash": "sha256-6WKsJ/jF9pHnaWcQvaezc5AV6flu3XsOxQs7i4BGYJs="
},
{
"pname": "HarfBuzzSharp.NativeAssets.WebAssembly",
"version": "8.3.1.3",
"hash": "sha256-arBiI82fXPjAqftqnG7Wc3BRzZ6+vKd7b58vQSWJVk0="
},
{
"pname": "HarfBuzzSharp.NativeAssets.Win32",
"version": "8.3.1.3",
"hash": "sha256-WNUQmLWVFSwBKT9x7UdhSz9T2FA7wibvwjuPew/3yUM="
},
{
"pname": "Magick.NET-Q8-AnyCPU",
"version": "14.15.0",
"hash": "sha256-rzsySipyIu0sqGbRywGUoPly04ZkgWu1WHYJLdz/R8M="
},
{
"pname": "Magick.NET.Core",
"version": "14.15.0",
"hash": "sha256-ekZGCFewYrB7zzarJ4N51F+B+4xyPUXULc8EuNMu8y0="
},
{
"pname": "MicroCom.Runtime",
"version": "0.11.6",
"hash": "sha256-RTr200R3sZuyxi0XQ25ox2p1kVt5R1CbH/YBs21+eNg="
},
{
"pname": "Microsoft.Bcl.AsyncInterfaces",
"version": "10.0.9",
"hash": "sha256-grzyENbFc7Ct0dgmUgSn1Tr3ndM1fdlQGiSBLzYtC9c="
},
{
"pname": "Microsoft.CodeAnalysis.Analyzers",
"version": "5.3.0",
"hash": "sha256-eUjU7MDekcbDQxUButcWK7siHx6HmrgdDMLnpGYRVLM="
},
{
"pname": "Microsoft.CodeAnalysis.Common",
"version": "5.6.0",
"hash": "sha256-Q+34cKCUHLMUdigLSuCunqcpAzagynq7O6LJ09EPu6g="
},
{
"pname": "Microsoft.CodeAnalysis.CSharp",
"version": "5.6.0",
"hash": "sha256-nrzGZk9oLuCEvhDT+IS+XBVOuHVrwL8RGj0rZFP4SRo="
},
{
"pname": "Microsoft.CodeAnalysis.CSharp.Scripting",
"version": "5.6.0",
"hash": "sha256-p9JX0s8zY1+ZfBGHe/geWvMlNwCsOqWubs7nDXT6mmc="
},
{
"pname": "Microsoft.CodeAnalysis.Scripting.Common",
"version": "5.6.0",
"hash": "sha256-qbH8tUlbfRcaRD5xIPBfRHannv/9vibd/6VaRqhAaGw="
},
{
"pname": "Microsoft.Extensions.DependencyInjection",
"version": "10.0.10",
"hash": "sha256-SZDbEORdMQa+Zg9F29lP5By7jaT5b9XLj8LAx7j1EZA="
},
{
"pname": "Microsoft.Extensions.DependencyInjection.Abstractions",
"version": "10.0.10",
"hash": "sha256-2r+Qvd0u3zODfQ1NAL+qu+W5XGaqJjm31bG6SGJKZn0="
},
{
"pname": "NETStandard.Library.Ref",
"version": "2.1.0",
"hash": "sha256-Ruovy9EKgXaFuFr3zgw5fRKUS9yBIJ4nLeHgXv0zx4o="
},
{
"pname": "Onigwrap",
"version": "1.0.10",
"hash": "sha256-x1TJeOdANiWDdwgN+GsFznHMgPUnq/6iSN0BlIt0QJM="
},
{
"pname": "PropertyChanged.Fody",
"version": "4.1.0",
"hash": "sha256-SAId/w7y5RZqMnpnJ6nmMjaPXQIr2h6QsRKZ4yuoYYU="
},
{
"pname": "SDL3-CS",
"version": "3.4.12.3",
"hash": "sha256-9UT8oE8M3VTIA7uOtayZSNAvA+XI6fEW9mFkB9AMAds="
},
{
"pname": "SDL3-CS.Linux",
"version": "3.4.12.1",
"hash": "sha256-JimlbIjGhwBl1sMAJWSrezfchuRT8Ckod9YCpHuZIDQ="
},
{
"pname": "SDL3-CS.Linux.Mixer",
"version": "3.2.4.7",
"hash": "sha256-rC5wHSBtrULfSJJN1ADeJS0yfU4FQ+KkZPw1pDkMvhs="
},
{
"pname": "SDL3-CS.MacOS",
"version": "3.4.12.1",
"hash": "sha256-8DDNP7vV0CyF3zcyJu5zew5V/+yu7gVV3fXLhG0Lmog="
},
{
"pname": "SDL3-CS.MacOS.Mixer",
"version": "3.2.4.7",
"hash": "sha256-BfA5lAczIeFzlpnXSkn7U7yAYP14P86h2JnmieskKtI="
},
{
"pname": "SDL3-CS.Windows",
"version": "3.4.12.1",
"hash": "sha256-vxV9ugWZMRWx0rsnbzcW+CRNK0pTBFl88sy9PJoZrTM="
},
{
"pname": "SDL3-CS.Windows.Mixer",
"version": "3.2.4.7",
"hash": "sha256-AramqrgeWC7EHT7S23gZ23I7+6y4UbP4JTYB+7uOCLE="
},
{
"pname": "SharpZipLib",
"version": "1.4.2",
"hash": "sha256-/giVqikworG2XKqfN9uLyjUSXr35zBuZ2FX2r8X/WUY="
},
{
"pname": "SkiaSharp",
"version": "4.150.1",
"hash": "sha256-Kda85aDEECz51qD3JqUPOaG3Hthrp38Byn6zJWFa1KA="
},
{
"pname": "SkiaSharp.NativeAssets.Linux",
"version": "4.150.1",
"hash": "sha256-zIgOIv6PW+w6gr2NOqA5R6ruX4GB2nammKJf8TvBFRg="
},
{
"pname": "SkiaSharp.NativeAssets.macOS",
"version": "4.150.1",
"hash": "sha256-NYTJvHOfHAOjKqqwBiVSjsy1MiM2cm6NxXAnzcS09vg="
},
{
"pname": "SkiaSharp.NativeAssets.WebAssembly",
"version": "3.119.4",
"hash": "sha256-xLfsWBsFFpv5Qg79GIMi+5CM6YDfcg//oywNlB5Y3J0="
},
{
"pname": "SkiaSharp.NativeAssets.Win32",
"version": "4.150.1",
"hash": "sha256-HhcG5jO8CCTsybT2XLNe7chmsc21JyXp0/9NyQ1Fvvo="
},
{
"pname": "System.IO.Pipelines",
"version": "10.0.9",
"hash": "sha256-mOoa73lPXvGGA56igef9alNU/nc+nQEOHPJu44dHepc="
},
{
"pname": "System.Reactive",
"version": "5.0.0",
"hash": "sha256-M5Z8pw8rVb8ilbnTdaOptzk5VFd5DlKa7zzCpuytTtE="
},
{
"pname": "System.Runtime.CompilerServices.Unsafe",
"version": "6.1.2",
"hash": "sha256-X2p/U680Zfkr622oc+vg5JYgbDEzE7mLre5DVaayWTc="
},
{
"pname": "System.Text.Encodings.Web",
"version": "10.0.9",
"hash": "sha256-YBpgyDvUYB44J84TtkIJkDh4c42grtn9fmxgV073FxQ="
},
{
"pname": "System.Text.Json",
"version": "10.0.9",
"hash": "sha256-7LNfBJ5Q/yxOuFa6d0mEIBNJEfO/UN5J13qbIFIo/5A="
},
{
"pname": "TextMateSharp",
"version": "2.0.3",
"hash": "sha256-mYZPeBWt2ek3I7oSRiXcOqcpQMjEbD6wR5CtHIHSLko="
},
{
"pname": "TextMateSharp.Grammars",
"version": "2.0.3",
"hash": "sha256-DiYxCPBg0jPcdlhduTMlCWOOY9Mc77Qt/aCGEPEgFEQ="
},
{
"pname": "Tmds.DBus.Protocol",
"version": "0.94.1",
"hash": "sha256-T3HQasQOcl/7zxt5hT3ZMhhpWoTyPTb6/IX0d6TJWA8="
},
{
"pname": "TreeDataGrid",
"version": "12.0.0",
"hash": "sha256-aaHSfvhaVik9XLYLpp0N9PxRe4GG1BTigWNMV3Qlc7g="
},
{
"pname": "Xaml.Behaviors",
"version": "12.0.5",
"hash": "sha256-bjX7WNXVabvB2ZYCLVp4rnVO5CKz+8NKtVvpAnDw97o="
}
]
+122
View File
@@ -0,0 +1,122 @@
{
lib,
buildDotnetModule,
fetchFromGitHub,
dotnetCorePackages,
autoPatchelfHook,
stdenv,
sdl3,
fontconfig,
libglvnd,
mesa,
sndio,
libGL,
libx11,
libice,
libsm,
libxcursor,
libxrandr,
libxft,
vulkan-headers,
vulkan-loader,
}:
let
rev = "eec5e7d07b63cb4caf82250914dba8ddd4044bbb";
buildDotnetModule' = buildDotnetModule.override {
addNuGetDeps = dotnetCorePackages.addNuGetDeps.override {
fetchNupkg =
let
baseOverrides = builtins.removeAttrs dotnetCorePackages.fetchNupkg.overrides or { } [ ];
in
dotnetCorePackages.fetchNupkg.override {
overrides = baseOverrides // {
"SkiaSharp.NativeAssets.Linux" =
package:
package.overrideAttrs (
old:
lib.optionalAttrs stdenv.hostPlatform.isLinux {
autoPatchelfIgnoreMissingDeps = (old.autoPatchelfIgnoreMissingDeps or [ ]) ++ [
"libc.musl-x86_64.so.1"
];
}
);
};
};
};
};
in
buildDotnetModule' {
pname = "undertale-mod-tool";
version = "8.9.10";
src = fetchFromGitHub {
owner = "luizzeroxis";
repo = "UndertaleModTool";
inherit rev;
hash = "sha256-QLQZC5C3o9U2PC+rZWfKFbul7BaIHxbu9u8AZaKFtmI=";
fetchSubmodules = true;
};
projectFile = "UndertaleModToolAvalonia/UndertaleModToolAvalonia.csproj";
nugetDeps = ./deps.json;
dotnet-sdk = dotnetCorePackages.sdk_10_0;
executables = [ "UndertaleModToolAvalonia" ];
autoPatchelfIgnoreMissingDeps = [
"libsteam_api.so"
"libGLES_CM.so.1"
];
nativeBuildInputs = [ autoPatchelfHook ];
buildInputs = [
stdenv.cc.cc.lib # provides libstdc++.so.6
fontconfig
sdl3
libx11
libglvnd
libGL
mesa
sndio
vulkan-headers
vulkan-loader
];
runtimeDependencies = [
stdenv.cc.cc.lib
libx11
sdl3
];
runtimeDeps = [
sdl3
libx11
libxcursor
libice
libsm
libxrandr
libxft
fontconfig
];
dotnetBuildFlags = [
"-p:BuildHash=${rev}"
"-p:PublishSingleFile=false"
"/p:RuntimeIdentifier="
"--no-self-contained"
];
postInstall = ''
# Disable this temporarily
#ln -s $out/bin/UndertaleModToolAvalonia $out/bin/undertalemodtool
'';
meta = with lib; {
description = "Avalonia cross-platform GUI port of UndertaleModTool";
homepage = "https://github.com/luizzeroxis/UndertaleModTool/tree/avalonia";
license = licenses.gpl3Only;
platforms = platforms.linux;
mainProgram = "undertalemodtool";
};
}