Universal Theme Porter by Wugfresh...

There is a reason unknown to you guys. That we stopped incognito please do not release a port for it.

Sent from my DROIDX using DroidForums App
 
There is a reason unknown to you guys. That we stopped incognito please do not release a port for it.

Sent from my DROIDX using DroidForums App

I will not release one

Sent from my DROIDX using Tapatalk
 
WugFresh - Response to Themers

it just switches the images in each apk if images are named different it gets skipped. it doesnt port xml files. so if there was any edit to those those will get missed and you are missing the look the OG dev was going for. I hate these tools!!!

+1
I've seen my themes ported to other devices and ROMs and they totally didn't get fully ported and then people started criticizing me for a bad theme or issues reading text, mismatched colors...etc.

While they can make some of the porting work easy....be careful that you get the FULL experience that the OG dev wanted to give you! There's nothing worse than seeing black text on a black button! (or rather, NOT seeing it)

Thank you for expressing your opinions about your distaste towards my theme porting project, first and foremost, I would have much rather that you addressed your concerns or bad feelings towards me directly, but since you didn't go that route, I would like to take this opportunity to address your comments publicly and hopefully open a discussion about these issues and give you a deeper explanation of:

  1. What exactly it is I am trying to do and my plans for future releases.
  2. How I have NO interest in offending themers.
  3. How I am COMPLETELY open to all forms of communication about how I can better accommodate/address your concerns.
The WugPort Universal Theme/App Porter project is very much a work in progress, and like bgill55 clearly stated, the latest porter (WugPort_v4.6.1) DOES NOT port xml. For those of you who are not themers or are knowledgeable about the hard work involved to build a theme, here is an oversimplified explanation of the essential components involved which will be (a.) necessary to continue my explanation and (b.) validate the concerns of all themers in opposition to my project as it exists today.

  • PNG's: Standard Image Format, themers makes these graphics from scratch and use their artistic ability to make the majority of visual elements in a given theme.
  • XML: Extensible Markup Language, there are many themed aspects within the framework-res.apk and blurr-res.apk that are not governed by image files (font color, download progress bar color, ect...), but need to be hard coded into the XML files; hexcode values need to be altered within the decompiled XML (using apktool), and some alterations can be made without decompiling using a hexcode editor.
  • Services.jar: Java Archive, The clock in your notification bar is governed by data held within this archive type and needs to altered using a tool like colorchangev3
Since WugPort_v4.6.1 only ports PNG files, the outputted theme IS NOT an accurate/precise port of how the original themer intended, and rightfully so, a themer who see's their work botched my porter, has every right to be frustrated with whats going on. I can understand that when you see a wugported theme that only contains one of the two essential components that makes up a theme it is practically blasphemy (in the themer world... so to speak).

So to be clear, I am fully on board with your concerns and the concerns of all themers and want to come to understanding;

I am now going to explain to you all;

  • My plans for tackling automating the XML aspect of theme porting
  • Specific features I am going to bring in WugPort_v4.7
  • An overview of my final goals for the project and primary objective
  • Some potential ways I could try and remedy the frustrations you have with my project as well the concerns of any themers who shares a similar outlook about; what I am currently doing, what I have already done thus far, and what am planning on doing for the future.
How I Will Tackle XML "Porting":
Since no two framework-res.apk files are alike (across different ROMs), the idea of "porting" xml is impossible; if it were as simple as copy paste, then all themes would already work on every ROM. So this is how I plan on tackling the xml issue. I am simultaneously working on two solutions, one of them is very labor intensive and is not really a practical solution in the long run unless I get more people helping me or supporting the project, the other solution is much better however it requires a level of sophistication that is going to take me significantly longer to bring to fruition and I am currently a full time college student, so I can't give it the kind of time commitment to get it done quickly (relatively speaking).

Solution 1: (the preemptive manual approach)

I am currently creating a massive library of xml modified original framework-res.apk files for every popular ROM, with all of the xml edits made for every major color group (black, white, red, green, yellow, orange, blue, purple, pink....). Yes, If you haven't figured it out already, I am absolutely crazy. What this means though, is if a user ports a Red theme to Darkslide for example, and upon flashing it, realize that the xml governed colors came out wonky, like black text on black buttons, then the user can re-attempt the port, however, this time, they will pull up an alternate menu in my porter which will give them the option to swap out the stock Darkslide framework-res.apk for a red colored text (and dl progress bar...) xml edited/modified Darkslide framework-res.apk pre-port, that way when they port the theme, this time, the final outputted theme will in fact have correct (or should I say semi-correct*) xml governed color aspects.

Pro's: For many users, this will be an adequate solution to resolve XML related coloring issues, and will make WugPorted themes closer to how the OG themer intended.

Con's: Well for one, I am never going to be able to sleep, because beyond my current work to build this initial massive library of pre-tweaked original framework-res.apks for every popular ROM; every single time a new ROM release comes out, I will have to make another 10-20 manually modified framework-res.apk's and update the WugPort release version. This wouldn't be as difficult or tedious for me if the framework-res.apk were perfectly identical, but since they are different for every ROM, despite all the documentation on XML editing, the process, as it exists today, is heavily based in trial and error. That sort of undertaking would probably drive me more crazy than I already am, something I am not trying to do. Another major con of this approach is one I already likened too in my explanation of solution one and placed an asterisk(*) after; "or should I say semi-correct", what I was hinting at there, was although I am planning to provide modified framework-res.apks for every major color (for every popular ROM), any artist will tell you that there are WAY more colors than 10-20, and that if I were to actually do this to cover ALL situations perfectly/universally, I would have to account for every single hue in existence (within the android hexcode color spectrum); furthermore, some theme's have xml edits for all yellow text (for example) but a different color download progress bar (or a situation similar to this nature...), basically what I am saying is that my "universal" pre-modified framework-res.apk's are still a "One-Size-Fits-All" scenario, and cannot account for the finite intricacies within a theme that, as of today, can only be achieved by the original themer, or a person who is working hard to accurately mimic the work as it was intended to appear. Yes, technically I could always make more modified framework-res.apks with every possible combination of edit, but a quick review of exponential equations will show you that an undertaking of that nature would be completely ludicrous. Additionally, as it stands right now WugPort is only built for the DX (which means people probably have "success" with it on the D2 as well), but I have plans to make the porter work for every single Android device, I am already planning to release a Nexus-S version, an official D2 version, and others as per requested. For all of these reasons, I don't want to pursue this approach as my final solution to the XML problem. I may be dedicated to this project, but I am not looking to undertake an astronomical amount of work, plus, from a programmers standpoint, manual XML editing is an oxymoronic approach as an "automated solution".

Solution 2: (creating a sophisticated developer tool)

I am currently investigating/testing ways to implement XML parsers to analyze the the decompiled XML files; the idea is that it will check for color hexcode values that match entries in a data base that I have predefined by importing all the possible android color hexcode values into, therefore automatically determining all the editable regions within a given xml file. Furthermore, I am trying to figure out ways to relate those editable regions with what they actually govern; possibly by parsing for string characters and/or specific syntax around it, or through some other structure/content related approach. Assuming that I can actually accomplish that (which I really am not sure of... and has already been extraordinarily difficult just for me to wrap my ahead around), I would then move on to build a GUI front end, which would allow the user to change any XML governed themed element through a friendly interface with hexcode color pickers and such.

Pros: this would truly be a universal solution to xml editing for non advanced android users and could also be used by themers to make their lives a lot easier. And despite the level of complexity (not even sure it can be done) involved with initially creating such a program, it could be used on all android devices without me constantly doing manual xml editing, and I could focus my attention towards bug fixes, and working on developing other automated xml editing features, like changing the increments of the battery percentage notifications from 20% increments to 10%....ect.

Cons: Since this program idea is reliant on parsing decompiled android xml files, it will subsequently be reliant on an android xml file decompiler; and the only one to my knowledge that exists right now that also allows you to edit the code is apktool. What that means, is that in order for the user to benefit from the program I am trying to develop they would first have to set up the SDK and configure Java correctly, because those are both prerequisites for apktool to work. That is rather frustrating for me, because ideally I wouldn't have to piggyback off a preexisting program, especially one that isn't a standalone and requires a whole developing environment to be in place first. Those kind of restraints further deviate the program idea from my ideal vision of a developing tool that is very user/noob friendly. The obvious con to this approach is the level of complexity involved, and the sheer amount of time its going to take for me to make a stable/reliable release candidate.
So regarding XML editing, yes I am aware that WugPort currently does NOT "port" XML but hopefully in the near future, at least via solution one, there will be an easy way for end-users to wugport their favorite theme to their favorite ROM (and in the semi-near future; to their favorite android phone), where the resulting outputted theme comes out much closer to how the original themer intended; or at the very least, remedy problems such as black text on black buttons.

WugPort_v4.7 Features

  • Solution One will be implemented to provide the first (hopefully temporary) "ok" fix for font coloring issues ect...
  • Will improve the png porting capabilities, by enabling users to selectively port themed components rather than all of them; what I mean by this is selective system app porting, like a themed Phone.apk ported from one theme, and a themed Google Search Widget ported from another; it also will enable selective framework-res.apk porting, like porting the lockscreen from one theme, and the notification bar/icons from another...
  • Allowing users to port to odexed ROMs without deodexing first by integrating the code for deodexing into the ported themes updater-script.
  • Other features regarding user app and goody bundling, as well as adding a bunch more goodies.
Final Goals/Objective For the WugPort Project:

  • To build a user friendly tool that will selectively port any themed element from any ROM on any android phone, while still respecting the wishes of the themer community, through channels of open and/or direct communication about any issues, questions, or concerns any of you have.
  • To adequately educate the end users of WugPort about the proper ways in which to utilize the program in a matter that remains beneficial to them while still adhering to general guidelines targeted to perpetuate healthy and respectful relations with the themer community at large.
Addressing the concerns/frustrations of the themer community:

Let me start off by saying that the last thing I want to do, is to anger the people who make porting themes possible in the first place. Without your personal aesthetics and graphic design capabilities, there would be NO themes. I am fully aware that it is your artwork which is being ported/shared to other android users by my program, so it is my responsibility as the developer of WugPort to respect your varying opinions and act accordingly. It is my personal belief that if we maintain respectful and open communication throughout the development and administration of future WugPort releases, that overall, this project will be greatly beneficial to all parties involved, that being;

  • me the developer of WugPort who gets to see my idea come to reality and spread throughout the community, the -
  • end-users who get to use the product and benefit from it's many features, and -
  • you, the themers, who get to reach a much larger audience with your artwork, share your aesthetic point of view with more end-users, and expand your number of supporters by tapping into the android community at large, rather than being restricted by subsections governed by ROM and device.
And YES, I understand that all the above statements are all under the assumption that I can adequately develop ways to ensure that your (the themers) unique point of view is maintained as close as I possibly/'programatically' can, if not identical to your original work.

All I ask of you (the themers) is that you understand that there are limitations to what I am capable of, that I am only one person and regardless of how little I sleep, it will always take me time to develop new features or implement changes, and that I am passionate about building this program. Beyond that I am open to any suggestions regarding:

  • How I can better improve the project,
  • How I can better inform end-users of anything pertaining to the use of this program
  • How I can better communicate/accommodate, the varying opinions of the themer community.
Some potential Ideas:

  • Clearly specify to end users not to seek out the original themers to complain/inquire about any problems associated with a theme that has been WugPorted.
  • Provide a centralized location (not on Droid-X Forums) for people to post problems, write comment, and/or support the project.
  • Maintain a list of themers who sanction the use WugPort, and require the user to chose from that list of approved themers names (within the wugport program) prior to WugPorting, so that the final outputted ported theme will have that themers name, initials, or some type of unique identifier, in the file name; that unique identifier would then correspond to a table separated website with all the approved themers names and corresponding donate buttons.
  • Within the list of names the user has to chose from, there will be the option "Other"; and If the user chooses that option, it is under the assumption that they will abide to a disclosure agreement I will write that states, that they will not post that ported theme in public domain, without first contacting the original themer themselves and getting approval
  • Include some unique identifier in the outputted theme name, that clearly/readily states/shows its been ported by WugPort the program and not by a person, so that way people are aware that it may not be a perfect match with how the original themer intended.
  • Provide themers a pre-written statement that they can use in response to any end-users that mistakenly direct questions towards them rather than to me about their WugPorted theme.
  • I know I previously mentioned that I am going to include the ability to selectively port elements from different themes.... for those mixed themes, I am not sure what the best approach would be, but I am open to suggestions on that; maybe just group that with "Other" category; assuming themers end up wanting me to maintain a sanctioned themer list...
  • Ask that end users always contact the original themer every time they want to port a theme (seems impractical, but if that's what you would prefer, then I will oblige)
  • Or any other ways that I can ensure that end-users are clear on who the original themer is, that the theme was ported by my program, and understand the guidelines/expectations for appropriate use of WugPort.
I hope that helps to clarify my stance, and alleviates some of your concerns/frustration towards the project and hopefully initiates an open-respectful discussion about the concerns/frustrations of anyone in the themer community. If any of you (themers, devs, end-users) ever see any other negative comments or bad feelings regarding the WugPort project, I would sincerely appreciate it, if you provided them a direct link to this post and/or direct them to contact me directly at [email protected]

{{ WugFresh }}
 
Last edited:
Just curious, will this work to essentially extract a theme out of a ROM? For example, what if I wanted the SSX look on Rubix. Could I put in the SSX ROM as a theme and get what I want?

Yes, you could do that and it would work; since the directory structure of an entire ROM.zip is the same as a theme.zip, except for the additional folders, the WugPort program would extract the contents of the zip and then only copy over the /system/framework and /system/app folders to the directory where the porting process takes place. The only thing WugPort wouldn't do (as the program currently exists - v4.6.1), is clean up those additional folders in the temp directory where that ROM.zip is initially extracted too. This really isn't a problem because the only folders that need to be cleaned out before the next port are framework and app folders, however I suppose technically it would be leaving behind some unnecessary files on your hard disk, so I guess you could say it would be "wasting disk space" but the amount would be negligible (less than 100MB). Regardless, I can easily append a few entries to the cleanup scripts in the next release to accommodate for that situation.

{{ WugFresh }}
 
+1 for the awesome work and the mature, rational response, WugFresh.

I'll be keeping a close eye on your project.
 
+1 for the awesome work and the mature, rational response, WugFresh.

I'll be keeping a close eye on your project.

Thank you jdhas! I'm looking forward to hearing what others have to say about this and if there are any other suggestions or opinions regarding how I can change/improve the course of the WugPort proejct to better accommodate the android community overall while still respecting the wishes of the OG themers. I was serious about implementing any of the ideas I put forward as possible solutions, and am completely open to other ideas... just waiting for feedback on what themers and end users think I should do. Like I mentioned in that post, I really would like to continue working on this project, but I also have no interest in making anyone frustrated with me.

{{ WugFresh }}
 
Huge amount of respect and gratitude headed your way for that post Wug. It's always nice to see a well written, intelligent post like that, and it's easy to remain engaged while reading, despite the length. I'd also like to commend you on your humble, yet passionate attitude and your willingness to respect and work with the themers: it's nothing if not refreshing to see this type of a response as opposed to the more customary drawing of swords and flapping of tongues.

As for the tool you've created in WugPort, that too is a marvel. I am very excited to follow your continued work on this project. Your hard work and dedication is very appreciated. Thank you.
 
Last edited:
Thank you kwest, your response means a lot to me. I'm glad you feel that way and recognize that my intentions are purely to build a helpful tool for end users and that have no interest in offending anyone.

{{ WugFresh }}
 
First of all, GOOD work wug. I want to know if this was out when I started making theme's back in November? Ill have to take some time to look into this more one day because this tool looks like the answer to all my prayers but for now I'll just have to stick with my trusty and slow but efficient method for putting a theme together.

Where is your donate button man? I want to throw you a couple bucks for the obvious hard work and dedication you put toward this community.
:hail:
(Mod edit: language)
 
First of all, GOOD work wug. I want to know if this was out when I started making theme's back in November? Ill have to take some time to look into this more one day because this tool looks like the answer to all my prayers but for now I'll just have to stick with my trusty and slow but efficient method for putting a theme together.

Where is your donate button man? I want to throw you a couple bucks for the obvious hard work and dedication you put toward this community.
:hail:
(Mod edit: language)

First thing: watch the language...so no need for swearing.
Second: donate links only allowed for official themers and devs. He would have to get with cerealkiller if no badge.

Sent from somewhere...
 
First of all, GOOD work wug. I want to know if this was out when I started making theme's back in November? Ill have to take some time to look into this more one day because this tool looks like the answer to all my prayers but for now I'll just have to stick with my trusty and slow but efficient method for putting a theme together.

Where is your donate button man? I want to throw you a couple bucks for the obvious hard work and dedication you put toward this community.
:hail:
(Mod edit: language)

Thank you. :) I think my first public release was late January. I am not an official themer/dev so the mod is right, I can't post a link, I never asked anyone how to become one though, maybe thats something I should do. If you would like to support the project there is a donate link inside the package or you can email me at my username @gmail.com, all support is greatly appreciated. Thanks again! Let me know how like it.

{{ WugFresh }}
 
Can someone please port this over for me?

http://www.droid2files.com/themes/Bl...iberty_1.5.zip

It's Draya's Black Gingerbread and it's for the D2, but I have a DX. Here is the original post.

http://www.droidforums.net/forum/liberty-rom-d2/122399-theme-gingerbread-series-liberty.html

If someone can PM me when they've done it, that would be wonderful!

Edit: I am on a mac, so that is why I can't do it.

ALL of drayas Gingerbread Series will run on DX/D2...
We can stop a lot of double posting if we take the time to read thru the threads & do a little research....:blackdroid:
 
it just switches the images in each apk if images are named different it gets skipped. it doesnt port xml files. so if there was any edit to those those will get missed and you are missing the look the OG dev was going for. I hate these tools!!!

+1
I've seen my themes ported to other devices and ROMs and they totally didn't get fully ported and then people started criticizing me for a bad theme or issues reading text, mismatched colors...etc.

While they can make some of the porting work easy....be careful that you get the FULL experience that the OG dev wanted to give you! There's nothing worse than seeing black text on a black button! (or rather, NOT seeing it)


It doesnt do any xml's and if it did it would be too good to be true, but regardless its a nice feature to have and saves time if you are going to properly port a theme. Good job Wug
 
Back
Top