Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/utmapp/QEMUKit
Swift interface to QEMU, QMP, and QEMU guest agent.
https://github.com/utmapp/QEMUKit
Last synced: 9 days ago
JSON representation
Swift interface to QEMU, QMP, and QEMU guest agent.
- Host: GitHub
- URL: https://github.com/utmapp/QEMUKit
- Owner: utmapp
- License: apache-2.0
- Created: 2023-06-25T00:13:59.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-02T03:49:43.000Z (about 1 month ago)
- Last Synced: 2024-10-31T10:03:34.260Z (9 days ago)
- Language: Python
- Size: 904 KB
- Stars: 73
- Watchers: 4
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# QEMUKit
Swift interface to QEMU, QMP, and QEMU guest agent.## Updating Interfaces
To update the generated sources to support a new release of QEMU, run:```bash
$ ./generateQapi.sh /path/to/qemu
```Where `/path/to/qemu` is a path to the QEMU source files.
## Usage
```swift
import QEMUKit
import QEMUKitInternalTask {
let qemu = QEMUVirtualMachine()
// set delegate to handle events
await qemuVM.setDelegate(...)
// start QEMU using a launcher and interface implementation
try await qemuVM.start(launcher: system, interface: ioService)
// run something from the monitor
try await qemuVM.monitor?.continueBoot()
// run something from guest agent
try await qemuVM.guestAgent?.guestSetTime(NSDate.now.timeIntervalSince1970)
}```
Note: You must link with glib-2.0