yashsingh1/xdaforums huggingface dataset:
[ONE Android Development] Natakranta:
Hi, on the secondary ROM Slimsaber I have already set up there is no problem after flashing MultiROM v32.i.zip

So I made a new secondary flashing latest Slimasber, Slim zero gapps, SuperSU 2.49 and AK261 karnel (which has UKM included in the zip)

ROM booted after doing apps optimisation, and Play Store is giving Force Close, Gallery app is popping up window "No Storage - No external storage available" - I plugged the phone to my Linux Mint running laptop and took adb logcat (attached - rename deleting".zip" - txt was too big for XDA). I hope you can see the problem there.

Thanks!

How can I take dmsg.txt from laptop terminal?
[ONE Android Development] xanthrax:
https://code.google.com/p/tegraowners-ics-rom/wiki/How_to_get_logs

Sent from my Darkside of 1+1
[ONE Android Development] KINGbabasula:
Please, start your secondary ROM and check /data/.layout_version permissions and content.

Also for the kmsg from the computer it's

adb shell
su
dmesg > /data/kmsg.txt
exit
exit
adb pull /data/kmsg.txt
[ONE Android Development] silvagroup:
Using TWRP without Multirom I can mount device on Linux and do file manipulation on device while in TWRP.

However when I installed Multirom lost that ability, can see the device but it will not mount it and therefore can not access the files on the device.

Question: is this some stupidity on my part or is that capability gone once Multirom gets implemented in TWRP?
[ONE Android Development] Natakranta:
Thanks for instructions.

I pulled kmsg.txt (attached) - I hope it shows relevant information.

I did as well:

adb pull /data/.layout_version

and got a file containing number 3 in it (attached). Unfortunately I don't know how to check permissions on the one on the phone as I don't have file explorer installed on this secondary (Play Store FC). The copy pulled to my laptop displays permissions:

Access: read & write

Group: read only

Others: read only
[ONE Android Development] KINGbabasula:
Thank you very much, it's definetly SELinux fault, again, I'll talk to Tasssadar as soon as possible. Also I have compiled the recovery again to fix some SELinux things, I'll push it soon
[ONE Android Development] fusionjack:
btw, if you can manage to go to settings, you can create a bug report that contains logcat, dmsg and last_kmsg as a zip file by clicking the settings - advanced - bugreport.
[ONE Android Development] nkk71:
I've been struggling with this issue on the HTC One M7 as well, finally narrowed it down (

I think

) to the following problem:

ls -laZ
-rw------- root root u:object_r:[COLOR="Red"]unlabeled[/COLOR]:s0 .layout_version

changing that using "restorecon /data/.layout_version" (while the secondary ROM is mounted in TWRP)

ls -laZ
-rw------- root root u:object_r:[COLOR="Blue"]install_data_file[/COLOR]:s0 .layout_version

makes it work.

The code in multirom (line 1377+) where it creates /data/.layout_version doesnt set the context, and hence if the init scripts don't run a restorecon, that file will remain "unlabeled", and hence fail.

so ROMs that do run a full restorecon on boot should work, but ROMs that don't will end up with the "no sdcard" issue

I'm gonna try to code "something" :eek: , but probably best to check with Tasssadar what he recommends to fix the .layout_version context while it's being created.
[ONE Android Development] nkk71:
[MENTION=5093942]KINGbabasula[/MENTION]

After a few hours of trying to get multirom bootup to set context for the /data/.layout_version, very unsuccessfully i may add :(

I figured that the file should be created during bootup anyway, so i just commented out lines 1377 through 1401 and tried it :rolleyes:

/*
if(api_level >= 17)
{
char buf[16];
buf[0] = 0;

FILE *f = fopen(LAYOUT_VERSION, "re");
const int rewrite = (!f || !fgets(buf, sizeof(buf), f) || atoi(buf) < 2);

if(f)
fclose(f);

if(rewrite)
{
f = fopen(LAYOUT_VERSION, "we");
if(!f)
{
ERROR("Failed to create .layout_version!\n");
return -1;
}

fputc(api_level > 19 ? '3' : '2', f);
fclose(f);
chmod(LAYOUT_VERSION, 0600);
}
}
*/

It worked :laugh:

the file was created during bootup with proper permissions and context.

Note that I've only tested this on

one, clean install of a secondary ROM

so far (the one that was giving me issues), but wanted to let you know.

Obviously, if the file/ROM already exists with non-proper context, then you'd still need to issue a restorecon.

Havent seen Tasssadar for a while, so I dont know his thoughts on this.

.
[ONE Android Development] nkk71:
EDIT: just for info, i flashed another secondary rom (AICP) and seems stuck on bootanimation.... not sure if it's to do with the code edit from above, or something else i was messing with..... just wanted to give you a heads up
[ONE Android Development] KINGbabasula:
Commenting those lines is not ok, we should make a call to restorecon and give correct context in that if statement, I'll do it tomorrow, thanks a lot
[ONE Android Development] nkk71:
yep, i do believe you're right, but i couldnt get it to work (yes, i dont code much), my feeble attempts of initiating a restorecon or even call the function ended miserable (as i mentioned before :crying: )

lemme know how it goes, maybe i can incorporate for the m7

ty
[ONE Android Development] KINGbabasula:
Fixed, thank you very much for pointing out the problem :)

This is what I added:

if(api_level >= 17)
{
char buf[16];
buf[0] = 0;

FILE *f = fopen(LAYOUT_VERSION, "re");
const int rewrite = (!f || !fgets(buf, sizeof(buf), f) || atoi(buf) < 2);

if(f)
fclose(f);

if(rewrite)
{
f = fopen(LAYOUT_VERSION, "we");
if(!f)
{
ERROR("Failed to create .layout_version!\n");
return -1;
}

fputc(api_level > 19 ? '3' : '2', f);
fclose(f);
chmod(LAYOUT_VERSION, 0600);

[COLOR="Red"]if(api_level >= 21)
if(mr_system("chcon -t install_data_file %s", LAYOUT_VERSION) != 0)
ERROR("Failed to set context to .layout_version\n");[/COLOR]
}
}

return 0;
[ONE Android Development] KINGbabasula:
MultiROM v32j

* Fixed the problem where the sdcard can't be accessed
[ONE Android Development] Nandeh:
Just installed a ROM as secondary and the bug is still present, can't access sdcard.

Somebody can confirm that is fixed?

Thanks!!
[ONE Android Development] nkk71:
nice :)

I was trying something similar, but it wasnt working. unfortunately the above code still doesnt work for me... have to try and see where the problem is

Thanks though
[ONE Android Development] KINGbabasula:
Well, actually I made a mistake, it works only if the file gets rewritten. Just move those three lines out of the if(rewrite) statement and it will work, I'll do it tomorrow
[ONE Android Development] nkk71:
I already had it outside the if statement

if(api_level >= 17)
{
char buf[16];
buf[0] = 0;

FILE *f = fopen(LAYOUT_VERSION, "re");
const int rewrite = (!f || !fgets(buf, sizeof(buf), f) || atoi(buf) < 2);

if(f)
fclose(f);

if(rewrite)
{
f = fopen(LAYOUT_VERSION, "we");
if(!f)
{
ERROR("Failed to create .layout_version!\n");
return -1;
}

fputc(api_level > 19 ? '3' : '2', f);
fclose(f);
chmod(LAYOUT_VERSION, 0600);
}

if(api_level >= 21)
if(mr_system("chcon -t install_data_file %s", LAYOUT_VERSION) != 0)
ERROR("Failed to set SELinux context to .layout_version\n");
}

also did a minor INFO statement to get the api_level and it's 22, so the mr_system should run, and doesnt return any error either

EDIT: i even tried with "restorecon -F %s" as opposed to chcon
[ONE Android Development] KINGbabasula:
Here it's working. mr_system gets called for sure and works correctly. I tried it with one ROM that couldn't see the sdcard and after it could be seen.
[ONE Android Development] nkk71:
Oh, bb version
[ONE Android Development] Natakranta:
The J update wasn't working for the SlimSaber ROM I flashed on I update which doesn't have access to sdcard. Unfortunately I deleted this secondary. I'll make another new secondary with tomorrow's update.

The Answer to The Ultimate Question of Life, the Universe, and Everything is: CLEAN FLASH.
[ONE Android Development] dharmabm:
Working for me now

sent from my slim powered 1+1
[ONE Android Development] randallstevens:
I deleted /sdcard/multirom and reflashed the multirom J zip and flashed a secondary (Euphoria). The sdcard issue persists. Used the restorecon option as well. Am I missing something?
[ONE Android Development] AYEHAN:
just updated to latest version which brings a question

can someone tell me which ROMS works as Secondry ROM specially chinese ROMs like IUNI Flyme or MIUI
[ONE Android Development] CBpbxEcmecmBeH:
That's complicated... IUNI (since based on colorOS) cannot be installed as secondary. Flyme has two variants: with base on color OS (see IUNI) and one with CM11s as a base (that you can). MIUI the same as Flyme, only the second version is CM11, not S.
[ONE Android Development] davidjumani:
Will this install and work on stock cm 12s which you get when you update your phone??
[ONE Android Development] conn2005:
Is there a way to change the secondary rom to primary and make the primary rom the secondary? Another option, would be to just change the rom that multirom boots from at startup?
[ONE Android Development] Naman Bhalla:
I have tried only MiUi 6 among these and yes it works with MultiROM ...

If you want to make CM 12S primary, you will need to flash a custom kernel like AK that has the kexec hardboot patch ... Else. ,you can flash it as secondary without issues...

Yeah.. You can swap ROMs by going to recovery .... Second some say there is a way but I didn't find yet ...
[ONE Android Development] davidjumani:
So you're saying that I have to flash the custom kernel which supports kexec and then install multirom on cm12s???
[ONE Android Development] Naman Bhalla:
Yes... Best choice is to flash latest AK v262 .. And then install Multirom zip and then Multirom recovery
[ONE Android Development] FSadino:
How can i restore nandroid backup on secondary ROM? That option is missing... Im thinking put secondary rom as internal and then restore. But there is another way out?
[ONE Android Development] Nandeh:
AFAIK you can't do that.

You can copy your internal ROM to a secondary slot, wipe and then restore a backup to the internal
[ONE Android Development] tobitege:
You can restore a nandroid as a new secondary rom, but as you said not into an existing secondary rom: "Add secondary ROM" -> "Backup"
[ONE Android Development] néonaloj:
I'm on cm12s as primary, did NOT flash any kernel on it, installed Multirom and working great!

TWRP, "Advanced" > "Multirom" > "Add rom" > "Next" > "Backup". Working without a prob to restore a nandroid as secondary rom.
[ONE Android Development] aboqi2014:
32i and 32j still can't boot any secondary roms till now so i back to 32h,hope you'll fix it soon
[ONE Android Development] nkk71:
[MENTION=5093942]KINGbabasula[/MENTION], thanks for your response to my PM, just in case you didnt see my github comment (sorry very new to this github thingy :silly::eek:)

the patch didnt work for me (HTC One M7), because of two reasons:

1- prebuilt busybox doesn't seem to have SELinux extensions

but even if I replace it with one that has full SELinux extensions

2- SELinux hasn't yet been initialized when that function is running, so I get "SELinux is disabled" at that moment in time (from last_kmsg)

my workaround/fix, is to inject init.rc with an "import"; whose sole purpose it to run a "restorecon /data/.layout_version", on early-init

now seems to be working fine... yay... gonna do more testing though....

Hope you dont mind me commenting in your thread... I know it's a completely different device, and I have no idea about it, but thought I'd share my findings
[ONE Android Development] Natakranta:
I did clean flash of latest SlimSaber as new secondary ROM on MultiROM v32j and it still has no sdcard access. I flashed MultiROM 31st and the same secondary installed on v32j few minutes ago is working properly now. The fix made in v32j does not work for SlimSaber.

The Answer to The Ultimate Question of Life, the Universe, and Everything is: CLEAN FLASH.
[ONE Android Development] AYEHAN:
which MIUI version you used with link please, as i used Xs version 5.5.23 i guess and it have few issues like proximity making or rcving call and screen blank turning proximity off solved it but when phone sleep i cant make it screen lit again untill i call on this no and when i disconnect screen lits. and 2nd frequent reboots tried changing 11S modems also

but it gives me huge battery life 70% to 13% 7hours SOT
[ONE Android Development] deathblade:
I'm running oxygenos and want to run cm 12.1 as secondary, I install multi ROM and installed cm 12.1 but it won't boot and I don't get the ROM selector screen on boot either I've tried injecting curr and resurrection for the ROM but nothing any ideas?
[ONE Android Development] Natakranta:
Did you flash karnel with kexec support?

I'm not sure if stock karnel has it.

Flash AK karnel on primary ROM and check if MultiROM boot menu shows up. Then you should be able to boot secondary ROM.

The Answer to The Ultimate Question of Life, the Universe, and Everything is: CLEAN FLASH.
[ONE Android Development] kyan31:
Hey, I have EuphoriaOS (CM12.1 Based) as my main ROM and oxygenos, paranoid android, and Dirty Unicorns installed alongside. All the ROMs boot fine except for oxygenos, any idea why? It just hangs on the Oneplus One splash screen, doesn't even get to the boot animation. Thanks all.
[ONE Android Development] deathblade:
Thanks I found a solution I'm now running cm 12s latest with ak kernel and cm12.1 nightly as secondary, thinking about installing oxy as a third just so I can try it out in comparison to cm 12s
[ONE Android Development] thedoctor.gz:
Did you try to wipe dalvik + cache?
[ONE Android Development] Az-one786:
I'm noticed switching between rom feel much faster now after new mrom update .... :)

It's taking ages before ... :p

Thanks once again ....
[ONE Android Development] kyan31:
Someone has messaged me a working method but thanks anyway! I need to swap Euphoria out to my secondary, flash oxygen as primary, then finally swap the roms one more time so Euphoria is back to primary and oxygen is secondary. That fixes the problem.
[ONE Android Development] pk5720:
I tried to install color OS as a secondary ROM..Rom installed but didn't boot up..any help pls...?
[ONE Android Development] Az-one786:
Color OS still used kitkat base .. You need some extra step to install ...

Try looking at here http://xdaforums.com/oneplus-one/ge...ips-tricks-t3027926/post58776196#post58776196 ..
[ONE Android Development] KINGbabasula:
Thanks a lot for finding out the solution, I'll try it now
[ONE Android Development] nkk71:
Thanks for your help getting me there :o

I've put the code on github https://github.com/Tasssadar/multirom/pull/66

this worked perfectly for me on every rom i tried
[ONE Android Development] KINGbabasula:
Tested and seems working, so I released version 32k.

Also for who wants to try Ubuntu Touch on secondary, there are changes pending review for our device, soon we will be able to install it
[ONE Android Development] ramola:
I m on stock cm 12S, stock karnel, rooted, unlocked bootloader. Want to have cm 12.1 as primary and cm11s as secondary ROM.

How to proceed please help.

I have not installed multi boot yet.
[ONE Android Development] giveme13s:
Thanks! Confirmed that v.32k worked. Tried with unofficial DU9.4 and could accessed sdcard.
[ONE Android Development] Natakranta:
Epic win!

I flashed SlimSaber 5.1.1 Jun.20 as new secondary ROM and I confirm it works with MultiROM v32k. ROM has access to sdcard. Everything looks OK. Thanks for the update!

On a side note I've just discovered today other problem, which most likely has nothing to do with MultiROM, yet lot of clever people here so I ask.

Being on MultiROM v32k I tried to update radio from CM11S 05Q to latest by flashing firmware zip CM May.15 version. It said radio flashed and all other partitions up to date, which was true as I already had the firmware update to CM12.1 May.15 only radio was from CM11S for primary SlimKat 9 proximity sensor to work correctly. I need to update radio to LP because I finally decided to move SlimKat 9 from primary to secondary (as in secondary there is option to assign separate radio for each secondary - brilliant!) and move secondary SlimSaber 5.1.1 to primary.

Unfortunately no matter what I try LP radio is not being flashed over KK radio. I tried:

Flashing CM12_bacon_firmware_update_2015_05-15.zip

Flashing CM12_YNG1TAS2I3-Radio.zip

Using Materialised theme flashify script working on UPDATE-AIK.Mobile.Installer.v1.8-ALL.zip to install radio.img, still no go.

I flashed official TWRP 2.8.6.1 and tried all above. I still have KK radio which I recognise by primary SlimSaber 5.1.1. Proximity sensor failing on making a call. When I change sensor blob to older version proximity sensor works during call correctly immediately switching screen on and off when I wave my hand over it. So I definitely still have CM11S 05Q radio despite all above described efforts.

I've seen posts people having problem flashing firmware update but I don't know the reason. The problems described were with screen going black and unresponsive despite call going on. It's typical for LP ROM proximity sensor blob couldn't handle CM11S radio.

As a solution fastboot flashing was being mention. It's no problem for me, I'll boot Mint on my laptop and fastboot flash radio radio.img

But why it is not working in TWRP? Neither as flashing a zip nor as installing radio.img through Materialised theme.

Ideas?

The Answer to The Ultimate Question of Life, the Universe, and Everything is: CLEAN FLASH.
[ONE Android Development] chikimonke:
What happens if you just try backing up and then wiping your primary rom and then flashing the latest CM nightly? Then wipe CM off and restore your backup?
[ONE Android Development] Natakranta:
It doesn't work. It's driving me mad.

I don't understand why your firmware update zip May.15 was working for me just after you released it and it's not working now.

See TWRP thread, I was writing there as well.

I'll go one more trick before going fastboot.

I'll try flashing KitKat firmware and see if LP firmware flashes over it correctly as it should detect older firmware that needs to be updated.

Back to recovery.

Edit

I flashed CM11S 05Q full firmware, it messaged it flashed the radio. Then I flashed your May.15 firmware zip, it messaged it flashed the radio.

I booted primary SlimSaber and still black unresponsive screen during call.

The Answer to The Ultimate Question of Life, the Universe, and Everything is: CLEAN FLASH.
[ONE Android Development] arifqur:
Can confirm that with v32k slimsaber installs correctly and can access the sd card,

Thanks King.

---------- Post added at 11:41 AM ---------- Previous post was at 11:39 AM ----------

Yeah I can sympathize with you. It's enough to drive one mad.

Hope you are able to sort it out soon.

Please keep us informed about the status.

Regards
[ONE Android Development] Natakranta:
When everything fails we can can count on fastboot ;)

Whole day yesterday I was flashing different combinations of firmwares, modems, CM nightly, on both MultiROM and official TWRP.

I gave up in the evening and plugged phone to laptop and did:

fastboot flash modem NON-HLOS.bin

(In this fastboot command for bacon is "modem" and not "radio" like for nexus phones, good mate pointed it out to me and saved the day because for a moment I thought it's worst day of flashing history when even fastboot failed me. Fortunately it was my error treating bacon as nexus and forgetting CM might have changed few things)

Anyway I didn't manage to flash LP radio over KK radio in recovery. Only fastboot did the job.

The Answer to The Ultimate Question of Life, the Universe, and Everything is: CLEAN FLASH.
[ONE Android Development] pk5720:
I tried..I flashed cm11S firmware and modem and then again color os but not booted..any thing else.?anyone had tried color os with multirom??
[ONE Android Development] sabrefresco:
Ubuntu support?

[MENTION=5093942]KINGbabasula[/MENTION]: Was Ubuntu support implemented in the latest update? The one from here.
[ONE Android Development] wahlis:
OmniROM

I tried to install the latest OmniROM nightly (5.1) but can't get it to boot. I'm stuck on the 1+1 start screen.

I've tried restorecon but no change.

Any suggestions?
[ONE Android Development] emam damon:
new twrp v2.8.7.0 is out.
[ONE Android Development] nachomagic:
Hi mates

I have a oneplus one and I was on v32h working perfectly with an internal (BlissPop) rom and 3 secondaries (SlimLP, Carbon and RR to try them) all of them Lollipop

I was updating and using it flawlessly till I forgot inject the boot.img after a flash

Then I lost the boot menu but don't worry I re-flash a kernel checking the option "inject Multirom after installation" as usual.

The boot menu reappears and I can start all the secondaries roms but all of them get stuck in their logos.

I think I've done everything the FAQs says, re inject boot.img, curr. boot sector, Run restorecon (in order to repair SELinux in all the secondaries) even update to v32k (in order to reflash multirom) but the problem still remains.

I've re-flash the secondaries roms and wike cache and Dalvik but nothing :(

I've tried with AK and Boeffla Kernels

Could anyone help me?

Thanks in advance

Edit to add more information:

If I install boeffla in a second rom, It's start to optimize, but after that the logo appears again and start to optimize again

If a delete a second rom and reinstall it, boots correctly but I loose the data. I would like to solve it without loose them
[ONE Android Development] KINGbabasula:
I've updated the recovery to support Ubuntu Touch install, still the app doesn't support it unless you use the unofficial one
[ONE Android Development] Natakranta:
Hi, is the recovery updated to 2870?

The Answer to The Ultimate Question of Life, the Universe, and Everything is: CLEAN FLASH.
[ONE Android Development] Giacomo_:
I have one question: I have a lollipop rom as primary with ak kernel. Can I install the latest MIUI rom as a secondary even if it is based on kitkat?
[ONE Android Development] nachomagic:
[MENTION=5093942]KINGbabasula[/MENTION] is there any solution?

Thanks in advance
[ONE Android Development] DrNinjaa:
No, Its still 2.8.6... tried it just now.

#HappyFlashing#
[ONE Android Development] Naman Bhalla:
Yes
[ONE Android Development] Giacomo_:
Do I need to flash a different firmware on the primary?
[ONE Android Development] Hijmen:
No, just install a kitkat modem to be used in your secondary kitkat rom
[ONE Android Development] Naman Bhalla:
I had cm 12.1 as primary and flashed miui6 and nothing else on secondary and no issues.. Though you can flash Kitkat modem on Primary if you wish
[ONE Android Development] Giacomo_:
I'll try now! Thank you. I'm using oxygen modem btw
[ONE Android Development] pankspoo:
Installed Ubuntu touch os because of curiosity by using

Multirom UT app from official site wiki.ubports.com/index.php/OnePlus_One#How_to_install_using_MultiRom

Worked well with multirom v32k

But os is not so good

No sound

No network

No access to sd card, (nothing in gallery, media etc)

I know it is not daily driver but OP said these are working

Graphics

Boot process

Wireless network

Sound

Touch

Video Decode

Suspend/Resume

But where is sound
[ONE Android Development] KINGbabasula:
I have PA in multi boot without kexec kernel. It's weird...
[ONE Android Development] hamzahrmalik:
Something worth mentioning

Pa uses cm11

But crdroid uses 11s

Maybe that's why?
[ONE Android Development] KINGbabasula:
It seems that anything cm11s based won't work :/
[ONE Android Development] hamzahrmalik:
Aww

What about aosp?

Surely that should

What I find is if I share kernel it boots but no screen (but I get led indicator)
[ONE Android Development] KINGbabasula:
Show the dmesg please :D
[ONE Android Development] ak:
Crdroid uses cm11 kernel.
[ONE Android Development] hamzahrmalik:
So why doesn't it work with this mod... :(
[ONE Android Development] KINGbabasula:
I've just done some testing: pa and mahdi work, slim doesn't :/ this is very very weird. Some roms get stuck trying to run init but fail and the kernel panics