Yubico.NativeShims
1.15.0
dotnet add package Yubico.NativeShims --version 1.15.0
NuGet\Install-Package Yubico.NativeShims -Version 1.15.0
<PackageReference Include="Yubico.NativeShims" Version="1.15.0" />
<PackageVersion Include="Yubico.NativeShims" Version="1.15.0" />
<PackageReference Include="Yubico.NativeShims" />
paket add Yubico.NativeShims --version 1.15.0
#r "nuget: Yubico.NativeShims, 1.15.0"
#:package Yubico.NativeShims@1.15.0
#addin nuget:?package=Yubico.NativeShims&version=1.15.0
#tool nuget:?package=Yubico.NativeShims&version=1.15.0
Yubico.NativeShims
Yubico.NativeShims is a cross-platform C library designed to bridge the gap in native interoperation (interop) within the .NET environment. It serves as a foundational tool to handle nuances in API signatures and build configurations across different operating systems, facilitating a more unified and streamlined P/Invoke integration for Yubico's development stack.
Why Yubico.NativeShims?
Unified P/Invoke Contracts: Addresses the limitations of P/Invoke by providing a single, universal contract that adapts to platform-specific differences in native library APIs, avoiding the need for multiple, complex P/Invoke signatures.
Optimized Native Dependencies: Incorporates essential functionalities from native libraries directly, reducing the SDK's footprint by allowing static linking and selective inclusion of dependencies, ensuring a leaner, more efficient library.
Building Yubico.NativeShims
Prerequisites
- VCPKG: Utilizes VCPKG to manage native dependencies. Ensure
VCPKG_INSTALLATION_ROOTenvironment variable is set to your VCPKG installation path. - Platforms: Supports Windows (x86, x64, arm64), macOS (x64, arm64), and Linux (Ubuntu x64, arm64) through GitHub Actions CI workflows for comprehensive build coverage.
Windows Build
- Install Visual Studio with C++ workload and ARM64 build tools.
- Use "x64 Native tools command prompt" to navigate and run
./build-windows.ps1.
macOS Build
- Requires XCode
- pkg-config (brew install pkg-config)
- Navigate to Yubico.NativeShims folder and run
sh ./build-macos.sh.
Linux Build
- Compiled with Zig compiler targeting glibc 2.28 for broad Linux distribution compatibility.
- Should ideally be run in a container (targeting Ubuntu 20.04) to avoid making changes to your environment.
- Run
sh ./build-linux-amd64orsh ./build-linux-arm64depending on the target architecture.
Refer to the provided scripts and GitHub Actions CI workflows for detailed building instructions across different platforms and architectures.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.7.2
- No dependencies.
-
.NETStandard 2.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Yubico.NativeShims:
| Package | Downloads |
|---|---|
|
Yubico.Core
Yubico.Core is a support library used by other .NET Yubico libraries. You should likely never need to consume this package directly, as it will be included with other libraries. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.15.0 | 20,372 | 12/3/2025 |
| 1.14.0 | 7,156 | 9/17/2025 |
| 1.13.2 | 2,485 | 7/3/2025 |
| 1.12.1 | 17,779 | 12/23/2024 |
| 1.11.0 | 9,248 | 6/29/2024 |
| 1.10.0 | 125,604 | 4/11/2024 |
| 1.9.0 | 23,789 | 10/13/2023 |
| 1.6.1 | 9,419 | 2/3/2023 |
| 1.6.0 | 1,147 | 1/16/2023 |
| 1.5.2 | 1,883 | 11/18/2022 |
| 1.5.1 | 541 | 11/4/2022 |
| 1.5.0 | 1,296 | 10/28/2022 |
| 1.3.1 | 5,743 | 4/1/2022 |