Rzup

Struct Rzup 

Source
pub struct Rzup { /* private fields */ }
Expand description

Rzup manages the RISC Zero toolchain components by handling installation, uninstallation, and version management of various tools like the Rust toolchain and cargo extensions.

Implementations§

Source§

impl Rzup

Source

pub fn new() -> Result<Self>

Creates a new Rzup instance using default environment paths.

Source

pub fn new_with_event_handler( event_handler: impl Fn(RzupEvent) + Send + Sync + 'static, ) -> Result<Self>

Creates a new Rzup instance using default environment paths, and the given event handler.

Source

pub fn with_paths_urls_creds_platform_and_event_handler( risc0_dir: impl Into<PathBuf>, rustup_dir: impl AsRef<Path>, cargo_dir: impl AsRef<Path>, base_urls: BaseUrls, github_token: Option<String>, aws_creds_factory: impl Fn() -> Option<AwsCredentials> + Send + Sync + 'static, private_key_getter: impl Fn() -> Result<PrivateKey> + Send + Sync + 'static, public_key: PublicKey, platform: Platform, event_handler: impl Fn(RzupEvent) + Send + Sync + 'static, ) -> Result<Self>

Creates a new Rzup instance with a custom root directory, base URLs, and GitHub token.

§Arguments
  • risc0_dir - The root directory path for storing components and settings
  • rustup_dir - The path to rustup’s home directory (usually ~/.rustup)
  • cargo_dir - The path to cargo’s home directory (usually ~/.cargo)
  • base_urls - The base URLs used to communicate with GitHub
  • github_token - The token to use when communicating with GitHub
  • aws_creds_factory - Function which gets credentials for communicating with S3
  • private_key_getter - Function which gets the private key for signing uploads
  • public_key - The public key used to verify S3 components
  • platform - The platform of the system which we are installing artifacts for
  • event_handler - Callback for events that provide progress during rzup operations.
Source

pub fn get_default_version( &self, component: &Component, ) -> Result<Option<(Version, PathBuf)>>

Gets the currently default version of a component and its path.

§Arguments
  • component - Component
Source

pub fn get_version_dir( &self, component: &Component, version: &Version, ) -> Result<PathBuf>

Gets the version-specific directory path for a component.

Errors if the version isn’t installed.

§Arguments
  • component - Component
  • version - Version to get directory for

Auto Trait Implementations§

§

impl Freeze for Rzup

§

impl !RefUnwindSafe for Rzup

§

impl Send for Rzup

§

impl Sync for Rzup

§

impl Unpin for Rzup

§

impl !UnwindSafe for Rzup

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
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

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

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

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

Source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

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>,

Source§

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.
Source§

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

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

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
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T