Pass live argument from CLI to library

This commit is contained in:
Jeremy Soller
2022-09-05 09:10:46 -06:00
parent 1ecb9b49fc
commit e8e4687c05
2 changed files with 6 additions and 5 deletions
+4 -3
View File
@@ -14,10 +14,11 @@ fn main() {
let stderr = io::stderr();
let mut stderr = stderr.lock();
let mut parser = ArgParser::new(3)
let mut parser = ArgParser::new(4)
.add_opt("b", "cookbook")
.add_opt("c", "config")
.add_flag(&["l", "list-packages"]);
.add_flag(&["l", "list-packages"])
.add_flag(&["live"]);
parser.parse(env::args());
let config = if let Some(path) = parser.get_opt("config") {
@@ -68,7 +69,7 @@ fn main() {
}
} else {
if let Some(path) = parser.args.get(0) {
if let Err(err) = redox_installer::install(config, path, cookbook) {
if let Err(err) = redox_installer::install(config, path, cookbook, parser.found("live")) {
writeln!(stderr, "installer: failed to install: {}", err).unwrap();
process::exit(1);
}
+2 -2
View File
@@ -525,7 +525,7 @@ pub fn with_whole_disk<P, F, T>(disk_path: P, bootloader_bios: &[u8], bootloader
)
}
pub fn install<P, S>(config: Config, output: P, cookbook: Option<S>)
pub fn install<P, S>(config: Config, output: P, cookbook: Option<S>, live: bool)
-> Result<()> where
P: AsRef<Path>,
S: AsRef<str>,
@@ -535,7 +535,7 @@ pub fn install<P, S>(config: Config, output: P, cookbook: Option<S>)
if output.as_ref().is_dir() {
install_dir(config, output, cookbook)
} else {
let (bootloader_bios, bootloader_efi) = fetch_bootloaders(cookbook.as_ref(), false)?;
let (bootloader_bios, bootloader_efi) = fetch_bootloaders(cookbook.as_ref(), live)?;
with_whole_disk(output, &bootloader_bios, &bootloader_efi, None,
move |mount_path| {
install_dir(config, mount_path, cookbook)