yashsingh1/xdaforums huggingface dataset:
[Android Software/Hacking General [Developers Only]] amarullz:
here in aroma.h source

//-- Temporary Dir - Move from /tmp/aroma-data to /tmp/aroma symlink to /tmp/aroma-data for backward compatibility
#define AROMA_SYSTMP "/tmp"
//#define AROMA_SYSTMP "/data"
#define AROMA_TMP AROMA_SYSTMP "/aroma"
#define AROMA_TMP_S AROMA_SYSTMP "/aroma-data"

#define AROMA_DIR "META-INF/com/google/android/aroma"
#define AROMA_CFG "META-INF/com/google/android/aroma-config"
#define AROMA_UPDATESCRPT "META-INF/com/google/android/updater-script"
#define AROMA_ORIB "META-INF/com/google/android/update-binary-installer"
#define AROMA_FRAMEBUFFER "/dev/graphics/fb0"
#define AROMA_INSTALL_LOG (AROMA_TMP "/.install.log")
#define AROMA_INSTALL_TXT (AROMA_TMP "/.install.txt")
#define AROMA_THEME_CNT 24

Yes, you can just copy the AROMA_INSTALL_LOG into another location.. in this case the location was in /tmp/aroma/.install.log
[Android Software/Hacking General [Developers Only]] amarullz:
For you who have trouble with calibration tools result. I try new method named Matrix Calibration. It's only need 3 sample left-top, right-center, center-bottom. But the calibration data is more complex: 7 Floating point + 1 flag.

Please for user with device like sgs2, can you try the latest AROMA Filemanager Test:

http://www.amarullz.com/_downloads/nightly/secret/angklung/aromafm.zip

It contains new calibration method. If it works better than conventional calibration, I will add it in AROMA Installer.
[Android Software/Hacking General [Developers Only]] teorouge:
Hello amarullz, nice job. Keep reading you since good old windows mobile times, it's nice. And this Aroma is quite ground breaking, you know? :)

I read there's a specific build for qHD screens, would you need another one for a 1024x600 (if I remember Flyer resolution right) screen?

Thank you once again for your awesome work.

HTC Flyer P510e
[Android Software/Hacking General [Developers Only]] amarullz:
hi teorouge, long time not see you, how are you?

yes i need more test, can you test the nightly build in previous page in your device?

its not qhd specific buuld, but build with qhd and all other screen resolutions fix.

its include pitch/padding/stride framebuffer for screen size that not in multiply 8. the qhd width: 540/8? the multiply 8 is: 544, so padding is 4.

plus include new touch implementation. hope it works for all device
[Android Software/Hacking General [Developers Only]] teorouge:
Nope sorry, never cooked an Android ROM so far, was asking that to propose the installer to the chef of the Flyer ROM I use (LeeDroid) as I tried Aroma on Desire and it's great. Hope he'll like that and it'll be integrated. :)

HTC Flyer P510e
[Android Software/Hacking General [Developers Only]] amarullz:
To check the new nightly available:

http://www.amarullz.com/_downloads/aroma-nighly/

-- EDIT --

BUILD Nightly 009 Ready to download:

http://www.amarullz.com/_downloads/aroma-nighly/aroma-nightly-120102-009.zip

Commit newest source:

https://github.com/amarullz/AROMA-Installer
[Android Software/Hacking General [Developers Only]] Droidzone:
Ok, now that it's open source and has no signature, I'm interested. :) Will have a go.
[Android Software/Hacking General [Developers Only]] Mr.Mefisto:
Thanks a lot amarullz for this open sorce of aroma installer!! iwill give it a try in the near future!
[Android Software/Hacking General [Developers Only]] amarullz:
It's great to open sourcing it... but maybe you had any tips for it? (license, build environment for linux, etc)?

The build 10 with improved touchscreen (confirmed works more accurate on sensation, defy & evo3d) has been released in 1st page. Source also commited.
[Android Software/Hacking General [Developers Only]] Droidzone:
I tried building it in Linux, but it failed giving an error about a reference to a missing header. Will give the specific message later.
[Android Software/Hacking General [Developers Only]] amarullz:
it need pthread and libm
[Android Software/Hacking General [Developers Only]] synergye:
Just wanted to say awesome job. Currently getting it setup with credits going to you for my ICS source roms on Desire HD/Inspire. I'm putting in two different builds with a prop check to see which system folder to copy, and another check to copy a dual pane setting framework-res.apk if the option is selected.

Seriously, great work! If I wasn't so strapped right now, I would send you a donation for this!

Edit: Finally able to do something that I previously needed multiple zips for, and it's open source, and totally non-malicious.
[Android Software/Hacking General [Developers Only]] amarullz:
I am happy that the source is benefit, and there is people who watch for it. I am a little embarrassed that I don't cleanup the code & structure before I release it.

If you had any fix or features that may useful for us, I will be happy to included it... But How can other people do commit/contributing/etc with source code... I am noobs with it :D
[Android Software/Hacking General [Developers Only]] synergye:
They can fork your project, then if you like anything they do, you can "cherry-pick" their commit into your master branch, or a different branch. Or create a new branch all together with their fork, then merge the branches. You could also create an "organization" on GitHub with multiple members, and each member could work on a different branch of the project.

When I have time tomorrow, I'll fork and add some changes of mine on my GitHub so you can check it out a bit. Thanks again for putting out something totally innovative and different.
[Android Software/Hacking General [Developers Only]] amarullz:
Great... Thanks for your info :eek:
[Android Software/Hacking General [Developers Only]] :No-Frost::
Amazing, I will definitely look into this!!!!
[Android Software/Hacking General [Developers Only]] synergye:
Can file_getprop be used to check two prop lines? I have a framework-res that is different for both builds I'm packaging in, and would like it to know if the second option is selected, which framework res to copy (based on which build is selected in the first selections).

Edit: I'm getting the error: file_getprop: failed to stat

"/tmp/aroma-data/customize.prop"

Edit2: Ignore last edit, I'm stupid, lol.
[Android Software/Hacking General [Developers Only]] amarullz:
no file_getprop only support 1 prop per call, but you can always call it again to know other lines. and you also can do "if/if-else" inside other if/ifelse, or you can use logical operator in if (or, and, not) look at 1st page about edify.

for best learn, download runnymede aio script (1st page), its contains completed real example script for aroma-config and updater-script

Sent from AROMA Installer at 2AM
[Android Software/Hacking General [Developers Only]] synergye:
Awesome! Just what I wanted to know, and downloading now. Thank you for your awesome work!
[Android Software/Hacking General [Developers Only]] Sneakyghost:
Hey Amarullz,

this is about the wickedest thing i have seen since diving into the android world myself. Massive props to you my man. Sorry to spoil your Dev thread with something trivial but i just had to drop a coment here as i am always absolutely delighted if people come up with some mad fresh ideas! This looks so huge man!

Thank you, Sir!
[Android Software/Hacking General [Developers Only]] amarullz:
Thanks man... But its not pure development thread, but more like release/support thread. the developt/testing things always happened in pm or im for quicker feedback.

Yes it was fresh idea, come from my mind when I first time learn about updater-script and android rom, then I see yesno binary, then i see the Recovery source to know how it works. then i decide that it was possible :D
[Android Software/Hacking General [Developers Only]] avss:
On the Samsung Galaxy SII the screens are not displayed correct. Cant really see what it says and can't get through calibration setup.

Is there something i can do in Aroma config ? Couldnt find nothing apart from calibrating values wich i cant replace because i dont get a clear screen.

I hope this can be fixed as i am really happy about this Aroma installer you've made.

If i can get it to work on a Galaxy SII i will sure be happy to donate to you :)
[Android Software/Hacking General [Developers Only]] RoadXY:
Great!

Stupid question (probably): how to copy the file to the SD card?
[Android Software/Hacking General [Developers Only]] amarullz:
use something like this (in aroma-config):

write(
"/sdcard/my-install-log.txt",
readtmpfile(".install.log")
);

or

exec(
"/sbin/cp",
"/tmp/aroma/.install.log",
"/sdcard/my-install-log.txt"
);
[Android Software/Hacking General [Developers Only]] RoadXY:
Sorry, was thinking about a copy command but using the write command together with readtmpfile didn't cross my mind.

Excuse my thinking fault.

Thanx.
[Android Software/Hacking General [Developers Only]] RoadXY:
Is there a list of installer exit code's somewhere?

I know 0 = success.

And is it possible to change the default setting of a confirm-box to 'No'?

Default is Yes and I don't want that users easely confirm througout the installation and not knowing they confimed a installation warning on the system partition size.

Hardware call button is select on HTC HD2, as you might know.

Thanx a lot for your great installer!

---------- Post added at 02:10 PM ---------- Previous post was at 02:09 PM ----------

Used the first option and its working great!
[Android Software/Hacking General [Developers Only]] amarullz:
Switch the Yes & No Text

if
confirm(
#-- Title
"Confirm Demo 1",
#-- Text
"Please Select Yes or No?",
#-- Icon (Optional)
"@info",
#-- Yes Text
"No",
#-- No Text
"Yes"
)=="yes"
then
alert("Result","COMMAND FOR NO");
else
alert("Result","COMMAND FOR YES");
endif;
[Android Software/Hacking General [Developers Only]] RoadXY:
Thanx.

Is there a list of installer exit code's somewhere?

I know 0 = success.
[Android Software/Hacking General [Developers Only]] mrRobinson:
I can just swap this binary in and test it? do i need the assets? I have the us sgs2 and calibration was a struggle, having to hit each point 10+ times and although works well touchwise, scrolling more often selects where you first touch than starts scrolling.
[Android Software/Hacking General [Developers Only]] amarullz:
Its different project, and wont works with aroma installer.

Please just try flash it, it was file manager. If the calibration works well, i will implementing it in installer
[Android Software/Hacking General [Developers Only]] grayn0de:
Nevermind. I just had an idea.
[Android Software/Hacking General [Developers Only]] mrRobinson:
Its worse. I can't get even the first data point to register. I tried both normal and alternate. its starts as a small circle and as soon as i touch it a large circle appears around it but never moves. I tried pressing with varying finger tips/areas.

---------- Post added at 10:43 AM ---------- Previous post was at 10:39 AM ----------

Amarullz, I'm on the freenode chat now. any chance you have a moment to spare to look at this? I'm sure it must be something stupid from lack of understanding. I get no output during install and status 6.

I've even looked at what others do and see no real difference....

EDIT: I'm installing options this way:

##

## MISC OPTIONS

##

ui_print("@ Installing Misc Options...");

if

file_getprop("/tmp/aroma/misc.prop","item.1.1") == "1"

then

package_extract_file("launchers/ApexLauncher.apk", "/system/app/ApexLauncher.apk");

endif;

if

file_getprop("/tmp/aroma/misc.prop","item.1.2") == "1"

then

package_extract_file("launchers/NovaLauncher.apk", "/system/app/NovaLauncher.apk");

endif;

or maybe problem is mounting? i do seem to have to unmount /system /cache /data first for wiping then remount later as does aroma auto mount these?
[Android Software/Hacking General [Developers Only]] moddroid:
problem!

hi i have added the harsh kernel to the installer but this not have a boot.img but have Zimage i have added this code on updater-script :

#HARSH KERNEL 3.0.8
if
file_getprop("/tmp/aroma-data/kernel.prop","selected.1) == "3"
then
ui_print(" install harsh kernel");
package_extract_dir("customize/kernel/harsh/system/lib/modules", "/");
package_extract_dir("customize/kernel/harsh/kernel", "/tmp");
set_perm(0, 0, 0777, "/tmp/dump_image");
set_perm(0, 0, 0777, "/tmp/mkbootimg.sh");
set_perm(0, 0, 0777, "/tmp/mkbootimg");
set_perm(0, 0, 0777, "/tmp/unpackbootimg");
run_program("/tmp/mkbootimg.sh");
package_extract_file("/tmp/newboot.img", "/dev/block/mmcblk0p5");
endif;

but the installer don't work and tell me installer status:6

can you help me? thx
[Android Software/Hacking General [Developers Only]] mrRobinson:
i get same status.... i don't use /tmp for anything but someone mentioned earlier using /tmp seems to mess up aroma a bit. try to use a different folder.
[Android Software/Hacking General [Developers Only]] moddroid:
thx

thanks i try but for me is because the kernel don't have the boot.img but Zimage and other files

---------- Post added at 07:06 PM ---------- Previous post was at 06:55 PM ----------

i have used this code for this problem:

# APEX LAUNCHER
if
file_getprop("/tmp/aroma-data/mods.prop","selected.1") == "2"
then
ui_print(" Install Apex Launcher");
package_extract_dir("customize/launcher/apex", "/");
delete("/system/app/Trebuchet.apk");
endif;

# NOVA LAUNCHER
if
file_getprop("/tmp/aroma-data/mods.prop","selected.1") == "3"
then
ui_print(" Install Nova Launcher");
package_extract_dir("customize/launcher/nova", "/");
delete("/system/app/Trebuchet.apk");
endif;

;)
[Android Software/Hacking General [Developers Only]] mrRobinson:
that's odd, i'll try it but how does extracting to "/" make it go to system/app? I like understanding what i'm doing..:D

and what if I wanted to extract something to /data/app?
[Android Software/Hacking General [Developers Only]] amarullz:
No there is no problem using /tmp, previously we talk about saving installation logs not works when there is too many logs...
[Android Software/Hacking General [Developers Only]] moddroid:
because

you extract to "/" because the position of the .akp is apex/system/app/apex.apk and when you extract to "/" the installer automatically combine the folder;)

for extract something to "data/app" i haven't idea i'm sorry :(

---------- Post added at 08:37 PM ---------- Previous post was at 08:24 PM ----------

but if i want to build a boot.img from a Zimage file how i can do it?
[Android Software/Hacking General [Developers Only]] leventccc:
Hi Guys I want to update my mod pack for htc one x from aroma 1.10 to 1.64 but it gives me status 0 error. Anybody show me how can I update my pack to 1.64? Here is the mod if you want to take a look. http://xdaforums.com/showthread.php?t=1583748
[Android Software/Hacking General [Developers Only]] mrRobinson:
I wonder if i should try 1.10. I can't get my stuff to install either but only tried 1.64 and a 2.00 posted here. anything i've downloaded on aroma it seems the person is on 1.10. maybe there is something weird in newer version.
[Android Software/Hacking General [Developers Only]] Jonny:
First you need to pull the current boot.img from its location, then run the unpackbootimg.sh script before the mkbootimg.sh script
[Android Software/Hacking General [Developers Only]] moddroid:
thanks

i put the current boot.img in the mkbootimg folder and run the command, right? thank you very much :)
[Android Software/Hacking General [Developers Only]] Bologna:
This new calibration method works better than previous. But filemanager its currently too sensible at touch. Let me know if I can help in any way...
[Android Software/Hacking General [Developers Only]] amarullz:
What do you mean "too sensible"? (did you use alternative method?)
[Android Software/Hacking General [Developers Only]] Turge:
Here's how I do it in my ROM:

run_program("/sbin/busybox", "mkdir", "/temp");

#####################################################################################################################################
# Anryl 10.07
#
ifelse (file_getprop("/tmp/aroma/tweaks.prop","selected.1") == "5" || file_getprop("/tmp/aroma/kernel.prop","selected.1") == "5",(
ui_print("@Installing Anryl 10.07 Kernel");
ui_print(" Extracting kernel module");
package_extract_dir("Custom/Kernels/Anryl10.07/kernel", "/temp");
ui_print(" Extracting lib modules");
package_extract_dir("Custom/Kernels/Anryl10.07/system","/system");
));

#####################################################################################################################################
# Anthrax RLS001a
#
ifelse (file_getprop("/tmp/aroma/tweaks.prop","selected.1") == "6" || file_getprop("/tmp/aroma/kernel.prop","selected.1") == "6",(
ui_print("@Installing Anthrax RLS001a Kernel");
ui_print(" Extracting kernel module");
package_extract_dir("Custom/Kernels/AnthraxRLS001a/kernel", "/temp");
ui_print(" Extracting lib modules");
package_extract_dir("Custom/Kernels/AnthraxRLS001a/system","/system");
));

#####################################################################################################################################
# Kernel Tools
#
ui_print(" Extracting tools");
package_extract_dir("Custom/Kernels/Tools", "/temp");
set_perm(0, 0, 0777, "/temp/dump_image");
set_perm(0, 0, 0777, "/temp/mkbootimg.sh");
set_perm(0, 0, 0777, "/temp/mkbootimg");
set_perm(0, 0, 0777, "/temp/unpackbootimg");

#####################################################################################################################################
# Kernel Packaging
#
ui_print(" Packaging zImage");
run_program("/temp/dump_image", "boot", "/temp/boot.img");
run_program("/temp/unpackbootimg", "/temp/boot.img", "/temp/");
run_program("/temp/mkbootimg.sh");

#####################################################################################################################################
# Kernel Flashing
#
ui_print(" Flashing boot.img");
write_raw_image("/temp/newboot.img", "boot");

#####################################################################################################################################
# Kernel Copy for S-ON users
#
ui_print(" Copying kernel to /sdcard/KingCobra3D/Kernel/boot.img");
run_program("/sbin/busybox", "mkdir", "/sdcard/KingCobra3D/Kernel");
run_program("/sbin/busybox", "cp", "/temp/newboot.img", "/sdcard/KingCobra3D/Kernel/boot.img");
[Android Software/Hacking General [Developers Only]] edinrh:
How i can merge mi rom in aroma?? I develop for LG P500 is posibble??
[Android Software/Hacking General [Developers Only]] tantrums:
@ amarullz,

Hi, I managed to have the screenshots inside AROMA now. :)

I was able to figure out that I need to mount the /data to be able to have the screenshots working.

My ROM is getting great with AROMA. Here : http://xdaforums.com/showthread.php?t=1473592

You may now add my ROM in the list. :)

Thanks again amarullz.
[Android Software/Hacking General [Developers Only]] moddroid:
thanks cobra ;)
[Android Software/Hacking General [Developers Only]] moddroid:
nothing installer tell me always status=6 :'(
[Android Software/Hacking General [Developers Only]] Jonny:
Extract the boot.img to tmp folder then run unpackbootimg.sh script, then run mkbootimg.sh the write raw image of boot.img is how I would do it
[Android Software/Hacking General [Developers Only]] moddroid:
this is the i use:

if
file_getprop("/tmp/aroma-data/kernel.prop","selected.1) == "3"
then
ui_print(" install harsh kernel");
run_program("/sbin/busybox", "mkdir", "/temp");
package_extract_dir("customize/kernel/harsh/system", "/");
package_extract_dir("customize/kernel/harsh/kernel", "/temp");
set_perm(0, 0, 0777, "/temp/dump_image");
set_perm(0, 0, 0777, "/temp/mkbootimg.sh");
set_perm(0, 0, 0777, "/temp/mkbootimg");
set_perm(0, 0, 0777, "/temp/unpackbootimg");
run_program("/sbin/busybox", "cp", "/boot.img", "/temp");
run_program("/temp/unpackbootimg", "/temp/boot.img", "/temp/");
run_program("/temp/mkbootimg.sh");
write_raw_image("/temp/newboot.img", "boot");
run_program("sbin/busybox", "mv", "[-f]", "/temp/newboot.img", "boot.img");
package_extract_file("boot.img", "/dev/block/mmcblk0p5");
endif;

is right?
[Android Software/Hacking General [Developers Only]] varun.chitre15:
@amarullz

Sorry for very late reply

Here is shot of file manager on Micromax A60 in which framebuffer prob was there

This time even big dialog boxes are fixed!!!!

Thanks but text looks too small, can u increase it by a very very little extent? rest everything is fixed now and u can make new aroma with these changes along with very little increment in text size

However touch is not working neither in Micromax A70 nor on Micromax A60 so any solution for this?

Thanks
[Android Software/Hacking General [Developers Only]] Zen Arcade:
@amarullz - sysprop() function is not returning any information when run from my phone's 2.5.1.3 CWM recovery environment. Can you tell me more about where sysprop() is looking for this information? Thanks!
[Android Software/Hacking General [Developers Only]] doomed151:
I have a problem with ui_print();

They don't show up with these lines

# Superuser
if
file_getprop("/tmp/aroma/mods.prop","selected.1") == "1"
then
ui_print("- Superuser");
package_extract_dir("customize/Superuser", "/system");
endif;

# SuperSU
if
file_getprop("/tmp/aroma/mods.prop","selected.1") == "2"
then
ui_print("- SuperSU");
package_extract_dir("customize/SuperSU", "/system");
endif;

but installation was fine. This is weird because the ui_print(); here works fine

# Twitter
if
file_getprop("/tmp/aroma/customize.prop","item.1.3") == "1"
then
ui_print("- Twitter");
package_extract_dir("customize/Twitter", "/system/app");
endif;

work fine.

Thanks!

EDIT: Fixed it by grabbing a newer update-binary from CM9.
[Android Software/Hacking General [Developers Only]] Zen Arcade:
File manager works well on Samsung Infuse 4g. Was able to create a new folder. As you noted, most other functions are not implemented yet. Others have mentioned lag - I did not see this. When scrolling a list of files, there is sometimes a slight hesitation, but it is not a problem as far as I am concerned.

When implementing "delete" actions (delete, move) I would ask that you add a confirmation to ensure no accidental deletes. I would love to see this avalable as an option for Aroma installer. Looks great!

(Also - Aroma Installer is amazing!!)
[Android Software/Hacking General [Developers Only]] neroyoung:
NeroDroid ROM v9 With Aroma

Hello amarullz Sir,

Finally I have made installer for my ROM using Aroma Installer and now users can install different packages with different variety of optional along with default,custom installation

Intsaller help as well as system info,auto rebooter,pre configuration and error checkers :D

If you like my ROM then please add in your post of Aroma ROMs

NeroDroid ROM

For Xperia Mini Pro With Aroma Advance Installer

I have provided Aroma installer step mode presentation in changelog 3rd post here

Thanks, :D

AND THANKS A LOT FOR YOUR HELP IN SCRIPTING​
[Android Software/Hacking General [Developers Only]] mrRobinson:
this is driving me crazy. if i use a different update-binary-installer, like one from gapps, i get installer status 6. using one from a rom that flashes fine to my device things install and the installer ends up with status 0 but nothing is written correctly to the device they are all 0 byte. even though i click yes to save an install log it never saves. Any pointers???? It seems like i get different results for every update-binary i grab (that i rename to update-binary-installer) yet they all work fine in flashable zips (no aroma).
[Android Software/Hacking General [Developers Only]] bytethegroove:
Ive been theme crazy lately(since miui themes are broken), and created a Buuf theme for aroma. (credits to manhattan for creating buuf)

It includes icons, backgrounds, and fonts

wanted to share

File is attached below

enjoy

peace

byte
[Android Software/Hacking General [Developers Only]] Bologna:
I must use alternative method...touch doesn't works at all without this step

Inviato dal mio GT-I9100 con Tapatalk 2
[Android Software/Hacking General [Developers Only]] jokersax11:
Got a couple roms to add to the list. Kitchen sink for both the atrix and photon.

Kitchen sink even made the portal and its not even beta yet.