diff --git a/pkgs/by-name/me/mesen/deps.json b/pkgs/by-name/me/mesen/deps.json
index 8b2284636873..ed1b21d2485e 100644
--- a/pkgs/by-name/me/mesen/deps.json
+++ b/pkgs/by-name/me/mesen/deps.json
@@ -1,8 +1,8 @@
[
{
"pname": "Avalonia",
- "version": "11.2.0",
- "hash": "sha256-kG3tnsLdodlvIjYd5feBZ0quGd2FsvV8FIy7uD5UZ5Q="
+ "version": "11.2.4",
+ "hash": "sha256-CcdWUxqd43A4KeY1K4T5M6R1M0zuwdwyd5Qh/BAlNT4="
},
{
"pname": "Avalonia.Angle.Windows.Natives",
@@ -16,18 +16,18 @@
},
{
"pname": "Avalonia.BuildServices",
- "version": "0.0.29",
- "hash": "sha256-WPHRMNowRnYSCh88DWNBCltWsLPyOfzXGzBqLYE7tRY="
+ "version": "0.0.31",
+ "hash": "sha256-wgtodGf644CsUZEBIpFKcUjYHTbnu7mZmlr8uHIxeKA="
},
{
"pname": "Avalonia.Controls.ColorPicker",
- "version": "11.2.0",
- "hash": "sha256-x6IdcSo3e2Pq/En9/N80HpPblEXSAv51VRlBrF8wlVM="
+ "version": "11.2.3",
+ "hash": "sha256-z3ZHxVSOoOjqq+5G71jnGN1Y0i3YpAkox7cj3lNr6kg="
},
{
"pname": "Avalonia.Controls.DataGrid",
- "version": "11.2.0",
- "hash": "sha256-pd/cD82onMZ0iMLl9TOCl35PEvAPbyX2lUj49lrBpOA="
+ "version": "11.2.3",
+ "hash": "sha256-jIJvuYN0iym/WeOC0C7z5xj5kCZSXGoeLQ/q5qQfewM="
},
{
"pname": "Avalonia.Controls.ProportionalStackPanel",
@@ -46,18 +46,18 @@
},
{
"pname": "Avalonia.Desktop",
- "version": "11.2.0",
- "hash": "sha256-+5ISi6WXe8AIjClVo3UqZHgzZpFbMgFk13YvHHhx9MM="
+ "version": "11.2.4",
+ "hash": "sha256-WKTOx7RNSb0fOMg5Za4j+u9DwKXDqVzHwQCEXSm7TFo="
},
{
"pname": "Avalonia.Diagnostics",
- "version": "11.2.0",
- "hash": "sha256-k60HGDKnsXiDOnxSH+Hx2ihyqmxSSeWIBJx2XD1ELW0="
+ "version": "11.2.3",
+ "hash": "sha256-DIGkaBff+C3BLwedw5xteR5lfzb6ecxiLt12eJVgLQc="
},
{
"pname": "Avalonia.FreeDesktop",
- "version": "11.2.0",
- "hash": "sha256-u4CQvG6EdsyaHSWa+Y704sDiWZlqbArB0g4gcoCFwQo="
+ "version": "11.2.4",
+ "hash": "sha256-lw8YFXR/pn0awFvFW+OhjZ2LbHonL6zwqLIz+pQp+Sk="
},
{
"pname": "Avalonia.MarkupExtension",
@@ -66,43 +66,48 @@
},
{
"pname": "Avalonia.Native",
- "version": "11.2.0",
- "hash": "sha256-fMikurP2RAnOahZkORxuGOKGn5iQ0saZCEYsvoFiFQI="
+ "version": "11.2.4",
+ "hash": "sha256-MvxivGjYerXcr70JpWe9CCXO6MU9QQgCkmZfjZCFdJM="
},
{
"pname": "Avalonia.ReactiveUI",
- "version": "11.2.0",
- "hash": "sha256-6GXX1ZA6gS9CpkQnGepx1PFNoKiwcHQyLSK5qOGmjYo="
+ "version": "11.2.3",
+ "hash": "sha256-NqRetBiFg5gNCS8C0J1JJJsZ4sz+w+GoEegGFddBGDg="
},
{
"pname": "Avalonia.Remote.Protocol",
- "version": "11.2.0",
- "hash": "sha256-QwYY3bpShJ1ayHUx+mjnwaEhCPDzTk+YeasCifAtGzM="
+ "version": "11.2.3",
+ "hash": "sha256-dSeu7rnTD9rIvlyro2iFS52oi0vvfeaGV3kDm90BkKw="
+ },
+ {
+ "pname": "Avalonia.Remote.Protocol",
+ "version": "11.2.4",
+ "hash": "sha256-mKQVqtzxnZu6p64ZxIHXKSIw3AxAFjhmrxCc5/1VXfc="
},
{
"pname": "Avalonia.Skia",
- "version": "11.2.0",
- "hash": "sha256-rNR+l+vLtlzTU+F51FpOi4Ujy7nR5+lbTc3NQte8s/o="
+ "version": "11.2.4",
+ "hash": "sha256-82UQGuCl5hN5kdA3Uz7hptpNnG1EPlSB6k/a6XPSuXI="
},
{
"pname": "Avalonia.Themes.Fluent",
- "version": "11.2.0",
- "hash": "sha256-Ate6KC61pwXmTAk5h1uh7rjwAViuiO/qgAVMl3F1BA8="
+ "version": "11.2.4",
+ "hash": "sha256-CPun/JWFCVoGxgMA510/gMP2ZB9aZJ9Bk8yuNjwo738="
},
{
"pname": "Avalonia.Themes.Simple",
- "version": "11.2.0",
- "hash": "sha256-l88ZX50Nao8wjtRnyZxNFFgRpJ/yxxNki6NY48dyTUg="
+ "version": "11.2.3",
+ "hash": "sha256-UF15yTDzHmqd33siH3TJxmxaonA51dzga+hmCUahn1k="
},
{
"pname": "Avalonia.Win32",
- "version": "11.2.0",
- "hash": "sha256-A9PB6Bt61jLdQlMOkchWy/3BwROgxS9BP8FObs/KFiU="
+ "version": "11.2.4",
+ "hash": "sha256-LJSKiLbdof8qouQhN7pY1RkMOb09IiAu/nrJFR2OybY="
},
{
"pname": "Avalonia.X11",
- "version": "11.2.0",
- "hash": "sha256-EP9cCqriEh8d+Wwyv27QGK/CY6w2LcCjtcIv79PZqkM="
+ "version": "11.2.4",
+ "hash": "sha256-qty8D2/HlZz/7MiEhuagjlKlooDoW3fow5yJY5oX4Uk="
},
{
"pname": "CommunityToolkit.Mvvm",
@@ -156,28 +161,28 @@
},
{
"pname": "HarfBuzzSharp",
- "version": "7.3.0.2",
- "hash": "sha256-ibgoqzT1NV7Qo5e7X2W6Vt7989TKrkd2M2pu+lhSDg8="
+ "version": "7.3.0.3",
+ "hash": "sha256-1vDIcG1aVwVABOfzV09eAAbZLFJqibip9LaIx5k+JxM="
},
{
"pname": "HarfBuzzSharp.NativeAssets.Linux",
- "version": "7.3.0.2",
- "hash": "sha256-SSfyuyBaduGobJW+reqyioWHhFWsQ+FXa2Gn7TiWxrU="
+ "version": "7.3.0.3",
+ "hash": "sha256-HW5r16wdlgDMbE/IfE5AQGDVFJ6TS6oipldfMztx+LM="
},
{
"pname": "HarfBuzzSharp.NativeAssets.macOS",
- "version": "7.3.0.2",
- "hash": "sha256-dmEqR9MmpCwK8AuscfC7xUlnKIY7+Nvi06V0u5Jff08="
+ "version": "7.3.0.3",
+ "hash": "sha256-UpAVfRIYY8Wh8xD4wFjrXHiJcvlBLuc2Xdm15RwQ76w="
},
{
"pname": "HarfBuzzSharp.NativeAssets.WebAssembly",
- "version": "7.3.0.3-preview.2.2",
- "hash": "sha256-1NlcTnXrWUYZ2r2/N3SPxNIjNcyIpiiv3g7h8XxpNkM="
+ "version": "7.3.0.3",
+ "hash": "sha256-jHrU70rOADAcsVfVfozU33t/5B5Tk0CurRTf4fVQe3I="
},
{
"pname": "HarfBuzzSharp.NativeAssets.Win32",
- "version": "7.3.0.2",
- "hash": "sha256-x4iM3NHs9VyweG57xA74yd4uLuXly147ooe0mvNQ8zo="
+ "version": "7.3.0.3",
+ "hash": "sha256-v/PeEfleJcx9tsEQAo5+7Q0XPNgBqiSLNnB2nnAGp+I="
},
{
"pname": "MicroCom.Runtime",
@@ -201,28 +206,28 @@
},
{
"pname": "SkiaSharp",
- "version": "2.88.8",
- "hash": "sha256-rD5gc4SnlRTXwz367uHm8XG5eAIQpZloGqLRGnvNu0A="
+ "version": "2.88.9",
+ "hash": "sha256-jZ/4nVXYJtrz9SBf6sYc/s0FxS7ReIYM4kMkrhZS+24="
},
{
"pname": "SkiaSharp.NativeAssets.Linux",
- "version": "2.88.8",
- "hash": "sha256-fOmNbbjuTazIasOvPkd2NPmuQHVCWPnow7AxllRGl7Y="
+ "version": "2.88.9",
+ "hash": "sha256-mQ/oBaqRR71WfS66mJCvcc3uKW7CNEHoPN2JilDbw/A="
},
{
"pname": "SkiaSharp.NativeAssets.macOS",
- "version": "2.88.8",
- "hash": "sha256-CdcrzQHwCcmOCPtS8EGtwsKsgdljnH41sFytW7N9PmI="
+ "version": "2.88.9",
+ "hash": "sha256-qvGuAmjXGjGKMzOPBvP9VWRVOICSGb7aNVejU0lLe/g="
},
{
"pname": "SkiaSharp.NativeAssets.WebAssembly",
- "version": "2.88.8",
- "hash": "sha256-GWWsE98f869LiOlqZuXMc9+yuuIhey2LeftGNk3/z3w="
+ "version": "2.88.9",
+ "hash": "sha256-vgFL4Pdy3O1RKBp+T9N3W4nkH9yurZ0suo8u3gPmmhY="
},
{
"pname": "SkiaSharp.NativeAssets.Win32",
- "version": "2.88.8",
- "hash": "sha256-b8Vb94rNjwPKSJDQgZ0Xv2dWV7gMVFl5GwTK/QiZPPM="
+ "version": "2.88.9",
+ "hash": "sha256-kP5XM5GgwHGfNJfe4T2yO5NIZtiF71Ddp0pd1vG5V/4="
},
{
"pname": "Splat",
diff --git a/pkgs/by-name/me/mesen/dont-use-alternative-restore-sources.patch b/pkgs/by-name/me/mesen/dont-use-alternative-restore-sources.patch
deleted file mode 100644
index 1c194a4a3084..000000000000
--- a/pkgs/by-name/me/mesen/dont-use-alternative-restore-sources.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/UI/UI.csproj b/UI/UI.csproj
-index 2a0eb78..74751bc 100644
---- a/UI/UI.csproj
-+++ b/UI/UI.csproj
-@@ -90,11 +90,6 @@
-
-
-
--
--
-- https://nuget-feed-nightly.avaloniaui.net/v3/index.json;https://api.nuget.org/v3/index.json
--
--
-
-
-
diff --git a/pkgs/by-name/me/mesen/dont-use-nightly-avalonia.patch b/pkgs/by-name/me/mesen/dont-use-nightly-avalonia.patch
new file mode 100644
index 000000000000..b21e6b7d0306
--- /dev/null
+++ b/pkgs/by-name/me/mesen/dont-use-nightly-avalonia.patch
@@ -0,0 +1,33 @@
+diff --git a/UI/UI.csproj b/UI/UI.csproj
+index 7721884..3011ae8 100644
+--- a/UI/UI.csproj
++++ b/UI/UI.csproj
+@@ -90,11 +90,6 @@
+
+
+
+-
+-
+- https://nuget-feed-nightly.avaloniaui.net/v3/index.json;https://api.nuget.org/v3/index.json
+-
+-
+
+
+
+@@ -105,13 +100,13 @@
+
+
+
+-
++
+
+-
++
+
+
+
+-
++
+
+
+
diff --git a/pkgs/by-name/me/mesen/dont-zip-libraries.patch b/pkgs/by-name/me/mesen/dont-zip-libraries.patch
index 6aeed6c3e757..9e78203b5af6 100644
--- a/pkgs/by-name/me/mesen/dont-zip-libraries.patch
+++ b/pkgs/by-name/me/mesen/dont-zip-libraries.patch
@@ -1,17 +1,17 @@
diff --git a/UI/Config/ConfigManager.cs b/UI/Config/ConfigManager.cs
-index 56c1ff1..ed5fe8a 100644
+index c3249cf..96c6ae0 100644
--- a/UI/Config/ConfigManager.cs
+++ b/UI/Config/ConfigManager.cs
@@ -51,7 +51,6 @@ namespace Mesen.Config
} else {
homeFolder = DefaultDocumentsFolder;
}
-- Program.ExtractNativeDependencies(homeFolder);
+- DependencyHelper.ExtractNativeDependencies(homeFolder);
_homeFolder = homeFolder;
Config.Save();
}
diff --git a/UI/Program.cs b/UI/Program.cs
-index dfc4ba3..632cef2 100644
+index dc923ab..ae7a1cc 100644
--- a/UI/Program.cs
+++ b/UI/Program.cs
@@ -54,8 +54,6 @@ namespace Mesen
@@ -19,7 +19,7 @@ index dfc4ba3..632cef2 100644
if(!File.Exists(ConfigManager.GetConfigFile())) {
- //Could not find configuration file, show wizard
-- ExtractNativeDependencies(ConfigManager.HomeFolder);
+- DependencyHelper.ExtractNativeDependencies(ConfigManager.HomeFolder);
App.ShowConfigWindow = true;
BuildAvaloniaApp().StartWithClassicDesktopLifetime(args, ShutdownMode.OnMainWindowClose);
if(File.Exists(ConfigManager.GetConfigFile())) {
@@ -28,12 +28,12 @@ index dfc4ba3..632cef2 100644
Task.Run(() => ConfigManager.LoadConfig());
- //Extract core dll & other native dependencies
-- ExtractNativeDependencies(ConfigManager.HomeFolder);
+- DependencyHelper.ExtractNativeDependencies(ConfigManager.HomeFolder);
-
if(CommandLineHelper.IsTestRunner(args)) {
return TestRunner.Run(args);
}
-@@ -147,7 +142,7 @@ namespace Mesen
+@@ -105,7 +100,7 @@ namespace Mesen
libraryName = libraryName + ".dylib";
}
}
@@ -43,10 +43,10 @@ index dfc4ba3..632cef2 100644
return IntPtr.Zero;
}
diff --git a/UI/UI.csproj b/UI/UI.csproj
-index 053d495..2a0eb78 100644
+index 67fe57d..65762d3 100644
--- a/UI/UI.csproj
+++ b/UI/UI.csproj
-@@ -634,7 +634,6 @@
+@@ -637,7 +637,6 @@
@@ -54,7 +54,7 @@ index 053d495..2a0eb78 100644
-@@ -644,16 +643,5 @@
+@@ -647,16 +646,4 @@
@@ -62,13 +62,12 @@ index 053d495..2a0eb78 100644
-
-
-
--
+-
-
-
-
-
-
-
-
+-
-
diff --git a/pkgs/by-name/me/mesen/package.nix b/pkgs/by-name/me/mesen/package.nix
index 43957a1c7004..34b5b1108727 100644
--- a/pkgs/by-name/me/mesen/package.nix
+++ b/pkgs/by-name/me/mesen/package.nix
@@ -6,24 +6,24 @@
fetchFromGitHub,
wrapGAppsHook3,
gtk3,
+ libX11,
SDL2,
}:
buildDotnetModule rec {
pname = "mesen";
- version = "2.0.0-unstable-2024-12-25";
+ version = "2.0.0-unstable-2025-04-01";
src = fetchFromGitHub {
owner = "SourMesen";
repo = "Mesen2";
- rev = "6820db37933002089a04d356d8469481e915a359";
- hash = "sha256-TzGMZr351XvVj/wARWJxRisRb5JlkyzdjCVYbwydBVE=";
+ rev = "0dfdbbdd9b5bc4c5d501ea691116019266651aff";
+ hash = "sha256-+Jzw1tfdiX2EmQIoPuMtLmJrv9nx/XqfyLEBW+AXj1I=";
};
patches = [
- # the nightly avalonia repository url is still queried, which errors out
- # even if we don't actually need any nightly versions
- ./dont-use-alternative-restore-sources.patch
+ # patch out the usage of nightly avalonia builds, since we can't use alternative restore sources
+ ./dont-use-nightly-avalonia.patch
# upstream has a weird library loading mechanism, which we override with a more sane alternative
./dont-zip-libraries.patch
];
@@ -60,7 +60,7 @@ buildDotnetModule rec {
nativeBuildInputs = [ SDL2 ];
- buildInputs = [ SDL2 ];
+ buildInputs = [ SDL2 ] ++ lib.optionals clangStdenv.hostPlatform.isLinux [ libX11 ];
makeFlags = [ "core" ];