pub struct PackageInfo {
Show 26 fields pub auth: String, pub delete_obsolete_languages: Option<bool>, pub follow_symlinks: Option<bool>, pub format_version: u8, pub generator_version: Option<String>, pub identifier: String, pub install_location: Option<String>, pub minimum_system_version: Option<bool>, pub overwrite_permissions: Option<bool>, pub postinstall_action: Option<String>, pub preserve_xattr: Option<bool>, pub relocatable: Option<bool>, pub use_hfs_plus_compression: Option<bool>, pub version: String, pub atomic_update_bundle: Vec<BundleRef>, pub bundle: Vec<Bundle>, pub bundle_version: Vec<BundleRef>, pub dont_obsolete: Vec<File>, pub install_at_startup: Vec<File>, pub patch: Vec<File>, pub payload: Option<Payload>, pub relocate: Vec<BundleRef>, pub scripts: Scripts, pub strict_identifiers: Vec<BundleRef>, pub update_bundle: Vec<BundleRef>, pub upgrade_bundle: Vec<BundleRef>,
}
Expand description

Provides information about the package to install.

This includes authentication requirements, behavior after installation, etc. See the fields for more descriptions.

Fields§

§auth: String

Authentication requirements for the package install.

Values include none and root.

§delete_obsolete_languages: Option<bool>§follow_symlinks: Option<bool>

Whether symlinks found at install time should be resolved instead of being replaced by a real file or directory.

§format_version: u8

Format version of the package.

Value is likely 2.

§generator_version: Option<String>

Identifies the tool that assembled this package.

§identifier: String

Uniform type identifier that defines the package.

Should ideally be unique to this package.

§install_location: Option<String>

Default location where the payload hierarchy should be installed.

§minimum_system_version: Option<bool>

Defines minimum OS version on which the package can be installed.

§overwrite_permissions: Option<bool>

Defines if permissions of existing directories should be updated with ones from the payload.

§postinstall_action: Option<String>

Action to perform after install.

Potential values can include logout, restart, and shutdown.

§preserve_xattr: Option<bool>

Preserve extended attributes on files.

§relocatable: Option<bool>

Unknown.

Probably has something to do with whether the installation tree can be relocated without issue.

§use_hfs_plus_compression: Option<bool>

Whether items in the package should be compressed after installation.

§version: String

Version of the package.

This is the version of the package itself, not the version of the application being installed.

§atomic_update_bundle: Vec<BundleRef>§bundle: Vec<Bundle>

Versioning information about bundles within the payload.

§bundle_version: Vec<BundleRef>§dont_obsolete: Vec<File>

Files to not obsolete during install.

§install_at_startup: Vec<File>

Installs to process at next startup.

§patch: Vec<File>

Files to be patched.

§payload: Option<Payload>

Provides information on the content being installed.

§relocate: Vec<BundleRef>§scripts: Scripts

Scripts to run before and after install.

§strict_identifiers: Vec<BundleRef>§update_bundle: Vec<BundleRef>§upgrade_bundle: Vec<BundleRef>

Implementations§

source§

impl PackageInfo

source

pub fn from_reader(reader: impl Read) -> PkgResult<Self>

Parse Distribution XML from a reader.

source

pub fn from_xml(s: &str) -> PkgResult<Self>

Parse Distribution XML from a string.

Trait Implementations§

source§

impl Clone for PackageInfo

source§

fn clone(&self) -> PackageInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for PackageInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for PackageInfo

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for PackageInfo

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl PartialEq for PackageInfo

source§

fn eq(&self, other: &PackageInfo) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for PackageInfo

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Eq for PackageInfo

source§

impl StructuralEq for PackageInfo

source§

impl StructuralPartialEq for PackageInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,