Skip to main content

VirtualBox Software Developer Kit (SDK)

https://img.shields.io/pypi/v/vbox_sdk.svg https://img.shields.io/pypi/pyversions/vbox_sdk.svg https://img.shields.io/pypi/l/vbox_sdk.svg https://img.shields.io/pypi/dm/vbox_sdk.svg

Oracle provides this SDK to interface with VirtualBox. This branch contains only the Python bindings (vboxapi) extracted from Oracle’s SDK, packaged for installation via pip. For the full SDK exactly as Oracle ships it, see the main branch instead.

A new release is published here automatically whenever Oracle publishes a new VirtualBox SDK version; the package version always matches VirtualBox’s own version number (see pyproject.toml).

The code is available on Github and PyPI.

Installation

Since the package is listed on PyPI, you can install it with:

pip install vbox-sdk

Please note that this package conflicts with the vboxapi package.

If you need the bindings for a specific old VirtualBox version, pin that version, e.g. pip install vbox-sdk==7.0.14.

Usage

I won’t attempt to document the full API since I’m not the maintainer of the actual code. However, if, like me, all you’re trying to do is manage the VMs in VirtualBox, you’ll want to check out the vboxapi.VirtualBoxManager class in particular. From the SDK Reference manual, here’s an example of how to use the manager to perform some basic tasks:

from vboxapi import VirtualBoxManager
mgr = VirtualBoxManager(None, None)
vbox = mgr.vbox
name = "Linux"
mach = vbox.findMachine(name)
session = mgr.getSessionObject(vbox)
progress = mach.launchVMProcess(session, "gui", "")
progress.waitForCompletion(-1)
mgr.closeMachineSession(session)

License

Although I’ve listed this repository as being licensed under “The Unlicense”, I am not the originator of the code. The license information in SDKRef.pdf (in the docs folder) contains this explanation of the code’s license:

The sample code files shipped with the SDK are generally licensed liberally to make it easy for anyone to use this code for their own application code.

The Java files under bindings/webservice/java/jax-ws/ (library files for the object-oriented web service) are, by contrast, licensed under the GNU Lesser General Public License (LGPL) V2.1.

See sdk/bindings/webservice/java/jax-ws/src/COPYING.LIB for the full text of the LGPL 2.1.

When in doubt, please refer to the individual source code files shipped with this SDK.

My hope is that by storing the SDK here, it will be of use to those who want to install the library from pip as well as those working with Git repositories exclusively, but I cannot take responsibility for the code as provided by Oracle.

Metadata

Release files for vbox-sdk 7.2.22

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vbox-sdk 7.2.22
File Size Uploaded Provenance
vbox_sdk-7.2.22.tar.gz 80.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for vbox-sdk 7.2.22
File Interpreter ABI Platform
vbox_sdk-7.2.22-py3-none-any.whl Python 3 none any Details

Total release size: 161.0 kB

Release files / vbox_sdk-7.2.22.tar.gz

Download URL vbox_sdk-7.2.22.tar.gz
Size 80.8 kB
Tags Source
SHA-256 checksum
How to use checksums
e20b12d8f793785b0aa76a7c90e4ca152f53bdd4b70cf31f6ff7d240c2ac6f20
BLAKE2b-256 checksum
How to use checksums
edc697911be02d472d7f261643a71a8e19fa20570851ae40790f4287d0a821ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / vbox_sdk-7.2.22-py3-none-any.whl

Download URL vbox_sdk-7.2.22-py3-none-any.whl
Size 80.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
239b8df40bebb31f566360f4b24293ec358828c2fe1a60e936a2a64c03d55d41
BLAKE2b-256 checksum
How to use checksums
4428f229399a8c485fd138f918d1c8d0806810c3162ff0081cbee2b04d9f1076
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for vbox-sdk 7.2.22

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

7.2.22 This release

2 release files No provenance

5.1.18

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page