pub enum BrowserNativeHostAction {
Register {
extension_id: String,
},
Unregister,
Detect,
}Variants§
Register
Write the per-browser native-messaging-host manifest pointing at
tsafe-nativehost. Per-user; never elevates. On Windows it writes
Chromium-family HKCU registry keys for a 32-char extension ID, or a
Firefox filesystem manifest under %APPDATA%\Mozilla\NativeMessagingHosts\
for an email-style or UUID-style Firefox addon ID. On macOS/Linux it
skips browsers that are not installed.
--extension-id is REQUIRED — defaulting to a known development ID
would let any installed extension with that ID talk to your vault.
Chromium ID: 32-char string at chrome://extensions (Developer mode).
Firefox ID: the gecko.id value from browser_specific_settings in
the extension manifest (e.g. tsafe@tsafe.dev).
Fields
Unregister
Remove the per-browser manifest files (and HKCU keys on Windows).
Detect
Detect the native-host binary location and print the manifest paths that
register would write for each installed browser — without writing
anything. Use this when you do not yet know your extension ID:
- Run
tsafe browser-native-host detectto confirm the binary is found and see which browsers are detected. - Load the extension in your browser, find your extension ID at
chrome://extensions(Developer mode), then run: tsafe browser-native-host register –extension-id
On Windows, prints the HKCU registry keys and manifest directory that would be written; never modifies registry or filesystem.
Trait Implementations§
Source§impl FromArgMatches for BrowserNativeHostAction
impl FromArgMatches for BrowserNativeHostAction
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Subcommand for BrowserNativeHostAction
impl Subcommand for BrowserNativeHostAction
Source§fn augment_subcommands<'b>(__clap_app: Command) -> Command
fn augment_subcommands<'b>(__clap_app: Command) -> Command
Source§fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self can parse a specific subcommandAuto Trait Implementations§
impl Freeze for BrowserNativeHostAction
impl RefUnwindSafe for BrowserNativeHostAction
impl Send for BrowserNativeHostAction
impl Sync for BrowserNativeHostAction
impl Unpin for BrowserNativeHostAction
impl UnsafeUnpin for BrowserNativeHostAction
impl UnwindSafe for BrowserNativeHostAction
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 more