ZeroInstall.Client 2.29.3

dotnet add package ZeroInstall.Client --version 2.29.3
                    
NuGet\Install-Package ZeroInstall.Client -Version 2.29.3
                    
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="ZeroInstall.Client" Version="2.29.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ZeroInstall.Client" Version="2.29.3" />
                    
Directory.Packages.props
<PackageReference Include="ZeroInstall.Client" />
                    
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 ZeroInstall.Client --version 2.29.3
                    
#r "nuget: ZeroInstall.Client, 2.29.3"
                    
#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 ZeroInstall.Client@2.29.3
                    
#: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=ZeroInstall.Client&version=2.29.3
                    
Install as a Cake Addin
#tool nuget:?package=ZeroInstall.Client&version=2.29.3
                    
Install as a Cake Tool

ZeroInstall.Client

Client library for invoking Zero Install commands from within other applications.

Zero Install is a decentralized cross-platform software installation system.

Use ZeroInstallClient.Detect to automatically discover the locations of the 0install and/or 0install-win executables. This gives you an instance of IZeroInstallClient, which enables easy programmatic access to a subset of the Zero Install command-line interface.

Samples

Detect 0install location and the feed URI used to launch the app:

var zeroInstall = ZeroInstallClient.Detect;
var feedUri = ZeroInstallEnvironment.FeedUri ?? new FeedUri("https://example.com/your-feed.xml");

Download updates if available:

if (await zeroInstall.UpdateAsync(feedUri))
    NotifyUpdateAvailable();

Restart the app to run the latest version:

zeroInstall.Run(feedUri);
Environment.Exit(0);

Toggle the app's auto start desktop integration:

bool isAutoStartEnabled = zeroInstall.GetIntegration(feedUri).Contains(IntegrationCategories.AutoStart);
if (isAutoStartEnabled)
    await zeroInstall.IntegrateAsync(feedUri, remove: new[] {IntegrationCategories.AutoStart});
else
    await zeroInstall.IntegrateAsync(feedUri, add: new[] {IntegrationCategories.AutoStart});

Error handling

The client library maps 0install's exit codes to exceptions. Your code should be ready to catch:

  • IOException: 0install could not be launched or there was a problem accessing the filesystem.
  • WebException: There was a problem downloading a file.
  • OperationCanceledException: The user canceled the operation.
  • NanoByte.Common.ExitCodeException: Any other kind of error.
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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 is compatible.  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 Framework net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on ZeroInstall.Client:

Package Downloads
ZeroInstall.Publish

Utilities for creating and modifying Zero Install feed files

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.29.3 72 8/6/2026
2.29.2 257 7/26/2026
2.29.1 454 6/26/2026
2.29.0 312 5/18/2026
2.28.7 402 5/6/2026
2.28.6 163 5/2/2026
2.28.5 267 4/16/2026
2.28.4 366 2/16/2026
2.28.3 215 2/1/2026
2.28.2 197 1/24/2026
2.28.1 919 12/2/2025
2.28.0 620 9/8/2025
2.27.8 394 8/28/2025
2.27.7 312 8/18/2025
2.27.6 328 8/12/2025
2.27.5 372 8/5/2025
2.27.4 307 7/31/2025
2.27.3 206 7/29/2025
2.27.2 662 7/23/2025
2.27.1 627 7/21/2025
Loading failed