Crate libscoop

Source
Expand description

This crate aims to provide a full-featured, practical, and efficient Rust reimplementation of Scoop, the Windows command-line installer. It is a library crate providing the core functionality of interacting with Scoop, and is not intended to be used directly by end users. Developers who wish to implement a Scoop frontend or make use of Scoop’s functionality in their own applications may use this crate. For end users, they may take a glance at Hok, a reference implementation built on top of this crate, which provides a command-line interface similar to Scoop.

§Overview

The primary type in this crate is a Session, which is an entry point to this crate. A session instance is basically a handle to the global state of libscoop. Most of the functions exposed by this crate take a session as their first argument.

§Examples

Initialize a Scoop session, get the configuration associated with the session, and print the root path of Scoop to stdout:

use libscoop::Session;
let session = Session::new();
let config = session.config();
println!("{}", config.root_path().display());

Modules§

operation
Operations that can be performed on a Scoop instance.

Structs§

Session
A handle representing a Scoop session.

Enums§

Error
Error that may occur during the lifetime of a Session.
Event
Event that may be emitted during the execution of operations.
QueryOption
Options that may be used to query Scoop packages.
SyncOption
Options that may be used to tweak behavior of package sync operation.