Table of Contents

Namespace ZeroInstall.DesktopIntegration

Integrating applications with desktop environments (creating menu entries, etc.).

Note

NuGet package: ZeroInstall.DesktopIntegration

ZeroInstall.DesktopIntegration

Integrating applications with desktop environments (creating menu entries, etc.).

Zero Install is a decentralized cross-platform software installation system. This package is part of the .NET implementation of Zero Install.

The IntegrationManager class applies and removes access points for apps in the user's app list. The ZeroInstall.DesktopIntegration.AccessPoints namespace models the various kinds of integration, such as menu entries, desktop icons, file type associations and auto start entries.

Platform-specific implementations live in the ZeroInstall.DesktopIntegration.Windows, .Unix and .MacOS namespaces.

SyncIntegrationManager additionally synchronizes the app list and its access points with a sync server.

API

Namespaces

ZeroInstall.DesktopIntegration.AccessPoints

Structures for parsing and in-memory representation of access points applied to a system.

ZeroInstall.DesktopIntegration.MacOS
ZeroInstall.DesktopIntegration.Unix

Desktop integration code for Unix-like systems (e.g. Linux).

ZeroInstall.DesktopIntegration.ViewModel

Classes that wrap desktop integration capabilities in a data binding-friendly manner.

ZeroInstall.DesktopIntegration.Windows

Windows-specific desktop integration code.

Classes

AppEntry

Represents an application in the AppList identified by its interface URI.

AppList

Stores a list of applications and the kind of desktop integration the user chose for them.

CapabilityExtensions

Contains extension methods for Capabilitys.

CategoryIntegrationManager

Manages desktop integration via AccessPoints, grouping them into categories.

ConflictData

Stores information about an AccessPoint causing a conflict and the AppEntry containing it.

ConflictDataUtils

Helper methods for creating ConflictData lists.

ConflictException

Indicates a desktop integration operation could not be completed due to conflicting AccessPoints.

IconStores

Provides IIconStore instances.

IntegrationManager

Manages an AppList and desktop integration via AccessPoints.

IntegrationManagerBase

Base class for IIntegrationManager implementations using template methods.

Suggest

Suggests suitable default AccessPoints for specific Feeds.

SyncIntegrationManager

Synchronizes the AppList with other computers.

SyncRaceException

Multiple computers are trying to sync with the same account at the same time.

Interfaces

ICategoryIntegrationManager

Manages desktop integration via AccessPoints, grouping them into categories.

IIntegrationManager

Manages an AppList and desktop integration via AccessPoints.

Enums

SyncResetMode

Controls how synchronization data is reset by Sync(SyncResetMode)