UPDATE: Toucanscrypt is now v. 1.1! This is to account for the new partition layout of squid's internal build here. Although all modules have been changed to take this into account, I'm willing to do up a custom baked version for anyone using this with another rom or an earlier version of BigSuperRom. Just let me know!
Here it is! My script originally designed for KitKat on the Optimus S/V. It's got a new name, and I'm bumping it up to1.0 1.1 after a major find and another major breakthrough! You can now install apps from play store without /data filling ANY from temp apk downloads. It was actually surprisingly hard to find where it stored those! Also, the entire /data/app folder can be temporarily (or permanently if desired) moved to SD. This allows you to install apps that are too large to fit internally, link them with Link2sd, and then return the folder to internal with the link intact! I know, epic right?!
*Goal*
The goal of Toucanscript is to maximize the app potential with older phones through unique use of the SD card. This is all done while balancing the benefits of extra internal space for apps with the benefits of running as much internally as possible.
*Here's what it does:*
*Here's how I recommend you install:*
Note: A fresh install is recommended (even for updated versions of the script as when things are moved between versions, a new version of the script points to where data should be after a fresh install, not to where it IS currently after being moved by previous versions of the script). It MAY work for you to flash the script after installing multiple apps, but it is not recommended as partition sizes are tight, and I'm unsure what would happen were a partition to fill during the copy process. If you wanna try, be my guest, but as always, nandroid first. My instructions thus assume you'll be starting fresh.
A couple *new* things before you start tho... Some have had issues with SELinux. As such, check settings-about phone-SELinux status to make sure it is permissive. If it's set to enforcing, you'll need the "SELinux mode changer" app (Not on play store--Google it). Also, I recommend having a terminal emulator app installed prior as well as "Storage Partitions" app. If you're using a rom other than squid's, you'll want to check the mount locations for system and cache. They should be blocks 6 and 1 respectively. You can use either the advanced tab in "Storage Partitions" or the "mount" command in terminal. If they are 5 and 1 you can use the version 1.1 alternate here: https://dl.dropboxusercontent.com/u/76769933/Toucanscrypt-1.1alternate.zip
Verifying these may save some headaches later on.
IMPORTANT NOTES
DO NOT WIPE CACHE AND DALVIK THROUGH RECOVERY. Instead I've included a zip to flash that will do it for you. Just flash "wipecache.zip" from recovery and it'll be taken care of for you during boot. Although I've not tried, wiping cache through the "Wipe cache" option in recovery might wipe the partition now labled /intextra that contains system apps. That would be bad...
Do not use Link2SD to move any libs or dalvik to sd; APPS ONLY. Libs and dalvik are already on sd or /intextra via the script, thus linking would only link them from a current sd (or /intextra) folder to a new one. If you have the paid version of Link2SD, you may want to try linking app data.
I'll leave it at that for now. Note that this is an experimental beta I created for myself (yet hope that others use and enjoy). Take all precautions necessary INCLUDING A NANDROID as I cannot be held responsible for loss of data, phone functionality, sanity, etc.
*USING THIS WITH OTHER ROMS*
If you'd like to add this to another ROM... just ask! You're almost guaranteed a "yes", but I'd like to know that it's being used somewhere else so I can make necessary tweaks, follow it's use, make sure I'm credited somewhere, make sure links to this thread are created so I can give whatever support I'm capable of for the other ROM, etc.
Knowing that you're using this brings me joy! Let me know!
Your financial support would bring me joy as well!
In all seriousness, I'm not even setup to receive anything, but this did (and still does) take a LOT of work to put together, so if you were blessed and would like to return a portion of that blessing, let me know. Do not do so, however, without supporting the authors of the ROMs themselves. They've put a lot of work into the ROMs that this script benefits from, as well as into the tech support for novices like myself that can't figure out how to do stuff. My thanks!
Suggestions are encouraged!
Here it is! My script originally designed for KitKat on the Optimus S/V. It's got a new name, and I'm bumping it up to
*Goal*
The goal of Toucanscript is to maximize the app potential with older phones through unique use of the SD card. This is all done while balancing the benefits of extra internal space for apps with the benefits of running as much internally as possible.
*Here's what it does:*
Cache is moved to sd-ext, and thus the internal cache partition is empty.
App libraries are moved to /intextra which is the renamed empty cache partition. This frees space on the data partition to install larger apps(although total app size is limited only by the size of the sd-ext partition, individual apps still install internally before being linked, and thus apps larger than about 100 MB won't install). With a new script add-on, data partition size is no longer an issue!
Dalvik-cache is moved to sd-ext along with playstore temp downloads!
As space on the system partition is precious, /system/media, /system/tts, and /system/app are moved to /intextra as well. Thus, system apps still run off the internal, but they have some extra space. Future work to be done to allow /system/app to be temp moved to SD to allow the install of system apps which can be changed to user apps to save space.
A log of the script's actions with it's links and bind-mounts is created in /data/local entitled "linknlog" . Please send a copy of this log's contents with any support requests.
App libraries are moved to /intextra which is the renamed empty cache partition. This frees space on the data partition to install larger apps
Dalvik-cache is moved to sd-ext along with playstore temp downloads!
As space on the system partition is precious, /system/media, /system/tts, and /system/app are moved to /intextra as well. Thus, system apps still run off the internal, but they have some extra space. Future work to be done to allow /system/app to be temp moved to SD to allow the install of system apps which can be changed to user apps to save space.
A log of the script's actions with it's links and bind-mounts is created in /data/local entitled "linknlog" . Please send a copy of this log's contents with any support requests.
*Here's how I recommend you install:*
Note: A fresh install is recommended (even for updated versions of the script as when things are moved between versions, a new version of the script points to where data should be after a fresh install, not to where it IS currently after being moved by previous versions of the script). It MAY work for you to flash the script after installing multiple apps, but it is not recommended as partition sizes are tight, and I'm unsure what would happen were a partition to fill during the copy process. If you wanna try, be my guest, but as always, nandroid first. My instructions thus assume you'll be starting fresh.
A couple *new* things before you start tho... Some have had issues with SELinux. As such, check settings-about phone-SELinux status to make sure it is permissive. If it's set to enforcing, you'll need the "SELinux mode changer" app (Not on play store--Google it). Also, I recommend having a terminal emulator app installed prior as well as "Storage Partitions" app. If you're using a rom other than squid's, you'll want to check the mount locations for system and cache. They should be blocks 6 and 1 respectively. You can use either the advanced tab in "Storage Partitions" or the "mount" command in terminal. If they are 5 and 1 you can use the version 1.1 alternate here: https://dl.dropboxusercontent.com/u/76769933/Toucanscrypt-1.1alternate.zip
Verifying these may save some headaches later on.
- Backup! Whatever you are currently using, you'll want to be able to revert to this should something go wrong. Nandroid first, then all SD contents (including the Nandroid) copied elsewhere (computer, external hard drive, etc.).
- Create a ext4 partition to be used by link2sd and the script. I recommend Gparted on a Linux OS, but I'm told mini-tool works on Windows (I've recently received conflicting reports; Gparted on Linux is your best bet). Your current recovery may offer an option to repartition your sd as well. I recommend 1.5-2GB. I've yet to fill 1GB, but could see where apps with large amounts of user data could fill it. You WILL NOT need more than 2GB. I've heard reports that smaller, lower-class SD cards should have less in a second partition. Mine is 32GB with a 2GB ext4. (or about 6% total SD size. I wouldn't go above 15%, but you're welcome to experiment.)
REPARTITIONING WILL WIPE SD CONTENTS! - Install squid's internal build here according to his recommendations, including rom zip, Sprint/Verizon fix if using it, and Skinny_4.4_Gapps_new_internal.zip (This was built for the last internal build [4.4.4]. I'm willing to do up a custom baked version for anyone using this with another rom or an earlier version of BigSuperRom. Just let me know! Realize however, that I can only really give support for the ROM I'm on. If you're interested on adding this script to another ROM, see below.).
- Install Link2SD from the play store. Open the app. It should ask what format your second partition is then ask you to reboot. Do so. After reboot, open Link2SD again to ensure it's working. I now recommend Link2SD's pro version. It's not necessary (in fact, I used the free version for years it seems), but the ability to link individual app's data is great!
- Download these. Keep them on your sd.
Toucanscrypt-1.1.zip
Wipecache.zip
ToucanscryptUnlimited-Installer.zip
ToucanscryptUnlimited-Uninstaller.zip - Reboot into recovery. Flash "Toucanscrypt-1.1.zip". Reboot. Cache and dalvik will be rebuilt (Android is upgrading message).
- That's it. Link2SD gives partition details in it's options. Check if it worked. You can also use Partition Table from the app store under advanced settings (that's what I use). The logs created in /data/local also give some info.
- Begin moving apps to sd with Link2SD. I recommend moving most if not all apps over (except Link2SD itself of course) until you've installed what you want, then moving some back if desired. Also I personally like to change some system apps to user apps with Titanium Backup so that they can be moved as well. Titanium backup does seem to work slightly better unlinked on internal. Same with keyboards and anything that needs to speedily access a fair amount of data.
- *NEW* In order to get full unlimited app downloading benefits, at any time apps are still struggling to find space to install, flash ToucanscryptUnlimited-Installer.zip from recovery. Reboot, and then install or update any and all apps. When finished, flash the uninstaller (or, if you'd rather have the entire /data/app folder remain external, remove all links via Link2SD and remove the Link2SD program, as it is no longer necessary. You can then continue normal use free of size limitations, but with possible slight slowdown and extra sd wear.).
IMPORTANT NOTES
DO NOT WIPE CACHE AND DALVIK THROUGH RECOVERY. Instead I've included a zip to flash that will do it for you. Just flash "wipecache.zip" from recovery and it'll be taken care of for you during boot. Although I've not tried, wiping cache through the "Wipe cache" option in recovery might wipe the partition now labled /intextra that contains system apps. That would be bad...
Do not use Link2SD to move any libs or dalvik to sd; APPS ONLY. Libs and dalvik are already on sd or /intextra via the script, thus linking would only link them from a current sd (or /intextra) folder to a new one. If you have the paid version of Link2SD, you may want to try linking app data.
I'll leave it at that for now. Note that this is an experimental beta I created for myself (yet hope that others use and enjoy). Take all precautions necessary INCLUDING A NANDROID as I cannot be held responsible for loss of data, phone functionality, sanity, etc.
*USING THIS WITH OTHER ROMS*
If you'd like to add this to another ROM... just ask! You're almost guaranteed a "yes", but I'd like to know that it's being used somewhere else so I can make necessary tweaks, follow it's use, make sure I'm credited somewhere, make sure links to this thread are created so I can give whatever support I'm capable of for the other ROM, etc.
Knowing that you're using this brings me joy! Let me know!
Your financial support would bring me joy as well!
In all seriousness, I'm not even setup to receive anything, but this did (and still does) take a LOT of work to put together, so if you were blessed and would like to return a portion of that blessing, let me know. Do not do so, however, without supporting the authors of the ROMs themselves. They've put a lot of work into the ROMs that this script benefits from, as well as into the tech support for novices like myself that can't figure out how to do stuff. My thanks!
Suggestions are encouraged!
Last edited: