diff --git a/AUTHORS b/AUTHORS index 2ff162797..1d784b692 100644 --- a/AUTHORS +++ b/AUTHORS @@ -1,30 +1,55 @@ +Adam Ford Alyssa Rosenzweig +Amazon Firecracker team Anders F Björklund arkkors Asahi Lina Bingxin Li Cole Robinson +Daniel Müller David Gageot David Michael David Scott Djordje Lukic +Eric Curtin +Eric Curtin Erik Sjölund +Fabien Trégan +Fabio Valentini flouthoc +Gao Xiang Geoffrey Goodman German Maglione Giuseppe Scrivano +ihexon <14349453+ihexon@users.noreply.github.com> Jake Correnti +Jakub Hrozek Jan Noha +Juan Antonio Osorio Matej Hrica +Matej Hrica +Mathieu Chassara Matias Ezequiel Vara Larsen +McNight +Milan Zamazal Nir Soffer +Pepper Gray +Peter Collingbourne Richard W.M. Jones +Roland Rauch Ruoqing He Sandro Bonazzola Sasha Finkelstein Sergio Lopez +SilverBut Stefano Garzarella Teoh Han Hui +The Chromium OS Authors +The ChromiumOS Authors + Android Open Source Project Tyler Fanelli +Vadzim Dambrouski +Val Packett +Val Packett Wainer dos Santos Moschetta Zalan Blenessy +Zewei Yang diff --git a/Cargo.lock b/Cargo.lock index ea26a3a5b..e997ea8db 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -89,25 +89,6 @@ version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" -[[package]] -name = "arch" -version = "0.1.0" -dependencies = [ - "arch_gen", - "kvm-bindings", - "kvm-ioctls", - "libc", - "smbios", - "tdx", - "utils", - "vm-memory", - "vmm-sys-util 0.14.0", -] - -[[package]] -name = "arch_gen" -version = "0.1.0" - [[package]] name = "async-trait" version = "0.1.89" @@ -125,20 +106,6 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" -[[package]] -name = "aws-nitro" -version = "0.1.0" -dependencies = [ - "devices", - "libc", - "log", - "nitro-enclaves 0.6.1", - "nix 0.30.1", - "signal-hook", - "tar", - "vsock", -] - [[package]] name = "base64" version = "0.22.1" @@ -365,15 +332,6 @@ dependencies = [ "libc", ] -[[package]] -name = "cpuid" -version = "0.1.0" -dependencies = [ - "kvm-bindings", - "kvm-ioctls", - "vmm-sys-util 0.14.0", -] - [[package]] name = "crc32fast" version = "1.5.0" @@ -408,37 +366,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "devices" -version = "0.1.0" -dependencies = [ - "arch", - "bitflags 1.3.2", - "caps", - "crossbeam-channel", - "hvf", - "imago", - "krun_display", - "krun_input", - "kvm-bindings", - "kvm-ioctls", - "libc", - "libloading", - "log", - "lru", - "nix 0.30.1", - "pipewire", - "polly", - "rand", - "rutabaga_gfx", - "thiserror 2.0.18", - "utils", - "virtio-bindings", - "vm-fdt", - "vm-memory", - "zerocopy", -] - [[package]] name = "digest" version = "0.10.7" @@ -660,16 +587,6 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" -[[package]] -name = "hvf" -version = "0.1.0" -dependencies = [ - "arch", - "crossbeam-channel", - "libloading", - "log", -] - [[package]] name = "imago" version = "0.2.2" @@ -796,15 +713,80 @@ dependencies = [ ] [[package]] -name = "kernel" -version = "0.1.0" +name = "krun-arch" +version = "0.1.0-1.17.3" +dependencies = [ + "krun-arch-gen", + "krun-smbios", + "krun-utils", + "kvm-bindings", + "kvm-ioctls", + "libc", + "tdx", + "vm-memory", + "vmm-sys-util 0.14.0", +] + +[[package]] +name = "krun-arch-gen" +version = "0.1.0-1.17.3" + +[[package]] +name = "krun-aws-nitro" +version = "0.1.0-1.17.3" +dependencies = [ + "krun-devices", + "libc", + "log", + "nitro-enclaves 0.6.1", + "nix 0.30.1", + "signal-hook", + "tar", + "vsock", +] + +[[package]] +name = "krun-cpuid" +version = "0.1.0-1.17.3" +dependencies = [ + "kvm-bindings", + "kvm-ioctls", + "vmm-sys-util 0.14.0", +] + +[[package]] +name = "krun-devices" +version = "0.1.0-1.17.3" dependencies = [ - "utils", + "bitflags 1.3.2", + "caps", + "crossbeam-channel", + "imago", + "krun-arch", + "krun-display", + "krun-hvf", + "krun-input", + "krun-polly", + "krun-rutabaga-gfx", + "krun-utils", + "kvm-bindings", + "kvm-ioctls", + "libc", + "libloading", + "log", + "lru", + "nix 0.30.1", + "pipewire", + "rand", + "thiserror 2.0.18", + "virtio-bindings", + "vm-fdt", "vm-memory", + "zerocopy", ] [[package]] -name = "krun_display" +name = "krun-display" version = "0.1.0" dependencies = [ "bindgen 0.72.1", @@ -815,7 +797,17 @@ dependencies = [ ] [[package]] -name = "krun_input" +name = "krun-hvf" +version = "0.1.0-1.17.3" +dependencies = [ + "crossbeam-channel", + "krun-arch", + "libloading", + "log", +] + +[[package]] +name = "krun-input" version = "0.1.0" dependencies = [ "bindgen 0.72.1", @@ -826,6 +818,94 @@ dependencies = [ "thiserror 2.0.18", ] +[[package]] +name = "krun-kernel" +version = "0.1.0-1.17.3" +dependencies = [ + "krun-utils", + "vm-memory", +] + +[[package]] +name = "krun-polly" +version = "0.1.0-1.17.3" +dependencies = [ + "krun-utils", + "libc", +] + +[[package]] +name = "krun-rutabaga-gfx" +version = "0.1.0-1.17.3" +dependencies = [ + "anyhow", + "cfg-if", + "libc", + "log", + "nix 0.30.1", + "pkg-config", + "remain", + "thiserror 1.0.69", + "vmm-sys-util 0.14.0", + "winapi", + "zerocopy", +] + +[[package]] +name = "krun-smbios" +version = "0.1.0-1.17.3" +dependencies = [ + "vm-memory", +] + +[[package]] +name = "krun-utils" +version = "0.1.0-1.17.3" +dependencies = [ + "bitflags 1.3.2", + "crossbeam-channel", + "kvm-bindings", + "libc", + "log", + "nix 0.30.1", + "vmm-sys-util 0.14.0", +] + +[[package]] +name = "krun-vmm" +version = "0.1.0-1.17.3" +dependencies = [ + "bitfield", + "bitflags 2.11.0", + "bzip2", + "crossbeam-channel", + "flate2", + "iocuddle", + "kbs-types", + "krun-arch", + "krun-arch-gen", + "krun-cpuid", + "krun-devices", + "krun-display", + "krun-hvf", + "krun-input", + "krun-kernel", + "krun-polly", + "krun-utils", + "kvm-bindings", + "kvm-ioctls", + "libc", + "linux-loader", + "log", + "nix 0.30.1", + "serde", + "serde_json", + "tdx", + "vm-memory", + "vmm-sys-util 0.14.0", + "zstd", +] + [[package]] name = "kvm-bindings" version = "0.12.1" @@ -869,13 +949,16 @@ checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" name = "libkrun" version = "1.17.3" dependencies = [ - "aws-nitro", "crossbeam-channel", - "devices", "env_logger", - "hvf", - "krun_display", - "krun_input", + "krun-aws-nitro", + "krun-devices", + "krun-display", + "krun-hvf", + "krun-input", + "krun-polly", + "krun-utils", + "krun-vmm", "kvm-bindings", "kvm-ioctls", "libc", @@ -883,11 +966,8 @@ dependencies = [ "log", "nitro-enclaves 0.5.0", "once_cell", - "polly", "rand", - "utils", "vm-memory", - "vmm", ] [[package]] @@ -1169,14 +1249,6 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" -[[package]] -name = "polly" -version = "0.0.1" -dependencies = [ - "libc", - "utils", -] - [[package]] name = "portable-atomic" version = "1.13.1" @@ -1343,23 +1415,6 @@ version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" -[[package]] -name = "rutabaga_gfx" -version = "0.1.2" -dependencies = [ - "anyhow", - "cfg-if", - "libc", - "log", - "nix 0.30.1", - "pkg-config", - "remain", - "thiserror 1.0.69", - "vmm-sys-util 0.14.0", - "winapi", - "zerocopy", -] - [[package]] name = "semver" version = "1.0.27" @@ -1482,13 +1537,6 @@ version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" -[[package]] -name = "smbios" -version = "0.1.0" -dependencies = [ - "vm-memory", -] - [[package]] name = "static_assertions" version = "1.1.0" @@ -1722,19 +1770,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" -[[package]] -name = "utils" -version = "0.1.0" -dependencies = [ - "bitflags 1.3.2", - "crossbeam-channel", - "kvm-bindings", - "libc", - "log", - "nix 0.30.1", - "vmm-sys-util 0.14.0", -] - [[package]] name = "uuid" version = "1.22.0" @@ -1786,41 +1821,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "vmm" -version = "0.1.0" -dependencies = [ - "arch", - "arch_gen", - "bitfield", - "bitflags 2.11.0", - "bzip2", - "cpuid", - "crossbeam-channel", - "devices", - "flate2", - "hvf", - "iocuddle", - "kbs-types", - "kernel", - "krun_display", - "krun_input", - "kvm-bindings", - "kvm-ioctls", - "libc", - "linux-loader", - "log", - "nix 0.30.1", - "polly", - "serde", - "serde_json", - "tdx", - "utils", - "vm-memory", - "vmm-sys-util 0.14.0", - "zstd", -] - [[package]] name = "vmm-sys-util" version = "0.12.1" diff --git a/Cargo.toml b/Cargo.toml index 3519338f6..83db53c57 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,21 @@ [workspace] -members = ["src/libkrun", "src/krun_input"] +members = [ + "src/libkrun", + "src/input", + "src/display", + "src/utils", + "src/arch_gen", + "src/cpuid", + "src/smbios", + "src/polly", + "src/kernel", + "src/arch", + "src/hvf", + "src/devices", + "src/vmm", + "src/aws_nitro", + "src/rutabaga_gfx", +] exclude = ["examples/gtk_display"] resolver = "2" diff --git a/examples/Cargo.lock b/examples/Cargo.lock index abffff54e..47f5a9f2a 100644 --- a/examples/Cargo.lock +++ b/examples/Cargo.lock @@ -597,11 +597,11 @@ dependencies = [ "anyhow", "crossbeam-channel", "gtk4", - "krun_display", - "krun_input", + "krun-display", + "krun-input", + "krun-utils", "libc", "log", - "utils", ] [[package]] @@ -613,8 +613,8 @@ dependencies = [ "clap_derive", "env_logger", "gtk_display", + "krun-input", "krun-sys", - "krun_input", "log", "regex", ] @@ -672,34 +672,47 @@ dependencies = [ ] [[package]] -name = "krun-sys" -version = "1.11.1" +name = "krun-display" +version = "0.1.0" dependencies = [ "bindgen", - "pkg-config", + "bitflags 2.9.1", + "log", + "static_assertions", + "thiserror", ] [[package]] -name = "krun_display" +name = "krun-input" version = "0.1.0" dependencies = [ "bindgen", "bitflags 2.9.1", + "libc", "log", "static_assertions", "thiserror", ] [[package]] -name = "krun_input" -version = "0.1.0" +name = "krun-sys" +version = "1.11.1" dependencies = [ "bindgen", - "bitflags 2.9.1", + "pkg-config", +] + +[[package]] +name = "krun-utils" +version = "0.1.0-1.17.3" +dependencies = [ + "bitflags 1.3.2", + "crossbeam-channel", + "kvm-bindings", "libc", "log", - "static_assertions", - "thiserror", + "nix", + "vmm-sys-util", ] [[package]] @@ -1055,19 +1068,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" -[[package]] -name = "utils" -version = "0.1.0" -dependencies = [ - "bitflags 1.3.2", - "crossbeam-channel", - "kvm-bindings", - "libc", - "log", - "nix", - "vmm-sys-util", -] - [[package]] name = "version-compare" version = "0.2.0" diff --git a/examples/gui_vm/Cargo.toml b/examples/gui_vm/Cargo.toml index f2b33290d..4a8e2da0b 100644 --- a/examples/gui_vm/Cargo.toml +++ b/examples/gui_vm/Cargo.toml @@ -6,7 +6,7 @@ edition = "2024" [dependencies] gtk_display = { path = "../krun_gtk_display" } krun-sys = { path = "../../krun-sys" } -krun_input = { path = "../../src/krun_input" } +krun_input = { path = "../../src/input", package = "krun-input" } anyhow = "1.0.98" clap = "4.5.39" clap_derive = "4.5.32" diff --git a/examples/krun_gtk_display/Cargo.toml b/examples/krun_gtk_display/Cargo.toml index f6f90ae97..a99bb0d1e 100644 --- a/examples/krun_gtk_display/Cargo.toml +++ b/examples/krun_gtk_display/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2024" [dependencies] -utils = { path = "../../src/utils" } # Our version of rust vmm-sys-util +utils = { path = "../../src/utils", package = "krun-utils" } # Our version of rust vmm-sys-util gtk = { version = "0.10", package = "gtk4", features = ["v4_16"] } -krun_display = { path = "../../src/krun_display" } -krun_input = { path = "../../src/krun_input" } +krun_display = { path = "../../src/display", package = "krun-display" } +krun_input = { path = "../../src/input", package = "krun-input" } anyhow = "1.0.98" log = "0.4.27" libc = "0.2.174" diff --git a/include/libkrun_display.h b/include/libkrun_display.h index 621f69007..7a4159179 120000 --- a/include/libkrun_display.h +++ b/include/libkrun_display.h @@ -1 +1 @@ -../src/krun_display/libkrun_display.h \ No newline at end of file +../src/display/libkrun_display.h \ No newline at end of file diff --git a/include/libkrun_input.h b/include/libkrun_input.h index 35d75d4d8..dd9d61c81 120000 --- a/include/libkrun_input.h +++ b/include/libkrun_input.h @@ -1 +1 @@ -../src/krun_input/libkrun_input.h \ No newline at end of file +../src/input/libkrun_input.h \ No newline at end of file diff --git a/src/arch/Cargo.toml b/src/arch/Cargo.toml index 2b39cfa80..557811840 100644 --- a/src/arch/Cargo.toml +++ b/src/arch/Cargo.toml @@ -1,8 +1,11 @@ [package] -name = "arch" -version = "0.1.0" -authors = ["The Chromium OS Authors"] +name = "krun-arch" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" +description = "Architecture-specific VM support for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [features] tee = [] @@ -15,9 +18,9 @@ libc = ">=0.2.39" vm-memory = { version = "0.17", features = ["backend-mmap"] } vmm-sys-util = "0.14" -arch_gen = { path = "../arch_gen" } -smbios = { path = "../smbios" } -utils = { path = "../utils" } +arch_gen = { package = "krun-arch-gen", version = "=0.1.0-1.17.3", path = "../arch_gen" } +smbios = { package = "krun-smbios", version = "=0.1.0-1.17.3", path = "../smbios" } +utils = { package = "krun-utils", version = "=0.1.0-1.17.3", path = "../utils" } [target.'cfg(target_os = "linux")'.dependencies] kvm-bindings = { version = "0.12", features = ["fam-wrappers"] } @@ -25,4 +28,4 @@ kvm-ioctls = "0.22" tdx = { version = "0.1.0", optional = true } [dev-dependencies] -utils = { path = "../utils" } +utils = { package = "krun-utils", version = "=0.1.0-1.17.3", path = "../utils" } diff --git a/src/arch_gen/Cargo.toml b/src/arch_gen/Cargo.toml index 053becd8b..4021905e1 100644 --- a/src/arch_gen/Cargo.toml +++ b/src/arch_gen/Cargo.toml @@ -1,7 +1,10 @@ [package] -name = "arch_gen" -version = "0.1.0" -authors = ["Amazon Firecracker team "] +name = "krun-arch-gen" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" +description = "Generated architecture-specific definitions for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] diff --git a/src/aws_nitro/Cargo.toml b/src/aws_nitro/Cargo.toml index a91e24292..d0edb2a7a 100644 --- a/src/aws_nitro/Cargo.toml +++ b/src/aws_nitro/Cargo.toml @@ -1,7 +1,10 @@ [package] -name = "aws-nitro" -version = "0.1.0" +name = "krun-aws-nitro" +version = "0.1.0-1.17.3" edition = "2021" +description = "AWS Nitro Enclaves support for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [features] aws-nitro = [] @@ -12,7 +15,7 @@ nix = { version = "0.30", features = ["poll"] } tar = "0.4" vsock = "0.5" -devices = { path = "../devices" } +devices = { package = "krun-devices", version = "=0.1.0-1.17.3", path = "../devices" } log = "0.4" signal-hook = "0.3" diff --git a/src/cpuid/Cargo.toml b/src/cpuid/Cargo.toml index b80f24c6f..838b60cd8 100644 --- a/src/cpuid/Cargo.toml +++ b/src/cpuid/Cargo.toml @@ -1,8 +1,11 @@ [package] -name = "cpuid" -version = "0.1.0" -authors = ["Amazon Firecracker team "] +name = "krun-cpuid" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" +description = "CPUID handling for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [features] tdx = [] diff --git a/src/cpuid/src/bit_helper.rs b/src/cpuid/src/bit_helper.rs index 240b99d55..68e06654b 100644 --- a/src/cpuid/src/bit_helper.rs +++ b/src/cpuid/src/bit_helper.rs @@ -9,7 +9,7 @@ /// /// ``` /// #[macro_use] -/// use cpuid::bit_helper::*; +/// use krun_cpuid::bit_helper::*; /// /// let range = BitRange { /// msb_index: 7, @@ -43,7 +43,7 @@ pub trait BitRangeExt { /// /// ``` /// #[macro_use] - /// use cpuid::bit_helper::*; + /// use krun_cpuid::bit_helper::*; /// /// let range = BitRange { /// msb_index: 7, @@ -103,7 +103,7 @@ pub trait BitHelper { /// /// ``` /// #[macro_use] - /// use cpuid::bit_helper::*; + /// use krun_cpuid::bit_helper::*; /// /// let val: u32 = 0b000010001000; /// let range = BitRange { @@ -125,7 +125,7 @@ pub trait BitHelper { /// /// ``` /// #[macro_use] - /// use cpuid::bit_helper::*; + /// use krun_cpuid::bit_helper::*; /// /// let mut val: u32 = 0; /// let range = BitRange { diff --git a/src/cpuid/src/lib.rs b/src/cpuid/src/lib.rs index 2ec63064a..32e7a5ee6 100644 --- a/src/cpuid/src/lib.rs +++ b/src/cpuid/src/lib.rs @@ -39,7 +39,7 @@ mod brand_string; /// /// # Example /// ``` -/// use cpuid::{filter_cpuid, VmSpec}; +/// use krun_cpuid::{filter_cpuid, VmSpec}; /// use kvm_bindings::{CpuId, KVM_MAX_CPUID_ENTRIES}; /// use kvm_ioctls::Kvm; /// diff --git a/src/devices/Cargo.toml b/src/devices/Cargo.toml index 94a331202..8d930a49c 100644 --- a/src/devices/Cargo.toml +++ b/src/devices/Cargo.toml @@ -1,9 +1,12 @@ [package] -name = "devices" -version = "0.1.0" -authors = ["The Chromium OS Authors"] +name = "krun-devices" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" build = "build.rs" +description = "Virtual device emulation for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [features] tee = [] @@ -32,21 +35,21 @@ thiserror = { version = "2.0", optional = true } virtio-bindings = "0.2.0" vm-memory = { version = "0.17", features = ["backend-mmap"] } zerocopy = { version = "0.8.26", optional = true, features = ["derive"] } -krun_display = { path = "../krun_display", optional = true, features = ["bindgen_clang_runtime"] } -krun_input = { path = "../krun_input", features = ["bindgen_clang_runtime"], optional = true } +krun_display = { package = "krun-display", version = "0.1.0", path = "../display", optional = true, features = ["bindgen_clang_runtime"] } +krun_input = { package = "krun-input", version = "0.1.0", path = "../input", features = ["bindgen_clang_runtime"], optional = true } -arch = { path = "../arch" } -utils = { path = "../utils" } -polly = { path = "../polly" } -rutabaga_gfx = { path = "../rutabaga_gfx", features = ["virgl_renderer", "virgl_renderer_next"], optional = true } +arch = { package = "krun-arch", version = "=0.1.0-1.17.3", path = "../arch" } +utils = { package = "krun-utils", version = "=0.1.0-1.17.3", path = "../utils" } +polly = { package = "krun-polly", version = "=0.1.0-1.17.3", path = "../polly" } +rutabaga_gfx = { package = "krun-rutabaga-gfx", version = "=0.1.0-1.17.3", path = "../rutabaga_gfx", features = ["virgl_renderer", "virgl_renderer_next"], optional = true } imago = { version = "0.2.2", features = ["sync-wrappers", "vm-memory"] } [target.'cfg(target_os = "macos")'.dependencies] -hvf = { path = "../hvf" } +hvf = { package = "krun-hvf", version = "=0.1.0-1.17.3", path = "../hvf" } lru = ">=0.9" [target.'cfg(target_os = "linux")'.dependencies] -rutabaga_gfx = { path = "../rutabaga_gfx", features = ["x"], optional = true } +rutabaga_gfx = { package = "krun-rutabaga-gfx", version = "=0.1.0-1.17.3", path = "../rutabaga_gfx", features = ["x"], optional = true } caps = "0.5.5" kvm-bindings = { version = "0.12", features = ["fam-wrappers"] } kvm-ioctls = "0.22" diff --git a/src/krun_display/Cargo.toml b/src/display/Cargo.toml similarity index 78% rename from src/krun_display/Cargo.toml rename to src/display/Cargo.toml index a566cd2b2..828cf95e7 100644 --- a/src/krun_display/Cargo.toml +++ b/src/display/Cargo.toml @@ -1,8 +1,10 @@ [package] -name = "krun_display" +name = "krun-display" description = "Rust bindings for implemeting display backends in Rust for libkrun" version = "0.1.0" edition = "2024" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] thiserror = "2.0.12" diff --git a/src/krun_display/build.rs b/src/display/build.rs similarity index 100% rename from src/krun_display/build.rs rename to src/display/build.rs diff --git a/src/krun_display/libkrun_display.h b/src/display/libkrun_display.h similarity index 100% rename from src/krun_display/libkrun_display.h rename to src/display/libkrun_display.h diff --git a/src/krun_display/src/c_to_rust.rs b/src/display/src/c_to_rust.rs similarity index 100% rename from src/krun_display/src/c_to_rust.rs rename to src/display/src/c_to_rust.rs diff --git a/src/krun_display/src/lib.rs b/src/display/src/lib.rs similarity index 100% rename from src/krun_display/src/lib.rs rename to src/display/src/lib.rs diff --git a/src/krun_display/src/rust_to_c.rs b/src/display/src/rust_to_c.rs similarity index 100% rename from src/krun_display/src/rust_to_c.rs rename to src/display/src/rust_to_c.rs diff --git a/src/hvf/Cargo.toml b/src/hvf/Cargo.toml index 522efc499..68b3f43d3 100644 --- a/src/hvf/Cargo.toml +++ b/src/hvf/Cargo.toml @@ -1,12 +1,15 @@ [package] -name = "hvf" -version = "0.1.0" -authors = ["Sergio Lopez "] +name = "krun-hvf" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" +description = "Apple Hypervisor.framework backend for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] crossbeam-channel = ">=0.5.15" libloading = "0.8" log = "0.4.0" -arch = { path = "../arch" } +arch = { package = "krun-arch", version = "=0.1.0-1.17.3", path = "../arch" } diff --git a/src/krun_input/Cargo.lock b/src/input/Cargo.lock similarity index 100% rename from src/krun_input/Cargo.lock rename to src/input/Cargo.lock diff --git a/src/krun_input/Cargo.toml b/src/input/Cargo.toml similarity index 79% rename from src/krun_input/Cargo.toml rename to src/input/Cargo.toml index ff41f462e..090108bd8 100644 --- a/src/krun_input/Cargo.toml +++ b/src/input/Cargo.toml @@ -1,8 +1,10 @@ [package] -name = "krun_input" +name = "krun-input" description = "Rust bindings for implementing input backends in Rust for libkrun" version = "0.1.0" edition = "2024" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] thiserror = "2.0.12" diff --git a/src/krun_input/build.rs b/src/input/build.rs similarity index 100% rename from src/krun_input/build.rs rename to src/input/build.rs diff --git a/src/krun_input/libkrun_input.h b/src/input/libkrun_input.h similarity index 100% rename from src/krun_input/libkrun_input.h rename to src/input/libkrun_input.h diff --git a/src/krun_input/src/c_to_rust.rs b/src/input/src/c_to_rust.rs similarity index 100% rename from src/krun_input/src/c_to_rust.rs rename to src/input/src/c_to_rust.rs diff --git a/src/krun_input/src/lib.rs b/src/input/src/lib.rs similarity index 100% rename from src/krun_input/src/lib.rs rename to src/input/src/lib.rs diff --git a/src/krun_input/src/rust_to_c.rs b/src/input/src/rust_to_c.rs similarity index 100% rename from src/krun_input/src/rust_to_c.rs rename to src/input/src/rust_to_c.rs diff --git a/src/kernel/Cargo.toml b/src/kernel/Cargo.toml index 8f5838b84..14715c615 100644 --- a/src/kernel/Cargo.toml +++ b/src/kernel/Cargo.toml @@ -1,9 +1,12 @@ [package] -name = "kernel" -version = "0.1.0" +name = "krun-kernel" +version = "0.1.0-1.17.3" edition = "2021" +description = "Kernel loading support for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] vm-memory = { version = "0.17", features = ["backend-mmap"] } -utils = { path = "../utils" } +utils = { package = "krun-utils", version = "=0.1.0-1.17.3", path = "../utils" } diff --git a/src/libkrun/Cargo.toml b/src/libkrun/Cargo.toml index 3ef9c1aea..6b412453c 100644 --- a/src/libkrun/Cargo.toml +++ b/src/libkrun/Cargo.toml @@ -3,7 +3,10 @@ name = "libkrun" version = "1.17.3" authors = ["The libkrun Authors"] edition = "2021" +description = "A dynamic library providing Virtualization-based process isolation capabilities" build = "build.rs" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [features] tee = ["vmm/tee", "devices/tee"] @@ -25,22 +28,22 @@ libc = ">=0.2.39" libloading = "0.8" log = "0.4.0" once_cell = "1.4.1" -krun_display = { path = "../krun_display", optional = true, features = ["bindgen_clang_runtime"] } -krun_input = { path = "../krun_input", optional = true, features = ["bindgen_clang_runtime"] } +krun_display = { package = "krun-display", version = "0.1.0", path = "../display", optional = true, features = ["bindgen_clang_runtime"] } +krun_input = { package = "krun-input", version = "0.1.0", path = "../input", optional = true, features = ["bindgen_clang_runtime"] } -devices = { path = "../devices" } -polly = { path = "../polly" } -utils = { path = "../utils" } -vmm = { path = "../vmm" } +devices = { package = "krun-devices", version = "=0.1.0-1.17.3", path = "../devices" } +polly = { package = "krun-polly", version = "=0.1.0-1.17.3", path = "../polly" } +utils = { package = "krun-utils", version = "=0.1.0-1.17.3", path = "../utils" } +vmm = { package = "krun-vmm", version = "=0.1.0-1.17.3", path = "../vmm" } rand = "0.9.2" [target.'cfg(target_os = "macos")'.dependencies] -hvf = { path = "../hvf" } +hvf = { package = "krun-hvf", version = "=0.1.0-1.17.3", path = "../hvf" } [target.'cfg(target_os = "linux")'.dependencies] kvm-bindings = { version = "0.12", features = ["fam-wrappers"] } kvm-ioctls = "0.22" -aws-nitro = { path = "../aws_nitro", optional = true } +aws-nitro = { package = "krun-aws-nitro", version = "=0.1.0-1.17.3", path = "../aws_nitro", optional = true } nitro-enclaves = { version = "0.5.0", optional = true } vm-memory = { version = "0.17", features = ["backend-mmap"] } diff --git a/src/polly/Cargo.toml b/src/polly/Cargo.toml index 775461682..e01227f4e 100644 --- a/src/polly/Cargo.toml +++ b/src/polly/Cargo.toml @@ -1,9 +1,12 @@ [package] -name = "polly" -version = "0.0.1" -authors = ["Amazon Firecracker team "] +name = "krun-polly" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" +description = "Event-driven I/O polling for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] libc = ">=0.2.39" -utils = { path="../utils" } +utils = { package = "krun-utils", version = "=0.1.0-1.17.3", path="../utils" } diff --git a/src/rutabaga_gfx/Cargo.toml b/src/rutabaga_gfx/Cargo.toml index 90f6ed4e2..69f9ae7fc 100644 --- a/src/rutabaga_gfx/Cargo.toml +++ b/src/rutabaga_gfx/Cargo.toml @@ -1,10 +1,11 @@ [package] -name = "rutabaga_gfx" -version = "0.1.2" -authors = ["The ChromiumOS Authors + Android Open Source Project"] +name = "krun-rutabaga-gfx" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" description = "[highly unstable] Handling virtio-gpu protocols" license-file = "LICENSE" +repository = "https://github.com/containers/libkrun" [features] gfxstream = [] diff --git a/src/rutabaga_gfx/ffi/Cargo.toml b/src/rutabaga_gfx/ffi/Cargo.toml index 497fe7fde..b9ad848ed 100644 --- a/src/rutabaga_gfx/ffi/Cargo.toml +++ b/src/rutabaga_gfx/ffi/Cargo.toml @@ -1,17 +1,18 @@ [package] -name = "rutabaga_gfx_ffi" -version = "0.1.2" -authors = ["The ChromiumOS Authors + Android Open Source Project"] +name = "krun-rutabaga-gfx-ffi" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" description = "Handling virtio-gpu protocols with C API" license-file = "LICENSE" +repository = "https://github.com/containers/libkrun" [lib] name = "rutabaga_gfx_ffi" crate-type = ["cdylib", "staticlib"] [dependencies] -rutabaga_gfx = { path = "../", version = "0.1.2"} +rutabaga_gfx = { package = "krun-rutabaga-gfx", path = "../", version = "=0.1.0-1.17.3"} libc = "0.2.93" log = "0.4" once_cell = "1.7" diff --git a/src/smbios/Cargo.toml b/src/smbios/Cargo.toml index b6ecafdbd..7f7919bd8 100644 --- a/src/smbios/Cargo.toml +++ b/src/smbios/Cargo.toml @@ -1,7 +1,10 @@ [package] -name = "smbios" -version = "0.1.0" +name = "krun-smbios" +version = "0.1.0-1.17.3" edition = "2021" +description = "SMBIOS table generation for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] vm-memory = { version = "0.17", features = ["backend-mmap"] } diff --git a/src/utils/Cargo.toml b/src/utils/Cargo.toml index 71bbda825..a6693ccda 100644 --- a/src/utils/Cargo.toml +++ b/src/utils/Cargo.toml @@ -1,8 +1,11 @@ [package] -name = "utils" -version = "0.1.0" -authors = ["Amazon Firecracker team "] +name = "krun-utils" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" +description = "Utility helpers for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [dependencies] bitflags = "1.2.0" @@ -16,4 +19,4 @@ crossbeam-channel = ">=0.5.15" kvm-bindings = { version = "0.12", features = ["fam-wrappers"] } [target.'cfg(target_os = "macos")'.dependencies] -nix = { version = "0.30.1", features = ["fs"] } \ No newline at end of file +nix = { version = "0.30.1", features = ["fs"] } diff --git a/src/vmm/Cargo.toml b/src/vmm/Cargo.toml index fe5525838..fbe9aa622 100644 --- a/src/vmm/Cargo.toml +++ b/src/vmm/Cargo.toml @@ -1,9 +1,12 @@ [package] -name = "vmm" -version = "0.1.0" -authors = ["Amazon Firecracker team "] +name = "krun-vmm" +version = "0.1.0-1.17.3" +authors = ["The libkrun Authors"] edition = "2021" build = "build.rs" +description = "Virtual machine monitor for libkrun" +license = "Apache-2.0" +repository = "https://github.com/containers/libkrun" [features] tee = ["devices/tee", "arch/tee"] @@ -26,15 +29,15 @@ log = "0.4.0" nix = { version = "0.30.1", features = ["fs", "term"] } vm-memory = { version = "0.17.0", features = ["backend-mmap"] } vmm-sys-util = "0.14" -krun_display = { path = "../krun_display", optional = true, features = ["bindgen_clang_runtime"] } -krun_input = { path = "../krun_input", optional = true, features = ["bindgen_clang_runtime"] } +krun_display = { package = "krun-display", version = "0.1.0", path = "../display", optional = true, features = ["bindgen_clang_runtime"] } +krun_input = { package = "krun-input", version = "0.1.0", path = "../input", optional = true, features = ["bindgen_clang_runtime"] } -arch = { path = "../arch" } -arch_gen = { path = "../arch_gen" } -devices = { path = "../devices" } -kernel = { path = "../kernel" } -utils = { path = "../utils" } -polly = { path = "../polly" } +arch = { package = "krun-arch", version = "=0.1.0-1.17.3", path = "../arch" } +arch_gen = { package = "krun-arch-gen", version = "=0.1.0-1.17.3", path = "../arch_gen" } +devices = { package = "krun-devices", version = "=0.1.0-1.17.3", path = "../devices" } +kernel = { package = "krun-kernel", version = "=0.1.0-1.17.3", path = "../kernel" } +utils = { package = "krun-utils", version = "=0.1.0-1.17.3", path = "../utils" } +polly = { package = "krun-polly", version = "=0.1.0-1.17.3", path = "../polly" } # Dependencies for amd-sev kbs-types = { version = "0.13.0", optional = true } @@ -46,7 +49,7 @@ bitflags = { version = "2.10.0", optional = true } [target.'cfg(target_arch = "x86_64")'.dependencies] bzip2 = "0.5" -cpuid = { path = "../cpuid" } +cpuid = { package = "krun-cpuid", version = "=0.1.0-1.17.3", path = "../cpuid" } zstd = "0.13" [target.'cfg(target_os = "linux")'.dependencies] @@ -55,7 +58,7 @@ kvm-bindings = { version = "0.12", features = ["fam-wrappers"] } kvm-ioctls = "0.22" [target.'cfg(target_os = "macos")'.dependencies] -hvf = { path = "../hvf" } +hvf = { package = "krun-hvf", version = "=0.1.0-1.17.3", path = "../hvf" } [dev-dependencies] -devices = { path = "../devices", features = ["test_utils"] } +devices = { package = "krun-devices", version = "=0.1.0-1.17.3", path = "../devices", features = ["test_utils"] }