dotnetCorePackages.fetchNupkg: override avalonia.x11 to find native libs

This commit is contained in:
David McFarland 2024-09-04 01:18:41 -03:00
parent cc9c59c478
commit e6c700ed11
14 changed files with 37 additions and 120 deletions

View File

@ -5,9 +5,6 @@
, dotnetCorePackages , dotnetCorePackages
, dbus , dbus
, fontconfig , fontconfig
, libICE
, libSM
, libX11
, portaudio , portaudio
}: }:
@ -32,9 +29,6 @@ buildDotnetModule rec {
runtimeDeps = [ runtimeDeps = [
dbus dbus
libICE
libSM
libX11
portaudio portaudio
]; ];

View File

@ -2,21 +2,16 @@
, fetchFromGitHub , fetchFromGitHub
, buildDotnetModule , buildDotnetModule
, dotnetCorePackages , dotnetCorePackages
, libX11
, libICE
, libSM
, libsecret , libsecret
, git , git
, git-credential-manager , git-credential-manager
, gnupg , gnupg
, pass , pass
, testers , testers
, withGuiSupport ? true
, withLibsecretSupport ? true , withLibsecretSupport ? true
, withGpgSupport ? true , withGpgSupport ? true
}: }:
assert withLibsecretSupport -> withGuiSupport;
buildDotnetModule rec { buildDotnetModule rec {
pname = "git-credential-manager"; pname = "git-credential-manager";
version = "2.5.1"; version = "2.5.1";
@ -36,8 +31,7 @@ buildDotnetModule rec {
executables = [ "git-credential-manager" ]; executables = [ "git-credential-manager" ];
runtimeDeps = runtimeDeps =
lib.optionals withGuiSupport [ libX11 libICE libSM ] lib.optional withLibsecretSupport libsecret;
++ lib.optional withLibsecretSupport libsecret;
makeWrapperArgs = [ makeWrapperArgs = [
"--prefix PATH : ${lib.makeBinPath ([ git ] ++ lib.optionals withGpgSupport [ gnupg pass ])}" "--prefix PATH : ${lib.makeBinPath ([ git ] ++ lib.optionals withGpgSupport [ gnupg pass ])}"
]; ];

View File

@ -3,7 +3,11 @@
dotnetCorePackages, dotnetCorePackages,
fontconfig, fontconfig,
lib, lib,
libICE,
libSM,
libX11,
stdenv, stdenv,
writeText,
}: }:
{ {
# e.g. # e.g.
@ -13,22 +17,39 @@
# buildInputs = old.buildInputs or [ ] ++ [ hello ]; # buildInputs = old.buildInputs or [ ] ++ [ hello ];
# }); # });
"Avalonia.X11" =
package:
package.overrideAttrs (
old:
lib.optionalAttrs (!stdenv.isDarwin) {
setupHook = writeText "setupHook.sh" ''
prependToVar dotnetRuntimeDeps \
"${lib.getLib libICE}" \
"${lib.getLib libSM}" \
"${lib.getLib libX11}"
'';
}
);
"SkiaSharp.NativeAssets.Linux" = "SkiaSharp.NativeAssets.Linux" =
package: package:
package.overrideAttrs (old: { package.overrideAttrs (
nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [ autoPatchelfHook ]; old:
lib.optionalAttrs stdenv.isLinux {
nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [ autoPatchelfHook ];
buildInputs = old.buildInputs or [ ] ++ [ fontconfig ]; buildInputs = old.buildInputs or [ ] ++ [ fontconfig ];
preInstall = preInstall =
old.preInstall or "" old.preInstall or ""
+ '' + ''
cd runtimes cd runtimes
for platform in *; do for platform in *; do
[[ $platform == "${dotnetCorePackages.systemToDotnetRid stdenv.hostPlatform.system}" ]] || [[ $platform == "${dotnetCorePackages.systemToDotnetRid stdenv.hostPlatform.system}" ]] ||
rm -r "$platform" rm -r "$platform"
done done
cd - >/dev/null cd - >/dev/null
''; '';
}); }
);
} }

View File

@ -5,10 +5,6 @@
dotnetCorePackages, dotnetCorePackages,
libX11,
libICE,
libSM,
xdg-utils, xdg-utils,
}: }:
@ -37,11 +33,6 @@ buildDotnetModule rec {
nugetDeps = ./deps.nix; nugetDeps = ./deps.nix;
runtimeDeps = [
libX11
libICE
libSM
];
# Required for OneClick # Required for OneClick
makeWrapperArgs = [ makeWrapperArgs = [

View File

@ -6,9 +6,6 @@
dotnetCorePackages, dotnetCorePackages,
xz, xz,
pcre, pcre,
libX11,
libICE,
libSM,
autoPatchelfHook, autoPatchelfHook,
bintools, bintools,
fixDarwinDylibNames, fixDarwinDylibNames,
@ -77,9 +74,6 @@ buildDotnetModule rec {
runtimeDeps = [ runtimeDeps = [
xz xz
pcre pcre
libX11
libICE
libSM
libgdiplus libgdiplus
glib glib
libXrandr libXrandr

View File

@ -3,7 +3,6 @@
, fetchFromGitHub , fetchFromGitHub
, lib , lib
, openal , openal
, xorg
}: }:
buildDotnetModule rec { buildDotnetModule rec {
@ -22,7 +21,7 @@ buildDotnetModule rec {
nugetDeps = ./deps.nix; nugetDeps = ./deps.nix;
executables = [ "Knossos.NET" ]; executables = [ "Knossos.NET" ];
runtimeDeps = [ openal xorg.libX11 xorg.libICE xorg.libSM ]; runtimeDeps = [ openal ];
meta = with lib; { meta = with lib; {
homepage = "https://github.com/KnossosNET/Knossos.NET"; homepage = "https://github.com/KnossosNET/Knossos.NET";

View File

@ -6,13 +6,6 @@
dotnetCorePackages, dotnetCorePackages,
wrapGAppsHook3, wrapGAppsHook3,
libX11,
libICE,
libSM,
libXi,
libXcursor,
libXext,
libXrandr,
glew, glew,
gtk3, gtk3,
}: }:
@ -47,13 +40,6 @@ buildDotnetModule rec {
runtimeDeps = [ runtimeDeps = [
# For Avalonia UI # For Avalonia UI
libX11
libICE
libSM
libXi
libXcursor
libXext
libXrandr
glew glew
# For file dialogs # For file dialogs
gtk3 gtk3

View File

@ -6,9 +6,6 @@
zlib, zlib,
icu, icu,
openssl, openssl,
libX11,
libICE,
libSM,
icoutils, icoutils,
copyDesktopItems, copyDesktopItems,
makeDesktopItem, makeDesktopItem,
@ -36,9 +33,6 @@ buildDotnetModule rec {
zlib zlib
icu icu
openssl openssl
libX11
libICE
libSM
]; ];
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -7,9 +7,6 @@
fetchFromGitHub, fetchFromGitHub,
fontconfig, fontconfig,
lib, lib,
libICE,
libSM,
libX11,
runCommand, runCommand,
pname ? "nexusmods-app", pname ? "nexusmods-app",
}: }:
@ -62,12 +59,6 @@ buildDotnetModule (finalAttrs: {
runtimeInputs = [ desktop-file-utils ]; runtimeInputs = [ desktop-file-utils ];
runtimeDeps = [
libICE
libSM
libX11
];
executables = [ "NexusMods.App" ]; executables = [ "NexusMods.App" ];
doCheck = true; doCheck = true;

View File

@ -4,10 +4,6 @@
, copyDesktopItems , copyDesktopItems
, makeDesktopItem , makeDesktopItem
, lib , lib
, libX11
, libXcursor
, libICE
, libSM
, runCommandLocal , runCommandLocal
}: }:
let let
@ -42,13 +38,6 @@ buildDotnetModule {
copyDesktopItems copyDesktopItems
]; ];
runtimeDeps = [
libX11
libICE
libXcursor
libSM
];
projectFile = [ projectFile = [
"RetroSpyX/RetroSpyX.csproj" "RetroSpyX/RetroSpyX.csproj"
"GBPemuX/GBPemuX.csproj" "GBPemuX/GBPemuX.csproj"

View File

@ -10,12 +10,6 @@
, sndio , sndio
, pulseaudio , pulseaudio
, vulkan-loader , vulkan-loader
, libICE
, libSM
, libXi
, libXcursor
, libXext
, libXrandr
, glew , glew
, libGL , libGL
, udev , udev
@ -54,12 +48,6 @@ buildDotnetModule rec {
udev udev
# Avalonia UI # Avalonia UI
libICE
libSM
libXi
libXcursor
libXext
libXrandr
glew glew
# Headless executable # Headless executable

View File

@ -6,13 +6,6 @@
, iconConvTools , iconConvTools
, copyDesktopItems , copyDesktopItems
, makeDesktopItem , makeDesktopItem
, libX11
, libICE
, libSM
, libXi
, libXcursor
, libXext
, libXrandr
, glew , glew
, SDL2 , SDL2
, glfw , glfw
@ -94,13 +87,6 @@ buildDotnetModule rec {
gdk-pixbuf gdk-pixbuf
# Avalonia UI dependencies. # Avalonia UI dependencies.
libX11
libICE
libSM
libXi
libXcursor
libXext
libXrandr
glew glew
]; ];

View File

@ -3,9 +3,6 @@
, fetchFromGitHub , fetchFromGitHub
, glibc , glibc
, zlib , zlib
, libX11
, libICE
, libSM
, gtk3 , gtk3
, copyDesktopItems , copyDesktopItems
, icoutils , icoutils
@ -31,9 +28,6 @@ buildDotnetModule rec {
runtimeDeps = [ runtimeDeps = [
glibc glibc
zlib zlib
libX11
libICE
libSM
gtk3 gtk3
]; ];

View File

@ -4,7 +4,6 @@
, dotnet-runtime_8 , dotnet-runtime_8
, buildDotnetModule , buildDotnetModule
, fetchFromGitHub , fetchFromGitHub
, xorg
, libglvnd , libglvnd
, makeDesktopItem , makeDesktopItem
, copyDesktopItems , copyDesktopItems
@ -41,9 +40,6 @@ buildDotnetModule rec {
runtimeDeps = [ runtimeDeps = [
libglvnd libglvnd
xorg.libSM
xorg.libICE
xorg.libX11
]; ];
desktopItems = makeDesktopItem { desktopItems = makeDesktopItem {