cubic

Crates.iocubic
lib.rscubic
version0.15.0
created_at2024-06-03 18:55:47.926724+00
updated_at2025-09-23 12:12:06.354884+00
descriptionCubic is a lightweight command line manager for virtual machines. It has a simple, daemon-less and rootless design. All Cubic virtual machines run isolated in the user context. Cubic is built on top of QEMU, KVM and cloud-init. Show all supported images: $ cubic images Create a new virtual machine instance: $ cubic create mymachine --image ubuntu:noble List all virtual machine instances: $ cubic instances Start an instance: $ cubic start Stop an instance: $ cubic stop Open a shell in the instance: $ cubic ssh Copy a file from the host to the instance: $ cubic scp : Copy a file from the instance to the hots: $ cubic scp :
homepagehttps://cubic-vm.org
repositoryhttps://github.com/cubic-vm/cubic
max_upload_size
id1260387
size254,403
Roger Knecht (rogkne)

documentation

README

Cubic :star: Please star us on Github to promote the project!

github.com crates.io snapcraft.io

Cubic is a lightweight command-line manager for virtual machines with focus on simplicity and security.

It has a simple, daemon-less and rootless design. All Cubic virtual machines run isolated in the user context. Cubic is built on top of QEMU, KVM and cloud-init.

Get it from the Snap Store

:fire: Features

  • Simple command-line interface
  • Supports ArchLinux, Debian, Fedora, OpenSUSE and Ubuntu guest images
  • Supports Linux, macOS and Window hosts with amd64 and arm64 architecture
  • Supports hardware acceleration with KVM (Linux), Hypervisoer (macOS) and Hyper-V (Windows)
  • Daemon-less design which does not require root rights
  • Written in Rust

:rocket: Quick Start

A virtual machine instance can be created with a single command:

$ cubic run quickstart --image ubuntu:noble
Welcome to Ubuntu 24.04 LTS (GNU/Linux 6.8.0-35-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Sun Jul 14 13:58:15 UTC 2024

  System load:            0.15
  Usage of /:             60.7% of 2.35GB
  Memory usage:           29%
  Swap usage:             0%
  Processes:              150
  Users logged in:        0
  IPv4 address for ens13: 10.0.2.15
  IPv6 address for ens13: fec0::5054:ff:fe12:3456

Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status


The list of available updates is more than a week old.
To check for new updates run: sudo apt update


The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

cubic@quickstart:~$

:dizzy: How to install Cubic?

See https://cubic-vm.org/install.html for more information.

:bulb: How to use Cubic?

Cubic has a simple CLI:

$ cubic --help
Cubic is a lightweight command line manager for virtual machines. It has a
simple, daemon-less and rootless design. All Cubic virtual machines run
isolated in the user context. Cubic is built on top of QEMU, KVM and cloud-init.

Show all supported images:
$ cubic images

Create a new virtual machine instance:
$ cubic create mymachine --image ubuntu:noble

List all virtual machine instances:
$ cubic instances

Start an instance:
$ cubic start <instance name>

Stop an instance:
$ cubic stop <instance name>

Open a shell in the instance:
$ cubic ssh <machine name>

Copy a file from the host to the instance:
$ cubic scp <path/to/host/file> <machine>:<path/to/guest/file>

Copy a file from the instance to the hots:
$ cubic scp <machine>:<path/to/guest/file> <path/to/host/file>


Usage: cubic [OPTIONS] <COMMAND>

Commands:
  run        Create, start and open a shell in a new virtual machine instance
  create     Create a new virtual machine instance
  instances  List all virtual machine instances
  images     List all supported virtual machine images
  ports      List forwarded ports for all virtual machine instances
  show       Show virtual machine image or instance information
  modify     Modify a virtual machine instance configuration
  console    Open the console of an virtual machine instance
  ssh        Connect to a virtual machine instance with SSH
  scp        Copy a file from or to a virtual machine instance with SCP
  start      Start virtual machine instances
  stop       Stop virtual machine instances
  restart    Restart virtual machine instances
  rename     Rename a virtual machine instance
  clone      Clone a virtual machine instance
  delete     Delete one or more virtual machine instances
  prune      Clear cache and free space
  help       Print this message or the help of the given subcommand(s)

Options:
  -v, --verbose  Increase logging output
  -q, --quiet    Reduce logging output
  -h, --help     Print help
  -V, --version  Print version

:speech_balloon: How to contribute to Cubic?

We are actievely looking for help to improve Cubic. You can help in various ways:

  • :girl: Increase Cubic's user base by installing and using it!
  • :star: Star us on Github to promote the project!
  • :beetle: If you found a bug or you are interested in a feature please create an issue on Github!
  • :construction_worker: If you are a developer and you want to submit a change please have a look at the contribution page!

📃 License

Cubic is dual-licensed under Apache 2.0 or MIT.

Commit count: 266

cargo fmt