diff --git a/manager/app/src/main/java/me/weishu/kernelsu/ui/screen/Module.kt b/manager/app/src/main/java/me/weishu/kernelsu/ui/screen/Module.kt
index 4a5081bc..33c7b371 100644
--- a/manager/app/src/main/java/me/weishu/kernelsu/ui/screen/Module.kt
+++ b/manager/app/src/main/java/me/weishu/kernelsu/ui/screen/Module.kt
@@ -32,6 +32,7 @@ import me.weishu.kernelsu.Natives
import me.weishu.kernelsu.R
import me.weishu.kernelsu.ui.screen.destinations.InstallScreenDestination
import me.weishu.kernelsu.ui.util.LocalSnackbarHost
+import me.weishu.kernelsu.ui.util.overlayFsAvailable
import me.weishu.kernelsu.ui.util.toggleModule
import me.weishu.kernelsu.ui.util.uninstallModule
import me.weishu.kernelsu.ui.viewmodel.ModuleViewModel
@@ -105,6 +106,14 @@ fun ModuleScreen(navigator: DestinationsNavigator) {
.padding(16.dp)
.fillMaxSize()
) {
+ val isOverlayAvailable = overlayFsAvailable()
+ if (!isOverlayAvailable) {
+ swipeState.isRefreshing = false
+ Box(modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.Center) {
+ Text(stringResource(R.string.module_overlay_fs_not_available))
+ }
+ return@SwipeRefresh
+ }
val isEmpty = viewModel.moduleList.isEmpty()
if (isEmpty) {
swipeState.isRefreshing = false
diff --git a/manager/app/src/main/java/me/weishu/kernelsu/ui/util/KsuCli.kt b/manager/app/src/main/java/me/weishu/kernelsu/ui/util/KsuCli.kt
index 10fb4456..f0dc048d 100644
--- a/manager/app/src/main/java/me/weishu/kernelsu/ui/util/KsuCli.kt
+++ b/manager/app/src/main/java/me/weishu/kernelsu/ui/util/KsuCli.kt
@@ -102,4 +102,10 @@ fun reboot(reason: String = "") {
ShellUtils.fastCmd(shell, "/system/bin/input keyevent 26")
}
ShellUtils.fastCmd(shell, "/system/bin/svc power reboot $reason || /system/bin/reboot $reason")
+}
+
+fun overlayFsAvailable(): Boolean {
+ val shell = createRootShell()
+ // check /proc/filesystems
+ return ShellUtils.fastCmdResult(shell, "cat /proc/filesystems | grep overlay")
}
\ No newline at end of file
diff --git a/manager/app/src/main/res/values-zh-rCN/strings.xml b/manager/app/src/main/res/values-zh-rCN/strings.xml
index 4a16d391..26bb9750 100644
--- a/manager/app/src/main/res/values-zh-rCN/strings.xml
+++ b/manager/app/src/main/res/values-zh-rCN/strings.xml
@@ -45,4 +45,5 @@
卸载失败: %s
版本
作者
+ 内核不支持 overlayfs,模块功能无法运作!
diff --git a/manager/app/src/main/res/values-zh-rHK/strings.xml b/manager/app/src/main/res/values-zh-rHK/strings.xml
index 0fa36b13..449660a8 100644
--- a/manager/app/src/main/res/values-zh-rHK/strings.xml
+++ b/manager/app/src/main/res/values-zh-rHK/strings.xml
@@ -45,4 +45,5 @@
卸載失敗: %s
版本
作者
+ 內核不支持 overlayfs,模塊功能無法運作!
diff --git a/manager/app/src/main/res/values-zh-rTW/strings.xml b/manager/app/src/main/res/values-zh-rTW/strings.xml
index 6f3d7f06..074cab32 100644
--- a/manager/app/src/main/res/values-zh-rTW/strings.xml
+++ b/manager/app/src/main/res/values-zh-rTW/strings.xml
@@ -45,4 +45,5 @@
卸載失敗: %s
版本
作者
+ 內核不支持 overlayfs,模塊功能無法運作!
diff --git a/manager/app/src/main/res/values/strings.xml b/manager/app/src/main/res/values/strings.xml
index 7fc1ded8..ee91352f 100644
--- a/manager/app/src/main/res/values/strings.xml
+++ b/manager/app/src/main/res/values/strings.xml
@@ -49,5 +49,6 @@
Failed to uninstall: %s
Version
Author
+ overlayfs is not available, module cannot work!