[MODULE] Smali Patcher for native Android (Termux) - Magisk

NOTICE: Apparently, fOmey intends to support native android through Xposed, making this obsolete and since he confirmed that the source code will not be available, this project can't be updated with reasonable effort anyways. TL;DR: sm4a is dead
WARNING: Currently sm4a is stuck on Smali Patcher 7.2 and (due to complications on my end, specifically the decompiler not producing usable code diffs) an update to 7.3 is unlikely without access to the proper source code of smali patcher. If you want to, you can try to clone the repo, revert the last few commits, decompile smali patcher and try to port over the changes yourself.
Smali Patcher is a Module created by @fOmey that allows for users to apply patches to their Android system, such as removing signature verification or making mock locations seem genuine.
While the tool is very useful, it requires a windows installation to be ran. That was the reason I decided to work on porting the program to linux.
However: In doing so I recognized that I could get it running entirely on android without dependency on any desktop system using termux.
If you want to try it out, I have provided instructions for installing my port here (tested only on LineageOS 17.1 for SM-A520F because that is my only phone, it should work fine on other devices though).
Please note that I had to make some changes to the internal logic of Smali Patcher to get this running so if you experience any problems you should ask me for support and not bother fOmey. I have also created a windows backport of my modifications here.
Also, feel free to mess with the source code.
Thanks to fOmey for creating his awesome tool and not threatening to sue me if I release my modifications.

Nice. Working for me

Hi @CreepycCrafter24
Nice 1st post!
Your work has been featured on the portal: https://www.xda-developers.com/smalipatcher-android-framework-without-pc/
Well done! ?
Sébastien.

Seems like an nice idea but...
Instructions unclear
Root/vdexextractor doesnt exist at all, neither i know what copy over to proot means (i just know it isnt a folder)
---------- Post added at 10:58 PM ---------- Previous post was at 10:46 PM ----------
Automatic install fails to bc it only refers to ubuntu, whilst the proot thing needs ubuntu-18.04 or ubuntu-20.04 as input

Dr. DoubtReaper said:
Seems like an nice idea but...
Instructions unclear
Root/vdexextractor doesnt exist at all, neither i know what copy over to proot means (i just know it isnt a folder)
Click to expand...
Click to collapse
The manual instructions are mostly there for advanced users that don't like automated installation scripts or for non-standard environments. If you just want it to work you should be able to use the automated install script.
Proot is the utility that allows the script to have an isolated environment with an openjdk install. By "copying over to proot" I mean copying the file into a directory that is easily accessible from the proot environment, such as usr/var/lib/proot-distro/installed-rootfs/ubuntu/home, which is the proots home directory
The thing with ubuntu-... is interesting because that exact script worked when I last tested it. Could you try upgrading your packages? (pkg update I think)

CreepycCrafter24 said:
The manual instructions are mostly there for advanced users that don't like automated installation scripts or for non-standard environments. If you just want it to work you should be able to use the automated install script.
Proot is the utility that allows the script to have an isolated environment with an openjdk install. By "copying over to proot" I mean copying the file into a directory that is easily accessible from the proot environment, such as usr/var/lib/proot-distro/installed-rootfs/ubuntu/home, which is the proots home directory
The thing with ubuntu-... is interesting because that exact script worked when I last tested it. Could you try upgrading your packages? (pkg update I think)
Click to expand...
Click to collapse
I actually tried used the automatic install but as i said it failed, so i moved to manual which is strange too...
Packages are all on latest
I would have attached some screenshots but xda says no

Dr. DoubtReaper said:
I actually tried used the automatic install but as i said it failed, so i moved to manual which is strange too...
Packages are all on latest
I would have attached some screenshots but xda says no
Click to expand...
Click to collapse
I just updated all packages on my side and "ubuntu" still shows up as a valid distro in proot-distro. I am confused. I guess you should try manually running the commands in the setup script and replacing the distro name

CreepycCrafter24 said:
I just updated all packages on my side and "ubuntu" still shows up as a valid distro in proot-distro. I am confused. I guess you should try manually running the commands in the setup script and replacing the distro name
Click to expand...
Click to collapse
Hmm, manual setup kinda doesnt work either , might need some eidts in the automatic script but ive no clue bout that

Automatic script fail at ubuntu unknown distro. I think the script should read "ubuntu-20.04"

$ proot-distro list
Supported distributions:
* Alpine Linux 3.12.0
Alias: alpine
Status: NOT installed
* Arch Linux
Alias: archlinux
Status: NOT installed
* Kali Nethunter
Alias: nethunter
Status: NOT installed
Comment: Minimal version, most of utilities should be installed manually.
* Ubuntu 18.04
Alias: ubuntu-18.04
Status: NOT installed
* Ubuntu 20.04
Alias: ubuntu-20.04
Status: installed
Note: ubuntu-20.04 installed manually

CreepycCrafter24 said:
I just updated all packages on my side and "ubuntu" still shows up as a valid distro in proot-distro. I am confused. I guess you should try manually running the commands in the setup script and replacing the distro name
Click to expand...
Click to collapse
AFAFontes said:
$ proot-distro list
Supported distributions:
* Alpine Linux 3.12.0
Alias: alpine
Status: NOT installed
* Arch Linux
Alias: archlinux
Status: NOT installed
* Kali Nethunter
Alias: nethunter
Status: NOT installed
Comment: Minimal version, most of utilities should be installed manually.
* Ubuntu 18.04
Alias: ubuntu-18.04
Status: NOT installed
* Ubuntu 20.04
Alias: ubuntu-20.04
Status: installed
Note: ubuntu-20.04 installed manually
Click to expand...
Click to collapse
Am I doing it right?

Truant_Luce said:
Am I doing it right?
Click to expand...
Click to collapse
Yes you have the distro installed already but if you want to use automatic setup you need to wait for the script to be updated or edit yourself because path and login are still wrong.

I changed the install script to reference ubuntu-20.04. You might need to run "proot-distro remove ubuntu-20.04" if you still have the proot from a failed install. Other than that it should now work.

CreepycCrafter24 said:
I changed the install script to reference ubuntu-20.04. You might need to run "proot remove-distro ubuntu-20.04" if you still have the proot from a failed install. Other than that it should now work.
Click to expand...
Click to collapse
Its proot-distro remove ubuntu-20.04 btw

CreepycCrafter24 said:
I changed the install script to reference ubuntu-20.04. You might need to run "proot-distro remove ubuntu-20.04" if you still have the proot from a failed install. Other than that it should now work.
Click to expand...
Click to collapse
Thought I'd share a screenie that I feel is most relevant. I did uninstall the old one and try again, to meet this end. Still unsuccessful.

Truant_Luce said:
Thought I'd share a screenie that I feel is most relevant. I did uninstall the old one and try again, to meet this end. Still unsuccessful.
Click to expand...
Click to collapse
I have added git to the required packages. You can try the install script again. Also note that the command "smalipatcher" won't work because the home directory is not in PATH so you will need to run "./smalipatcher" instead.

Is it possible to implement android 11 signature spoofing patch?
https://github.com/microg/android_packages_apps_GmsCore/pull/1222/files

kurtn said:
Is it possible to implement android 11 signature spoofing patch?
https://github.com/microg/android_packages_apps_GmsCore/pull/1222/files
Click to expand...
Click to collapse
This might be possible but currently I don't have the time to try to implement this. If you need it right now you can try to implement the patch yourself.
Otherwise I will look into it in the coming days

Another problem is that the downloaded ubuntu doesn't come with the build tools for building vdexExtractor (done in setup2.sh)
so you might need to additionally run ./smalipatcher-shell and run "apt install glibc-utils zlib1g-dev" inside it.
Tested on freshly installed treble havocOS with magisk.
Don't forget to give termux permissions for storage!
@CreepycCrafter24 might add those to the script.

CreepycCrafter24 said:
I have added git to the required packages. You can try the install script again. Also note that the command "smalipatcher" won't work because the home directory is not in PATH so you will need to run "./smalipatcher" instead.
Click to expand...
Click to collapse
I feel like I'm stress testing your patience for noobs. Lol. Linux isn't fully my forte, but I understand a little. I am learning. I appreciate your willingness in making this project.
New screenies for you.
Edit: I will say I somehow assume this is partly on my end, with just my phone I assume. But thought I'd share.

Related

[AOSP] sepolicy patch for Marshmallow ROMs

After a bit of tinkering and some insight from Chainfire and imoseyon i was finally able to get SuperSU working on AOSP roms without being permissive or having to use Chainfire's prebuilt sepolicy
sepolicy patch is here: https://github.com/PureNexusProject...mmit/0f5072de4580a5db7348917e77e4c1c35d3e3c1a
Stickied.
sorry to be that guy, but how does this affect the average joe?
does it mean theres going to be a new version of supersu with this or does this mean that custom rom makers can use this patch to make there roms not need the the custom boot.img?
WarningHPB said:
sorry to be that guy, but how does this affect the average joe?
Click to expand...
Click to collapse
It doesn't, this is for ROM devs only, they know what to do with this.
Chainfire said:
It doesn't, this is for ROM devs only, they know what to do with this.
Click to expand...
Click to collapse
Welcome back! Hope you had a good break.
Chainfire said:
Stickied.
Click to expand...
Click to collapse
Thanks after including this in my AOSP builds i have noticed a few things, certain "root" app still dont function and get selinux denials. i originally had noticed this with logcat extreme. i was getting read and write denials on logd so i did an audit2allow on my sepolicy and came up with the following allow
Code:
#============= logd ==============
allow logd init:fifo_file { read write };
i did a quick google search on this and came up with https://gist.github.com/poliva/fc5b7402bde74be27518 which is apparently an sediff of your sepolicy, which is heavily modified beyond just what i had for supersu to work in enforcing for aosp roms. so i guess my real question is do us "AOSP" devs have to update our sepolicys with these 300+ additions to get all current root apps working or is this something that you can overcome in an update to SuperSU.
thanks in advance :good:
BeansTown106 said:
Thanks after including this in my AOSP builds i have noticed a few things, certain "root" app still dont function and get selinux denials. i originally had noticed this with logcat extreme. i was getting read and write denials on logd so i did an audit2allow on my sepolicy and came up with the following allow
Code:
#============= logd ==============
allow logd init:fifo_file { read write };
i did a quick google search on this and came up with https://gist.github.com/poliva/fc5b7402bde74be27518 which is apparently an sediff of your sepolicy, which is heavily modified beyond just what i had for supersu to work in enforcing for aosp roms. so i guess my real question is do us "AOSP" devs have to update our sepolicys with these 300+ additions to get all current root apps working or is this something that you can overcome in an update to SuperSU.
thanks in advance :good:
Click to expand...
Click to collapse
There is no such thing now as "all current root apps working".
If SuperSU's deamon can be launched, and it can in turn launch the supolicy tool, most of the rules from the diff will be modified by SuperSU as needed.
What your patch needs to do (and you have already done) is make sure SuperSU can be launched in the right context, and can modify the sepolicy. You do not need to implement those 300+ additions - it will be done at boot automagically.
As for those additions themselves, they are primarily needed to:
- make sure SuperSU can work, internal communications between the different processes and such
- make processes running as the "init" context (where root apps run by default) as powerful as possible
- specifically "allow" a number of things that would otherwise still work, but would be logged (everything that starts with "allow init" or "allow recovery")
Now, even with the above, still not everything works out of the box. Everything that goes from "init" to "non-init" context should already work, but going from "non-init" context to "init" may not. In your example case, we go from "logd" to "init", which isn't specifically allowed. Often apps can be fixed to work around an issue such as this.
Generally speaking, the solution is not to fix the source sepolicy or the supolicy tool, the solution is for the "logcat extreme" app to run the following at launch (as documented in How-To SU):
Code:
supolicy --live "allow logd init fifo_file { read write }"
In this specific case, maybe it could be added to supolicy, it depends on what exactly generates the audit. If it's a simple logcat command, it's a candidate for inclusion. The problem might even be solved by switching contexts rather than modifying any SELinux policies. But that is something for the app developer to figure out.
In either case, it is not something you need to fix in the AOSP patches. Those already do what they need to do.
Since they started doing SELinux Enforcing though, the policies in AOSP have generally been a tad stricter than on retail devices (this was specifically the case during 4.4 days). This may lead to you sometimes having to add/remove a rule manually somewhere that was not added to SuperSU yet. It could happen, but it's unlikely, probably temporary, and it probably should not go into this AOSP patch.
A note on pof's sediff, I'm not sure it was done cleanly, as I see some modifications in there that are not done by supolicy. Either way, such a post is informative, not leading, as supolicy may do more or less modifications depending on various runtime variables (such as Android version). Additionally, due to context names and availabilities changing between Android versions, any rule modification referencing a context not available in the to-be-patched sepolicy will not be applied, and thus will not show up in an sediff.
@BeansTown106
Have you checked by any chance if this patch is enough to allow 2.61 (systemless) to work still ?
Chainfire said:
@BeansTown106
Have you checked by any chance if this patch is enough to allow 2.61 (systemless) to work still ?
Click to expand...
Click to collapse
thanks for the description above now i understand. have never developed a root app so i had not read that part of how to su, but it makes perfect sense that the root apps would handle the denials live via your supolicy
as for system less root i have not tried that yet but i will give it a shot tonight, and report back, i know some people in my ROM thread have used system less root. but i am not sure if you had packaged your sepolicy in the install script for 2.61+ and if it is overwriting mine in the kernel, if that is the case i will modify the installation to not patch the sepolicy and see if it works with my pre compiled one based on the source above
Starting 2.64, I think this addition to init.te is all that is needed:
Code:
allow init kernel:security load_policy;
Confirmation needed though. The original patch will also work with 2.64, and the ZIP installer should default to /system installation mode.
Of course, this also requires that /system isn't verified by dm-verity, and init reloads sepolicy from the standard /data/security/current location.
the link in OP its no longer working...
Also in CM13 tree we have:
Code:
# Reload policy upon setprop selinux.reload_policy 1.
# Note: this requires the following allow rule
# allow init kernel:security load_policy;
and over my builds have no problem with SuperSU system less...
Chainfire said:
Starting 2.64, I think this addition to init.te is all that is needed:
Code:
allow init kernel:security load_policy;
Confirmation needed though. The original patch will also work with 2.64, and the ZIP installer should default to /system installation mode.
Of course, this also requires that /system isn't verified by dm-verity, and init reloads sepolicy from the standard /data/security/current location.
Click to expand...
Click to collapse
will build and test with only load policy enabled, is this for system, and systemless root?
danieldmm said:
the link in OP its no longer working...
Also in CM13 tree we have:
Code:
# Reload policy upon setprop selinux.reload_policy 1.
# Note: this requires the following allow rule
# allow init kernel:security load_policy;
and over my builds have no problem with SuperSU system less...
Click to expand...
Click to collapse
updated link, so your saying systemless supersu works with no selinux modifications?
BeansTown106 said:
updated link, so your saying systemless supersu works with no selinux modifications?
Click to expand...
Click to collapse
Over my builds yes, no issues at all in cm13, although my kernel it's in permissive mode. Maybe it's why it works all good?
Enviado do meu A0001 através de Tapatalk
danieldmm said:
Over my builds yes, no issues at all in cm13, although my kernel it's in permissive mode. Maybe it's why it works all good?
Enviado do meu A0001 através de Tapatalk
Click to expand...
Click to collapse
that is why, these patchs are to allow you to run in enforcing
I dont know if a should post here this question: there is any way to fix this problem with the rom already installed?
Thanks
Garzla said:
I dont know if a should post here this question: there is any way to fix this problem with the rom already installed?
Thanks
Click to expand...
Click to collapse
Try the following. It works for me when needed...
http://forum.xda-developers.com/showthread.php?t=3574688
Thank you for your work!
Link in OP its no longer working...
Is there any actual guide how to add SU directly to AOSP build. I have found bits and pieces but those are mainly 4.x releases.
I'm using Android M release and quite much struggling to get it working.
I have tried to make SU default on AOSP 6.0 by using this guide.
http://forum.khadas.com/t/gapps-and-su-on-soc/118/3
I'm using user build and enabled selinux permissive on that.
i have made also ro.secure=0 ro.debuggable=1 and security.perf_harden=0 (Not sure if needed)
I have also modified to change the su permissions in fs_config.c
I managed to get this work so that when flashing rom SuperSu ask for updating su binary and after that su works.
but i then cleaned work area to verify build by deleting out dir and recompiled. No go anymore.
Why it's so hard to add su by default on AOSP rom. I woud like to have it by default so i would not need to do any tricks everytime i flash new rom.
It reminds me of Korean dramas ,

Kali NetHunter for the Galaxy S5 (3.1.0)

Welcome to the thread on Kali NetHunter for the Samsung Galaxy S5.
If you don't know what Kali NetHunter is, well, it's the entire Kali Linux operating system in a chroot on your phone, plus a bunch of awesome apps for executing exploits, fixing things, doing cool things. It goes on, I suppose.
I'm gonna be honest guys, I'm not a security person. When it comes to security, I'm more of a Paul Blart.
What I do know though, is that there is apt-get, and apt-get is life.
Find much more information here: https://github.com/offensive-security/kali-nethunter/wiki
The answer to all your questions, generally the answer is YES, IT CAN DO THAT.
The installer zip will add a few files (including busybox) to your /system partition, and install all of the NetHunter apps to your /data partition.
The chroot is located in /data/local, so you don't have to worry about your system partition being full. It's full read/write capable.
Understand that the zip will replace your current kernel with a completely different one.
This is necessary because most stock or custom kernels don't provide the drivers needed to operate most of Kali NetHunter's features.
These Kali NetHunter builds are designed and tested for TouchWiz 5.1, 6.0 & CyanogenMod 13.0.
DOWNLOAD
Current version: 3.1.0 (release, 2016-04-29)
Please be careful to download the right version for your device variant and ROM.
CyanogenMod 12.1 or any Android 5.x based AOSP ROM: lollipop
CyanogenMod 13.0 or any Android 6.x based AOSP ROM: marshmallow
TouchWiz 5.1: touchwiz-lollipop
TouchWiz 6.0: touchwiz-marshmallow
Download here: https://idlekernel.com/nethunter/nightly
Your device is: klte
Recommended install method: Use TWRP 3 for klte
Install kernel-nethunter-klte and nethunter-generic-armhf-kalifs-full-rolling zips in any order.
Kernel only installers are in the kernel-only directory inside each build directory. It might be a better idea to try and install that first and see if you can boot before flashing the entire NetHunter.
You can actually only install the kernel if you want to take advantage of its features without having to install the rest of NetHunter!
BEFORE INSTALLING
Do not flash the NetHunter update zip with a fresh data partition!
Most ROMs will wipe it clean on the first boot if you haven't completed the Android Setup Wizard yet, there's no need to wipe your ROM or data to try it out. I do advise backing up your data partition before flashing the zip though.
(this should no longer be possible now with added installation checks)
Please make sure your phone boots fine and runs fine before flashing NetHunter. It's confusing when people report bugs that exist in CyanogenMod by itself.
The Kali chroot and apps are installed on your data partition (in /data/local for chroot). To initialize the chroot and install Kali Linux, you need to start the Kali NetHunter app.
The NetHunter installer will automatically install SuperSU in system mode, which I consider to be more stable. Since NetHunter already modifies your system partition, there is no need to use systemless SuperSU anyways.
FULL INSTALL STEPS
Boot into TWRP
Flash kernel-nethunter-klte and nethunter-generic-armhf-kalifs-full-rolling zips in any order.
Reboot into device
Open the NetHunter app
Let the NetHunter app finish setting everything up
You're done!
UPDATING TO A NEWER BUILD
Going from 3.0.0 and up, all you have to do is flash the new build in recovery. On some ROMs you may need to wipe dalvik cache.
UPDATING YOUR ROM
To get all your NetHunter and SuperSU functions back after flashing a new ROM, just flash the new ~60 MB update-nethunter-klte zip in TWRP.
RUNNING WIFI PENETRATION TESTS
The internal WiFi chipset of the Galaxy S5 is not capable of running services which use monitor mode such as Wifite. For this, you will need to use a monitor mode capable WiFi adapter through a microUSB OTG adapter.
As for compatible adapters, I highly recommend the Alfa Networks AWUS036NEH (eBay) which uses the Ralink RT3070 chipset. There are currently no monitor mode supported Wireless-AC adapters available.
Once plugged in, you can run the command from Kali terminal to turn on your adapter:
[email protected]:~# ip link set wlan1 up
RAN INTO AN ISSUE OR BUG?
In order for me to help you, you have to at minimum reply with:
The link to the exact zip you downloaded
Your device model (it better be klte)
The name of the ROM you're flashing it on
The version and build date of the ROM you're flashing it on
A complete description of your problem
Optional: An audio recording of you reading this entire post
If your issue is with a specific app, it might be better to contact the developer of that app.
If your issue is during the installation (ex. flashing the NetHunter zip), then please collect a TWRP recovery.log for me.
If you found a problem and were able to fix it, and no one's mentioned it in the thread already, it would be kind to state the issue and your fix for others to make use of as well.
You can join me and the other NetHunter developers on IRC at the #nethunter room on freenode to more handily diagnose problems together.
I apologize, but I can't do house calls at this time.
KNOWN ISSUES
USB Keyboard & VNC - Google Keyboard, AOSP Keyboard, CM Keyboard do not work due to a depth bug, use Hacker's Keyboard as a workaround.
Terminal App - Full screen programs like nano or vi are unusable unless you use the resize command. (always type resize when opening a new terminal window)
THE KERNEL
The NetHunter kernel for the Samsung Galaxy S5 is based on nVidia's rel-24-sb-r1-1 kernel sources.
It has the following changes:
F2FS added using Jaeguek Kim's latest kernel.org:f2fs-stable sources (available on system/data/cache!)
UKSM - Ultra Kernel Same-page Merging support
Cortex-A15 & Neon-VFPv4 + -O2 compiler optimizations
NEON-asm kernel & sha/aes support
Compiled with Linaro's branch of GCC 4.9.4
Updated and enabled USB (OTG) Atheros, Ralink, and Realtek WiFi drivers
Simple IO (SIO) scheduler as default IO scheduler (updated for modern kernels)
USB HID Gadget keyboard support
mac80211 packet injection support
TCP congestion control updates and fixes
Westwood or Cubic (default)
DriveDroid compatibility
Some small security fixes (pipe, keyring, etc)
Additional drivers built in for the full Kali NetHunter experience
SCREENSHOTS
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
DEVELOPMENT
For the kernel included in NetHunter for the Samsung Galaxy S5, you can find the sources here: https://github.com/jcadduono/nethunter_kernel_klte
See the Kali NetHunter installer source here: https://github.com/offensive-security/kali-nethunter
See the Kali NetHunter app source here: https://github.com/offensive-security/nethunter-app
DISCLAIMER
I am not affiliated with Offensive Security. They seem like cool guys though.
I'm not even a novice when it comes to security and penetration. I'm just a simple system administrator with a passion for breaking Android.
Please restrain yourselves from asking me security related questions.
NOT SO MUCH AS SEEN ON MR. ROBOT, BUT PROBABLY EVEN BETTER
XDA:DevDB Information
Kali NetHunter for the Galaxy S5, Device Specific App for the Samsung Galaxy S 5
Contributors
jcadduono, The Kali NetHunter team
Source Code: https://github.com/jcadduono/kali-nethunter
Version Information
Status: Stable
Current Stable Version: 3.1.0
Stable Release Date: 2016-04-29
Created 2016-01-22
Last Updated 2016-04-29
Just want to be the first to say thank you for this. I have nethunter on my grouper and love it. Now I can have it on my S5.
Quick question before I start, I'm currently running VRToxin 6.0.1 with a modified version of their kernel. What is the best method if installing this?
Shot from my Fusion-KToonsz-Powered SMG-900P
Hey guys, had a mod close the previous thread so I could add it to DevDB and clean up the posts from when the kernel was broken.
The~Skater~187 said:
Just want to be the first to say thank you for this. I have nethunter on my grouper and love it. Now I can have it on my S5.
Quick question before I start, I'm currently running VRToxin 6.0.1 with a modified version of their kernel. What is the best method if installing this?
Shot from my Fusion-KToonsz-Powered SMG-900P
Click to expand...
Click to collapse
Okay, in that case (assuming you want to keep that kernel), then you just need to:
Do a full unroot of SuperSu or whatever root method you are currently using
Install any generic-armhf package from the NetHunter nightly downloads
Wipe dalvik-cache
Boot up
This will modify and install everything except your kernel zImage.
You will not be able to use OTG WiFi, Wifite, HID keyboard attacks unless your current kernel supported them. It will pretty much just be a chroot.
Alternatively, you can:
Do a full unroot of SuperSu or whatever root method you are currently using
Install the kltespr-marshmallow package which is for AOSP based Marshmallow from the NetHunter nightly downloads
Wipe dalvik-cache
Boot up
This will also replace your kernel zImage, you will have full NetHunter features - but you will lose additional features of your current kernel.
@crazyraiga: your logs show that system is mounted read-only, everything will fail in such a case. I'll add a check to the installer and refuse install in that case!
Update: 20160122-1305 build now checks if it can write to /system and /data before running the installer.
OK. First I've installed kernel-only and everything was fine. Then I installed update zip for TouchWiz and stuck on boot animation. Then I reflashed my ROM and found all NetHunter apps installed already. So I flashed kernel-only again and now when trying to install chroot geting following:
Code:
CreateChroot >> Error:
java.lang.RuntimeException
java.lang.RuntimeException
Is it possible to fix?
My device: klte
ROM: Revolution S5 v5.3
UPDATE
I've just flashed full chroot zip and everything seems OK. But kali mode in terminal not working: terminal just makes toast '1)No title' and crashes.
jcadduono said:
Hey guys, had a mod close the previous thread so I could add it to DevDB and clean up the posts from when the kernel was broken.
Okay, in that case (assuming you want to keep that kernel), then you just need to:
Do a full unroot of SuperSu or whatever root method you are currently using
Install any generic-armhf package from the NetHunter nightly downloads
Wipe dalvik-cache
Boot up
This will modify and install everything except your kernel zImage.
You will not be able to use OTG WiFi, Wifite, HID keyboard attacks unless your current kernel supported them. It will pretty much just be a chroot.
Alternatively, you can:
Do a full unroot of SuperSu or whatever root method you are currently using
Install the kltespr-marshmallow package which is for AOSP based Marshmallow from the NetHunter nightly downloads
Wipe dalvik-cache
Boot up
This will also replace your kernel zImage, you will have full NetHunter features - but you will lose additional features of your current kernel.
@crazyraiga: your logs show that system is mounted read-only, everything will fail in such a case. I'll add a check to the installer and refuse install in that case!
Update: 20160122-1305 build now checks if it can write to /system and /data before running the installer.
Click to expand...
Click to collapse
So I don't need the kltespr-marshmallow-update.zip?
Shot from my Fusion-KToonsz-Powered SMG-900P
The~Skater~187 said:
So I don't need the kltespr-marshmallow-update.zip?
Shot from my Fusion-KToonsz-Powered SMG-900P
Click to expand...
Click to collapse
If you don't want USB OTG WiFi or HID keyboard gadget support or want to keep your current kernel, then no you don't need that.
Generic-armhf installer will work on ANY armv7 device, not just S5. I put a lot of work into all this.
Experiencing internal memory drain: memory dissapears in seconds.
vykintazo said:
Experiencing internal memory drain: memory dissapears in seconds.
Click to expand...
Click to collapse
need more info this is really generic or misleading please read the OP
i tried it earlier and it works on cm13 no dualbooting. too bad i dont have external wifi adpter. gonna buy soon. i first installed kernel, then update marsmallow, then chroot full. have not gone through all of the apps.
one thing though i cant screenshot thru home and power buttons. i dont know if cm13 related or kali.
great man was waiting for this a long time. can i install it on bless rom 6.0?
Hayatzada said:
great man was waiting for this a long time. can i install it on bless rom 6.0?
Click to expand...
Click to collapse
It should work on any ROM that is AOSP / Slim / CyanogenMod based. Basically as long as it isn't TouchWiz it *should* work. I don't know what bless rom is.
jcadduono said:
It should work on any ROM that is AOSP / Slim / CyanogenMod based. Basically as long as it isn't TouchWiz it *should* work. I don't know what bless rom is.
Click to expand...
Click to collapse
thanks for your reply, spell mistake Bliss Rom 6.0 most customize-able rom ever , installed your build on it but some issues.
i already installed kali nethunter on my nexus 5 and was running it fine also cracked a wifi password successfully (WITH TP-LINK TL-WN722N)
but now on Galaxy S5 G900T in Bliss Rom 6.x installed your build with kernel you mentioned in your OP but can't open Nethunter Terminal (terminal Emulator is running fine) also tried to start/launch Wifite in custom commands but a tiny Terminal screen opens and show me " 1) No title. "
Please will you guide me how to run and activate external usb wifi adapter (TP-LINK TL-WN722N).
Thanks.:good:
Hayatzada said:
thanks for your reply, spell mistake Bliss Rom 6.0, installed your build on it but some issues.
i already installed kali nethunter on my nexus 5 and was running it fine also cracked a wifi password successfully (WITH TP-LINK TL-WN722N)
but now on Galaxy S5 G900T in Bliss Rom 6.x installed your build with kernel you mentioned in your OP but can't open Nethunter Terminal (terminal Emulator is running fine) also tried to start/launch Wifite in custom commands but a tiny Terminal screen opens and show me " 1) No title. "
Please will you guide me how to run and activate external usb wifi adapter (TP-LINK TL-WN722N).
Thanks.:good:
Click to expand...
Click to collapse
Did you go into the NetHunter app and download/install your chroot?
You can't do anything without the chroot installed lol.
If NetHunter app has issues downloading chroot, just install this zip which includes it instead:
https://idlekernel.com/nethunter/nightly/3.0.1-20160124-1518/chroot-full/
Keep in mind you need to run the NetHunter app after installing any chroot for it to set up the scripts and run properly.
If chroot is installed properly and terminal is still not opening, can you get me a logcat?
jcadduono said:
Did you go into the NetHunter app and download/install your chroot?
You can't do anything without the chroot installed lol.
If NetHunter app has issues downloading chroot, just install this zip which includes it instead:
https://idlekernel.com/nethunter/nightly/3.0.1-20160124-1518/chroot-full/
Keep in mind you need to run the NetHunter app after installing any chroot for it to set up the scripts and run properly.
If chroot is installed properly and terminal is still not opening, can you get me a logcat?
Click to expand...
Click to collapse
yes i installed chroot. screen attached,
now i uninstalled it and downloading again, already downloaded and installed it see in attachment (https://idlekernel.com/nethunter/nightly/3.0.1-20160124-1518/chroot-full) and let me tell you what happens, by the way will you please tell me how to get logcat?View attachment 3620973
Hayatzada said:
yes i installed chroot. screen attached,
now i uninstalled it and downloading again, already downloaded and installed it see in attachment (https://idlekernel.com/nethunter/nightly/3.0.1-20160124-1518/chroot-full) and let me tell you what happens, by the way will you please tell me how to get logcat?View attachment 3620973
Click to expand...
Click to collapse
su
logcat > /sdcard/logcat.log
run thing thats troubling you
ctrl+c @ terminal to stop logging
thats how i usually logcat things, you can do it through adb shell or terminal emulator.
also, what happens when u go into terminal emulator and type:
su -c bootkali
!!!!!!!!!!!!! Your screenshot says rolling chroot!!!!!!!!!!!! that is for testing only and it is currently broken!!
please use the link i provided https://idlekernel.com/nethunter/nightly/3.0.1-20160124-1518/chroot-full/
jcadduono said:
su
logcat > /sdcard/logcat.log
run thing thats troubling you
ctrl+c @ terminal to stop logging
thats how i usually logcat things, you can do it through adb shell or terminal emulator.
also, what happens when u go into terminal emulator and type:
su -c bootkali
!!!!!!!!!!!!! Your screenshot says rolling chroot!!!!!!!!!!!! that is for testing only and it is currently broken!!
please use the link i provided https://idlekernel.com/nethunter/nightly/3.0.1-20160124-1518/chroot-full/
Click to expand...
Click to collapse
i uninstalled/removed and then download again in kali chroot manager, after download and installation it is running fine also nethunter terminal is running fine, wifite is working now. thanks for your kind attention.:highfive:
vykintazo said:
UPDATE
I've just flashed full chroot zip and everything seems OK. But kali mode in terminal not working: terminal just makes toast '1)No title' and crashes.
Click to expand...
Click to collapse
try to install full chroot. then open the nethunter app it will locate and update the chroot. this will fix '1)No title'.
jcadduono said:
@crazyraiga: your logs show that system is mounted read-only, everything will fail in such a case. I'll add a check to the installer and refuse install in that case!
Update: 20160122-1305 build now checks if it can write to /system and /data before running the installer.
Click to expand...
Click to collapse
I guess it doesn't work with dual boot patcher. I can't boot on lollipop touchwiz though. I will try it again this weekend if I have enough time.
Hayatzada said:
great man was waiting for this a long time. can i install it on bless rom 6.0?
Click to expand...
Click to collapse
I think this will work on your rom if your it is cm based or aosp as the what the title says.\
UPDATE:
off topic what external usb wifi adapter can you recommend for nethunter? I want something small enough to be portable.
crazyraiga said:
UPDATE:
off topic what external usb wifi adapter can you recommend for nethunter? I want something small enough to be portable.
Click to expand...
Click to collapse
TP-Link TL-WN722N is what most people use because it doesn't pull excessive power from OTG.
I think the S5 can probably handle ALFA AWUS036NEH though, which provides the best wireless connectivity / speed of all the supported devices.
If you need 5 GHz band, check out AWUS051NH. About the same range as WN722N, faster, about the same power usage, but not nearly as portable.
I have a AWUS036H, from first steps with Backtrack, works also fine with the S5.
Wow, just came across this thread today. Very happy to see this come to the S5! I bought a nexus 5 for the soul purpose of being able to run nethunter, now I can finally stop carrying my "extra" phone around. Can't wait to try this out with my pineapple.

[MOD]: Sqlite3 (v3.8.11.1) binary.

Hello everyone
Well... Not much to say.
I've made that very simple module for my personal use and just sharing it with the community in case anyone needs it.
What it does it really simple.
It installs (or replaces) sqlite3 binary in /system/bin to be used by any app or from terminal.
It's for ARM7 only.
Have fun
Credits: @topjohnwu for the template and @tech128 for the binary used.
Thank you for your effort... Do you have binary of sqlite of 64bit?
lssong99 said:
Thank you for your effort... Do you have binary of sqlite of 64bit?
Click to expand...
Click to collapse
I'm currently on G5 which is 64bit and binary works just fine.
Yes, it will work. However my situation is a bit complex that I call sqlite from Tasker and there is a bug in Tasker's that Tasker will invoke 64 bit libraries and throw error even if sqlite is 32 bit.
There is a work around but a bit complex so I am searching for 64 bit binary...
Sorry but what is SQLite
kwanthenewbie said:
Sorry but what i SQLite
Click to expand...
Click to collapse
You don't need it probably xD
It's the "program" to manipulate sqlite databases.
lssong99 said:
Yes, it will work. However my situation is a bit complex that I call sqlite from Tasker and there is a bug in Tasker's that Tasker will invoke 64 bit libraries and throw error even if sqlite is 32 bit.
There is a work around but a bit complex so I am searching for 64 bit binary...
Click to expand...
Click to collapse
https://github.com/stockrt/sqlite3-android
Build one by yourself. I guess you need arm64-v8a ?
DenyDarko said:
I'm currently on G5 which is 64bit and binary works just fine.
Click to expand...
Click to collapse
DenyDarko said:
https://github.com/stockrt/sqlite3-android
Build one by yourself. I guess you need arm64-v8a ?
Click to expand...
Click to collapse
Haha! Thanks.... Actually I had been trying very hard to resist the urge to build one myself (too lazy....). Maybe I should starting setup the tool train now....
Anyway thanks!
lssong99 said:
Haha! Thanks.... Actually I had been trying very hard to resist the urge to build one myself (too lazy....). Maybe I should starting setup the tool train now....
Anyway thanks!
Click to expand...
Click to collapse
It's not that hard and it's fun. Plus this git contains a customised sqlite for android.
It's not like building a kernel or smth. Give it a try xD
Hi @DenyDarko,
Please, can you update your module? It doesn't install with last version of Magisk. Futhermore, it will be interesting to include all binaries: sqlite3.arm; sqlite3.arm64; sqlite3.x64; etc. and add a symlink for the run architecture to "sqlite3". And last, publish it in the official repository.
Thank you!
manos78 said:
Hi @DenyDarko,
Please, can you update your module? It doesn't install with last version of Magisk. Futhermore, it will be interesting to include all binaries: sqlite3.arm; sqlite3.arm64; sqlite3.x64; etc. and add a symlink for the run architecture to "sqlite3". And last, publish it in the official repository.
Thank you!
Click to expand...
Click to collapse
@ianmacd added an updated version to the official repo already
DenyDarko said:
@ianmacd added an updated version to the official repo already
Click to expand...
Click to collapse
Ha. I didn't know there was already an SQLite module. I checked the official Magisk repo and didn't find one, so I made one for my own use and submitted it so that others could hopefully benefit from the work.
ianmacd said:
Ha. I didn't know there was already an SQLite module. I checked the official Magisk repo and didn't find one, so I made one for my own use and submitted it so that others could hopefully benefit from the work.
Click to expand...
Click to collapse
I even use yours now myself xD
@DenyDarko
Can you somehow check if this sqlite3 works ?
ianmacd said:
Ha. I didn't know there was already an SQLite module. I checked the official Magisk repo and didn't find one, so I made one for my own use and submitted it so that others could hopefully benefit from the work.
Click to expand...
Click to collapse
Hi @ianmacd,
I installed your Magisk module. However, I found a trouble: when enabling your module, the SafetyNet check never completes or indicates "the response is invalid".
So, please verify or review your module. Only disabling it the SafetyNet continues working well.
Or almost, put this info in the description, because your module is now in the official repository.
Regards.
manos78 said:
Hi @ianmacd,
I installed your Magisk module. However, I found a trouble: when enabling your module, the SafetyNet check never completes or indicates "the response is invalid".
So, please verify or review your module. Only disabling it the SafetyNet continues working well.
Or almost, put this info in the description, because your module is now in the official repository.
Regards.
Click to expand...
Click to collapse
The issue might be that the module mounts the binary to /system/xbin, and that your device doesn't have a xbin folder by default. This has been known to cause issues, and seem to be even more prevalent on recent Magisk releases. Try changing the modules xbin folder to bin and reboot, to see if it makes any difference.
@ianmacd It's a good idea to look for the existence of xbin at installation and use bin instead if it doesn't exist.
Didgeridoohan said:
The issue might be that the module mounts the binary to /system/xbin, and that your device doesn't have a xbin folder by default. This has been known to cause issues, and seem to be even more prevalent on recent Magisk releases. Try changing the modules xbin folder to bin and reboot, to see if it makes any difference.
@ianmacd It's a good idea to look for the existence of xbin at installation and use bin instead if it doesn't exist.
Click to expand...
Click to collapse
Thanks for the tip, @Didgeridoohan.
I'll have to read up on the Magisk installation environment to ensure that I write the logic in a sane way. By that, I mean, for example, that I'm unsure whether I can just check for [ -d /system/xbin ], or whether I might get a false positive if some other module has erroneously faked the existence of this directory.
ianmacd said:
Thanks for the tip, @Didgeridoohan.
I'll have to read up on the Magisk installation environment to ensure that I write the logic in a sane way. By that, I mean, for example, that I'm unsure whether I can just check for [ -d /system/xbin ], or whether I might get a false positive if some other module has erroneously faked the existence of this directory.
Click to expand...
Click to collapse
Good point... Check for /sbin/.core/mirror/system/xbin. That's the untouched /system mirror.
ianmacd said:
Thanks for the tip, @Didgeridoohan.
I'll have to read up on the Magisk installation environment to ensure that I write the logic in a sane way. By that, I mean, for example, that I'm unsure whether I can just check for [ -d /system/xbin ], or whether I might get a false positive if some other module has erroneously faked the existence of this directory.
Click to expand...
Click to collapse
Alternately you can just use bin and forget about xbin. There's really no technical reason to use xbin unless you're installing alternate forms of existing commands.
jcmm11 said:
Alternately you can just use bin and forget about xbin. There's really no technical reason to use xbin unless you're installing alternate forms of existing commands.
Click to expand...
Click to collapse
That's actually also been known to cause issues on some systems. While investigating issues like this, a while back, I believe it was found that it was most compatible to use xbin if it exists and bin if it doesn't.

[TOOL][ROM] UpdateEngine UI -- Flash Android O beta without wiping data

I highly recommend @JamFlux's work instead. Currently, this has got way more complicated than it should be (in the past 24 hours, only 40% users have managed to accurately follow the procedure, and even less for the latest beta). However, I will continue working on this project in order to make it compatible across more devices. The app is now open-source and you can visit the GitHub repo here. Thanks for using UpdateEngine Interface and I hope to see you folks again soon.
I've created the UpdateEngine Interface, a tool to install OTAs that haven't been assigned to your device. It talks to Android's update_engine binary to flash the block-based updates just the way the original updater does, ensuring that your data is preserved and your system partition's signature doesn't change.
TLDR: It allows you to install Oreo without using someone else's TWRP backup or losing data.
Now has the latest build (20th December)
Installation:
Install Magisk
Install the attached Magisk module (named UpdateEngine_1.2.zip) and reboot
Open the newly installed UpdateEngine app and press start
Wait for the installation to complete and restart your device to boot into Android O
If you wish to update to the latest beta, use Magisk to install UpdateEngine_1.3.zip afterwards
Note: If you're a FlashFire user, please uninstall it and reboot before continuing.
Note #2: You must install Oreo via v1.2 before installing the latest beta (via v1.3).
XDA:DevDB Information
UpdateEngine User Interface, Device Specific App for the Xiaomi Mi A1
Contributors
ur0
Version Information
Status: Stable
Current Stable Version: 1.1
Created 2017-12-19
Last Updated 2017-12-19
Does it need a virgin /system?
I love you! thats what we need.
konradit said:
Does it need a virgin /system?
Click to expand...
Click to collapse
Yeah. It requires that the system hasn't been modified since the December OTA (just like the original updater) since the updates are applied block-by-block.
Which beta does it have currently? THE first one or newer?
jazzthe#1 said:
Which beta does it have currently? THE first one or newer?
Click to expand...
Click to collapse
I only have the first build, since that's the only one that people captured (I'm not in the beta, so I can't get the newer ones myself).
Okay
@ur0 wow, thats awesome, thank you bro)
This looks interesting, although I'm waiting for Xposed Oreo. A question though, I've heard the leaked Oreo build is rooted, does this method install untouched boot.img?
@Filip013 yes, this installs the untouched boot.img.
@rostifaner and @TerQQ, You're welcome!
so this tool can install android O ota beta without twrp ? and without losing data ? and how to install this tool ? sorry for many question .
is possible to add feature "choose ota file from device" or something similar ?
TerQQ said:
is possible to add feature "choose ota file from device" or something similar ?
Click to expand...
Click to collapse
I'm looking into adding this -- the only problem is that it also requires a bit of metadata (which is inconvenient to type manually). I'll look into defining a format which the app can read directly.
It doesn't seem to be working for me. When I press Start, it opens FlashFire app & nothing happens. Even if I come back to this app, there will two buttons Pause & Stop, but nothing will be happening. Also can you please make it open source?
ghpranav said:
It doesn't seem to be working for me. When I press Start, it opens FlashFire app & nothing happens. Even if I come back to this app, there will two buttons Pause & Stop, but nothing will be happening. Also can you please make it open source?
Click to expand...
Click to collapse
That's weird -- can you please post the logcat outputs after this happens (maybe after restarting and trying again)?
I'm sure that it's something with flashfire since the app doesn't use it or depend on it.
I'm definitely going to open-source this after I fix a few hacks I made to get the initial version working.
Any chance of posting your work to github? would be interesting to see the source if possible
How to install?
How to install magisk and update engine. Will we have to root and flash these file from TWRP? Please give the tutorial in detail.
for me its working great.
I don't understand what purpose this tool serves. You're saying that using this we can install the oreo update without someone's twrp bakup?
I keep getting a crash when i press start, then the app won't open again until I reboot and even then no download... am i missing something?
I have magisk 15.6 and i disabled all my other modules just in case...
EDIT:
12-19 11:32:16.564 3121-3267/? E/DatabaseUtils: Writing exception to parcel
java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/fs_id from pid=9022, uid=10111 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
at android.content.ContentProvider.enforceReadPermissionInner(ContentProvider.java:608)
at android.content.ContentProvider$Transport.enforceReadPermission(ContentProvider.java:483)
at android.content.ContentProvider$Transport.query(ContentProvider.java:212)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:112)
at android.os.Binder.execTransact(Binder.java:565)
I think you need to add the read/write premission to your app. not sure how its working for others
EDIT 2: Selinux is denying your app.. had to use a selinux disabler app to get it not to crash... might want to look into that..
EDIT 3: Not working... Nothing happens when i click start...

[TESTING] libhoudini for Android N ROMs (7.1.0a_y.49344 / 8.0.0_y.49374)

NOTE: This is only for Nougat (7.1) custom ROMs (such as Lineage 14.1 based)!
Make sure you do a proper nandroid backup before flashing!
I made a flashable zip for updating the libhoudini stuffs for Nougat (7.1) ROMs to 7.1.0a_y.49344. Not sure if this has been posted elsewhere before, though.
Before flashing, check your current libhoudini version by typing "houdini --version" either from adb shell or from terminal emulator. (UPDATE: Use the built-in Terminal as it doesn't work in Termux)
You should only try to flash this if your houdini version is below 7.1.0a_y.49344. Current custom ROMs usually have a houdini version of 7.1.0_y.48901 (DotOS 1.2 for example).
Flashable zip (It's about 34MB in size) (Dropbox link here)
The original source is from here, apparently taken from Nexus Player (fugu).
After flashing, "houdini --version" should report something like this:
Code:
[14902]
[14902] Houdini version: 7.1.0a_y.49344
[14902]
TESTING NEEDED: I'm not sure what this version of houdini might fix or break, so try this at your own risk. If you're currently not having problems with apps then there's no need to flash this. Compared with existing device files (7.1.0_y.48901, in /system/lib/arm/), several library files are changed, plus an additional "libgate.so" which I could identify it as being an ARM library file (so it'll also be placed in /system/lib/arm, although I'm not sure where it might be used).
EXPERIMENTAL (UNTESTED!): Here's another version in case someone might be interested. This build is 8.0.0_y.49374, and the version number literally means it's to be used for Oreo, so I'm not sure if it'll work on a 7.x ROM. The original source of this version is from Android-x86.
Flashable zip (Dropbox link here)
If the zip works, it should report the following version:
Code:
[19729]
[19729] Houdini version: 8.0.0_y.49374
[19729]
What is the use for this ?
PedroCaseiro said:
What is the use for this ?
Click to expand...
Click to collapse
It's just to put updated libhoudini libraries into the device, in hope that those updated stuffs might help with fixing some native libhoudini crashes on certain problematic ARM-only apps.
I had some ARM-only apps that always FC with native crashes (SIGSEGV) from libhoudini on Zenfone 2. Although the updated binaries unfortunately could not fix the problems entirely, at least the they work as intended as I haven't discovered anything broken by the updated stuffs yet.
However, this won't help if your app crash is due to the developer shipping an incomplete set of x86 native binaries (this can happen). You need to sideload it through adb and force it to use ARM abi, like this:
Code:
adb install --abi armeabi xxx.apk
Note that the abi name varies among apps, armeabi is just an example, it might be arm, or armeabi-v7a, depending on the app itself.
EDIT: Say, is there a way to report device incompatibilities to Play Store so I can explain the device's situation and let Play Store always ship the last known good version for our device? There seem to be some apps that previously worked, but not now due to updated native libraries that would cause native crashes on libhoudini (Play Store will still treat our device as compatible due to the device exposing the ARM abis thanks to libhoudini), and I often need to disable the app in question's auto-update to prevent Play Store updating it to the native-crashing version.
Running "houdini --version" in a terminal emulator results in:
"houdini: command not found"
for latest version of Groovy Android
deckinghalls said:
Running "houdini --version" in a terminal emulator results in:
"houdini: command not found"
for latest version of Groovy Android
Click to expand...
Click to collapse
Are you using Termux? It seems I'm getting the same result there as well, but houdini outputs just fine in the built-in Terminal as well as in the T-UI launcher.
And as for file lists:
In /system/bin there's the "houdini" binary.
Then there's "libhoudini.so" in /system/lib/ (this is the main library which is of i386 architecture).
And the rest of the files (ARM libraries) in /system/lib/arm/. These consist of the exact same set of files as the ones provided by the custom ROMs, plus an additional one (libgate.so).
LSS4181 said:
Are you using Termux? It seems I'm getting the same result there as well, but houdini outputs just fine in the built-in Terminal as well as in the T-UI launcher.
And as for file lists:
In /system/bin there's the "houdini" binary.
Then there's "libhoudini.so" in /system/lib/ (this is the main library which is of i386 architecture).
And the rest of the files (ARM libraries) in /system/lib/arm/. These consist of the exact same set of files as the ones provided by the custom ROMs, plus an additional one (libgate.so).
Click to expand...
Click to collapse
I am not sure what is meant by "the built-in Terminal" (I don't recall any ROM coming with one?) but I did use Termux as well as the terminal in TWRP. I figured out if you type "su" to get root access first, then the command works fine in Termux.
Flashed the .zip file. So far, I haven't noticed any changes, good or bad. I don't remember which apps would FC (maybe the Amazon Echo app and Disney Infinity 3.0?) but I'll keep you posted.
deckinghalls said:
I am not sure what is meant by "the built-in Terminal" (I don't recall any ROM coming with one?) but I did use Termux as well as the terminal in TWRP. I figured out if you type "su" to get root access first, then the command works fine in Termux.
Flashed the .zip file. So far, I haven't noticed any changes, good or bad. I don't remember which apps would FC (maybe the Amazon Echo app and Disney Infinity 3.0?) but I'll keep you posted.
Click to expand...
Click to collapse
Some ROMs do have built-in terminal app. However, you need to enable it, which can be done in Settings -> Developer Options (assuming you know how to enable Developer Options as well). There would be an option to enable "Local terminal" which is the built-in terminal app.
Which means it will help the x86 device run ARM ???
I do not understand. Please analyze me
Mkey_34 said:
Which means it will help the x86 device run ARM ???
I do not understand. Please analyze me
Click to expand...
Click to collapse
libhoudini is Intel's ARM binary translator that helps x86 devices run ARM apps, albeit with some limitations and performance reduction due to overhead. Without it, most apps won't be able to work at all, as they don't have x86 native libraries.
Zenfone 2 already has houdini included, that's why it could run as many apps as any other devices. The flashable zip here contains updated files (for 7.1 ROMs) in hope it could help with some problematic ARM-only apps that refuse to work with libhoudini, though in most cases the differences are barely noticeable.
LSS4181 said:
libhoudini is Intel's ARM binary translator that helps x86 devices run ARM apps, albeit with some limitations and performance reduction due to overhead. Without it, most apps won't be able to work at all, as they don't have x86 native libraries.
Zenfone 2 already has houdini included, that's why it could run as many apps as any other devices. The flashable zip here contains updated files (for 7.1 ROMs) in hope it could help with some problematic ARM-only apps that refuse to work with libhoudini, though in most cases the differences are barely noticeable.
Click to expand...
Click to collapse
Thank you
---------- Post added at 02:58 AM ---------- Previous post was at 02:53 AM ----------
something's wrong I can not download it. I need another link. thank you
My device is running Groovy Android 7.1.1, 18 May Build.
so i have successfully upgraded houdini version using your flashable file. Thank You for your work.
what if i want to revert to the houdini version that comes preinstalled with the rom, will dirty flash rom zip work?
sushuguru said:
what if i want to revert to the houdini version that comes preinstalled with the rom, will dirty flash rom zip work?
Click to expand...
Click to collapse
The zip is meant to be flashed every time you reflash the ROM, so yes, dirty flashing should be able to revert it.
But again... you're supposed to do a nandroid backup before flashing, and there's no need to flash this if you aren't encountering any native code crashes from arm-only apps at the moment.
Unfortunately, as Intel had already left the mobile market and no more Intel-powered smartphones produced anymore, some developers started to "move on" and use libraries or compiler options incompatible with houdini in order to make their apps run more efficient on modern ARM smartphones, without having to be "constrained" for compatibility reasons...
The houdini binaries I found only seems to be a minor update, and I'm not sure if Intel is still working on this or if there are possibilities to obtain an even newer houdini version with "y" suffix, which our phone uses.
Added an experimental (UNTESTED!) version found from Android-x86 (8.0.0_y.49374). This version was originally meant for Oreo, so I'm not sure if this would work on a Nougat ROM.
Currently on Android-x86 only the "y" version (which our devices use) is available. The other versions ("x" and "z") are not present, and the link would simply give you a "not found" error.
Although I don't mainly use the phone anymore, I could still conduct some tests with the device if I have time.
Bit the bullet and tested the 8.0.0_y.49374 build. Does not work. Evie force crashes right off the bat. Haven't tested further than this, but if I cannot even use my launcher of choice, that isn't a good sign.

Categories

Resources