Struct cargo_packager::config::WixConfig
source · #[non_exhaustive]pub struct WixConfig {Show 14 fields
pub languages: Option<Vec<WixLanguage>>,
pub template: Option<PathBuf>,
pub merge_modules: Option<Vec<PathBuf>>,
pub fragment_paths: Option<Vec<PathBuf>>,
pub fragments: Option<Vec<String>>,
pub component_group_refs: Option<Vec<String>>,
pub component_refs: Option<Vec<String>>,
pub custom_action_refs: Option<Vec<String>>,
pub feature_group_refs: Option<Vec<String>>,
pub feature_refs: Option<Vec<String>>,
pub merge_refs: Option<Vec<String>>,
pub banner_path: Option<PathBuf>,
pub dialog_image_path: Option<PathBuf>,
pub fips_compliant: bool,
}
Expand description
The wix format configuration
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.languages: Option<Vec<WixLanguage>>
The app languages to build. See https://docs.microsoft.com/en-us/windows/win32/msi/localizing-the-error-and-actiontext-tables.
template: Option<PathBuf>
By default, the packager uses an internal template. This option allows you to define your own wix file.
merge_modules: Option<Vec<PathBuf>>
List of merge modules to include in your installer. For example, if you want to include C++ Redis merge modules
fragment_paths: Option<Vec<PathBuf>>
A list of paths to .wxs files with WiX fragments to use.
fragments: Option<Vec<String>>
List of WiX fragments as strings. This is similar to config.wix.fragments_paths
but
is a string so you can define it inline in your config.
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<CustomAction Id="OpenNotepad" Directory="INSTALLDIR" Execute="immediate" ExeCommand="cmd.exe /c notepad.exe" Return="check" />
<InstallExecuteSequence>
<Custom Action="OpenNotepad" After="InstallInitialize" />
</InstallExecuteSequence>
</Fragment>
</Wix>
component_group_refs: Option<Vec<String>>
The ComponentGroup element ids you want to reference from the fragments.
component_refs: Option<Vec<String>>
The Component element ids you want to reference from the fragments.
custom_action_refs: Option<Vec<String>>
The CustomAction element ids you want to reference from the fragments.
feature_group_refs: Option<Vec<String>>
The FeatureGroup element ids you want to reference from the fragments.
feature_refs: Option<Vec<String>>
The Feature element ids you want to reference from the fragments.
merge_refs: Option<Vec<String>>
The Merge element ids you want to reference from the fragments.
Path to a bitmap file to use as the installation user interface banner. This bitmap will appear at the top of all but the first page of the installer.
The required dimensions are 493px × 58px.
dialog_image_path: Option<PathBuf>
Path to a bitmap file to use on the installation user interface dialogs. It is used on the welcome and completion dialogs. The required dimensions are 493px × 312px.
fips_compliant: bool
Enables FIPS compliant algorithms.
Implementations§
source§impl WixConfig
impl WixConfig
sourcepub fn languages<I: IntoIterator<Item = WixLanguage>>(
self,
languages: I
) -> Self
pub fn languages<I: IntoIterator<Item = WixLanguage>>( self, languages: I ) -> Self
Set the app languages to build. See https://docs.microsoft.com/en-us/windows/win32/msi/localizing-the-error-and-actiontext-tables.
sourcepub fn template<P: Into<PathBuf>>(self, template: P) -> Self
pub fn template<P: Into<PathBuf>>(self, template: P) -> Self
By default, the packager uses an internal template. This option allows you to define your own wix file.
sourcepub fn merge_modules<I, P>(self, merge_modules: I) -> Self
pub fn merge_modules<I, P>(self, merge_modules: I) -> Self
Set a list of merge modules to include in your installer. For example, if you want to include C++ Redis merge modules
sourcepub fn fragment_paths<I, S>(self, fragment_paths: I) -> Self
pub fn fragment_paths<I, S>(self, fragment_paths: I) -> Self
Set a list of paths to .wxs files with WiX fragments to use.
sourcepub fn fragments<I, S>(self, fragments: I) -> Self
pub fn fragments<I, S>(self, fragments: I) -> Self
Set a list of WiX fragments as strings. This is similar to WixConfig::fragment_paths
but
is a string so you can define it inline in your config.
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<CustomAction Id="OpenNotepad" Directory="INSTALLDIR" Execute="immediate" ExeCommand="cmd.exe /c notepad.exe" Return="check" />
<InstallExecuteSequence>
<Custom Action="OpenNotepad" After="InstallInitialize" />
</InstallExecuteSequence>
</Fragment>
</Wix>
sourcepub fn component_group_refs<I, S>(self, component_group_refs: I) -> Self
pub fn component_group_refs<I, S>(self, component_group_refs: I) -> Self
Set the ComponentGroup element ids you want to reference from the fragments.
sourcepub fn component_refs<I, S>(self, component_refs: I) -> Self
pub fn component_refs<I, S>(self, component_refs: I) -> Self
Set the Component element ids you want to reference from the fragments.
sourcepub fn custom_action_refs<I, S>(self, custom_action_refs: I) -> Self
pub fn custom_action_refs<I, S>(self, custom_action_refs: I) -> Self
Set the CustomAction element ids you want to reference from the fragments.
sourcepub fn feature_group_refs<I, S>(self, feature_group_refs: I) -> Self
pub fn feature_group_refs<I, S>(self, feature_group_refs: I) -> Self
Set he FeatureGroup element ids you want to reference from the fragments.
sourcepub fn feature_refs<I, S>(self, feature_refs: I) -> Self
pub fn feature_refs<I, S>(self, feature_refs: I) -> Self
Set the Feature element ids you want to reference from the fragments.
sourcepub fn merge_refs<I, S>(self, merge_refs: I) -> Self
pub fn merge_refs<I, S>(self, merge_refs: I) -> Self
Set he Merge element ids you want to reference from the fragments.
Set the path to a bitmap file to use as the installation user interface banner. This bitmap will appear at the top of all but the first page of the installer.
The required dimensions are 493px × 58px.
sourcepub fn dialog_image_path<P: Into<PathBuf>>(self, path: P) -> Self
pub fn dialog_image_path<P: Into<PathBuf>>(self, path: P) -> Self
Set the path to a bitmap file to use on the installation user interface dialogs. It is used on the welcome and completion dialogs. The required dimensions are 493px × 312px.
sourcepub fn fips_compliant(self, fips_compliant: bool) -> Self
pub fn fips_compliant(self, fips_compliant: bool) -> Self
Set whether to enable or disable FIPS compliant algorithms.
Trait Implementations§
source§impl<'de> Deserialize<'de> for WixConfig
impl<'de> Deserialize<'de> for WixConfig
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for WixConfig
impl RefUnwindSafe for WixConfig
impl Send for WixConfig
impl Sync for WixConfig
impl Unpin for WixConfig
impl UnwindSafe for WixConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian()
.