Giter VIP home page Giter VIP logo

vbox_sdk's Introduction

VirtualBox Software Developer Kit (SDK)

Oracle provides this SDK to interface with VirtualBox. In the main branch, everything is exactly as it would be if you were to download the kit directly from Oracle (https://www.virtualbox.org/wiki/Downloads), except for the README, LICENSE, Makefile, and setup.py files.

In this branch, only the original (Python 2) libraries remain. This is to make checkouts smaller that only need those few files. Nothing else about the files has changed from the version made available by Oracle.

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.

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.

vbox_sdk's People

Contributors

mmabey avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

vbox_sdk's Issues

pip install error: No such file or directory: 'VERSION'

Running 'python -m pip install vbox_sdk' results in

Collecting vbox-sdk
  Downloading https://files.pythonhosted.org/packages/2d/ee/e14414b50222afcf644b98e436da3563241bc2fce445474e38265fe74487/vbox_sdk-5.1.18-0.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Schnoor\AppData\Local\Temp\pip-install-83dgz3tt\vbox-sdk\setup.py", line 7, in <module>
        with open('VERSION') as v_file:
    FileNotFoundError: [Errno 2] No such file or directory: 'VERSION'

The archive mentioned above has a setup.py which states

with open('VERSION') as v_file:
    version = v_file.read().strip()

The archive contains no file named VERSION. Seems the packaging mechanism somehow loses the file?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.