Closed Bug 1004312 Opened 10 years ago Closed 6 years ago

Please pull the librecovery.so from the system/lib directory after compile and place it in a system/lib dir for the gecko zip file for each device.

Categories

(Firefox OS Graveyard :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: nhirata, Unassigned)

Details

In order for OTA to work properly the librecovery.so has to be updated.
The location should be in the out/target/product/<device>/system/lib:
ex. : /out/target/product/flame/system/lib/librecovery.so

See for more context in why we need to do this:
https://bugzilla.mozilla.org/show_bug.cgi?id=1003645#c11

We would need to edit the flash.sh script in order to accommodate this file being flashed to the device.
Why can't the b2g build system put this file in the right place itself?
I believe the following : 

The gecko pull is only taken from the b2g/system.  
It doesn't touch the system/lib as most of that is gonk.  

There is some code we have for the recovery part with the phone reset and that's why we need this specific file.

For some devices we can do a fullflash.  This will give us the correct librecovery.so

Unfortunately we can't do a full flash on all devices... part of it has to do with configuration issues at the gonk level and boot.img   In which case, we have to flash gecko/gaia and when we do we miss out on this file.
If I misunderstood the question, please let me know.  :)
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #2)
> I believe the following : 
> 
> The gecko pull is only taken from the b2g/system.  
> It doesn't touch the system/lib as most of that is gonk.  
> 
> There is some code we have for the recovery part with the phone reset and
> that's why we need this specific file.
> 
> For some devices we can do a fullflash.  This will give us the correct
> librecovery.so
> 
> Unfortunately we can't do a full flash on all devices... part of it has to
> do with configuration issues at the gonk level and boot.img   In which case,
> we have to flash gecko/gaia and when we do we miss out on this file.

Even if this is only for some devices, we should leave all the specific path stuff to the b2g build system IMO. If we need to be able to turn it on/off for different types of builds/devices, we could use an env var, mozconfig flag (or whatever is appropriate) to trigger it.

It's possible I'm misunderstanding, but I strongly suspect this should be handled by the b2g build system.

John, any thoughts here?
Component: General Automation → General
Flags: needinfo?(jhford)
Product: Release Engineering → Firefox OS
QA Contact: catlee
Version: other → unspecified
My understanding is that librecovery.so needs to be in /system/lib (it's used by more than just b2g). Putting it in /system/b2g would fix b2g's usage, but wouldn't fix other uses.

Normally, the vendor would provide this file, but as we've seen in the past, they don't always set it up correctly (i.e. hamachi/buri has this problem).

mwu can probably confirm this.
Flags: needinfo?(mwu)
We can find librecovery.so in out/target/product/sp6821a_gonk/system/lib and recovery.img in out/target/product/sp6821a_gonk.
 
What can I do on my side?
(In reply to Dave Hylands [:dhylands] from comment #5)
> My understanding is that librecovery.so needs to be in /system/lib (it's
> used by more than just b2g). Putting it in /system/b2g would fix b2g's
> usage, but wouldn't fix other uses.
> 

b2g is the only user of this library, so putting it in /system/b2g *might* work, but it would be better to put it in the usual location - /system/lib.

We generally don't need to use the vendor's copy though - there's not many things that need to change in librecovery and the parts that do need to change are easily found and configured through the device directory.
Flags: needinfo?(mwu)
FYI James, I think this is more for our releng builds to have OTA.  
I'm not sure what you would need on your end.  I'm not sure, but I don't think you have to worry about this bug.
Flags: needinfo?(james.zhang)
FOTA is better, but some customer need sdcard OTA only, they won't set up FOTA server or send pac to mozilla.
see bug 1003645.
Flags: needinfo?(james.zhang)
Flags: needinfo?(jhford)
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.