maxsteeel
Hi! I'm just popping in to celebrate NoMount reaching 50 stars on GitHub! ๐ That said, NoMount is getting closer to its official release, working on: - 4.9.262, tested by ciroprogamer (https://github.com/ciroprogamer) - 4.14.357, tested by @M73trz - 4.14.357โฆ
https://github.com/maxsteeel/nomount/releases/tag/v1.0.0
After more of 4 months, here's the first official release of NoMount!
After more of 4 months, here's the first official release of NoMount!
GitHub
Release NoMount v1.0.0 ยท maxsteeel/nomount
This is the first official release of NoMount!
This version completely changes NoMount, rewriting and restructuring all the kernel-side code.
Although this is NoMount's first official release, ...
This version completely changes NoMount, rewriting and restructuring all the kernel-side code.
Although this is NoMount's first official release, ...
8โค8๐ฅ2
For those who use the ReVanced/Morphe modules and have NoMount integrated into their kernel:
https://github.com/maxsteeel/rvmm-nomount
https://github.com/maxsteeel/rvmm-nomount
GitHub
GitHub - maxsteeel/rvmm-nomount: Inject the rvmm (ReVanced) modules using NoMount, eliminating traditional mounts (for revancedโฆ
Inject the rvmm (ReVanced) modules using NoMount, eliminating traditional mounts (for revanced-magisk-module). - maxsteeel/rvmm-nomount
๐ฅ6โค1
Now AML officially support NoMount!
thanks to @M73trz and @reiryuki !
https://github.com/reiryuki/Audio-Modification-Library-Ryuki-Mod-Magisk-Module
thanks to @M73trz and @reiryuki !
https://github.com/reiryuki/Audio-Modification-Library-Ryuki-Mod-Magisk-Module
โค4๐2๐ฟ2๐1
NoMount metamodule now has internationalization (i18n), meaning it can be translated into any language!
Currently, NoMount it's available in English, Spanish, Indonesian (thanks @therealmodder !) Chinese (thanks @ZYClark !) and Russian (thanks to @Sliva4 !).
If you'd like to contribute to the translation of NoMount into your language, you can create a pull request, and i'll merge it asap :)
Currently, NoMount it's available in English, Spanish, Indonesian (thanks @therealmodder !) Chinese (thanks @ZYClark !) and Russian (thanks to @Sliva4 !).
If you'd like to contribute to the translation of NoMount into your language, you can create a pull request, and i'll merge it asap :)
๐ฅ4โค1
Hello,
Today I have the immense pride to announce that the legendary modder @reiryuki has added official support for NoMount as a mounting method in the vast majority of his modules!
This makes NoMount the first and ONLY VFS redirection/injection subsystem to achieve this level of adoption by one of the biggest developers in the root scene!
I want to take a moment to give you all a giant thank you. To the kamikazes who tested NoMount in its earliest stages and to everyone who has been testing non-stop to bring the project's stability to this level. Equally, thank you very much to @M73trz for all your support and collaboration towards this project!
@reiryuki channel:
https://t.me/androidryukimods
Today I have the immense pride to announce that the legendary modder @reiryuki has added official support for NoMount as a mounting method in the vast majority of his modules!
This makes NoMount the first and ONLY VFS redirection/injection subsystem to achieve this level of adoption by one of the biggest developers in the root scene!
I want to take a moment to give you all a giant thank you. To the kamikazes who tested NoMount in its earliest stages and to everyone who has been testing non-stop to bring the project's stability to this level. Equally, thank you very much to @M73trz for all your support and collaboration towards this project!
@reiryuki channel:
https://t.me/androidryukimods
โค5๐ฅ2
NoMount v1.1.0 is out!
https://github.com/maxsteeel/nomount/releases/tag/v1.1.0
(don't need to update the kernel, it's only module update)
https://github.com/maxsteeel/nomount/releases/tag/v1.1.0
(don't need to update the kernel, it's only module update)
GitHub
Release NoMount v1.1.0 ยท maxsteeel/nomount
What's Changed
webui: update webui md3 expressive by @ZQZCC in #14
webui: add indonesian i18n translation by @riarumoda in #17
webui: add simplified chinese i18n translation by @ZQZCC in #18
w...
webui: update webui md3 expressive by @ZQZCC in #14
webui: add indonesian i18n translation by @riarumoda in #17
webui: add simplified chinese i18n translation by @ZQZCC in #18
w...
โค6๐1
I managed to get NoMount working 100% hookless!
https://github.com/maxsteeel/nomount/tree/experimental/hookless/kernel/src
although it is still experimental, it works almost perfect.
tested on kernel 6.1.145. thanks @ZYClark for helping me test while I am without a phone!
EDIT: more closely to fully stable. not tested yet in non-gki devices
https://github.com/maxsteeel/nomount/tree/experimental/hookless/kernel/src
although it is still experimental, it works almost perfect.
tested on kernel 6.1.145. thanks @ZYClark for helping me test while I am without a phone!
EDIT: more closely to fully stable. not tested yet in non-gki devices
GitHub
nomount/kernel/src at experimental/hookless ยท maxsteeel/nomount
NoMount is a kernel-based file injection and path redirection framework for Android kernels. - maxsteeel/nomount
โคโ๐ฅ6โค4
maxsteeel
I managed to get NoMount working 100% hookless! https://github.com/maxsteeel/nomount/tree/experimental/hookless/kernel/src although it is still experimental, it works almost perfect. tested on kernel 6.1.145. thanks @ZYClark for helping me test while I amโฆ
without any global hook, no kprobes, no syscall / inline hooking, no hooks, only i_op, f_op and s_op structures hijacking
:)
:)
๐ฅ11โค1
Hello,
I've been a bit absent due to health issues, but I've tried my best to stay active here. I'd like to clarify the current state of NoMount, as everything is quite confusing:
* First, why are there two/three branches of NoMount?
- As you may know (since I've posted about it here), I'm pushing for a transition from using global in-kernel hooks to a more, ermm... hookless approach. However, this refactoring is so large that it's incompatible with the master branch. Therefore, until this refactoring is 100% stable for everyone, I prefer to keep it on a separate branch for those willing to deal with the bugs and report them to me.
* But what does 'hookless' mean? What's the difference?
* - In the current NoMount context, "hookless" doesn't mean it works without hooks (that would be saying it works by magic hehehe), but rather that it doesn't require applying hooks in the kernel. My proposal is based on modifying the VFS structures in RAM, allowing the kernel itself to use my functions without needing kernel modifications. You can simply integrate NoMount into your kernel or use it as a LKM (although there's no official LKM module yet; you have to compile it yourself).
* So, is this "hookless" approach much better than in-kernel hooks?
- I'd like to say yes, but for several reasons, I can't yet give a final verdict. While it's true that both performance and battery life have improved in this transition, there are still some issues with certain kernels (mostly legacy ones). But overall, this approach is much better, more stable, and more sustainable in the long run.
* Why are there so many problems with this "hookless" approach?
- This is due to two things, one, that by having in-kernel hooks, I can modify any kernel function as I please (just like SuSFS does), which allows me to bypass restrictions and make certain functions behave differently. This 'hookless' approach doesn't offer the same freedoms, because although, as I explained, I modify the VFS structures in RAM, this method doesn't have the same scope; it's limited to VFS functions.
On the other hand, I'm currently without a phone. My personal phone is completely broken, and I'm not in a position to repair it. Therefore, this entire transition has been thanks to my PC (Linux), which has allowed me (using LKM) to test each change. However, for obvious reasons, a PC (Linux) isn't a true Android environment, so I can't personally test all these changes 100%. Consequently, there may be bugs, problems with other devices, or incompatibilities with certain modules that I might not be aware of.
I'd like to take this opportunity to thank everyone who is actively testing and using NoMount and has contributed to its development, whether by submitting pull requests or testing and reporting bugs. Thank you so much! โค๏ธ
* Which branch is stable then?
- It depends. For most people, I highly recommend using the dev branch, as it's much more up-to-date and, in most cases, stable. On the other hand, if you encounter problems with the dev branch, whether you experience bootloops or certain modules not working, you can either report it to me and I'll try to fix it as best I can, or use the master branch, which has been tested by me and many others and is very stable (though it's quite outdated in certain aspects).
* So, which module should I use?
- If you compiled NoMount from the master branch and/or aren't sure, use this release:
https://github.com/maxsteeel/nomount/releases/tag/v1.1.0
- If you compiled NoMount from any branch other than master, use the CI module:
https://github.com/maxsteeel/nomount/actions
If you have any other questions, feel free to leave them in the comments of this post or in the group. I'll answer them as soon as I can. And if you have any problems with NoMount, don't hesitate to report them. I might not reply instantly, but I'll get back to you as soon as possible. :)
I've been a bit absent due to health issues, but I've tried my best to stay active here. I'd like to clarify the current state of NoMount, as everything is quite confusing:
* First, why are there two/three branches of NoMount?
- As you may know (since I've posted about it here), I'm pushing for a transition from using global in-kernel hooks to a more, ermm... hookless approach. However, this refactoring is so large that it's incompatible with the master branch. Therefore, until this refactoring is 100% stable for everyone, I prefer to keep it on a separate branch for those willing to deal with the bugs and report them to me.
* But what does 'hookless' mean? What's the difference?
* - In the current NoMount context, "hookless" doesn't mean it works without hooks (that would be saying it works by magic hehehe), but rather that it doesn't require applying hooks in the kernel. My proposal is based on modifying the VFS structures in RAM, allowing the kernel itself to use my functions without needing kernel modifications. You can simply integrate NoMount into your kernel or use it as a LKM (although there's no official LKM module yet; you have to compile it yourself).
* So, is this "hookless" approach much better than in-kernel hooks?
- I'd like to say yes, but for several reasons, I can't yet give a final verdict. While it's true that both performance and battery life have improved in this transition, there are still some issues with certain kernels (mostly legacy ones). But overall, this approach is much better, more stable, and more sustainable in the long run.
* Why are there so many problems with this "hookless" approach?
- This is due to two things, one, that by having in-kernel hooks, I can modify any kernel function as I please (just like SuSFS does), which allows me to bypass restrictions and make certain functions behave differently. This 'hookless' approach doesn't offer the same freedoms, because although, as I explained, I modify the VFS structures in RAM, this method doesn't have the same scope; it's limited to VFS functions.
On the other hand, I'm currently without a phone. My personal phone is completely broken, and I'm not in a position to repair it. Therefore, this entire transition has been thanks to my PC (Linux), which has allowed me (using LKM) to test each change. However, for obvious reasons, a PC (Linux) isn't a true Android environment, so I can't personally test all these changes 100%. Consequently, there may be bugs, problems with other devices, or incompatibilities with certain modules that I might not be aware of.
I'd like to take this opportunity to thank everyone who is actively testing and using NoMount and has contributed to its development, whether by submitting pull requests or testing and reporting bugs. Thank you so much! โค๏ธ
* Which branch is stable then?
- It depends. For most people, I highly recommend using the dev branch, as it's much more up-to-date and, in most cases, stable. On the other hand, if you encounter problems with the dev branch, whether you experience bootloops or certain modules not working, you can either report it to me and I'll try to fix it as best I can, or use the master branch, which has been tested by me and many others and is very stable (though it's quite outdated in certain aspects).
* So, which module should I use?
- If you compiled NoMount from the master branch and/or aren't sure, use this release:
https://github.com/maxsteeel/nomount/releases/tag/v1.1.0
- If you compiled NoMount from any branch other than master, use the CI module:
https://github.com/maxsteeel/nomount/actions
If you have any other questions, feel free to leave them in the comments of this post or in the group. I'll answer them as soon as I can. And if you have any problems with NoMount, don't hesitate to report them. I might not reply instantly, but I'll get back to you as soon as possible. :)
โค11๐1
Forwarded from heryts
It works, thanks
๐1๐ฟ1
From now on, it is recommended to use the automated script to integrate NoMount into the kernel:
On the dev branch, the patches are deprecated and will be removed soon, so using the script is strongly recommended.
workflow reference:
https://github.com/maxsteeel/GKI_KernelSU_SUSFS/blob/main/.github/actions/nomount/action.yml
kernel/README.md:
https://github.com/maxsteeel/nomount/blob/dev/kernel/README.md
curl https://raw.githubusercontent.com/maxsteeel/nomount/refs/heads/dev/kernel/setup.sh | bash -s dev
On the dev branch, the patches are deprecated and will be removed soon, so using the script is strongly recommended.
workflow reference:
https://github.com/maxsteeel/GKI_KernelSU_SUSFS/blob/main/.github/actions/nomount/action.yml
kernel/README.md:
https://github.com/maxsteeel/nomount/blob/dev/kernel/README.md
๐ฅ5๐ฅฐ1
Officially NoMount has LKM support! (only in CI modules)
https://github.com/maxsteeel/nomount/actions/runs/31724150090
Thanks to @sarreos for base workflow, thanks to @ananatdx, dev of Kasumi (inspiration of this project), and thanks to all testers!
NOTE: LKM's compilated for nomount workflow is only for GKI kernels, Sultan kernels or legacy kernels can't load these LKM's.
NOTE 2: If you have a legacy kernel, you can compile your LKM for your kernel following these steps, and when you have your LKM compiled, you can add to the module.zip (in lkm folder) in format "nomount-{kernel version}.ko, e.g nomount-5.4.ko. But I always recommend compile nomount built-in in your kernel.
NOTE 3: Sultan kernels with CONFIG_INTEGRATED_MODULES=y can't load LKM's, ref: kerneltoast/android_kernel_google_tensynos
https://github.com/maxsteeel/nomount/actions/runs/31724150090
Thanks to @sarreos for base workflow, thanks to @ananatdx, dev of Kasumi (inspiration of this project), and thanks to all testers!
NOTE: LKM's compilated for nomount workflow is only for GKI kernels, Sultan kernels or legacy kernels can't load these LKM's.
NOTE 2: If you have a legacy kernel, you can compile your LKM for your kernel following these steps, and when you have your LKM compiled, you can add to the module.zip (in lkm folder) in format "nomount-{kernel version}.ko, e.g nomount-5.4.ko. But I always recommend compile nomount built-in in your kernel.
NOTE 3: Sultan kernels with CONFIG_INTEGRATED_MODULES=y can't load LKM's, ref: kerneltoast/android_kernel_google_tensynos
GitHub
module, workflows: implement LKM support ยท maxsteeel/nomount@5e6285d
NoMount is a VFS (Virtual File System) path redirection framework for Android kernels. - module, workflows: implement LKM support ยท maxsteeel/nomount@5e6285d
โค8
Forwarded from EGirls Ruined my Life @Willay
Forwarded from FerGus
at least it werks here๐
โค4