ksud: added module mount command to check current mount system enabled

This commit is contained in:
rifsxd
2025-04-02 15:12:44 +06:00
parent c5aa6ffffc
commit 02dbb7d0f7
6 changed files with 27 additions and 0 deletions

View File

@@ -228,6 +228,9 @@ enum Module {
id: String,
},
/// current mount system
Mount,
/// list all modules
List,
}
@@ -313,6 +316,7 @@ pub fn run() -> Result<()> {
Module::Enable { id } => module::enable_module(&id),
Module::Disable { id } => module::disable_module(&id),
Module::Action { id } => module::run_action(&id),
Module::Mount => module::mount_system(),
Module::List => module::list_modules(),
}
}

View File

@@ -42,3 +42,5 @@ pub const BACKUP_FILENAME: &str = "stock_image.sha1";
pub const NO_TMPFS_PATH: &str = concatcp!(WORKING_DIR, ".notmpfs");
pub const NO_MOUNT_PATH: &str = concatcp!(WORKING_DIR, ".nomount");
pub const MOUNT_SYSTEM: &str = "Magic_Mount";

View File

@@ -493,6 +493,12 @@ fn _list_modules(path: &str) -> Vec<HashMap<String, String>> {
modules
}
pub fn mount_system() -> Result<()> {
println!("Current mount system: {}", defs::MOUNT_SYSTEM);
Ok(())
}
pub fn list_modules() -> Result<()> {
let modules = _list_modules(defs::MODULE_DIR);
println!("{}", serde_json::to_string_pretty(&modules)?);

View File

@@ -235,6 +235,10 @@ enum Module {
id: String,
},
/// current mount system
Mount,
/// list all modules
List,
@@ -319,6 +323,7 @@ pub fn run() -> Result<()> {
Module::Enable { id } => module::enable_module(&id),
Module::Disable { id } => module::disable_module(&id),
Module::Action { id } => module::run_action(&id),
Module::Mount => module::mount_system(),
Module::List => module::list_modules(),
Module::Shrink => module::shrink_ksu_images(),
}

View File

@@ -44,3 +44,5 @@ pub const VERSION_NAME: &str = include_str!(concat!(env!("OUT_DIR"), "/VERSION_N
pub const KSU_BACKUP_DIR: &str = WORKING_DIR;
pub const KSU_BACKUP_FILE_PREFIX: &str = "ksu_backup_";
pub const BACKUP_FILENAME: &str = "stock_image.sha1";
pub const MOUNT_SYSTEM: &str = "OverlayFS";

View File

@@ -61,6 +61,7 @@ fn exec_install_script(module_file: &str) -> Result<()> {
.env("KSU_VER_CODE", defs::VERSION_CODE)
.env("OUTFD", "1")
.env("ZIPFILE", realpath)
.env("KSU_OVERLAYFS", "true")
.status()?;
ensure!(result.success(), "Failed to install module script");
Ok(())
@@ -185,6 +186,7 @@ fn exec_script<T: AsRef<Path>>(path: T, wait: bool) -> Result<()> {
.env("KSU_KERNEL_VER_CODE", ksucalls::get_version().to_string())
.env("KSU_VER_CODE", defs::VERSION_CODE)
.env("KSU_VER", defs::VERSION_NAME)
.env("KSU_OVERLAYFS", "true")
.env(
"PATH",
format!(
@@ -789,6 +791,12 @@ fn _list_modules(path: &str) -> Vec<HashMap<String, String>> {
modules
}
pub fn mount_system() -> Result<()> {
println!("Current mount system: {}", defs::MOUNT_SYSTEM);
Ok(())
}
pub fn list_modules() -> Result<()> {
let modules = _list_modules(defs::MODULE_DIR);
println!("{}", serde_json::to_string_pretty(&modules)?);