pub struct App {
pub name: &'static str,
pub version: &'static str,
pub repository_url: &'static str,
pub trust_anchor: &'static [u8],
pub activation: ActivationStrategy,
pub self_test: Option<SelfTest>,
}Expand description
Consumer-supplied product and trust configuration.
All fields are &'static so naming helpers can stay allocation-light and so the trust anchor
can be compiled in by the caller with include_bytes!. This crate never embeds a key file or
CARGO_PKG_VERSION of its own.
Fields§
§name: &'static strArchive prefix and Unix payload basename (for example "hyprmux").
version: &'static strCaller’s env!("CARGO_PKG_VERSION").
repository_url: &'static strGitHub (or compatible) repository URL used to resolve release downloads.
trust_anchor: &'static [u8]Raw JSON bytes of a crate::release::TrustedKeySet (caller’s include_bytes!).
activation: ActivationStrategyHow the stable command path is activated on each OS.
self_test: Option<SelfTest>Optional pre-activation probe executed after verification and before the pointer switch.
Implementations§
Source§impl App
impl App
Sourcepub fn payload_name(&self, windows: bool) -> String
pub fn payload_name(&self, windows: bool) -> String
Unix payload basename, or {name}.exe on Windows targets.
Sourcepub fn host_payload_name(&self) -> String
pub fn host_payload_name(&self) -> String
Payload basename for the host this binary was compiled for.
Sourcepub fn launcher_name(&self) -> Option<&'static str>
pub fn launcher_name(&self) -> Option<&'static str>
Windows launcher filename when ActivationStrategy::WindowsLauncher is configured.
Sourcepub fn launcher_protocol(&self) -> Option<u32>
pub fn launcher_protocol(&self) -> Option<u32>
Windows launcher protocol when configured.
Sourcepub fn metadata_filename(&self) -> String
pub fn metadata_filename(&self) -> String
Canonical published metadata filename: {name}-release.json.
Sourcepub fn signature_filename(&self) -> String
pub fn signature_filename(&self) -> String
Canonical published signature filename: {name}-release.signatures.json.
Sourcepub fn root_name(&self, version: &Version, triple: &str) -> String
pub fn root_name(&self, version: &Version, triple: &str) -> String
Archive root / prefix stem: {name}-{version}-{triple}.
Sourcepub fn archive_prefix(&self) -> String
pub fn archive_prefix(&self) -> String
Prefix used when parsing archive roots: {name}-.
Trait Implementations§
impl Copy for App
impl Eq for App
impl StructuralPartialEq for App
Auto Trait Implementations§
impl Freeze for App
impl RefUnwindSafe for App
impl Send for App
impl Sync for App
impl Unpin for App
impl UnsafeUnpin for App
impl UnwindSafe for App
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.