Related
Hi Fellow devs,
As you may know, I have been compiling Android 4.0-4.3-based ROMs for Galaxy Tab 10.1. Currently, I am trying to get kitkat 4.4 to work on our devices.
Although I can compile a ROM with only minor difficulties, it already fails when flashing a ROM. It errors with the following message: "set_metadata_recursive: some changes failed". I think this is related to the new way of setting permissions in KK4.4.
If I look in the recovery.log after flashing, I see this:
minzip: Extracted 1197 file(s)
ApplyParsedPerms: removexattr of /system/addon.d/50-hosts.sh to 0 failed: Operation not supported on transport endpoint
script aborted: set_metadata_recursive: some changes failed
set_metadata_recursive: some changes failed
E:Error executing updater binary in zip
I have no idea whether the problem is that the recovery needs an update, or the updater binary is not yet finished, or that the updater script needs to be adjusted.
Anyone also working on this?
Hello, although I'm not a rom dev, I think I found the problem and a possible solution.
http://forum.xda-developers.com/showthread.php?p=47212560#post47212560
Here, I hope it's of some use to you. Keep up the good, quality work!
miztahbeezy said:
Hello, although I'm not a rom dev, I think I found the problem and a possible solution.
http://forum.xda-developers.com/showthread.php?p=47212560#post47212560
Here, I hope it's of some use to you. Keep up the good, quality work!
Click to expand...
Click to collapse
Thanks. I guess it is related to recovery then, with a need for an updated recovery. I guess that the lack of proper selinux support may also contribute to the problem....
OK, I tried to build both cwm & twrp based on latest kk source code. Recovery image is always over 5.5MB, which is way too large for our device, as our recovery partition is only 5MB. Even when trying to strip recovery & recompile kernel with maximum compression, I can't get to 5MB.
So then I tried a different route, I put the old permission code from an updater-script from jb4.3 in a kk4.4 ROM. Flashing such a ROM works, but it hangs on the bootanimation. Logcat won't connect, so I couldn't find the source of the problem.
Verstuurd van mijn Nexus 5
Go Kasper! ben trots op je! (proud of you!)
kasper_h said:
OK, I tried to build both cwm & twrp based on latest kk source code. Recovery image is always over 5.5MB, which is way too large for our device, as our recovery partition is only 5MB. Even when trying to strip recovery & recompile kernel with maximum compression, I can't get to 5MB.
So then I tried a different route, I put the old permission code from an updater-script from jb4.3 in a kk4.4 ROM. Flashing such a ROM works, but it hangs on the bootanimation. Logcat won't connect, so I couldn't find the source of the problem.
Verstuurd van mijn Nexus 5
Click to expand...
Click to collapse
kasper_h said:
Hi Fellow devs,
As you may know, I have been compiling Android 4.0-4.3-based ROMs for Galaxy Tab 10.1. Currently, I am trying to get kitkat 4.4 to work on our devices.
Although I can compile a ROM with only minor difficulties, it already fails when flashing a ROM. It errors with the following message: "set_metadata_recursive: some changes failed". I think this is related to the new way of setting permissions in KK4.4.
If I look in the recovery.log after flashing, I see this:
minzip: Extracted 1197 file(s)
ApplyParsedPerms: removexattr of /system/addon.d/50-hosts.sh to 0 failed: Operation not supported on transport endpoint
script aborted: set_metadata_recursive: some changes failed
set_metadata_recursive: some changes failed
E:Error executing updater binary in zip
I have no idea whether the problem is that the recovery needs an update, or the updater binary is not yet finished, or that the updater script needs to be adjusted.
Anyone also working on this?
Click to expand...
Click to collapse
Just sent a message to pershoot on gtalk or whatever its supposed to be called, I'll let you know if he says he'll take a look at it
update: he's hasn't been working on the sgt 10.1 in a long time, but if he get's some free time, he might look at it.
good luck either way, you seem to have no trouble pumping out good stuff, I'm sure you'll get it figured out
I'm no developer, but I did some Google search about the error. Most people said that latest recovery is needed, but there's another guy with a different point of view: http://stackoverflow.com/questions/19860479/set-metadata-recursive-failing-on-android-install
Good luck getting KitKat to boot on our tabs!
Sent from my GT-P7500 using Tapatalk HD
eushaun99 said:
I'm no developer, but I did some Google search about the error. Most people said that latest recovery is needed, but there's another guy with a different point of view: http://stackoverflow.com/questions/19860479/set-metadata-recursive-failing-on-android-install
Good luck getting KitKat to boot on our tabs!
Sent from my GT-P7500 using Tapatalk HD
Click to expand...
Click to collapse
Thanks, any help is appreciated!
I actually got recovery to shrink enough to fit in the recovery partition. It just won't boot
The struggle continues
Well then let's just hope that pershoot finds some time to help us out.
Sent from my GT-P7500 using Tapatalk HD
kasper_h said:
Thanks, any help is appreciated!
I actually got recovery to shrink enough to fit in the recovery partition. It just won't boot
The struggle continues
Click to expand...
Click to collapse
Could you please share the recovery?
I found this thing ro.build.selinux=1 in the build.prop. Is there someway to change this to 0 and removing all the set_metadata_recursive lines from the updater-script? Doesn't work
Here's what I've tried so far: I followed my android 4.3 guide but it needs some extras. There's 1 header line from libnbaio/audiostreamoutsink that needs to be removed. The error message tells you exactly which one. I also had to comment out 2 lines in surfaceflinger to prevent a very annoying crash I got when I first did android 4.3. There are a few other random lines from audioflinger that have to be removed but the error messages are pretty specific on which ones those are. I also cheated the recovery's gr_text that it said was missing and added in a dummy function according to the header since I never planned to use the recovery and just put that in to get it to compile. I can't get past a metadata error in cwm recovery from pershoot. My TWRP refuses to install the zip at all.
AAccount said:
Could you please share the recovery?
I found this thing ro.build.selinux=1 in the build.prop. Is there someway to change this to 0 and removing all the set_metadata_recursive lines from the updater-script? Doesn't work
Here's what I've tried so far: I followed my android 4.3 guide but it needs some extras. There's 1 header line from libnbaio/audiostreamoutsink that needs to be removed. The error message tells you exactly which one. I also had to comment out 2 lines in surfaceflinger to prevent a very annoying crash I got when I first did android 4.3. There are a few other random lines from audioflinger that have to be removed but the error messages are pretty specific on which ones those are. I also cheated the recovery's gr_text that it said was missing and added in a dummy function according to the header since I never planned to use the recovery and just put that in to get it to compile. I can't get past a metadata error in cwm recovery from pershoot. My TWRP refuses to install the zip at all.
Click to expand...
Click to collapse
Hi AAccount, thanks for joining in! I also talked to matt604 through gtalk last night. Glad to see I am not alone
I am trying to compile OMNI in stead of CM. Advantage is that it does not require any changes to the source code to compile for p4wifi. Works fine for 4.3 as well.
Anyway. I think we have two options: give proper SELinux support, which means making a SE policy for our device. Or we have to completely get rid of it. Because I think the second is simpler, I chose that route. What I did:
-Add the ro.boot.selinux=disabled prop (maybe we should try ro.build.selinux=0 as well!)
-I removed all the SELinux patches from the kernel (so essentially go back to the 4.2 kernel). This kernel boot fine on 4.3
-Manually swap the set_metadata lines in the updater script by set_perm lines from a 4.3 script (I compared the two and besides the change from set_prop to set_metadata, the permissions set are the same).
This time the ROM booted. But when I saw the launcher for 0.1 sec, I got a "Launcher3 has unexpectedly stopped" error. And with the current security feature for adb, you can't get a logcat on a fresh ROM boot, as you need to approve the connection first, which is impossible due to the continuous FC.
I then also tried adding Apex Launcher (confirmed working on KK on my Nexus 5) - first added to system/app and then moved to /data/app. Both times didn't boot at all.
Removed Launcher3 with Apex in /system/app. Didn't boot.
But at least I saw kitkat running for 0.1sec on my tab, so I feel it should be possible!
My next step:
-Add the HAVE_SELINUX := false flags to BoardConfigCommon
-Add ro.build.selinux=0 to p4-common.mk
Samsung have updated their several devices which latest firmware of Android which are old but popular as new. Now the devices are on an end of its update life cycle on Jelly Bean. But the upcoming Google's Android 4.4 KitKat rise an hope for the older Galaxy phone as the KitKat is rumored to feature an improved Linux kernel supporting lower memory devices.
Here is the list of nominated Galaxy Devices for Android 4.4 KitKat
Galaxy Grand and Grand DUOS
Galaxy Ace II
Galaxy S III mini
Galaxy Beam
Galaxy Express
Galaxy S Advance
Galaxy S II and S II Plus
Galaxy Premier
Galaxy Note I
Galaxy Young and Young DUOS
Galaxy Fame
Galaxy X Cover 2
Galaxy Tabs
Click to expand...
Click to collapse
I think it's a little obious that our revoceries are not compatible anymore with android 4.4 since there changed alot in recoveries... So.. Older versions of CWM won’t work, nor will TWRP. I think we will need at least cwm 6.0.4.3 to be compatible with kitkat 4.4, our latest recovery is and older build (cwm 6.0.3.6) which is ment to be for android 4.2.2
Edit:
Looks like it's also because of selinux, and you need a newer version of TWRP or cwm as i said. Right now in the Omni 4.4 manifest it actually has the AOSP recovery so you'll wanna change that to Omni 's TWRP on a local manifest. Or at least you need a recovery with proper fstab because the new fstab format in Android 4.3+ is not used by TWRP yet. Beyond that it depends on your BoardConfig.mk whether the recovery is flash able, if you configured it ok then yes!
kasper_h said:
Hi AAccount, thanks for joining in! I also talked to matt604 through gtalk last night. Glad to see I am not alone
I am trying to compile OMNI in stead of CM. Advantage is that it does not require any changes to the source code to compile for p4wifi. Works fine for 4.3 as well.
Anyway. I think we have two options: give proper SELinux support, which means making a SE policy for our device. Or we have to completely get rid of it. Because I think the second is simpler, I chose that route. What I did:
-Add the ro.boot.selinux=disabled prop (maybe we should try ro.build.selinux=0 as well!)
-I removed all the SELinux patches from the kernel (so essentially go back to the 4.2 kernel). This kernel boot fine on 4.3
-Manually swap the set_metadata lines in the updater script by set_perm lines from a 4.3 script (I compared the two and besides the change from set_prop to set_metadata, the permissions set are the same).
This time the ROM booted. But when I saw the launcher for 0.1 sec, I got a "Launcher3 has unexpectedly stopped" error. And with the current security feature for adb, you can't get a logcat on a fresh ROM boot, as you need to approve the connection first, which is impossible due to the continuous FC.
I then also tried adding Apex Launcher (confirmed working on KK on my Nexus 5) - first added to system/app and then moved to /data/app. Both times didn't boot at all.
Removed Launcher3 with Apex in /system/app. Didn't boot.
But at least I saw kitkat running for 0.1sec on my tab, so I feel it should be possible!
My next step:
-Add the HAVE_SELINUX := false flags to BoardConfigCommon
-Add ro.build.selinux=0 to p4-common.mk
Click to expand...
Click to collapse
Perhaps this might be useful to you:
http://forum.xda-developers.com/showthread.php?t=2457427
Its a sort of work around to pre authorise the ADB connection to your computer using the ADB authentication keys from a working (i.e. 4.3 ROM) build.
It sounds like a very long work around though. Also don't want to sound insulting but did you remembered to put the appropriate mount and install lines for Apex while in /data/app into the updater script!
scaryshark said:
Perhaps this might be useful to you:
http://forum.xda-developers.com/showthread.php?t=2457427
Its a sort of work around to pre authorise the ADB connection to your computer using the ADB authentication keys from a working (i.e. 4.3 ROM) build.
It sounds like a very long work around though. Also don't want to sound insulting but did you remembered to put the appropriate mount and install lines for Apex while in /data/app into the updater script!
Click to expand...
Click to collapse
Thanks.
Don't worry, I am not easily insulted I even checked through a file manager whether apex ended up in the right spot. I didn't check permission though, so that may have been wrong, but I am almost sure I checked that one well...
Thanks kasper_h for your hard work. I thought HAVE_SELINUX boardconfig flag was only for android 4.2. I read that here http://selinuxproject.org/page/SEAndroid#Merge_Status. Another thing i t tried was changing the ro.selinux flag in 4.3.1 to see if it made any difference in the about device selinux status page. Setting that flag to disabled or 0 didn't effect that. Ill try omni rom next but i have limited time this weekend though. I agree a removal would be ideal. I disable it on my desktop and laptop right away after installing fedora.
Sent from my GT-P7510 using xda app-developers app
I now managed to get it to boot. But I get fatal errors in AUDIO_SERVICE, crashing the system. I had something similar when trying to compile AOSP in the past. Maybe CM11 is a better choice than OMNI...
I'll keep on trying.
But at least, getting rid of SELinux seems to be thé way to go.
So the xda app messed up my post big time. What I wanted to say was that by using a non selinux kernel, setting the selinux build.prop flag and changing the install script it boots? Yesterday I tried doing the build.prop edit on my cm11 rom and it didn't boot. Very interesting suggestion about the kernel though.
--------------------------------------------Added-----------------------------------------------------------------------
I tried the 3 things you did on my cm11 rom from yesterday:
-Add the ro.boot.selinux=disabled prop (maybe we should try ro.build.selinux=0 as well!)
-I removed all the SELinux patches from the kernel (so essentially go back to the 4.2 kernel). This kernel boot fine on 4.3
-Manually swap the set_metadata lines in the updater script by set_perm lines from a 4.3 script (I compared the two and besides the change from set_prop to set_metadata, the permissions set are the same).
and I can't get past the "samsung galaxy tab 10.1" screen. Note I did these things after the rom was compiled since build.prop can be edited from the update zip and I just flashed an older A1 kernel with no selinux.
kasper_h said:
I now managed to get it to boot. But I get fatal errors in AUDIO_SERVICE, crashing the system. I had something similar when trying to compile AOSP in the past. Maybe CM11 is a better choice than OMNI...
I'll keep on trying.
But at least, getting rid of SELinux seems to be thé way to go.
Click to expand...
Click to collapse
Finally downloaded the omnirom source. A possible cause of this is becasue omni rom has no ICS_AUDIO_BLOB flag in its source at all. You'll probably need to take a working android 4.3 source, do a "grep ICS_AUDIO_BLOB -r ." on the source and find every place in the working source this flag is defined and then transfer it over to omni rom. Yes it sounds like a pain in the butt.
AAccount said:
Finally downloaded the omnirom source. A possible cause of this is becasue omni rom has no ICS_AUDIO_BLOB flag in its source at all. You'll probably need to take a working android 4.3 source, do a "grep ICS_AUDIO_BLOB -r ." on the source and find every place in the working source this flag is defined and then transfer it over to omni rom. Yes it sounds like a pain in the butt.
Click to expand...
Click to collapse
Maybe it is easier to swap all OMNI project that contain ICS_AUDIO_BLOB in CM for the CM-code
With regard to the kernel, you can't flash a 4.2 kernel on 4.4, as there are ramdisk changes causing it to not boot. I can send you a kernel that will boot on 4.4 that you could try to flash on top of CM11....
I will try a kernel on CM11 and then compare the ramdisk to OMNI to see if that gives a hint why it won't boot...
kasper_h said:
Maybe it is easier to swap all OMNI project that contain ICS_AUDIO_BLOB in CM for the CM-code
With regard to the kernel, you can't flash a 4.2 kernel on 4.4, as there are ramdisk changes causing it to not boot. I can send you a kernel that will boot on 4.4 that you could try to flash on top of CM11....
I will try a kernel on CM11 and then compare the ramdisk to OMNI to see if that gives a hint why it won't boot...
Click to expand...
Click to collapse
What are those ramdisk changes? That would probably help for the rom not booting.
I have xposed running on my Nexus 5 lollipop 5.0.1.
After downloading and enabling a couple modules my phone is now stuck in a bootloop.
I tried clearing dalvik and cache it didn't help.
Is it possible to disable xposed from recovery?
EDIT: Solved.
Boot into Recovery (Power + Volume Down)
TWRP > Advanced > Terminal command
Create a file /data/data/de.robv.android.xposed.installer/conf/disabled, which causes Xposed to be bypassed:
Code:
touch /data/data/de.robv.android.xposed.installer/conf/disabled
Click to expand...
Click to collapse
Boot into Recovery (Power + Volume Down)
TWRP > Advanced > Terminal command
Create a file /data/xposed/disabled, which causes Xposed to be bypassed as well:
Code:
touch /data/xposed/disabled
Click to expand...
Click to collapse
Didn't work. Still stuck in bootloop.
bseos said:
Didn't work. Still stuck in bootloop.
Click to expand...
Click to collapse
what modules you have activated?
or
mv /system/lib/*.*.orig /system/lib/*.*
mv /system/bin/*.orig /system/bin/*
opssemnik said:
what modules you have activated?
Click to expand...
Click to collapse
It was between two modules. Can't remember the first one but the last one was XInstaller.
Anyway, got it solved using the below method:
Boot into Recovery (Power + Volume Down)
TWRP > Advanced > Terminal command
Create a file /data/data/de.robv.android.xposed.installer/conf/disabled, which causes Xposed to be bypassed as well:
Code:
touch /data/data/de.robv.android.xposed.installer/conf/disabled
very good
bseos said:
It was between two modules. Can't remember the first one but the last one was XInstaller.
Anyway, got it solved using the below method:
Boot into Recovery (Power + Volume Down)
TWRP > Advanced > Terminal command
Create a file /data/data/de.robv.android.xposed.installer/conf/disabled, which causes Xposed to be bypassed as well:
Code:
touch /data/data/de.robv.android.xposed.installer/conf/disabled
Click to expand...
Click to collapse
XInstaller seems to be causing a few issues, and I don't think its the app itself but the apps it allows you to install instead. I had the same issue after installing xInstaller. But now that you figured this out maybe I can try a few other apps out like xstana which for somereason refuses to install on lollipop devices...
.Ryker said:
XInstaller seems to be causing a few issues, and I don't think its the app itself but the apps it allows you to install instead. I had the same issue after installing xInstaller. But now that you figured this out maybe I can try a few other apps out like xstana which for somereason refuses to install on lollipop devices...
Click to expand...
Click to collapse
After disabling it I flashed the new xposed-arm-20150308.zip and installed XposedInstaller_3.0-alpha2.apk (I was on alpha1 previously)
Re-enabled xposed (deleted "disabled" file) and all is working fine now.
This thread definitely either needs to be made a sticky, or the contents needs to be in one of the already made sticky threads IMHO
Cheers
//edit
I tried this out on my phone to test (my xposed stuff is working just fine) but it doesn't seem to have disabled xposed at all?
Ex, app settings still functions (set my play store to be at 480 DPI and it's still opening in 480 DPI as it should...)
I made the necessary file you said with fx file manager, not through TWRP recovery though... I don't think it should make a difference though how I made the file, just that it's there.
Maybe my permissions on the file are messed up, I just thought of that..
//edit 2
Yup my perms were messed up, xposed is now disabled for me. Cheers for the info, now I know what to do when some shady looking module backfires on me lol
Thank you so much!!! This worked perfectly on Sprint LG G3 using Candy5 ROM!! Saved me!!
Just to report that the method failed on a Samsung Galaxy S6 Edge (SM-G925F).
I created succesfully the disabled file, but I was still having bootloops.
So I thought I forgot to set the file to 755, but then TWRP told me:
Code:
Updating partition details...
...done
E: Resource (font)-(fixes) failed to load
Kernel does not have support for reading SELinux contexts.
MTP Enabled
Now I hope to fix everything by reflashing the firmware again...
After successfully disabling xposed in order to get the device to boot, how do we reenable it? Because after uninstalling the module which caused the problem the framework is "not active". A reboot did not work.
Nokiacrazi said:
After successfully disabling xposed in order to get the device to boot, how do we reenable it? Because after uninstalling the module which caused the problem the framework is "not active". A reboot did not work.
Click to expand...
Click to collapse
Delete the "disabled" file in the folder op showed
jkyoho said:
Delete the "disabled" file in the folder op showed
Click to expand...
Click to collapse
Silly question but how can I delete it? I tried locating it using HTC file manager and es file explorer but cannot locate it.
Is there a command I can use using terminal emulator or something?
Thanks
Sent from my HTC One_M8 using XDA Free mobile app
Nokiacrazi said:
Silly question but how can I delete it? I tried locating it using HTC file manager and es file explorer but cannot locate it.
Is there a command I can use using terminal emulator or something?
Thanks
Sent from my HTC One_M8 using XDA Free mobile app
Click to expand...
Click to collapse
You need you use Root explorer or Es file explorer that supported Root and locate to /data/data/de.robv.android.xposed.installer/conf
Method 2:
You can even delete the "disabled" file in recovery by using file management, if you are using TWRP. Same as previous method, just locate to /data/data/de.robv.android.xposed.installer/conf
jkyoho said:
You need you use Root explorer or Es file explorer that supported Root and locate to /data/data/de.robv.android.xposed.installer/conf
Method 2:
You can even delete the "disabled" file in recovery by using file management, if you are using TWRP. Same as previous method, just locate to /data/data/de.robv.android.xposed.installer/conf
Click to expand...
Click to collapse
Thanks, method 2 worked a treat.
For some reason, even though I have root access, it wasn't showing in either root explorer or es file explorer, however, when looking through TWRP file management was all there.
jkyoho said:
Delete the "disabled" file in the folder op showed
Click to expand...
Click to collapse
can you please explain the process.
i entered the twrp and advanced and terminal command and went through the shown path yet i didnt see the file "disabled"
he has said to create a file; how could i create a file??
please explain the process...
cybercop007 said:
can you please explain the process.
i entered the twrp and advanced and terminal command and went through the shown path yet i didnt see the file "disabled"
he has said to create a file; how could i create a file??
please explain the process...
Click to expand...
Click to collapse
If you can't normally boot to system, boot to recovery(twrp or some other custom recovery which has file management function)
Try copy a small file like host or something, paste it the that /data/data/dev.*****installer/conf folder and rename it "disabled".
flashable zip´s
starbase64 said:
flashable zip´s
Click to expand...
Click to collapse
these will be very good to have! thank you!
starbase64 said:
flashable zip´s
Click to expand...
Click to collapse
Thank you!!!
**I did not write these scripts, just updated the flashable zip for our x86 Asus phones**
**All work done by @Paget96**
ORIGINAL Mod Thread here : http://forum.xda-developers.com/android/software-hacking/tweak-l-speed-v1-0-02-02-2015-t3020138
@Paget96 has added an x86 version to the original thread with the (more appropriate) fixes!! Go discuss there!
Big thanks to him. Use the v2.4 Test3 or greater "x86" file
Reqs:
1) Need root
2) Need Custom recovery (TWRP)
3) Need kernel with init.d support (like @TheSSJ 's here: http://forum.xda-developers.com/zenfone2/development/project-t-custom-kernel-zenfone-2-t3150822)
** Use v44 or greater for proper init.d support
Download zip from the original thread
and flash in recovery.
Then look at the original thread for config options while you're in there
Added the Emergency Uninstaller zip as well. (i think you still need to use this version, until an x86 version is up there too)
Ch-Ch-Ch-Ch-Changes
Jul 23 2015: OG thread updated by dev. Updated flashing instructions in OP (mods can probably lock this thread)
Jul 15 2015: Fixed script to properly set perms on /system/bin/LS; Added Emergency Uninstaller zip
Jul 14 2015: Initial upload. Needed to use the update-binary from Asus to work with our x86 architecture and replace all the set_perms with set_metadata's. Apparently the update-binaries from Asus don't include set_perms
I would have expected that some parts of my kernel would fight against this tweak, nice to see that it seems to work
Yean I don't know that some of the governor stuff is working 100%, still messing around with it .
Thanks man Been using TheSSJ kernel with this pack of tweak. Its awesome Thanks to both of you
Added in index, thanks for updating the mod!
taylor.fowler said:
@aziz07 Here you go.
Needed to use the update-binary from Asus to work with our x86 architecture and replace all the set_perms with set_metadata's. Apparently the update-binaries from Asus don't include set_perms
Click to expand...
Click to collapse
Thanks! Working A++
Edit: I tried running the script from terminal with no luck. I have to cleanup the alpha version first with the provided uninstaller by Paget96. Its a great idea to have the uninstaller zip working with x86.
++Uninstaller patched, permssions fixed, kudos @taylor.fowler
Need help can't get to run in terminal
Sent from my ASUS_Z00AD using Tapatalk
taylor.fowler said:
@aziz07 Here you go.
Needed to use the update-binary from Asus to work with our x86 architecture and replace all the set_perms with set_metadata's. Apparently the update-binaries from Asus don't include set_perms
Click to expand...
Click to collapse
how can i do that because not work for me
Have u guys tried with Kernel Adiutor?
su
LS > permission denied
selinux already permissive
chobztopz said:
su
LS > permission denied
selinux already permissive
Click to expand...
Click to collapse
I've got it too
The permission for LS file in system/bin is wrong. It should be 0755 (rwx rx rx) then it will done on terminal emulator
lordpipa said:
Have u guys tried with Kernel Adiutor?
Click to expand...
Click to collapse
I am using that.. But y u asked?
And guys only cleaner works it seems, he added logs for all option thankfully and only cleaner having log, others are blank, I can't run the options of LS..
mustatir said:
The permission for LS file in system/bin is wrong. It should be 0755 (rwx rx rx) then it will done on terminal emulator
Click to expand...
Click to collapse
Yep thanks, OP can you edit the updater script please...
After that script enable also same result, no log entered in those files..
Kernel samepage merging didn't came, no swap.. kernel auditor can enable kernel samepage merging even without this script. .. .
ansebovi said:
I am using that.. But y u asked?
And guys only cleaner works it seems, he added logs for all option thankfully and only cleaner having log, others are blank, I can't run the options of LS..
Yep thanks, OP can you edit the updater script please...
After that script enable also same result, no log entered in those files..
Kernel samepage merging didn't came, no swap.. kernel auditor can enable kernel samepage merging even without this script. .. .
Click to expand...
Click to collapse
Hrmph. I must have Ul'd the wrong version. I had the same issue. Will re-up in a couple hours.
@ansebovi cause u can use it for some of the init scripts.
Hmm, mine does all have logs. Yep, I had to set LS permissions to all in /system/bin folder. I think it might be because I still have the old alpha version files and I can't flash the uninstaller as it needs the x86 code.
Edit: ++Uninstaller patched, permssions fixed, kudos @taylor.fowler
Checked the updater-script. All functions are already available in TWRP itself, so normally you don't even need the updater-binary in the zip file, maybe this makes also the uninstaller work if you just delete the updater-binary from the zip file
TheSSJ said:
Checked the updater-script. All functions are already available in TWRP itself, so normally you don't even need the updater-binary in the zip file, maybe this makes also the uninstaller work if you just delete the updater-binary from the zip file
Click to expand...
Click to collapse
OK, so I fixed the updater-script (and found another error with setting the permissions on init.d). Apparently I had changed them to 0775 instead of 0755 :silly:
Also added the emergency uninstaller script too.
@TheSSJ I dont think that's how flashable zips work, but i tried anyhow. No dice...
taylor.fowler said:
@TheSSJ I dont think that's how flashable zips work, but i tried anyhow. No dice...
Click to expand...
Click to collapse
Bummer...was convinced this would work...twrp code at least shows that it executes updater-binary if present,otherwise it interprets the script itself...
Sorry!
Please note, this requires SELinux Permissive (included init.d script/instructions for PHH). It will not work on Enforcing, even with supolicy (I've tried. If anyone has an idea how to get it working with "soundserver" and setting supolicy "read write execute", please let me know)
Setting SELinux to Permissive is a security risk.
ViPER4Android for Mate 9
Slightly modified guitardedhero script.
Contains "Kernel" and "Profile" for V4A from auras76 kang rom
Note:
The following files are backed up automatically so you can easily revert with the removal script:
/system/lib/soundfx/libeffectproxy.so -> /system/lib/soundfx/libeffectproxy.so.bak
/system/etc/audio_effects.conf -> /system/etc/audio_effects.conf.bak
/vendor/etc/audio_effects.conf -> /vendor/etc/audio_effects.conf.bak
If those .bak files are not found the removal script won't run (to prevent running it without V4A installed, it would simply just remove the files leaving you with no files at all.)
It does not edit audio_policy.conf as it doesn't have the deep_buffer section in it, so no point in having it edited.
Requirements:
SuperRoot/SuperSU (No verity is probably needed as we're modifying both /system and /vendor)
A way to set SELinux to Permissive (SuperSU init.d/phh 'su --init' or SELinuxToggler, see 'Alternative'.)
If you're on Magisk use the V4A module instead
For SuperSU
If you use the one posted above
Simply flash the zip in TWRP and you should be good to go. It copies the 00selinux script directly to /system/etc/init.d/ and runs at boot so you'll have SELinux set to Permissive after flashing.
For PHH su
Flash the zip in TWRP, boot up fully.
Now open a terminal and issue the command
Code:
su --init /system/etc/init.d/00selinux
Then reboot.
To remove the phh init use 'su --init !/system/etc/init.d/00selinux'.
For Magisk
Search for Viper4Android in the Downloads section in Magisk Manager, it's a module so no need to download anything in this thread
Alternative:
(You still need root for this but no init script.)
SELinuxSwitch by @Ibuprophen
Download:
ViPER4Android 2.5.0.5
Dropbox Mirror
Removal script download:
Removal script
Removal script Dropbox Mirror
Thanks to V4A team,
guitardedhero for his script,
auras76 for the profiles/makers of said profiles,
Ibuprofen for The SELinux Switch.
@ante0 bro thanks for porting it... have a question, we have to mount system in terminal for writting in system partition,,, can i use init to mount system rw for all time so that i dont need to give command everytime
HassanMirza01 said:
@ante0 bro thanks for porting it... have a question, we have to mount system in terminal for writting in system partition,,, can i use init to mount system rw for all time so that i dont need to give command everytime
Click to expand...
Click to collapse
Yes, if you use supersu, make a script in /system/etc/init.d/
Code:
#!/system/bin/sh
mount -o rw,remount /system
Make sure it runs after any other scripts if they remount system to read only. Scripts are loaded in order, so name it accordingly.
If you use phh, place script where you want and from a terminal
Code:
su --init /path/to/script
I wanna put all this in my Kernel... Or boot.img...
I have root in my kernel using phh superuser... I dont want to add anything in system by myself, i want that a zip should do it... Will be best if kernel did all this... In MM, we dont need to do rw ourself, in N we needed...
Also, am not a dev, just a pro member, know how to edit and understand commands etc...
May I ask whats the difference between this and Viper4Arise.
HassanMirza01 said:
I wanna put all this in my Kernel... Or boot.img...
I have root in my kernel using phh superuser... I dont want to add anything in system by myself, i want that a zip should do it... Will be best if kernel did all this... In MM, we dont need to do rw ourself, in N we needed...
Also, am not a dev, just a pro member, know how to edit and understand commands etc...
Click to expand...
Click to collapse
I sent you a pm instead
ante0 said:
I sent you a pm instead
Click to expand...
Click to collapse
Sure bro... Am waiting... And i have somehow injected phh superuser r275 in boot.img... I will be thankful if u tell me the whole correct procedure to inject files of superuser zip in boot.img.... By flashing superuser r275 on stock boot, we can have root but on that root, titanium like apps didnot work :/
SlyUK said:
May I ask whats the difference between this and Viper4Arise.
Click to expand...
Click to collapse
Arise is based off of V4A, but with their own audio effects and a modified V4A app.
https://www.reddit.com/r/androidapps/comments/5dpvcz/slug/da6ux9k
SlyUK said:
May I ask whats the difference between this and Viper4Arise.
Click to expand...
Click to collapse
It's just a skin difference. Viper4Arise is themed by an arise member. The only difference is the theme.
ante0 said:
Arise is based off of V4A, but with their own audio effects and a modified V4A app.
https://www.reddit.com/r/androidapps/comments/5dpvcz/slug/da6ux9k
Click to expand...
Click to collapse
Hello,
Will V4A work on P9, P9 plus and P9 lite if we flash those files?
Coolyou said:
Hello,
Will V4A work on P9, P9 plus and P9 lite if we flash those files?
Click to expand...
Click to collapse
I don't know. But I don't see why it wouldn't.
Backup system and try.
You'll have to use the phh init script though as I don't think supersu works with P9 on emui5?
Edit: actually, if your audio_effects.conf file is not in /system/etc/ or /vendor/etc/ the script needs to be modified. And if your audio_policy.conf contains the deep_buffer section.
You guys can use this app for switching SELinux to Permissive - https://forum.xda-developers.com/android/apps-games/app-selinuxtoggler-t3574688
It was featured a few days back on XDA blog, hope it will help the users.
DJBhardwaj said:
You guys can use this app for switching SELinux to Permissive - https://forum.xda-developers.com/android/apps-games/app-selinuxtoggler-t3574688
It was featured a few days back on XDA blog, hope it will help the users.
Click to expand...
Click to collapse
Oh, he finally released it
I'll update OP, thanks for heads-up.
Works like a charm, thanks
hi..I'm on aura's rom. and I can't install drivers. can you please teach me how can I make it work..thanks
s2pfie said:
hi..I'm on aura's rom. and I can't install drivers. can you please teach me how can I make it work..thanks
Click to expand...
Click to collapse
assuming everything else but the driver is installed,
simply download Viper4android_2.5.0.5_mate9.zip, extract.
go to customize/lib, rename libv4a_fx_jb_NEON.so to libv4a_fx_jb_ics.so
copy it to your phone.
Use a root file manager and copy and paste to /system/lib/soundfx/libv4a_fx_jb_ics.so.
And set permissions of that file to 0644 (RW-R--R--).
Then reboot and open up viper4android again and see if still complains.
If it doesn't, go to "hamburger" menu in V4A and tap on Driver Status, it should say Status: Normal. If it says abnormal something else is wrong.
ante0 said:
assuming everything else but the driver is installed,
simply download Viper4android_2.5.0.5_mate9.zip, extract.
go to customize/lib, rename libv4a_fx_jb_NEON.so to libv4a_fx_jb_ics.so
copy it to your phone.
Use a root file manager and copy and paste to /system/lib/soundfx/libv4a_fx_jb_ics.so.
And set permissions of that file to 0644 (RW-R--R--).
Then reboot and open up viper4android again and see if still complains.
If it doesn't, go to "hamburger" menu in V4A and tap on Driver Status, it should say Status: Normal. If it says abnormal something else is wrong.
Click to expand...
Click to collapse
thanks bro but still an error occurred..still abnormal
update:
just flashed your zip now its normal..thank you
@ante0, I just wanted to give you a quick heads up...
There's a new app (currently being beta tested) that will supercede/replace The SELinux Toggler....
It's a new app called "The SELinux Switch". Though, it will look like "The SELinux Toggler" but, I had to recreate, pretty much, the whole app.
The reason i had to do this is, primarily, to completely sever it from the older package name (or Installation Directory) that was also being used by the "SELinuxModeChanger" app.
I also had made some minor enhancements and a few compatibility improvements but, there's still some more improvements to be made.
In addition, the app has been passing the beta testing extremely well (thankfully after about 6 +/- months into it) and it should be released soon but, when the app has completed the beta testing and, ready for its debut, it will be released under a whole new thread.
Thank you all for your time, understanding and, especially, your support for my development.
Please let me know if you have any questions or concerns.
______________
PLEASE NOTE: I welcome any member to help with further valuable information/clarification for any of my posts.
Has anybody used the ARISE aroma installer (twrp flashable zip)? I've used it on a few other devices, coming to the M9 from a Le Pro 3 and it works nice and easy and patches selinux permanently. It seems the way Huawei does things is much different though, so I'd be suprised if it works as easily as on other phones.
In the end, it's just installing 2.5.0.5 anyway with a few other tweaks and a whole bunch of IRS response profiles. So that part's not very different.
Just a quick heads-up @ante0...
The SELinux Toggler has now Officially been Discontinued for the launching of the new app...
[APP][TOOL][4.2+][OFFICIAL]The SELinux Switch by Ibuprophen
Those of you who currently has The SELinux Toggler, and want to switch to The SELinux Switch, please be sure to read the OP for instructions.
Thank you ALL!
______________
PLEASE NOTE: I welcome any member to help with further valuable information/clarification for any of my posts.
Hey all,
Android 7.1.1, Magisk 20.4 (on Stable update channel), Magisk Manager is hidden (as "Manager", tried "MM" as well) and the updated Sony app was added to Magisk Hide list.
Data & Cache were cleared for the app as well.
https://play.google.com/store/apps/details?id=com.playstation.remoteplay
But on launch, it crashes with error 88001003, which seems to indicate root detection.
The previous version 3.0 has worked flawlessly on the same system with same settings.
Does anyone know a workaround, could the app now be checking the system for root-compatible apps and block from there ?
Any way to find out how the app detects root?
Any feedback is very welcome.
Full Manager obfuscation capabilities aren't available on Android versions lower than 9. Could be what's causing your issues...
For what it's worth I can start the app just fine on my Android 9 OP3T with Canary build 21004 and hidden Canary Manager 310.
Try uninstalling the Manager and see if that makes a difference.
Log Cat info :
Code:
[10-15 14:29:26.760 4218:4218 D/PRCNT_#RecentsModel#]
#createTaskStack# :: task=PS Remote Play, isTopRunningTask=false, isVisible=false, isLocked=false, isKnoxTask=false, isHideThumbnail=false, isLongLive=false
Didgeridoohan said:
Try uninstalling the Manager and see if that makes a difference.
Click to expand...
Click to collapse
Sadly no difference (and deleted app's data + cache of course). Would you have any other ideas?
Spartacus500 said:
Log Cat info :
Code:
[10-15 14:29:26.760 4218:4218 D/PRCNT_#RecentsModel#]
#createTaskStack# :: task=PS Remote Play, isTopRunningTask=false, isVisible=false, isLocked=false, isKnoxTask=false, isHideThumbnail=false, isLongLive=false
Click to expand...
Click to collapse
Thanks but I'm not sure how it's supposed to help?
Ps24u said:
Sadly no difference (and deleted app's data + cache of course). Would you have any other ideas?
Click to expand...
Click to collapse
Many things may trigger detection, not only Magisk:
https://www.didgeridoohan.com/magisk/MagiskHide#hn_Hiding_root_from_apps
Thanks Didgeridoohan, after many hours I found 2 culprits that triggered root detection on my system.
For the Sony Remote Play app mentionned in this thread: SELinux set to permissive was the culprit.
After disabling the Magisk module for SElinux, the app runs normally, no crash, all good.
But it's pretty annyoing having to reboot to enable/disable SELinux just to run this app.
Would you know if there's a way to either toggle SElinux in realtime while the os is running or to have the Sony app always believe SElinux is set to enforcing ?
For the second app, it was dumb, it looked for "twrp" folder on internal storage. After I renamed the folder, the app launches and runs perfectly.
But again it's far from ideal to do it manually all the time. So for this case also, is there a way to hide the "twrp" folder from this app, either via magisk module, script or otherwise?
Thanks a lot for your tips and awesome site, probably the best ressource for all things Magisk. :bow:
Ps24u said:
Would you know if there's a way to either toggle SElinux in realtime while the os is running or to have the Sony app always believe SElinux is set to enforcing ?
Click to expand...
Click to collapse
That's just a simple terminal command (which is exactly what the module uses and runs at boot). You can run that whenever and it'll change selinux to the state you want on the fly, no need for a reboot.
Permissive:
Code:
setenforce 0
Enforcing:
Code:
setenforce 1
Needs to be run as su, of course (you could add "su -c" in front of the command to make it easy).
You could either set up a script with an app like Tasker or use an app that's made for toggling selinux (if you look around there should be a few available).
For the second app, it was dumb, it looked for "twrp" folder on internal storage. After I renamed the folder, the app launches and runs perfectly.
But again it's far from ideal to do it manually all the time. So for this case also, is there a way to hide the "twrp" folder from this app, either via magisk module, script or otherwise?
Click to expand...
Click to collapse
To hide the TWRP directory you could use an isolation app to stop the app from detecting what you have on your device. When it comes up the internal storage, Storage isolation is the most powerful.
Another option could be to set up a Tasker task (or similar) that renames the folder and then launches the app. Another Tasker profile could then keep track of when the app is running and rename the folder again once it's closed. Or it might be more reliable to run a task manually when you're done with the app. I'm just mentioning this to show some options. It's nowhere near as elegant as using an isolation app...
Thanks a lot for your tips and awesome site, probably the best ressource for all things Magisk. :bow:
Click to expand...
Click to collapse
No worries, I'm glad you found it useful and could get things figured out.
Didgeridoohan said:
That's just a simple terminal command (which is exactly what the module uses and runs at boot). You can run that whenever and it'll change selinux to the state you want on the fly, no need for a reboot.
Permissive:
Code:
setenforce 0
Enforcing:
Code:
setenforce 1
Needs to be run as su, of course (you could add "su -c" in front of the command to make it easy).
You could either set up a script with an app like Tasker or use an app that's made for toggling selinux (if you look around there should be a few available).
Click to expand...
Click to collapse
That strangely doesn't do the trick. If SElinux is set to permissive at boot via Magisk module, toggling to Enforcing afterwards doesn't allow the app to launch (crashes with same error 88001003, even after deleting data+cache).
It seems the app somehow knows if SElinux was set to permissive on boot and doesn't care if SElinux is switched to Enforcing afterwards.
Due to how my setup works I need Permissive at boot (mount cifs folders) so I'm in pinch.
I use selinux_permissive_v2.zip on Magisk 20.4.
I also tried to set SElinux to permissive via a script in /data/adb/service.d
Code:
#!/system/bin/sh
setenforce 0
But same results, toggling to Enforcing afterwards doesn't allow the app to launch.
I tried toggling with "su -c setenforce 1" in Termux, and with SELinux Toggler.
However, If the phone boots with Enforcing, and then I toggle to Permissive after boot and then back to Enforcing, the app launches without issues, strange!
There is a mystery going on here...
Didgeridoohan said:
To hide the TWRP directory you could use an isolation app to stop the app from detecting what you have on your device. When it comes up the internal storage, Storage isolation is the most powerful.
Click to expand...
Click to collapse
That worked straight away, awesome!
On my Samsung Galaxy S7 edge Custom Pie 9.0 Rom NFE root Magisk, this application does not work, keeps saying "something went wrong", I changed the twrp folder to aaaTWRPaaa but still the application won't work. I also changed selinux mode changer to permisive, but after this change also doesn't work, my antivirus screams selinux permisive is dangerous. Any ideas ?
Spartacus500 said:
On my Samsung Galaxy S7 edge Custom Pie 9.0 Rom NFE root Magisk, this application does not work, keeps saying "something went wrong", I changed the twrp folder to aaaTWRPaaa but still the application won't work. I also changed selinux mode changer to permisive, but after this change also doesn't work, my antivirus screams selinux permisive is dangerous. Any ideas ?
Click to expand...
Click to collapse
From my testing, PS Remote Play doesn't care about TWRP folder.
Spartacus, for now try to boot with SElinux to Enforced, and clear data/cache for the app.
I hope Didgeridoohan can help solve the SElinux pemissive at boot mystery.
Ps24u said:
I hope Didgeridoohan can help solve the SElinux pemissive at boot mystery.
Click to expand...
Click to collapse
Not really... I've no idea why the app would behave like that.
But I have a thought: how do you set up your cifs folders mounting? With a script? If so, could you temporarily set SELinux permissive only during that time? If you're lucky, it might be that's enough... I have no idea how cifs folder mounting works, so I'm just throwing ideas aimed at your head.
Ps24u said:
From my testing, PS Remote Play doesn't care about TWRP folder.
Spartacus, for now try to boot with SElinux to Enforced, and clear data/cache for the app.
I hope Didgeridoohan can help solve the SElinux pemissive at boot mystery.
Click to expand...
Click to collapse
I did as you said, deleted the TWRP folder from internal storage, also deleted the Titanium backup folder, no result, Selinux I have enforcing, the application still shows an error on startup
I also have a question, is your audit error the same as mine? Maybe there is a bug here
audit (error)
Code:
type=1400 audit(1603135249.830:2343): avc: denied { read } for pid=7381 comm="zCloudWorkerThr" name="enforce" dev="selinuxfs" ino=4 scontext=u:r:untrusted_app:s0:c212,c259,c512,c768 tcontext=u:object_r:selinuxfs:s0 tclass=file permissive=1 SEPF_SM-N935F_9_0001 audit_filtered
Code:
type=1400 audit(1603135249.830:2344): avc: denied { open } for pid=7381 comm="zCloudWorkerThr" path="/sys/fs/selinux/enforce" dev="selinuxfs" ino=4 scontext=u:r:untrusted_app:s0:c212,c259,c512,c768 tcontext=u:object_r:selinuxfs:s0 tclass=file permissive=1 SEPF_SM-N935F_9_0001 audit_filtered
Didgeridoohan said:
Not really... I've no idea why the app would behave like that.
But I have a thought: how do you set up your cifs folders mounting? With a script? If so, could you temporarily set SELinux permissive only during that time? If you're lucky, it might be that's enough... I have no idea how cifs folder mounting works, so I'm just throwing ideas aimed at your head.
Click to expand...
Click to collapse
In the context of Cifs, I need SELinux permissive during actual use, not only during the mounting phase, so it cannot be done unfortunately.
Spartacus500 said:
I did as you said, deleted the TWRP folder from internal storage, also deleted the Titanium backup folder, no result, Selinux I have enforcing, the application still shows an error on startup
I also have a question, is your audit error the same as mine? Maybe there is a bug here
audit (error)
Click to expand...
Click to collapse
I'm not sure what / how to "audit" ?
I'm back again, Samsung Galaxy S7 edge Custom Pie 9.0 Rom. Selinux enforcing, PS Remote Play 4.0.0 keeps crashing, I uninstalled Magisk root and PS Remote Play 4.0.0 app works fine on my S7, I reload Magisk root via TWRP and PS Remote Play 4.0.0 shows error again ...
You've added PS Remote Play to the "Magisk Hide" list already, right ?
If not, add it, then clear data/cache or Uninstall and reinstall the app but don't launch it, and reboot.
Ps24u said:
You've added PS Remote Play to the "Magisk Hide" list already, right ?
If not, add it, then clear data/cache or Uninstall and reinstall the app but don't launch it, and reboot.
Click to expand...
Click to collapse
Of course, right after installing Magisk I hid hide root for PS Remote Play 4.0.0 and also changed the name of Magisk manager to something else, cleaning the memory for this application does not help either, every time I open the application it says "something went wrong" and error code ... All I need to do is remove the Magisk root and the app works. I'm using Magisk 20400, tested 21000 and Canary 21005 version and on neither of these versions this app shows the same error
Sorry I can't help more. I'm on Magisk 20.4 and M.Manager 7.5.1, also on Android 7.1.1 official Sony rom.
I performed the test, removed the Magisk root, PS Remote Play 4.0.0 works, when I install only Magisk manager, then PS REMOTE PLAY 4.0.0 detects Magisk and shows an error, after removing Magisk manager, PS Remote Play 4.0.0 works again, but it's enough that I will upload root Magisk, hide root hide, remove Magisk manager then PS Remote Play 4.0.0 shows error ...
I've got the same issue, anyone find a workaround?
Same here. This app work in the past, now it doesnt open. I dont know why Sony now dont left we use it because of root. It thinks that we will hack something. Mas, if Sony continues to do this and **** the past generation with last updates I will left consoles for while.
Im using Android 8.1