forked from koniifer/ableos
factor out separating path names from the boot prefix
This commit is contained in:
parent
da606facb0
commit
b0358efab8
|
@ -12,6 +12,7 @@ use {
|
|||
path::Path,
|
||||
process::{exit, Command},
|
||||
},
|
||||
toml::Value,
|
||||
};
|
||||
|
||||
fn main() -> Result<(), Error> {
|
||||
|
@ -124,6 +125,10 @@ fn assemble() -> Result<(), Error> {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
fn get_path_without_boot_prefix(val: &Value) -> Option<&str> {
|
||||
val.as_str()?.split("boot:///").last()
|
||||
}
|
||||
|
||||
fn get_fs() -> Result<FileSystem<impl ReadWriteSeek>, io::Error> {
|
||||
let filename = "sysdata/system_config.toml";
|
||||
|
||||
|
@ -192,12 +197,7 @@ TERM_BACKDROP={}
|
|||
);
|
||||
|
||||
// Copy the term_wallpaper to the image
|
||||
let term_wallpaper_path = term_wallpaper
|
||||
.as_str()
|
||||
.unwrap()
|
||||
.split("boot:///")
|
||||
.last()
|
||||
.unwrap();
|
||||
let term_wallpaper_path = get_path_without_boot_prefix(term_wallpaper).unwrap();
|
||||
copy_file_to_img(&format!("sysdata/{}", term_wallpaper_path), &fs);
|
||||
|
||||
limine_str.push_str(&base);
|
||||
|
@ -242,13 +242,9 @@ TERM_BACKDROP={}
|
|||
|
||||
modules.into_iter().for_each(|(key, value)| {
|
||||
if value.is_table() && key == "tests" {
|
||||
let path = value
|
||||
.get("path")
|
||||
.expect("You must have `path` as a value")
|
||||
.as_str()
|
||||
.unwrap()
|
||||
.split("boot:///")
|
||||
.last()
|
||||
let path = get_path_without_boot_prefix(
|
||||
value.get("path").expect("You must have `path` as a value"),
|
||||
)
|
||||
.unwrap()
|
||||
.split(".")
|
||||
.next()
|
||||
|
@ -278,13 +274,11 @@ TERM_BACKDROP={}
|
|||
// Copy modules into the test_programs directory
|
||||
modules.into_iter().for_each(|(_key, value)| {
|
||||
if value.is_table() {
|
||||
let path = value
|
||||
let path = get_path_without_boot_prefix(
|
||||
value
|
||||
.get("path")
|
||||
.expect("You must have a `path` as a value")
|
||||
.as_str()
|
||||
.unwrap()
|
||||
.split("boot:///")
|
||||
.last()
|
||||
.expect("You must have a `path` as a value"),
|
||||
)
|
||||
.unwrap();
|
||||
let fpath = format!("target/test-programs/{}", path);
|
||||
copy_file_to_img(&fpath, &fs);
|
||||
|
|
Loading…
Reference in a new issue