5,598,542 Members 44,580 Now Online
XDA Developers Android and Mobile Development Forum

[Utility][WIP/DEV] FireParted v1.1 - KF Partition Manager

Tip us?
 
eldarerathis
Old
(Last edited by eldarerathis; 3rd April 2012 at 11:10 PM.)
#1  
Senior Member - OP
Thanks Meter 299
Posts: 154
Join Date: Jun 2010
Default [Utility][WIP/DEV] FireParted v1.1 - KF Partition Manager

Notice: I'm shelving this, at least for now. The errors are too inconsistent and sporadic, and testing has proven to bee rather arduous. I won't delete the repos, but I'm not currently planning to support or look at this much for at least the near future. It's worked for some people, but USE AT YOUR OWN RISK only. I am not providing binaries for this, if you want to use it then you'll need to build it yourself and if you go to that much trouble I would hope you know what you're doing.

If an error occurs, I recommend rebooting into any version of FIREFIREFIRE that has the 'fastboot oem format' command and using that to fix your partition table. If you have no idea what that last sentence just said, I strongly suggest you do not use this tool.

-----

I briefly mentioned in a previous post that I was working on an app that would enable you to resize your data, cache, and sdcard partitions so that you can have some more app installation space. Now that I've gotten everything to a stable point, I'd like to go ahead and release my work to the general public for anyone who wants to give it a try. So, I'd like to present what I've named FireParted.

What is it?

FireParted is a basic partition manager for your Kindle Fire, released under the GNU General Public License v3.0. It provides you with a (hopefully) intuitive GUI for resizing your data, cache, and sdcard partitions. It does not support or affect any other partitions on your device.



How does it work?

To use FireParted you will first need the following:
  1. ADB needs to be configured on your computer to connect to your Kindle Fire. This will not install or configure the ADB drivers for you, but KFU will.
  2. You need to have a custom recovery installed (tested against TWRP, but ClockworkMod should also work)
  3. You need to have Windows with the .NET 3.5 Framework installed (Win7 ships with this, XP and Vista users can use the link to the left if needed). I plan to support Mono, but it has not been tested yet (it does build in MonoDevelop, though, so that's a good sign).
  4. (Optional, but recommended) FIREFIREFIRE v1.1 or later. This will give you access to the 'fastboot oem format' command should something horrible happen (power loss, your computer crashes mid-partition, etc).
  5. Your device must be in recovery mode while running FireParted in order to repartition it. Note that you can make an archive of your /data partition from a normal OS boot.
  6. (Optional) If you want to examine a data archive backup on your computer, I highly recommend 7-zip. It's lightweight, free, open source, and supports TAR and GZIP archives, which is what I'm using to create the backup.

Once you are sure that you have met the prerequisites, you can simply launch the FireParted executable to start the application. Again, before you can do any partitioning work, you will need to reboot your device into recovery. Next you should read the partition table of your device to get a baseline, and then backup your data partition (unless you want it to be formatted). The numeric controls on the left allow you to choose the partition sizes you want, and "Apply Changes" will perform the repartition for you. Then you can restore your data backup and reboot to test your new layout!

Can I get a quick feature rundown?

Sure. FireParted currently supports the following:
  • Repartitioning of the data, cache, and sdcard partitions, to allow for larger app installation space (for example).
  • Archiving and unarchiving of the data partition (to preserve data during a repartition). Can be used simply as a backup mechanism if desired (requires root).
  • Basic sanity checking - FireParted keeps track of how much space you have to split amongst the data/cache/sdcard partitions, and won't let you create a partition that doesn't fit. It also won't let you shrink a partition to be smaller than its current contents. Also limits the cache partition to a minimum of 64MB.

Where can I get it?

The source code is available on my GitHub.

Got an Android question? Stop by Android Enthusiasts!
The Following 18 Users Say Thank You to eldarerathis For This Useful Post: [ Click to Expand ]
 
eldarerathis
Old
(Last edited by eldarerathis; 5th January 2012 at 07:44 PM.)
#2  
Senior Member - OP
Thanks Meter 299
Posts: 154
Join Date: Jun 2010
CHANGELOG

Version 1.1 - 01/04/2012:

Fixed some math/parsing so that FireParted will be more intelligent when determining start/end points for partitions.

Version 1.0.1 - 01/04/2012:

Fixed a minor bug that would cause the GUI buttons to get stuck in a disabled state if an error occurred while reading the partition table.

Version 1.0 - 01/04/2012:

Initial release. Includes all of the planned basic features:
  • Repartitioning of the data, cache, and sdcard partitions, to allow for larger app installation space (for example).
  • Archiving and unarchiving of the data partition (to preserve data during a repartition). Can be used simply as a backup mechanism if desired (requires root).
  • Basic sanity checking - FireParted keeps track of how much space you have to split amongst the data/cache/sdcard partitions, and won't let you create a partition that doesn't fit. It also won't let you shrink a partition to be smaller than its current contents.

Planned features/Needs work
  • Figure out what the hell is causing the "cannot meet constraints" error on other Fires (but not mine )
  • Test and support Mono builds/execution on Windows
  • Test and support Mono builds/execution on Linux (possibly Mac as well)

Got an Android question? Stop by Android Enthusiasts!
The Following 3 Users Say Thank You to eldarerathis For This Useful Post: [ Click to Expand ]
 
galland1
Old
#3  
Member
Thanks Meter 28
Posts: 95
Join Date: Jun 2011
Very nice will be using this in the near future.
 
pyrostic
Old
#4  
pyrostic's Avatar
Senior Member
Thanks Meter 206
Posts: 503
Join Date: Jun 2010
Location: Chicago - Northwest Suburbs
This should be stickied. I could see this being a staple utility.
[Telidroids]
 
dnathan13
Old
#5  
Senior Member
Thanks Meter 225
Posts: 808
Join Date: Sep 2010
Awesome... no elaboration needed
 
cl2eep
Old
#6  
cl2eep's Avatar
Senior Member
Thanks Meter 5
Posts: 226
Join Date: Aug 2008
Location: Altamonte Springs, Florida
Amazing! I assume I can also use this to claim more general storage space? Is their a minimum size I should avoid hitting?
Galaxy SIV - Wicked V8
CWM Recovery

Nexus 7
CM10.2 Nightly
CWM Recovery

Retired/Sold
Rooted Samsung Galaxy SIII - Wicked
Rooted Kindle Fire - CM10
Rooted HTC Sensation - CM9
Rooted T-Mobile G2X - CM7
Rooted T-Mobile MyTouch 4G - CM7
T-Mobile G2 temp-rooted with Visionary -
Rooted Nexus One - CyanogenMod 7 Nightly
Rooted T-Mobile G1 - Cyanogenmod 4, Amon-Ra Recovery
http://twitter.com/cl2eep
 
dj.lub
Old
#7  
dj.lub's Avatar
Junior Member
Thanks Meter 34
Posts: 17
Join Date: Jan 2012
Location: Minneapolis
Time to fire up a VM and give this a shot. Much appreciated!
Amazon Kindle Fire: Rooted, CM7, twrp 2.0.0

 
fulvi3tto
Old
#8  
Member
Thanks Meter 2
Posts: 63
Join Date: Apr 2011
very cool!
 
animefun135
Old
#9  
Senior Member
Thanks Meter 14
Posts: 156
Join Date: Nov 2011
No words, you are our hero. I added in 3 minutes currently 1GB sd card space...
 
eldarerathis
Old
#10  
Senior Member - OP
Thanks Meter 299
Posts: 154
Join Date: Jun 2010
Quote:
Originally Posted by cl2eep View Post
Amazing! I assume I can also use this to claim more general storage space? Is their a minimum size I should avoid hitting?
Sure, you can tweak the values in either direction. Really, however much you think you can manage with should work fine, I would think. When you read out your partition table the meters will let you know how much space you're currently using on each partition, so if you have a lot of free space on /data and don't intend to install a lot of large apps there's no reason you can't shrink it.

I do currently enforce (in code) a 64 MB minimum on the /cache partition. I chose 64 MB because the limit on apks in the Market is 50 MB (source), so 64 MB should in hopefully give you enough space to install anything from the Market.

Of course, another consideration might be OTA updates. A 64 MB cache partition would be too small for the 6.2.1 OTA update package to download, for example. It's possible this could be a sort of poor man's protection from unwanted OTA updates, but I can't make any guarantees

Got an Android question? Stop by Android Enthusiasts!

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes