Broiler.Native.Linux 0.1.0-preview.8

This is a prerelease version of Broiler.Native.Linux.
dotnet add package Broiler.Native.Linux --version 0.1.0-preview.8
                    
NuGet\Install-Package Broiler.Native.Linux -Version 0.1.0-preview.8
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Broiler.Native.Linux" Version="0.1.0-preview.8" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Broiler.Native.Linux" Version="0.1.0-preview.8" />
                    
Directory.Packages.props
<PackageReference Include="Broiler.Native.Linux" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Broiler.Native.Linux --version 0.1.0-preview.8
                    
#r "nuget: Broiler.Native.Linux, 0.1.0-preview.8"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Broiler.Native.Linux@0.1.0-preview.8
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Broiler.Native.Linux&version=0.1.0-preview.8&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Broiler.Native.Linux&version=0.1.0-preview.8&prerelease
                    
Install as a Cake Tool

Broiler.Native

Shared native API bindings for Broiler.Graphics, Broiler.Input, and Broiler.Media. The component owns native entry points, ABI structures, constants, COM contracts, function delegates, and library probing. It has no dependency on those consumers.

Packages

Package Target Description
Broiler.Native Any (net10.0) Lightweight core with NativeLibraryProbe for non-throwing library probing. Zero external dependencies.
Broiler.Native.Windows Windows (net10.0) Win32 windowing, performance counters, Raw Input, DirectX (D2D, DWrite, DXGI, D3D11), WIC, WASAPI, Media Foundation.
Broiler.Native.Linux Linux (net10.0) libc/evdev input, poll, X11, EGL/OpenGL dynamic loading and driver queries, Vulkan device enumeration.
Broiler.Native.Android Android (net10.0) EGL, OpenGL ES 2.0 / 3.0, ANativeWindow, and assembly-scoped dynamic soname resolver.
Broiler.Native.All Any (net10.0) Convenience meta-package referencing all platform packages for multi-target or cross-platform codebases.

All projects target net10.0 and are annotated with <IsAotCompatible>true</IsAotCompatible>. A reference to a platform package does not eagerly load its native libraries; call platform APIs only on a compatible host with the required libraries installed.


Quickstart for Consumers

Install packages via NuGet:

dotnet add package Broiler.Native.Windows
# or for multi-platform projects:
dotnet add package Broiler.Native.All

Probing Library Availability

using Broiler.Native;

if (OperatingSystem.IsWindows() && NativeLibraryProbe.IsAvailable("d2d1.dll"))
{
    // Direct2D is available
}

High-Precision Timing

using Broiler.Native.Windows;

PerformanceCounterNative.QueryPerformanceFrequency(out long frequency);
PerformanceCounterNative.QueryPerformanceCounter(out long start);
// ... work ...
PerformanceCounterNative.QueryPerformanceCounter(out long end);
double elapsedSeconds = (double)(end - start) / frequency;

For complete consumer documentation, platform requirements, and detailed subsystem examples, see the End-User and Consumer Guide.


Developer Quickstart

Requires the .NET 10 SDK, Node.js 24, and PowerShell 7 (or Windows PowerShell).

# Build solution
dotnet build Broiler.Native.slnx -c Release

# Run test suite
dotnet run --project src/tests/Broiler.Native.Tests -c Release --no-build
# or: bash ./eng/run-tests.sh Release

# Test version resolution engine
node --test eng/resolve-preview-version.test.mjs

# Pack and verify shipping packages locally
pwsh -File eng/pack.ps1 -Configuration Release

# Verify consumer restoration against NuGet.org
pwsh -File eng/verify-feed.ps1 -Packages artifacts

For guidelines on authoring bindings, COM interfaces under NativeAOT, struct layout verification, and release workflows, see the Developer and Contributor Guide.


Documentation Index


License

Licensed under Apache-2.0.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on Broiler.Native.Linux:

Package Downloads
Broiler.Graphics.Linux

Shared Linux runtime support for the Broiler.Graphics backends: native library probing, dependency resolution, and runtime diagnostics.

Broiler.Input.Linux

Shared Linux event-device, native dependency, and diagnostics support for Broiler input providers.

Broiler.Hosting.Linux

Linux desktop hosting, X11 clipboard, evdev input coordinator, and diagnostics for Broiler platform applications.

Broiler.Native.All

Convenience package referencing all Broiler native API bindings.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-preview.8 80 10/11/2026
0.1.0-preview.7 239 10/4/2026
0.1.0-preview.6 542 9/24/2026
0.1.0-preview.5 684 9/22/2026
0.1.0-preview.3 387 9/22/2026