Related
OK, this is a little strange, but I think the idea is useful for people that want to mod the ramdisk but don't want to fiddle with compilers and such. It requires a kernel, so I'm including a proof of concept here. However, once the basic support is in a kernel, you can change anything about the ramdisk and the boot process WITHOUT changing your kernel!
For example, say you want to change init.rc... You can do that, and if it fails to boot, if you stored it on your external SD card, just pop out the card and boot up, the change won't be able to copy over at boot, so you are back where you started. No odin, no kernel mod.
The basic idea is simple. It runs init.d style scripts (if found) BEFORE the android init process starts up. This allows you to change literally anything in the ramdisk without the hassle of building a kernel. You can replace the /sbin/init binary if you want to, whatever.
This also means you could install and/or upgrade a lagfix, even voodoo, by copying a single file to /system/etc/init.d and rebooting.
This is more useful for devs I think than for end users, but perhaps users will find it useful.
NOTE: This is DANGEROUS STUFF. If you store your files in a world-writable location like /sdcard, ANY app could change your ramdisk! As it is, any root app can do it with this change. Anything run in the pre-init scripts is, by definition, run as root. So watch your permissions and don't store stuff used by the pre-init scripts in a FAT filesystem. EXT2/3/4 and RFS will work fine if you set them to root-write only. If in doubt, use "chmod 700 <file>". All of this should be obvious to most people here, but I think it's important to point out just in case.
This is based on Unhelpful's 1.7 kernel. It runs great on my Vibrant. There is one known bug, it reverts the locale to en_GB on boot, which is mildly irritating. I can't figure out why this happens. If someone knows, please post. I did write a simple app that switches it back to en_US using MoreLocale 2 (market) on boot, if people want it.
Credit to Unhelpful (kernel source and nice build scripts), JAC and Supercurio (examples for setting up the ramdisk properly for this sort of thing).
All the init scripts live in /system/etc/init.d. P*** are pre-init scripts. E*** are early-init scripts run before /data and /dbdata are mounted, allowing you to override mount options and such at that point, S*** are standard init scripts that launch right before the Android OS starts up, so the full environment is available to them. So you now have 3 hooks to start init scripts up. The boot process will wait for them to complete, so don't do anything that takes a long time if you don't have to, or start it in the background with "cmd &" or similar.
http://www.tabbal.net/files/t959-ttabbal-v1.0.tar
Flash with Odin. I'll consider putting up a ZIP later. Please, be at a computer with Odin and a known good kernel when you do this, this should be considered beta at best. Hardware locked phones should probably avoid this as well. Also, disable voodoo before messing with this, it does not include the voodoo script. If you really want to try it, you should be able to copy it to the init.d directory, but it would be better to wait a bit.
If it works well, hopefully other kernel devs will include the framework. I may also start posting updates from Unhelpful's git tree if there is interest as well now that I have a decent environment set up. See his thread in the Captivate forum for details on what changes have been done. OC/UV is supported, but I haven't worked with it much. You have to enable it by creating a config file and putting it on the phone. I'd recommend the external SD card in case you have a problem with a bad config, so you can pull the card and boot without clock changes. The OC/UV config can also be changed at runtime.
There is no need to pre-flash anything, and init.d need not exist or have any scripts in it. The system will boot fine without them.
If you try it, please post your thoughts. I'd like to see if there is interest for this line of work. If you don't understand a thing I said above, please don't install it.
Updates:
http://www.tabbal.net/files/Kernel-ttabbal-v1.2.zip
http://www.tabbal.net/files/Kernel-ttabbal-v1.4.zip
http://www.tabbal.net/files/z4mod-ttabbal-v1.1.zip
Wow, I am afraid to mess with this today. (expecting an important phone call)
I will flash it tomorrow morning however. And post some results, I have an idea about what to do with this.
Thanks Travis!
I hope you find it useful! I forgot to note one thing. If you want to see what your pre-init scripts are up to, there's some info in /init.log. Not a ton, but you can at least see if your script was started and such from there.
Also, if anyone cares, it works on Frankin-Twiz Final. I decided to check it out once I got this little project working.
I'm curious to see what people come up with, I've seen some complaints about not being able to edit the ramdisk without building a kernel. So now they can.
ttabbal said:
I hope you find it useful! I forgot to note one thing. If you want to see what your pre-init scripts are up to, there's some info in /init.log. Not a ton, but you can at least see if your script was started and such from there.
Also, if anyone cares, it works on Frankin-Twiz Final. I decided to check it out once I got this little project working.
I'm curious to see what people come up with, I've seen some complaints about not being able to edit the ramdisk without building a kernel. So now they can.
Click to expand...
Click to collapse
You mind sharing your init setup. I am familiar with Unhelpfuls method and just want to see what you have changed from his.
I stayed away from his method with Voodoo as it was causing issues at diff points of development and went with the run-parts solution. But it may be in better shape now that you have gone over it.
Most users will only need one hook but options are always good.
I've always been one the fence about the runtime OC/UV. Most people are looking for a stable voltage file that will work with their phones in the thread, but it is def awesome for those that are familiar with what they are doing.
justanothercrowd said:
You mind sharing your init setup. I am familiar with Unhelpfuls method and just want to see what you have changed from his.
I stayed away from his method with Voodoo as it was causing issues at diff points of development and went with the run-parts solution. But it may be in better shape now that you have gone over it.
Most users will only need one hook but options are always good.
I've always been one the fence about the runtime OC/UV. Most people are looking for a stable voltage file that will work with their phones in the thread, but it is def awesome for those that are familiar with what they are doing.
Click to expand...
Click to collapse
Talk to braka, we been hi-jacking the init for a bit, I've been working on getting a Desire pport working on are rom.. ( Well, barak has been hi-jacking the init ) I just build kernels.
justanothercrowd said:
You mind sharing your init setup. I am familiar with Unhelpfuls method and just want to see what you have changed from his.
I stayed away from his method with Voodoo as it was causing issues at diff points of development and went with the run-parts solution. But it may be in better shape now that you have gone over it.
Most users will only need one hook but options are always good.
I've always been one the fence about the runtime OC/UV. Most people are looking for a stable voltage file that will work with their phones in the thread, but it is def awesome for those that are familiar with what they are doing.
Click to expand...
Click to collapse
The whole ramdisk is here:
http://github.com/travistabbal/linux-galaxy/tree/ttabbal-v1.0/usr/initrd_files_t959/
The pre-init stuff is in /init.sh.
The basic stuff is the same as his really, I just put the sync hooks in to stall the boot based on an older version of his stuff. The current version didn't seem to work for me. The boot didn't wait, and I couldn't see any reason it would, so I just used the property setting style.
As I said, I haven't tried voodoo with it yet, but I don't see any reason it wouldn't work. You might want to pull the "exec /sbin/init" out if you want more pre-init scripts available, but other than that, it should work fine. A fair bit of the ramdisk came from your voodoo release, useful stuff in there.
If you see any issues with the init.d stuff, let me know and I'll look into them and if I can fix them, send a pull request over to Unhelpful.
Yeah, 3 hooks is overkill, but I figured there might be some use for them all. Most scripts can run in the "standard" hook and work just fine.
I kept the runtime OC/UV stuff just because it was more work to take it out. If you have a nice stable file, I'm happy to include it in the downloads as a default. I'm sure I could pull at least older versions from your github, I honestly haven't messed with it much beyond adding the 600Mhz step and seeing that the phone would use it. I honestly don't see much call for changing that stuff constantly at runtime, but it's nice for experimenting. If it crashes due to low voltage, just reboot and no harm done.
As I'm sure someone will ask, no I won't test it with voodoo. I can't, my phone has the extra NAND so it's not compatible with voodoo. When Beta5 comes out, I'll test it though.
I'm uploading a 1.1 now. The only big change is that I've fixed the backlight notification patch from Unhelpful's tree so it works with Vibrant now! Install the kernel, then copy lights.default.so to /system/lib/hw to get apps able to use it. Anything that can do LED notifications now turns on the button backlights instead.
See the other BLN threads for Q&A's, etc.. The big one, no, we can't flash/fade the LEDs. It would require changes to the binary firmware and nobody wants to try writing it.
http://www.tabbal.net/files/t959-ttabbal-v1.1.tar
http://www.tabbal.net/files/lights.default.so
This has been tested on my phone running Bionix 1.7 and worked with the MMS and GMail apps. I haven't tested the others.
Again, it's an Odin tar file. Put it in the PDA section and flash. If people ask for an update.zip, I'll put one together.
The warning above applies. This flashes a kernel, so it will overwrite whatever you have now. So if you have voodoo, disable it or add the voodoo script to init.d with an E prefix ie. "Evoodoo".
Thanks
I've been looking forward for a way to use the backlight buttons as notification since the phone came out and the idea was hatched a few days later. I'm admittedly new to all this so I have no idea what else this is capable of but I am VERY thankful for the button lights. Also there is another xda thread up with many replies and people offering up some rewards for making this work.
Can this be applied to eugenes froyo ?
Sent from my SGH-T959 using XDA App
dzeinz said:
I've been looking forward for a way to use the backlight buttons as notification since the phone came out and the idea was hatched a few days later. I'm admittedly new to all this so I have no idea what else this is capable of but I am VERY thankful for the button lights. Also there is another xda thread up with many replies and people offering up some rewards for making this work.
Click to expand...
Click to collapse
Rewards? Heh... I had no idea people were that interested in it. Hope it helps. My github has source, so I hope other kernel devs for vibrant add it.
skater991 said:
Can this be applied to eugenes froyo ?
Sent from my SGH-T959 using XDA App
Click to expand...
Click to collapse
Not sure. Froyo usually needs a different kernel. If JAC or KK kernels work, this one should. At worst, it will boot loop and you will have to flash a compatible kernel in download mode. So make sure you can get into download mode before trying it.
Thanks for this. It's working great, and I'm so glad to finally have backlight notifications.
Definitely would like an update.zip, just not comfortable doing it through odin...but I would love to have this
The cake is a lie!
metalfan78 said:
Definitely would like an update.zip, just not comfortable doing it through odin...but I would love to have this
Click to expand...
Click to collapse
Well, since you asked nicely.
http://www.tabbal.net/files/Kernel-ttabbal-v1.1.zip
MD5: 606a1ecaa934f97bd26f0bfb617b23b8
Tested just now via Clockwork. It even installs the library for you, so the button notification should work out of the box.
Running great for me on Bionix 1.9.1.
Wow...thanks, ill give it a go. So just flash through clockwork and good to go?
The cake is a lie!
metalfan78 said:
Wow...thanks, ill give it a go. So just flash through clockwork and good to go?
Click to expand...
Click to collapse
Yup.
Let me know what you think.
Is this ready for overclocking like JAC's OC/UV kernels? If so, any chance of posting a demo script for the OC/UV settings?
Also, can we add a user-script to enable AOSP bootanimation.zip files, or is support still commented out in this kernel?
Thanks for your time and hard work, cheers, =)
I have been wanting button notification since i got the phone. Can you choose which button lights up based on what the notification is?
for example menu = txt, home = missed call, etc....that would be awesome!
s0niqu3 said:
Is this ready for overclocking like JAC's OC/UV kernels? If so, any chance of posting a demo script for the OC/UV settings?
Also, can we add a user-script to enable AOSP bootanimation.zip files, or is support still commented out in this kernel?
Thanks for your time and hard work, cheers, =)
Click to expand...
Click to collapse
It's based on Unhelpful's way of doing OC/UV, you have to modify a file and push it to the phone to enable it, then set up the min/max settings with a script or SetCPU. There's a lot of detail over in Unhelpful's thread on the Captivate forum, so it's probably better to point you over there. They have scripts and such for it as well.
Not sure on the boot animation. I'll see if I can find it.
d_bot said:
I have been wanting button notification since i got the phone. Can you choose which button lights up based on what the notification is?
for example menu = txt, home = missed call, etc....that would be awesome!
Click to expand...
Click to collapse
That would be awesome, but it's not that complex. It's all of them for a notification. The Android API wouldn't really be able to deal with that level, but perhaps we could assign the buttons colors and use the color that the app requested? Maybe, but I'm not sure we can turn on just one of them from the code we have right now. The code looks to make a somewhat simple call that turns them all on at the same time. Hopefully as more people look into things, we will learn how to do stuff like that.
.
Attention: This guide is for an older version of the V6 SuperCharger.
This doesn't mean that you can not use this guide as a reference or interesting read, but the new script has some more options which aren't covered here. You have to read the instructions within V6 carefully.
I did a lot of testing some weeks ago and now that I finally have some time I'd like to share what I got so far.
The V6 Supercharger is a tweak skript by zeppelinrox which works really great on my 2x. It feels smoother and snappier than ever - and multitasking is damn fast (and I never felt that CM7.2 was unsnappy.. but there is a difference now).
I won't talk a lot about what it is and how it does work - read the original thread. It has an even better effect on low spec phones, but it does improve the snappyness on high-end phones, too (and is even used on Samsung Galaxy S II and Galaxy Nexus phones!)
[Script][MOD][U9RC6.1] Sticky 'n Smooth ISCream-=V6 SUPERCHARGER!=-The ONLY RAM Fixer
All credits go to zeppelinrox for this great script!
Here's a quote for what it does:
zeppelinrox said:
What's it do?
It makes your phone FAST... super snappy with better multitasking!
It rearranges and fixes the OOM Groupings and Priorites and lowmemorykiller values.
So basically, it's a COMPLETE MEMORY MANAGEMENT FIX!
It's the ONLY one of it's kind
NO LAUNCHER REDRAWS, faster than ever, multitasking is better... why?
Because it works with the lowmemorykiller and letting it work the way it's meant to work.
Click to expand...
Click to collapse
Warnings:
This is not for ICS! Go to the 2nd post in the thread linked above - there are instructions for ICS (CM9) - I don't use CM9 yet and don't want to include instructions here, which I haven't tested thoroughly.
You shouldn't use this with custom kernels (like vadonkas) I guess - it might break some tweaks from the kernel devs.
I tested this with CM7.2 (temasek KANG) with the stock CM-kernel and it is working GREAT! It should make an even greater difference on Stock - please report!
I tested lots of options and never had a single problem.. but you should do a nandroid backup! There is always a slight chance that something goes wrong.
Click to expand...
Click to collapse
Instructions:
(type all options without quotes.. I hope that's obvious)..
Go to Settings - Cyanogenmod - Performance and make sure that "Lock home in memory" is not checked. If it is: uncheck it and restart (don't worry, the tweak will take over with a better solution than a permanent lock in memory).
Download the "V6_SuperCharger_for_Android-update9_RC6.1.sh.txt" from the original thread or from the attachments here and put it to the root directory of your SD card.
Open "Terminal Emulator"
Type "su" (and approve the Superuser request)
Type "cd /sdcard"
Type "sh V6*" (this is cAsE-sensitive)
The first time "wizard" will guide you through the installation process.
for the scrolling speed "2" is a good choice for the first time
type "b" for the build.prop option
type "y" to integrate /init.rc
I disabled the "AWESOME" animation (type "y") because it would get annoying after waiting for it to finish after the 3rd time.. sorry for that zeppelinrox
press the enter key
now type "10" (Quick V6 Custo-OOMizer option)
type "y" to use the calculated values
press enter twice
type "29" to reboot and wipe dalvik cache. The restart will take a while, be patient, that's normal!
that's it!
Click to expand...
Click to collapse
There's a "quick walkthrough" in the second post - together with the best options (at least for me) for the older update 8.
Again: All credit to zeppelinrox - he has a donation link in his thread! If you like it, donate to him please
Quick walkthrough - commands only (update 9 RC6.1):
("type Enter key" or "type any key" not mentioned)
Code:
su
sh /sdcard/V6*
2
b
y
y
10
y
29
Click to expand...
Click to collapse
------------------
Instructions for the "older" update 8:
Go to Settings - Cyanogenmod - Performance and make sure that "Lock home in memory" is not checked. If it is uncheck it, restart the device and recheck
(don't worry, the tweak will take over - I didn't have a single launcher redraw).
Download the "V6_SuperCharger_for_Android-update8.sh.txt" from the original thread or from the attachments here and put it to the root directory of your SD card.
Open "Terminal Emulator"
Type "su" (and approve the Superuser request) (without quotes.. I hope that's obvious)
Type "cd /sdcard"
Type "sh V6*" (this is cAsE-sensitive)
Type "0", "1", "2", or "3" to set how fast the text will scrool. "2" is a good selection for the first time.
Choose "9"
Type "16" (your device will restart without further warning!)
Click to expand...
Click to collapse
tonydl said:
under construction
Click to expand...
Click to collapse
Great but hard to set
PYCON said:
Great but hard to set
Click to expand...
Click to collapse
Sorry.. I wrote that because I pressed "Submit New Thread" accidentally before the post was ready. It's up now
there is already a update 9, which works perfect on the speed, but I don't see great improvements between Chuck Norris Edition with and without V6. Think Chuck Norris is already so awesome.
P.S: really easy to set up, just download Script Manager from the Market, open it, click on SU and open up this Script, everything else will be explained through the MENU
Has anyone tested this with the latest vadonka's ETaNa yet?
I know it's not ready yet, but I'm already psyched about it :-D
I already have a question about it.
If I run this skript is it suggested to change minfree values?
I have mine set on 16-24-32-90-100-110 right now. Thats pretty heavy I think, but Setiron suggested those values.
---------- Post added at 08:22 PM ---------- Previous post was at 08:19 PM ----------
TweetyPeety said:
there is already a update 9, which works perfect on the speed, but I don't see great improvements between Chuck Norris Edition with and without V6. Think Chuck Norris is already so awesome.
P.S: really easy to set up, just download Script Manager from the Market, open it, click on SU and open up this Script, everything else will be explained through the MENU
Click to expand...
Click to collapse
Hey, can you tell us how long you've been using this?
And can you tell us where you actually saw the improvement?
TweetyPeety said:
there is already a update 9, which works perfect on the speed, but I don't see great improvements between Chuck Norris Edition with and without V6. Think Chuck Norris is already so awesome.
Click to expand...
Click to collapse
Yup but update 9 is still a RC. I know it's pretty stable but haven't tested it yet, will do that over the weekend and update the instructions if everything works fine.
You're correct - the Chuck Norris ROM does use a lot of tweaks, too - this is mainly focused to non-tweaked CM7 and Stock ROMs
Great... I include always it in my rom...
Inviato con il mio P990 DjangoManouche!
Wow, thanks very much, my device feels superfast right now!
Do i have to repeat this procedure everytime i flash an cm update, e.g. a kang?
this script only advantage the bulletproof/hard to kill launcher for as, but since the o2x is a highend phone the launcher reload fast, probably dont even noticed that and if you have a memory hungry launcher probably not a bad thing if this is not stuck in the memory, so its not really necessary this. bulletproof the launcher is good thing in an old phone like moto milestone (this script originally made for that phone by the way)
the memory management is not so good, the autokiller memory optimizer app do a much better memory management and its user friendly.
also this script minfree values is not optimized for the o2x.
I'd rather not use overall, but its your choice guys
vadonka said:
this script only advantage the bulletproof/hard to kill launcher for as, but since the o2x is a highend phone the launcher reload fast, probably dont even noticed that and if you have a memory hungry launcher probably not a bad thing if this is not stuck in the memory, so its not really necessary this. bulletproof the launcher is good thing in an old phone like moto milestone (this script originally made for that phone by the way)
the memory management is not so good, the autokiller memory optimizer app do a much better memory management and its user friendly.
also this script minfree values is not optimized for the o2x.
I'd rather not use overall, but its your choice guys
Click to expand...
Click to collapse
I cannot agree in all points.
First of all V6 won't lock the launcher in memory (unlike the CM method!).
Then it will tweak more aspects in terms of memory management than just the "harder to kill launcher" - more on that in the official post. Last but not least - the phone is a highend one, but it lacks some memory (1GB would have been great). And it seems that it does help quite a lot, here.
But of course you're correct that it might not be the "best of all" solutions for the 2x - but I can feel quite a difference while using V6. For Stock LG and CM7 it seems to be a good enhancement - I don't mind if people here use it or not, I'm really happy with this solution right now. Just thought might be worse sharing as there are many threads for V6 for other phones (even the SGS II!!), but not for the 2x.
Just my 2 cents.
P.S.: I havent tested your newest kernel with the tweak scripts - maybe it will even blow me away more if the values are more optimized for the 2x
tonydl said:
I cannot agree in all points.
First of all V6 won't lock the launcher in memory (like the CM method!).
Then it will tweak more aspects in terms of memory management than just the "harder to kill launcher" - more on that in the official post. Last but not least - the phone is a highend one, but it lacks some memory (1GB would have been great). And it seems that it does help quite a lot, here.
But of course you're correct that it might not be the "best of all" solutions for the 2x - but I can feel quite a difference while using V6. For Stock LG and CM7 it seems to be a good enhancement - I don't mind if people here use it or not, I'm really happy with this solution right now. Just thought might be worse sharing as there are many threads for V6 for other phones (even the SGS II!!), but not for the 2x.
Just my 2 cents.
P.S.: I havent tested your newest kernel with the tweak scripts - maybe it will even blow me away more if the values are more optimized for the 2x
Click to expand...
Click to collapse
just look into this supercharger script and see what is really doing
I'll wait for ICS version of the script
PYCON said:
I'll wait for ICS version of the script
Click to expand...
Click to collapse
ICS is done. See post #2 of my OP.
vadonka said:
this script only advantage the bulletproof/hard to kill launcher for as, but since the o2x is a highend phone the launcher reload fast, probably dont even noticed that and if you have a memory hungry launcher probably not a bad thing if this is not stuck in the memory, so its not really necessary this. bulletproof the launcher is good thing in an old phone like moto milestone (this script originally made for that phone by the way)
the memory management is not so good, the autokiller memory optimizer app do a much better memory management and its user friendly.
also this script minfree values is not optimized for the o2x.
I'd rather not use overall, but its your choice guys
Click to expand...
Click to collapse
Will the REAL vadonka please stand up?
http://forum.xda-developers.com/showthread.php?p=14327296&highlight=supercharger#post14327296
vadonka said:
zeppelinrox: i use i&f 2.2 and now i installed your supercharger script v6, with the optiom oom fix and htk launcher. well, now the rom running even smoother than before. great job
Click to expand...
Click to collapse
lulz...
btw I'm sure you are totally unfamiliar with the newest incarnations where the values are calculated according the ram available on any device.
SO IT"S ALWAYS OPTIMIZED FOR THE DEVICE IT'S RUNNING ON.
If anything, bulletproof is BETTER suited for devices with more ram - since they can more easily do this without detrimental effects since they do have more ram.
Nothing you say adds up.
look, your script working superb on my old milestone, when i write this post what you quoted here i had the milestone not the o2x. but with o2x honestly i dont think its necessary to tweak so many memory management part. the phone have enough memory to handle most of everything and have a fast dual core processor.
i use only this:
echo 0,1,2,4,6,15 > /sys/module/lowmemorykiller/parameters/adj
echo 1536,2048,4096,15360,17920,20480 > /sys/module/lowmemorykiller/parameters/minfree
i dont see the point of the other stuffs
lock the launcher in the memory is also not necessary, its reloaded fast i dont even noticed that every time.
but its just my opinion
ps: you are using this file in many procedures: rcpath="/system/etc/rootfs/init.mapphone_umts.rc"
this isn't exsist in the o2x rom.
for example:
sed -i '/ro.EMPTY_APP_ADJ/ a\
setprop ro.FOREGROUND_APP_MEM '$SL1 $rcpath
this is only work if the rcpath=/system/etc/build.prop and cut out the 'setprop' string (/data/local.prop also not good for as). i also found some code what is not working with the o2x rom. the whole script is for the droid/milestone's. at least what i found in this thread OP
Try the newest one
http://forum.xda-developers.com/showthread.php?p=22689090&posted=1#post22689090
init.mapphone_umts.rc isn't even mentioned.
Instead, it does a search for the appropriate file.
It's vastly more sophisticated than Update 8 in all aspects.
The 0,1,2,4,6,15 is kinda useless... no different really than the default 0,1,2,4,7,15
There is a fairly new supercharger thread for the new Galaxy Note... they see a clear difference.
So you really won't ever know until you try
zeppelinrox said:
Try the newest one
http://forum.xda-developers.com/showthread.php?p=22689090&posted=1#post22689090
init.mapphone_umts.rc isn't even mentioned.
Instead, it does a search for the appropriate file.
It's vastly more sophisticated than Update 8 in all aspects.
The 0,1,2,4,6,15 is kinda useless... no different really than the default 0,1,2,4,7,15
There is a fairly new supercharger thread for the new Galaxy Note... they see a clear difference.
So you really won't ever know until you try
Click to expand...
Click to collapse
okay, this version it seems better: V6_SuperCharger_for_Android-Update9_RC6.1.sh
Yeah there isn't much difference between that and the one I linked to above if you're on CM7.
The incremental update was an ICS detection fix.
I may have all 4 scripts updated today tho
zeppelinrox said:
Yeah there isn't much difference between that and the one I linked to above if you're on CM7.
The incremental update was an ICS detection fix.
I may have all 4 scripts updated today tho
Click to expand...
Click to collapse
Hey zeppelinrox, do you recommend to change minfree values when using the v6 script?
I'm running CM9 with Ironkernel and mine are set to 16-24-32-90-100-110, but I think thats a little extreme. Setiron suggested those values, because ICS needs more ram.
Disclaimer:
I'm not responsible for any damage caused to you or your device. If you lose your job because your phone fails to wake you up, I'll sympathize, but take no responsibility. If your phone turns into a transformer and destroys the world, don't point the finger at me. You are flashing this AT YOUR OWN RISK.
Click to expand...
Click to collapse
This should work on all CM/AOSP based roms, stock support has been re-implemented. Use of UKM for synapse to work (at all) requires init.d. Most stock based roms should have this, but a rooted OTA won't unless you added it (lots of methods, Google around a bit).
Hi Everybody. Since I haven't seen anyone making custom kernels yet for us for the 39A base, I decided I'd try pulling in some features that I use on a regular basis into the kernel source.
Most everything in this is pulled from ( in no particular order ) Faux123, Showp1984, flar2, Renderbroken, Dorimanx, Jackpotclavin, xdabbeb, Rashed, Myfluxi, franciscofranco, tsunamical and other sources. So, all credit goes to them.
I've switched over to Synapse/UKM for this, seems that most everything works properly in it. I've changed francosound slightly, so you'll need to use the modified UKM linked at the end of this post, then install synapse from the playstore.
Features:
Added Intelliactive, Intellimm, Smartmax, ElemantalX, Bacon, Imupulse, ZZmove, and Yankactive governors.
Added Intelliplug (Set as default through
Added FrancoFranciso's sound driver. (Mic, Headphone, Speaker, Camera Mic volume control)
Added 389Mhz GPU step
Enabled Extra I/O schedulers and TCP congestion methods
Enabled Kernel Same Page Merging.
All builds are permissive.
Added Bricked Hotplug
Added Bricked Thermal
Added UserSpace CPU Frequency Voltage Table
MsM Limiter from NeoBuddy89
FastCharge from Dorimanx
Added a post boot script that will provide tweaked defaults (basically what I use minus undervolting)
Exposed PVS and SPEED bin values to Synapse for informational purposes.
Misc Tweaks/Optimizations/Battery Saving Optimizations
Screen turn on bug fixed courtesy of JackPotClavin
Stock Builds should work correctly now. (bluetooth and back led issues should be corrected)
F2FS support
Known Issues:
None
I'll work on things as I get time, but I'm not promising anything as this is simply a kernel that I'm making for the features I typically use. A lot of code has changed in the new kernel source making it hard to import features, so it's slow going. Also, sorry for the kernel name, I didn't have anything creative at the time.
Source: Github
CONVERTING DATA TO F2FS WILL WIPE YOUR SDCARD DATA AS WELL. Ensure that you have a backup of everything on your computer before doing so as this is unrecoverable. For R3, with F2FS you'll want this repacked TWRP. It has this kernel packed into it, with better f2fs support libraries (thanks XDABBEB). Also, be aware that encryption is not currently enabled with F2FS partitions in the way that I have it configured.
Downloads:
R3 - Fixed Bluetooth and PowerManagerService.Display Wakelock
CM-R3-B3
Stock-R3-B3
*Caution with R3, I've been running F2FS on the CM build for a couple days now with now issues. Stock booted and mounted for me, but I couldn't find a tester to evaluate it.*
CM-R3-Build1
Stock-R3-Build1
UKM has also been updated (link below). No new functionality, just cleaned up some of the stuff that didn't apply to our phone.
Old Builds:
CM-R2-Build3
Stock-R2-Build3
Modified UKM: 3.8.1-Mod6-Fustercluck (Source) - Apb_Axel's Original Thread Huge Thanks to him for his work making UKM.
Remember to hit the "Thanks" if you're enjoying this kernel.
For anyone who wants to build from this, I've included the toolchain , ramdisk, and a build script in the github repo. As long you have a build environment setup, you should get a flashable zip in the zips folder just from running the included build.sh script.
*edit*
I've removed the toolchain and all git references to it. It was causing the repo to be far larger than it needed to be. It's easy enough to find a toolchain (I've been using sabermod) and place it in the directory the build script expects. The one I use is Sabermod 5.1
Edit:
Development will be halted as my g2 digitizer is failing and I'm likely to upgrade to a nexus 6.
This kernel is SORELY needed. Constantly torn between being on 5.1 vs. 5.0.2 or JB vs. KK aboot, etc. And now I finally feel like I can have it all. Thank you! Working great so far on Euphoria ROM.
Only suggestion would be making the kernel default to be selinux permissive, especially with Google pulling an Apple and banning many of the selinux modifying apps from the playstore.
Thanks again!
bbender716 said:
This kernel is SORELY needed. Constantly torn between being on 5.1 vs. 5.0.2 or JB vs. KK aboot, etc. And now I finally feel like I can have it all. Thank you! Working great so far on Euphoria ROM.
Only suggestion would be making the kernel default to be selinux permissive, especially with Google pulling an Apple and banning many of the selinux modifying apps from the playstore.
Thanks again!
Click to expand...
Click to collapse
Yeah, I'll put up a build that's permissive. But d-h.st is being a pain right now and not actually letting me upload.
I was going to write up a post about the dangers of permissive kernels, then saw avc denials for an init.d script, netmgrd, sensors.qcom, and busybox in my dmesg (of course I was going to check before I posted)...
Just remember though enforcing stops things from running out of context. It's a security features and that's why google's removing the apps that let you change it. Permissive lets everything do whatever it wants and just logs that it should have been denied (dmesg | grep "avc"). So essentially, it's like installing an antivirus on your computer then disabling it but letting the system tray icon give you a warm fuzzy. Antivirus is a bad analog because it's really more like user policies, but you get the point.
*edit*
for now, I'll just attach the permissive build to this post. I'll need to wait till d-h.st gets it together. Maybe, I'll look for a better file server.
Does this have Bacon or smartass? If not is it a possibility in the future?
Yeah, I'll work on grabbing them. I'll need to find a good version of bacon from somewhere though that hasn't been too tweaked/modified.
Also, I'm moving to androidfilehost. for hosting. d-h.st just wasn't working out. I'd like to find somewhere that gives ftp access so that I could just upload builds at the end of my build script, but I guess that's not a huge deal.
Anyway, the new folder will be: https://www.androidfilehost.com/?w=files&flid=29865
The build numbers are just there to help me keep track of what file I'm on and need to flash for testing, don't let them get you confused if there are missing numbers in that folder... they just weren't worth uploading, or the build failed.
Also, how is the fauxsound stuff working out for everyone? I feel like it's pickup up the register values wrong or something... I'm not quite sure yet. But the sound seems too quiet on the low-end, but at least boosting the high-end works.
Just gonna throw this out there since you arm like a hands on dev, what are your personal settings? Default? I'm super excited for this kernel but after using dori for a while, the feature creep became somewhat mind boggling.
BOY_ said:
Just gonna throw this out there since you arm like a hands on dev, what are your personal settings? Default? I'm super excited for this kernel but after using dori for a while, the feature creep became somewhat mind boggling.
Click to expand...
Click to collapse
I'm not really comfortable being called a dev, I have some understanding of what's going on but the real devs are the guys that I gave credit to in the OP. Really, I'm just pulling in their work and making little changes here and there to make it work.
Personally, I run intelliactive with intelliplug and westwood with zen set to 1024 (why I added those) but I don't tweak the settings. I've never really seen a reason to, the governors are pretty smart. Of course, if you know what you're doing you can always fine tune them some based on your personal use types.
As far as feature creep... Read up on the different things. Figure out what works for you, ignore the rest. Really, it's just there because ya know... different strokes for different folks.
That's exactly the answer I was looking for. Thank you!
New build (30) up, sorry for the number jump... took a good few build tries getting the governors to play nice.
This added Smartmax, ZZmove, and Yankactive.
Should also fix GPU freq reporting. Previously, it wasn't reading correctly.
*edit*
Seems some of these new governors don't play so nice under use, at least not for me. They govern, but it seems like my device is locking up or not turning the screen back on with them. Looks like they need a little polishing.
I am using Intelliactive as well, on Euphoria v1.1, which sticks, but Intelliplug does not.
Also, only Smartmax worked for me with the new governors, but the others rebooted my phone almost instantaneously.
~ Sent from my VS980 ~
360Razir said:
I am using Intelliactive as well, on Euphoria v1.1, which sticks, but Intelliplug does not.
Also, only Smartmax worked for me with the new governors, but the others rebooted my phone almost instantaneously.
~ Sent from my VS980 ~
Click to expand...
Click to collapse
Thanks for the feedback.
Yeah, I ended up just removing zzmove and yankactive for now but added bacon and impulse. I'm not sure what exactly is going on with those two, but they kept trying to switch the devfreq governor to one that I shouldn't have included to begin with, the calls it used I don't think are present anymore. Which could very well be the reason they were freezing.
The intelliplug is a little weird too depending on which tuning app you use. Synapse lets it stick, but never shows that mpdecision turned off. Kernel auditor shows both on, but trickstermod shows that it correctly. ...kinda weird and I don't trust the apps to be honest. The sysfs values for intelliplug is toggling and the mpdecision binary stops running (at least with trickster) so those apps could be doing any number of things wrong.
Thanks for continuing to tinker and your analysis. I just did a reboot and checked Kernel Adiutor and even the governor is not sticking. I will try Trickster, as I am used to that app, but agree with you, each can be doing something wonky with your kernel.
~ Sent from my VS980 ~
Phone feels faster after this kernel, loving that. As for synapse, it tells me no UCI support and that's the end of that. I found kernel adiutor and it seems to be alright. The headphone amp doesn't seem to want to change which is annoying since I really want that. I think I'm just gonna clean flash the next euphoria build. Congrats on the first kernel for 39a roms.
joedajoester said:
Phone feels faster after this kernel, loving that. As for synapse, it tells me no UCI support and that's the end of that. I found kernel adiutor and it seems to be alright. The headphone amp doesn't seem to want to change which is annoying since I really want that. I think I'm just gonna clean flash the next euphoria build. Congrats on the first kernel for 39a roms.
Click to expand...
Click to collapse
Yeah, the headphone poweramp is buggy. I still think it's an issue because I pulled Shamu's (Nexus 6) fauxsound. But you still get the volume boost with the headphone volume choice. For synapse to work at all on most kernels now you need to download and flash teh UKM script.
But yeah, there are still things that are buggy. Which is why I'm leaving this labeled as an alpha for awhile.
I've been working on governors most of the day, I'll reply here when I get an update posted.
Yeah, FauxSound thru the speakers just cuts in and out, mostly out.
Xdabbeb's 982.5 on ART for VZW LG G2
jesssiii said:
Yeah, FauxSound thru the speakers just cuts in and out, mostly out.
Xdabbeb's 982.5 on ART for VZW LG G2
Click to expand...
Click to collapse
That's odd, I listened to my phone through the speakers for a good few hours yesterday moving my inlaws. Didn't notice any cutting in and out.
Can you tell me what values you have in: /sys/kernel/sound_countrol_3/gpl_speaker_gain ?
I have "2 2" at the moment, but I have my speakers down... typically I've been holding them at "5 5"
Also, are you using anything like viper? Are you using this on a CM12.1 based 39a rom?
*edit*
Also, New build up. https://www.androidfilehost.com/?fid=96039337900114170
Removed a few of the unused Devfreq governors (for gpu).
Added ElementalX, Bacon, and Impulse Governors. Removed ZZmove and Yankactive
Changed some compile flags, might give better performance.
Misc tweaks.
Another Build: https://www.androidfilehost.com/?fid=96039337900114287
Added in Bricked Hotplug and Bricked Thermal.
I may be a bit slower on adding things and building the next couple days... weekends over.
Yoinx said:
Another Build: https://www.androidfilehost.com/?fid=96039337900114287
Added in Bricked Hotplug and Bricked Thermal.
I may be a bit slower on adding things and building the next couple days... weekends over.
Click to expand...
Click to collapse
You've been busy! So what is your setup now?
~ Sent from my VS980 ~
360Razir said:
You've been busy! So what is your setup now?
~ Sent from my VS980 ~
Click to expand...
Click to collapse
No different, I just prefer bricked thermal over the normal one. I usually set the temp limits 2 or 3 below the defaults.
I'm just trying to get the features added so that people have options. I sent faux a message, I don't really expect a reply because I'm sure he's pretty busy.... But figure is give it a shot to see if he can help with the faux sound issues.
Once that's worked out, everything should be fairly stable. Then I can try to figure out what's up with some of the tuner apps not recognizing things correctly.
Hi all.
Compatibility:
Builds starting with r5 compatible with Android Nougat 7.1.1 LineageOS or roms built from LineageOS sources.
Download:
From my webserver choose the Kernel with the most recent version number. Older releases for older Android versions are in the parent directory:
https://kernels.franco-lnx.net/OnePlusX/7.1.1/anyKernel/
or from my Updater app. It's just easier and more convenient:
https://play.google.com/store/apps/details?id=com.franco.kernel
Installation:
Flash the zip in your recovery
or
Auto-flash from Franco Kernel Updater app
Features:
1 - Legendary battery life
2 - Flash & forget
3 - Typical interfaces like display adjustments, sound control, vibration control, and all that boring stuff
4 - Idle power consumption reduced to the absolute minimum (if you have wakelocks from 3rd party apps you're obviously on your own)
5 - Support for FKUpdater's Performance Profiles
6 - Magical support, I'm here every day, checking posts almost hourly, ready to help anytime (well, unless you fail to read the OP, which contains most info you need)
7 - Seemless integration with my app FKUpdater
8 - No crap placebo patches, or "magical" optimizations
9 - Probably more, check my github for all the details - the code speaks for itself
Changelog:
https://kernels.franco-lnx.net/OnePlusX/7.1.1/appfiles/changelog.xml
Source:
https://github.com/franciscofranco/onyx
Follow me on the interwebs
Google+
Twitter
Google+ FK community
https://plus.google.com/u/0/communities/117966512071636110546
Franco Kernel: Manager & Updater demo
Disclaimer to moderators:
Slight OT is fine, but when users decide to act stupid they should be dealt with with the appropriate means - its really annoying for me when OT turns crazy. Please put the warning/ban hammer anytime any of you think there's lack of respect and/or too much unwanted OT crap - but if it doesn't meet this criteria let the OT posts alone. Thank you.
Cheers!
Good to see you around here!
Thought I would add more to this and make it useful for a few users.
The reason behind why Mpdecision is disabled by default is due to the fact that it is highly inefficient in the sense that hotplugging on Linux, put simply, sucks. Why? The hotplug acts as a front-end to the scheduler to provide a means of plugging and unplugging cores in exchange for a high amount of latency. This means that even though a core may be plugged, there is a delay of several milliseconds before this is actually processed causing microstutters that are hard to notice, but do disrupt performance. The same can be said for the thermal driver and how it Aries frequencies.
Now that that is over with, I'd just like to thank Franco. My device has never been faster. Even with an undercooked, it is still performing better than ever. Especially love the ZRAM tweaks, and how you properly configured CPU boost. Some people make it way too aggressive... It's the little things, and the huge steps forward in the source code that make your work so great! Best of luck
My apps have been updated to support the One Plus X too, both free and paid apps.
Damn legendery dev with his awesome kernel is here. Thank you!
Wish you're kernel for CM13/14 [emoji1]
Flash it, all fine, better later than never,
Didn't work for me coming from LOS (17/03/02 build) with Boeffla kernel. Wiped cache and dalvik, flashed fk r1 and bootloop. Phone kept returning to the boot splash screen and then straight to recovery. Looking forward to solving. Thanks for now.
Sorry, I was clearly not fully awake when I posted this. I read OxygenOS and interpreted as LineageOS.
Still, I hope someday we can run FK kernel on LOS.
Thanks anyways.
Omg .....Dream come true....Thank you franco
Thanks for the kernel, Franco!
It's a shame that it only supports OOS.
FYI I installed it on Sultan's CM13 and everything works fine except dt2w. The switch in settings does nothing and there is no switch in Kernel Adiutor. I hope that your kernel will be compatible with CM/AOSP based roms in the future.
Edit: Wifi is also not working.
franciscofranco said:
Hi all.
Compatibility:
Builds starting with r1 compatible with OxygenOS or roms built from OxygenOS sources.
Download:
From my webserver:
https://kernels.franco-lnx.net/OnePlusX/6.0.1/anyKernel/
or from my free Updater app:
https://play.google.com/store/apps/details?id=com.franco.kernel.free
Installation:
Flash the zip in your recovery
or
Auto-flash from Franco Kernel Updater Free app
Features:
1 - Legendary battery life
2 - Flash & forget
3 - Typical interfaces like display adjustments, sound control, vibration control, and all that boring stuff
4 - Idle power consumption reduced to the absolute minimum (if you have wakelocks from 3rd party apps you're obviously on your own)
5 - Support for FKUpdater's Performance Profiles
6 - Magical support, I'm here every day, checking posts almost hourly, ready to help anytime (well, unless you fail to read the OP, which contains most info you need)
7 - Seemless integration with my app FKUpdater
8 - No bull**** placebo patches, or "magical" optimizations
9 - Probably more, check my github for all the details - the code speaks for itself
Changelog:
https://kernels.franco-lnx.net/OnePlusX/6.0.1/appfiles/changelog.xml
Source:
https://github.com/franciscofranco/onyx
Google+ FK community
https://plus.google.com/u/0/communities/117966512071636110546
Franco Kernel: Manager & Updater demo
Disclaimer to moderators:
Slight OT is fine, but when users decide to act stupid they should be dealt with with the appropriate means - its really annoying for me when OT turns crazy. Please put the warning/ban hammer anytime any of you think there's lack of respect and/or too much unwanted OT crap - but if it doesn't meet this criteria let the OT posts alone. Thank you.
Cheers!
Click to expand...
Click to collapse
shatteringlass said:
Didn't work for me coming from LOS (17/03/02 build) with Boeffla kernel. Wiped cache and dalvik, flashed fk r1 and bootloop. Phone kept returning to the boot splash screen and then straight to recovery. Looking forward to solving. Thanks for now.
Click to expand...
Click to collapse
Read OP's first post again...
Facing heating issue...
Everything else is buttery smooth.
Hello bro i need permission regarding your kernel on one plus x i have ported a one plus x rom and i wanna use it one plus one the kernel is working fine in one plus one( I skipped the device checking and made it work)
would be great if you allow me to use it
Thanks
Why are always 4 cores online?
Edit: Got answered on Franco's twitter
shatteringlass said:
Didn't work for me coming from LOS (17/03/02 build) with Boeffla kernel. Wiped cache and dalvik, flashed fk r1 and bootloop. Phone kept returning to the boot splash screen and then straight to recovery. Looking forward to solving. Thanks for now.
Click to expand...
Click to collapse
Not compatible with LineageOS yet. It's written in the OP.
Kolio_xda said:
Thanks for the kernel, Franco!
It's a shame that it only supports OOS.
FYI I installed it on Sultan's CM13 and everything works fine except dt2w. The switch in settings does nothing and there is no switch in Kernel Adiutor. I hope that your kernel will be compatible with CM/AOSP based roms in the future.
Edit: Wifi is also not working.
Click to expand...
Click to collapse
It won't work on Sultan's, he uses a very specific Kernel with specific changes that only work on his specific rom build.
W!ld said:
Facing heating issue...
Everything else is buttery smooth.
Click to expand...
Click to collapse
There's no heating issue. The device throttles just fine when under stress. I run several CPU stability tests before I push a new Kernel...
Dhairya said:
Hello bro i need permission regarding your kernel on one plus x i have ported a one plus x rom and i wanna use it one plus one the kernel is working fine in one plus one( I skipped the device checking and made it work)
would be great if you allow me to use it
Thanks
Click to expand...
Click to collapse
I don't understand what you're asking. Use what where?
@franciscofranco Thanks for this!
Waiting for LineageOS 14 (and all based ROMs) support. Most people don't really use OxygenOS since it's slow and buggy
Calvin2394 said:
@franciscofranco Thanks for this!
Waiting for LineageOS 14 (and all based ROMs) support. Most people don't really use OxygenOS since it's slow and buggy
Click to expand...
Click to collapse
It's not slow with FK, at all. I made sure of that. There was a specially bad issue that I reported to OP 1 year ago, which makes the device have a gigantic stack of uninterruptible threads after a while on screen off. My record was a load average close to 200, 200, 200 which is insane and destroyed the device's performance. That's fixed on FK. Also all cores are online at all times, there's no need to shut down 2 cores, and mpdecision is disabled so that it doesn't mess with the devices performance.
thanks finally the great franco kernel is here damn really appreciate your work
Something really worth for the OnePlus X after a long time. I have been waiting for this day. Thank you.
franciscofranco said:
It's not slow with FK, at all. I made sure of that. There was a specially bad issue that I reported to OP 1 year ago, which makes the device have a gigantic stack of uninterruptible threads after a while on screen off. My record was a load average close to 200, 200, 200 which is insane and destroyed the device's performance. That's fixed on FK. Also all cores are online at all times, there's no need to shut down 2 cores, and mpdecision is disabled so that it doesn't mess with the devices performance.
Click to expand...
Click to collapse
yeah really i underclocked the cpu to 1957 ghz and input boost enabled to 652mhz, the phone literally flies on oxygen os. Also the antutu score is 55222,literally made my day thanks a lot
One wierd thing though, kernel auditor shows my battery capacity to 3000mah, is it true?? or is it after the kernel, anyways its buttery smooth.. magical
Androidoo said:
yeah really i underclocked the cpu to 1957 ghz and input boost enabled to 652mhz, the phone literally flies on oxygen os. Also the antutu score is 55222,literally made my day thanks a lot
One wierd thing though, kernel auditor shows my battery capacity to 3000mah, is it true?? or is it after the kernel, anyways its buttery smooth.. magical
Click to expand...
Click to collapse
Battery size is 2525mAh.
Hi, I flashed your kernal yesterday, all great and the device is buttery smooth but just one thing I noted. When ever the phone goes into to deep sleep the device doesn't wake up on pressing the power button. Have to restart the phone by long pressing the power button. And I haven't changed anything using the kernal adiutor app, just using your default settings.
Can you kindly guide me if something is wrong from my side. May be if you want a log I'll try to pull out a log tonight.
Thanks alot for your work.
Automatically optimizes SQLite databases on boot, on schedule, every X days.
Just a quick and dirty adaptation of an old SQLite3 optimizer script from init.d days to a Magisk Module using a service.sh script instead, with an internal date offset mechanism to run the script every X days (default: 3 - which is plenty, and specifically to stop silliness).
Update And credit note: finally after a fair bit of digging, i think i located the original author of the original init.d version of the main vacuum code snippet ive repurposed (stolen) for this module. It appears to be from user @mcbyte_it (doesnt seem to be current or active) and from a post here. Although i only saw derivative reworkings of this script, and used only the main sqllite script function, i arrived at a different method of tracking last run date, when his is arguably more mainstream/concise. Im fairly certain this is the originator especially as the post also has a zipalign script that was also suggested to me to do....and which i have been fiddling with for months....
The script will wait until boot is completed AND then until avg CPU usage is under 30%, to minimise the risk of possible corruption.
Disclaimer: As always any use of any 3rd party script/software/advice is at the users discretion. All reasonable efforts have been made to make this as safe as possible, but the responsibility ultimately falls to the user whether to use and run the script.
What it does:It:
Reindexes
Vacuums
Analyzes
all .db files under /data.
It runs a 1st run optimize after install (temp file optimsql_first_run on sdcard is used to enable this, and removed after first run), and then on schedule after that.
By default it logs just script progress to /storage/emulated/0/autosqlite.log, but you can choose to enable more detail in the log if you wish
User Configurable Options:The schedule and loglevel can be changed by an external file on sdcard:
Create a file named autosqlite_options on sdcard (/storage/emulated/0/)
Inside create the follow key=value pairs to suit your preference:
interval=x (where x is the number of days between script runs, for the love of god do not put 1 (this goes out especially to the kind of people who put every app on their Magisk magiskhide/deny list) there is no benefit and you just heighten the possibility of corruption)
loglevel=x (where x is either 1 (detailed logging) or 0 (basic logging - default))
Requirements:This module requires a working SQLite3 binary. If your ROM does not provide one (you can check via typing sqlite3 into a terminal), you can choose to use my SQLite3UniversalBinaries module located here:
https://github.com/stylemessiah/SQLite3UniversalBinaries
Dont forget you need to download a named SQLite3UniversalBinaries.vx.x.zip file from the Releases page under Assets. Do not try installing the source code with Magisk Manager, it will not go as you expect
All the modules action takes place in the service.sh file, its commented reasonably well for those wanting to check how it works
* See... now theres something else to use with my SQLite3 Universal Binaries module other than the GPay SQlite Fix Module <- dont use that anymore, it makes me stabby. It is literally the last resort for getting Google Pay/Wallet to work ,
Please note: the included LICENSE only covers the module components provided by the excellent work of @Zackptg5 's Magisk Module Extended, which is available for here for module creators
https://github.com/Zackptg5/MMT-Extended/
All other work is credited above and no one may fork or re-present this module as their own for the purposes of trying to monetize this module or its content without all parties permission. The module comes specifically without an overall license for this intent.
Download:
Repo: https://github.com/stylemessiah/AutomaticSQLiteDBOptimizer
Release: https://github.com/stylemessiah/AutomaticSQLiteDBOptimizer/releases/latest
Powered by Ponkle
@73sydney Nice! If you're looking for newer sqlite3 binaries, I have a build script you can use to build it or you can just grab the precompiled ones at my repo: https://github.com/Zackptg5/Cross-Compiled-Binaries-Android
Zackptg5 said:
@73sydney Nice! If you're looking for newer sqlite3 binaries, I have a build script you can use to build it or you can just grab the precompiled ones at my repo: https://github.com/Zackptg5/Cross-Compiled-Binaries-Android
Click to expand...
Click to collapse
cheers man, i was trying not to pinch all your toys
i mean i could have done an androidacy and scraped your repo for just the files i needed
plus im lazy
73sydney said:
optimizes SQLite databases
Click to expand...
Click to collapse
Nice
how about no schedule, i want to execute it whenever i want
possible ?
loopypalm said:
Nice
how about no schedule, i want to execute it whenever i want
possible ?
Click to expand...
Click to collapse
I refer the gentleman to the name of the module and title of the thread:
"Automatic SQLite DB Optimizer"
the distinct lack of the word "manual" should be a clue
what are they teaching in school these days?
i made this to be automatic and made special note about the intervals because theres people who would abuse this and run it every day if they could, both designed to avoid misuse/abuse:
interval=x (where x is the number of days between script runs, for the love of god do not put 1 (this goes out especially to the kind of people who put every app on their Magisk magiskhide/deny list) there is no benefit and you just heighten the possibility of corruption)
im not really interested in making a manual version option unless you can convince me where there is a use case benefit, because all i see is potential for misuse/abuse that i specifically made this to avoid....
running it by default it runs every 3 days which is twice a week and probably still overkill, but trying to cover all bases
your other option is to ask me for permission (sadly because of abuse in the past from certain entities trying to monetize my and others work, my contributions are not GPL etc) to fork and alter the code yourself....
73sydney said:
I refer the gentleman to the name of the module and title of the thread:
"Automatic SQLite DB Optimizer"
the distinct lack of the word "manual" should be a clue
what are they teaching in school these days?
i made this to be automatic and made special note about the intervals because theres people who would abuse this and run it every day if they could, both designed to avoid misuse/abuse:
interval=x (where x is the number of days between script runs, for the love of god do not put 1 (this goes out especially to the kind of people who put every app on their Magisk magiskhide/deny list) there is no benefit and you just heighten the possibility of corruption)
im not really interested in making a manual version option unless you can convince me where there is a use case benefit, because all i see is potential for misuse/abuse that i specifically made this to avoid....
running it by default it runs every 3 days which is twice a week and probably still overkill, but trying to cover all bases
your other option is to ask me for permission (sadly because of abuse in the past from certain entities trying to monetize my and others work, my contributions are not GPL etc) to fork and alter the code yourself....
Click to expand...
Click to collapse
i was planing to use it once a week
categorizing me with people who do dumb stuff is an 'insult'
i asked a simple question man, don't jump to level 3 mind game please ...
loopypalm said:
i was planing to use it once a week
categorizing me with people who do dumb stuff is an 'insult'
i asked a simple question man, don't jump to level 3 mind game please ...
Click to expand...
Click to collapse
Im sorry, did you miss the double smileys intended to completely avoid any misunderstanding that i was being jovial. the other tip off that i wasnt burning you was taking the time to write several paragraphs
Can i suggest you just set the options file interval to 6 or 7 and let the module do what its described in the title as doing, it would make no functional difference, other than saving you a trip to terminal?
As i said, give me a valid reason for adding a manual option and ill gladly consider it, choosing a reason that fits completely within the actual parameters of the existing module doesnt really fit that offer...
ill go further to why i specifically didnt put in an option to run it manually (really folks are lucky i didnt block the option to run it every day) because you should understand what the sqlite vacuuming and other processes do:
* They copy the data from the db file to temp file before optimising it and writing it back, at any point in this theres the potential for corruption (sudden power loss, other processes accessing the file etc). Ideally any such corruption would be minimised by journaling but anyone who had used Linux for long enough knows not to count on such things.
* If any db is being written to, then the optimization process will NOT optimize that db...for the above possible corruption reasons. Hence why i not only put in a wait till boot completed function BUT also added a function to block the script from running unless avg cpu load over 5 minutes is less than 30%. all this to try and make things as safe as possible. So im not overly fond of a manual option which bypasses these safeties i specifically put there to hopefully safeguard people as best as possible. I dont want to get messages about how my module hosed someones apps.
Perhaps that better addresses my reasons?
As said, you can also ask me to fork the code, and ill even tell you how to add a manual function, but i personally wont be releasing such a version without a better reason than i want to do it every 7 days, when the script as it stands can do that AND at a far more predictably safe time and way than you manually likely can or will use it....
BTw, how is actually responding, even taking the time to do so and being jovial about it "level 3 mind games?", whatever the hell that even is?
73sydney said:
.
Click to expand...
Click to collapse
i was planing to make a recovery backup of "DATA" after the optimization of DB files ...
if you want better result add a comand to kill the coresponding app, then it would be more stable
or tell the people to use FlushRam or something like that before the proccess start, to make sure the result will be good, or make a 2nd module for advanced users ...
even with the condition you said some system apps stays working in the background and messing with their data can lead to corruption
i don't know you or your previous work and i don't have time to care for that
i just asked a simple question
answer with "NO, my module will not do that"
this will save your time and other people time
loopypalm said:
i was planing to make a recovery backup of "DATA" after the optimization of DB files ...
if you want better result add a comand to kill the coresponding app, then it would be more stable
or tell the people to use FlushRam or something like that before the proccess start, to make sure the result will be good, or make a 2nd module for advanced users ...
even with the condition you said some system apps stays working in the background and messing with their data can lead to corruption
i don't know you or your previous work and i don't have time to care for that
i just asked a simple question
answer with "NO, my module will not do that"
this will save your time and other people time
Click to expand...
Click to collapse
1) whether before or after backup, the files will eventually get optimized - if you want a more manual version use SD Maid or as offfered you can ask me how to alter the code as it sits and make your own version.
2) Im not ever releasing a script that kills anyones apps in the background, i would consider that suboptimal, and basically malware
3) I never said that some "system apps stays working in the background and messing with their data can lead to corruption". What i said was i designed the script to best avoid corruption by running only after boot completed and when avg CPU usage over 5 minutes was less than 30%. The sqlite3 itself generally wont allow access to a file in use. Im just adding what i think is a reasonable level of extra safety by deciding when the optimization routine starts to run, and that it isnt abused/misused by running multiple times in an unreasonable timeframe
4) How does
I refer the gentleman to the name of the module and title of the thread:
"Automatic SQLite DB Optimizer"
the distinct lack of the word "manual" should be a clue
not equal "NO, my module will not do that", only with some attempt at humour and a long explanation (soon followed by a more reasoned explanation) because i didnt want to appear dismissive. Yet it looks like you’d have preferred dismissive??
You seem impossible to please anyway someone tried to do it....
To be honest Im tired of this circular conversation. Everyone else knew from the word automatic in the title how things was going to work. Ive made suggestions of alternatives (SD Maid) and even offered to give you the info to change the script for yourself, and cant do more than that.... please choose one and lets move on, please?