Skip to content

YsuOS/rvirsh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rvirsh(rv)

rvirsh is a Rust-based virtual machine management tool built using the libvirt-rs library. It reimplements the functionality of the virsh command and virt-install command, providing simple and efficient virtualization operations in Rust.

To avoid using complex arguments, rvirsh reads default configuration from $HOME/.config/rvirsh/default.toml or ./default.toml (if it does not exists).

Installation

Common procedures

  1. Ensure that Rust is installed on your system. If not, install it from the official Rust website.

  2. Ensure that libvirt-dev or libvirt-devel is installed on your system. Otherwise, compile will be fail. If not, install it with the following command (in Fedora/RHEL).

    dnf install libvirt-devel

Get binary

  1. Install from crates.io:

    cargo install rvirsh

Install from source code

  1. Clone the rvirsh repository:

    git clone https://github.com/your-username/rvirsh.git
  2. Navigate to the project directory and build it using Cargo:

    cd rvirsh
    cargo build --release
  3. Install the binary:

    cargo install --path .

Usage

rvirsh provides commands similar to those found in virsh. Below are some basic examples. Please run rv help to see which commands are supported.

List all virtual machines

rv list

Start a virtual machine

rv start <vm-name>

Shut down a virtual machine

rv shutdown <vm-name>

Display information about a virtual machine

rv dominfo <vm-name>

Show detailed configuration of a virtual machine

rv dumpxml <vm-name>

Usage (as a library)

rvirsh also offers some functions as a library. So it can be embedded into your project as a crate. Please visit crates.io for more info.

rvirsh = "x.y.z"

Development

To set up the development environment, follow these steps:

  1. Clone the repository:

    git clone https://github.com/your-username/rvirsh.git
  2. Install the necessary dependencies:

    cargo build
  3. Run tests:

    cargo test

Contributing

Please report any bugs or feature requests via the GitHub issue tracker. Pull requests are welcome!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages