Prepare, configure, and manage Firecracker microVMs in seconds!
virtualization linux microvm firecracker

use Distro enum for checking NixOS

+5 -3
+3 -1
crates/firecracker-vm/src/firecracker.rs
··· 1 1 use crate::constants::{API_SOCKET, FC_MAC, TAP_DEV}; 2 2 use anyhow::Result; 3 + use firecracker_prepare::Distro; 3 4 use serde_json::json; 4 5 use std::thread::sleep; 5 6 use std::time::Duration; ··· 15 16 arch: &str, 16 17 vcpu: u16, 17 18 memory: u16, 19 + distro: Distro, 18 20 ) -> Result<()> { 19 21 configure_logger(logfile)?; 20 - setup_boot_source(kernel, arch, rootfs.contains("nixos"))?; 22 + setup_boot_source(kernel, arch, distro == Distro::NixOS)?; 21 23 setup_rootfs(rootfs)?; 22 24 setup_network_interface()?; 23 25 setup_vcpu_and_memory(vcpu, memory)?;
+2 -2
crates/firecracker-vm/src/lib.rs
··· 73 73 let arch = command::run_command("uname", &["-m"], false)?.stdout; 74 74 let arch = String::from_utf8_lossy(&arch).trim().to_string(); 75 75 network::setup_network()?; 76 - firecracker::configure(&logfile, &kernel, &rootfs, &arch, vcpu, memory)?; 76 + firecracker::configure(&logfile, &kernel, &rootfs, &arch, vcpu, memory, distro)?; 77 77 78 - if !rootfs.contains("nixos") { 78 + if distro != Distro::NixOS { 79 79 guest::configure_guest_network(&key_name)?; 80 80 } 81 81