Namespace ZeroInstall.Model
Data model for the Zero Install feed format.
NuGet package: ZeroInstall.Model
Namespaces
- ZeroInstall.Model.Capabilities
-
Extends the feed format with structures for describing application capabilities. This forms the basis for desktop integration.
- ZeroInstall.Model.Design
-
TypeConverters used for serialization and to provide a better runtime experience when using PropertyGrids.
- ZeroInstall.Model.Preferences
-
Structures for user-specified preferences and overrides for interfaces, feeds and implementations.
- ZeroInstall.Model.Selection
-
Structures for representing Solver results.
Classes
- ArchitectureExtensions
Contains extension methods for Architecture, OS and Cpu.
- Archive
Retrieves an implementation by downloading and extracting an archive.
- Arg
A single command-line arguments to be passed to an executable.
- ArgBase
Common base class for Arg and ForEachArgs.
- Binding
Bindings specify how the chosen implementation is made known to the running program.
- Category
An application category (e.g. Game or Office). Used for organizing application menus.
- Command
A command says how to run an Implementation as a program.
- Constraint
Restricts the set of versions from which the injector may choose an Implementation.
- CopyFromStep
Copies files or directories from another implementation specified elsewhere in the same feed.
- Dependency
A reference to an interface that is required as dependency.
- DependencyContainerExtensions
Provides extension methods for IDependencyContainer.
- DownloadRetrievalMethod
Represents a retrieval method that downloads data from the net.
- Element
Abstract base class for ImplementationBase and Group. Contains those parameters that can be transferred from a Group to an Implementation.
- ElementCollectionExtensions
Provides extension methods for Element collections.
- EntryPoint
Associates a Command with a user-friendly name and description.
- EnvironmentBinding
Make a chosen Implementation available by setting environment variables.
- ExecutableInBinding
Make a chosen Implementation available as an executable at runtime.
- ExecutableInPath
Make a chosen Implementation available as an executable in the search PATH.
- ExecutableInVar
Make a chosen Implementation available as an executable path in an environment variable.
- Feed
A feed contains all the information required to download and execute an application.
- FeedElement
Abstract base class for XML serializable classes that are part of the Zero Install feed model.
- FeedReference
A linked feed that contains more implementations of this interface. Is treated by the solver as if it were part of the main feed.
- FeedUri
Represents a feed or interface URI or local path. Unlike Uri this class only accepts HTTP(S) URLs and absolute local paths.
- ForEachArgs
Expands an environment variable to multiple arguments. The variable specified in ItemFrom is split using Separator and the Arguments are added once for each item.
- GenericBinding
Zero Install will not know how to run a program using generic bindings itself, but it will include them in any selections documents it creates, which can then be executed by your custom code.
- Group
All attributes of a group are inherited by any child Groups and Implementations as defaults, but can be overridden there. All Dependencys and Bindings are inherited (sub-groups may add more Dependencys and Bindings to the list, but cannot remove any).
- Icon
An icon representing the application. Used in the Catalog GUI as well as for desktop icons, menu entries, etc..
- IconExtensions
Provides extensions methods related to Icons.
- Implementation
An implementation is a specific version of an application that can be downloaded and executed (e.g. Firefox 3.6 for Windows).
- ImplementationBase
Information for identifying an implementation of a Feed. Common base for Implementation and ImplementationSelection.
- ImplementationVersion
Represents a version number consisting of dot-separated decimals and optional modifier strings.
- InterfaceReference
A reference to an interface URI, e.g. for specifying which interface this feed implements or by which interface it is replaced.
- ManifestDigestPartialEqualityComparer
Uses PartialEquals(ManifestDigest) to compare ManifestDigests.
- ManifestDigestPartialEqualityComparer<T>
Uses PartialEquals(ManifestDigest) to compare ImplementationBases.
- ModelUtils
Provides utility methods for interface and feed URIs.
- OverlayBinding
Make a chosen Implementation available by overlaying it onto another part of the file-system.
- PackageImplementation
An implementation provided by a distribution-specific package manager instead of Zero Install.
- Recipe
Retrieves an implementation by applying a list of IRecipeSteps, such as downloading and combining multiple archives.
- RemoveStep
Removes or moves a file or directory. It is an error if the path is outside the implementation.
- RenameStep
Renames or moves a file or directory. It is an error if the source or destination are outside the implementation.
- Requirements
A set of requirements/restrictions imposed by the user on the Implementation selection process. Used as input for the solver.
- Restriction
Restricts the versions of an Implementation that are allowed without creating a dependency on the implementation if its was not already chosen.
- RetrievalMethod
A retrieval method is a way of getting a copy of an Implementation.
- Runner
A special kind of dependency: the program that is used to run this one. For example, a Python program might specify Python as its runner.
- SingleFile
Retrieves an implementation by downloading a single file.
- TargetBase
Abstract base class for Element and FeedReference. Contains language and architecture parameters.
- VersionRange
Represents a (possibly disjoint) set of ranges of ImplementationVersions.
- VersionRangePart
Represents an individual non-disjoint part of a VersionRange.
- VersionRangePartExact
An exact version number like
2.0
as a part of a VersionRange.
- VersionRangePartExclude
An exclusion like
!2.0
as a part of a VersionRange.
- VersionRangePartRange
A version range like
1.0..!2.0
as a part of a VersionRange.
- WorkingDir
Switches the working directory of a process on startup to a location within an implementation. Useful for supporting legacy Windows applications which do not properly locate their installation directory.
- XmlUnknown
Abstract base class for XML serializable classes that are intended to retain any unknown XML elements or attributes loaded from an XML file.
- ZeroInstallDeployment
Registers and discovers Zero Install deployments on this system.
- ZeroInstallEnvironment
Provides access to Zero Install-related environment variables.
Structs
- Architecture
Describes a combination of an operating system and a CPU architecture.
- FeedTarget
Associates a FeedUri with the Feed data acquired from there.
- ManifestDigest
A manifest digest is a means of uniquely identifying an Implementation and verifying its contents.
- VersionDottedList
Represents a dotted-list part of a ImplementationVersion.
- VersionPart
Represents a part of a ImplementationVersion containing nothing, a VersionModifier, a DottedList or both.
Interfaces
- IArgBaseContainer
An object that contains ArgBases.
- IBindingContainer
An object that contains Bindings.
- IDependencyContainer
An object that contains Dependencys and Restrictions.
- IDescriptionContainer
An object that has localizable descriptions.
- IElementContainer
An object that contains Groups and Implementations. Supports a composite pattern.
- IIconContainer
An object that contains Iconss.
- IInterfaceUri
An object that contains an interface URI.
- IInterfaceUriBindingContainer
An object that contains an interface URI string.
- IRecipeStep
A retrieval step is a part of a Recipe.
- ISummaryContainer
An object that has localizable summaries and descriptions.
Enums
- Cpu
Describes a CPU architecture.
- Importance
Describes how important a dependency is (i.e. whether ignoring it is an option).
- OS
Describes an operating system family.
- Stability
A stability rating for an Implementation.