Bug 1166276 (b2g-addon)

[meta] Getting a B2G Installer Addon

RESOLVED WONTFIX

Status

Firefox OS
B2gInstaller
RESOLVED WONTFIX
2 years ago
2 months ago

People

(Reporter: gerard, Assigned: gerard)

Tracking

(Depends on: 1 bug)

unspecified
2.2 S14 (12june)
ARM
Gonk (Firefox OS)

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [spark][systemsfe])

Attachments

(2 attachments)

(Assignee)

Description

2 years ago
Providing a Firefox Addon that will ease installing B2G on a fresh (supported by the build system) device. The goal is to have several pieces:
 - production of full system images with blobs removed
 - addon that gets blobs and rebuild ready to flash images
 - the same addon will perform the flashing itself

We will focus on Aries for now.
(Assignee)

Updated

2 years ago
Summary: B2G Installer Addon → [meta] B2G Installer Addon
(Assignee)

Updated

2 years ago
Alias: b2g-addon
(Assignee)

Updated

2 years ago
Depends on: 1166278
(Assignee)

Updated

2 years ago
Depends on: 1166279
(Assignee)

Updated

2 years ago
Summary: [meta] B2G Installer Addon → [meta] Getting a B2G Installer Addon
(Assignee)

Updated

2 years ago
Depends on: 1168562
Target Milestone: --- → 2.2 S14 (12june)
(Assignee)

Updated

2 years ago
Depends on: 1172912
(Assignee)

Updated

2 years ago
Depends on: 1174463
Depends on: 1177280
Depends on: 1175934
Depends on: 1179771
(Assignee)

Updated

2 years ago
Depends on: 1187873

Comment 1

2 years ago
Created attachment 8640141 [details]
Sliced Graphics.zip

Attaching sliced graphics. Spec to come shortly.

Comment 2

2 years ago
Created attachment 8641894 [details]
VsD_FlashingTool_Spec_1.0.pdf

VSD spec for flashing tool
(Assignee)

Updated

2 years ago
Depends on: 1191316
(Assignee)

Updated

2 years ago
Depends on: 1191321
(Assignee)

Updated

2 years ago
Depends on: 1191728

Comment 3

2 years ago
Are there any plans for this on the Flame? It looks easier, faster and more inviting than flashing via the command line. It definitely lowers the barriers to enter the world of Firefox OS.

Does the addon run within the Firefox browser? Will initial steps like installing ADB and fastboot still need to be carried out? (https://developer.mozilla.org/en-US/Firefox_OS/Phone_guide/Flame/Initial_setup)
(Assignee)

Comment 4

2 years ago
(In reply to Nick from comment #3)
> Are there any plans for this on the Flame? It looks easier, faster and more
> inviting than flashing via the command line. It definitely lowers the
> barriers to enter the world of Firefox OS.

Flame is already suppported. See the blocking bug 1172912. I don't know the status of doing and distributing the blobfree builds on this device.

> 
> Does the addon run within the Firefox browser? Will initial steps like
> installing ADB and fastboot still need to be carried out?
> (https://developer.mozilla.org/en-US/Firefox_OS/Phone_guide/Flame/
> Initial_setup)

No. Those are bundled in ADB Helper.

Comment 5

2 years ago
OK. Thanks for the help, Alexandre!

Any chance it will be named Firefox OS Installer in future? It would make it easier to find/recognise.

I assume it's not currently publicly available as an addon for Firefox. Is there anywhere I can go to find out how to install/test it?
Component: General → B2gInstaller
(Assignee)

Comment 6

2 years ago
(In reply to Nick from comment #5)
> OK. Thanks for the help, Alexandre!
> 
> Any chance it will be named Firefox OS Installer in future? It would make it
> easier to find/recognise.

Well, I personnally don't have an opinion on this. Yet, « Firefox OS » is really the commercial name, so I think keeping B2G here makes sense.

> 
> I assume it's not currently publicly available as an addon for Firefox. Is
> there anywhere I can go to find out how to install/test it?

You already can, build it from source. But we know there are still some risky behavior so we want to debug them before making it too public. Because in case the addon fails you need to be well aware of how to fix it and it may be long even though not complex.
(Assignee)

Updated

2 years ago
Depends on: 1194863
(Assignee)

Updated

2 years ago
Depends on: 1195006
(Assignee)

Updated

2 years ago
Depends on: 1195089
Doing some initial testing: 
1) Just wondering, there's no check on the file in regards to seeing if it's the proper format is there?  The one that you can place in?  (ie if it's not a proper zip file) 
2) There's no checks or recovery from unplugging the device 
3) There's no battery level checks (to make sure you have enough charge before flashing)
(Assignee)

Updated

2 years ago
Depends on: 1189584
(Assignee)

Updated

2 years ago
Depends on: 1189583
(Assignee)

Updated

2 years ago
Depends on: 1200213
(Assignee)

Updated

2 years ago
Depends on: 1200827
(Assignee)

Updated

2 years ago
Depends on: 1195358
(Assignee)

Updated

2 years ago
Depends on: 1195650
(Assignee)

Updated

2 years ago
Depends on: 1203407
(Assignee)

Updated

2 years ago
Depends on: 1187946
(Assignee)

Updated

2 years ago
Depends on: 1204482
(Assignee)

Updated

2 years ago
Blocks: 1206368
(Assignee)

Updated

2 years ago
Blocks: 1206379
(Assignee)

Updated

2 years ago
Depends on: 1206412
(Assignee)

Updated

2 years ago
No longer blocks: 1206368, 1206379
Depends on: 1206368, 1206379
(Assignee)

Updated

2 years ago
Depends on: 1206746
(Assignee)

Updated

2 years ago
Depends on: 1207568
(Assignee)

Updated

2 years ago
Depends on: 1208988
(Assignee)

Updated

2 years ago
Depends on: 1210817
(Assignee)

Updated

2 years ago
Depends on: 1211124
(Assignee)

Updated

2 years ago
Depends on: 1210824
(Assignee)

Updated

2 years ago
Depends on: 1214761
(Assignee)

Updated

2 years ago
Depends on: 1224160
(Assignee)

Updated

2 years ago
Depends on: 1224557

Comment 8

2 years ago
I have a Nexus-S on which I run a master build (from early 2015). For including the device to the list of supported devices for this addon, would it be sufficient to just flash back to original firmware, build the blob-free target and then flash it?

Also - where is the proper place where supported devices are documented? There is a small entry in the following wiki page:

https://developer.mozilla.org/en-US/Firefox_OS/Building

Maybe we could set up a separate Wiki page for that which provides further details about the support state? For instance, on many devices the blobs are updated when installing to a new stock firmware - especially when doing big jumps like from Android KK to Android LP. So I guess it should be pretty important to also mention which original (or even custom) firmware versions are supported (or at least have been tested) for this transition.
Comment hidden (obsolete)
(Assignee)

Comment 10

2 years ago
Oh no, I misread, you talked about Nexus S. Technically it should be easily doable to add support for blobfree for the Nexus S, but I am doubtful of the user value given it's an old device and it's still stuck on ICS. Also, we have no builds for Nexus S on TaskCluster and that is not going to happen. So the only solution will be to build and host yourself blobfree builds.

That is 100% doable and you just need:
 - add blobs definition as we have for nexus 4/nexus 5: https://github.com/mozilla-b2g/device-mako/blob/b2g-4.4.2_r1/full_mako.mk#L40 or https://github.com/mozilla-b2g/device-hammerhead/blob/b2g-5.1.0_r1/full_hammerhead.mk#L39
 - add devices.json to define compatibility: https://github.com/mozilla-b2g/device-mako/blob/b2g-4.4.2_r1/devices.json https://github.com/mozilla-b2g/device-hammerhead/blob/b2g-5.1.0_r1/devices.json
 - issue a blobfree build with: ./build.sh blobfree

Then you get a zip blobfree distribution that you can use in the addon and you can verify it works
(Assignee)

Comment 11

2 years ago
After that if you want you can host that zip file somewhere and add support for that with a PR against https://github.com/mozilla-b2g/b2g-installer-builds
Depends on: 1233002
Depends on: 1233012
Depends on: 1233017
Depends on: 1233019
Depends on: 1233029
Depends on: 1233035

Comment 12

2 years ago
I was just wondering since Mozilla doesn't want to continue distributing B2G phones - is this addon still relevant, meaning will B2G be further developed for smartphones?

Even if not, I think many other "Android-near" systems could profit from this feature.
(In reply to Daniel Kulesz from comment #12)
> I was just wondering since Mozilla doesn't want to continue distributing B2G
> phones - is this addon still relevant, meaning will B2G be further developed
> for smartphones?

FxOS/B2G is still very much in development for phones and this add-on is more relevant than ever since we want our users to be able to flash their phones easily rather than have to go through the cumbersome manual process.
Depends on: 1234213
Depends on: 1234216
Depends on: 1234217

Comment 14

a year ago
(In reply to Gabriele Svelto [:gsvelto] from comment #13)
> FxOS/B2G is still very much in development for phones and this add-on is
> more relevant than ever since we want our users to be able to flash their
> phones easily rather than have to go through the cumbersome manual process.
Very cool, thank you!

One general aspect I was wondering in design of this installer. Is there a benefit by rebuilding the system image instead of generating an installable update.zip with the blobs to flash them on top of the system image (e.g. using recovery) during the first boot?

And another consideration (but maybe I didn't understand this correctly): Why don't you run everything (maybe except the flashing) on the target device itself instead of a computer connected to it? Imho, going through the process of a "regular" OTA update instead of external fastboot-flashing should be much more convinient for end-users.
(Assignee)

Updated

a year ago
Depends on: 1235459
(Assignee)

Updated

a year ago
No longer depends on: 1162197, 1163561
(Assignee)

Updated

a year ago
Depends on: 1236587
(Assignee)

Comment 15

a year ago
(In reply to Daniel Kulesz from comment #14)
> (In reply to Gabriele Svelto [:gsvelto] from comment #13)
> > FxOS/B2G is still very much in development for phones and this add-on is
> > more relevant than ever since we want our users to be able to flash their
> > phones easily rather than have to go through the cumbersome manual process.
> Very cool, thank you!
> 
> One general aspect I was wondering in design of this installer. Is there a
> benefit by rebuilding the system image instead of generating an installable
> update.zip with the blobs to flash them on top of the system image (e.g.
> using recovery) during the first boot?

You still need to manually flash a recovery we can use

> 
> And another consideration (but maybe I didn't understand this correctly):
> Why don't you run everything (maybe except the flashing) on the target
> device itself instead of a computer connected to it? Imho, going through the
> process of a "regular" OTA update instead of external fastboot-flashing
> should be much more convinient for end-users.

How would you be bootstrapping this?
(Assignee)

Updated

a year ago
Depends on: 1236642
(Assignee)

Updated

a year ago
Depends on: 1236836
(Assignee)

Updated

a year ago
Depends on: 1238945

Comment 16

a year ago
This is a very interesting idea in order to simplify the installation process of end users. Are there any news?
(Assignee)

Comment 17

a year ago
Yes. I'm working on fixing end user bugs right now.
(Assignee)

Updated

a year ago
Depends on: 1240355
(Assignee)

Updated

a year ago
Depends on: 1240352

Comment 18

a year ago
is there any procedure for flash the blobfree package until the addon is complete?
(Assignee)

Comment 19

a year ago
(In reply to Pochy from comment #18)
> is there any procedure for flash the blobfree package until the addon is
> complete?

No.
(Assignee)

Comment 20

a year ago
Added doc at: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Building_and_installing_Firefox_OS/B2G_Installer_Addon

It's still preliminary. I'll update a link to generated platform XPIs soon. In the mean time, contributions are more than welcome: I will release a first 1.0 with the current bugs fixed and then move on because I don't have time to maintain this.
(Assignee)

Comment 21

a year ago
Remaining bugs before releasing a 1.0:
 1. Bug 1233029: Installation fails if you click on the "flash device" button until the entire boot sequence is done
 2. Bug 1233012: There is no error message if you don't put an actual local blobfree zip file
 3. Bug 1234216: UI gets confusing if there are 2 compatible devices plugged in
 4. Bug 1204482: Provide a VirtualBox VM ready for B2G Installer use
(Assignee)

Updated

a year ago
Depends on: 1245181
(Assignee)

Updated

a year ago
Depends on: 1245228
(Assignee)

Updated

a year ago
Depends on: 1245229
(Assignee)

Updated

a year ago
Depends on: 1246288
(Assignee)

Updated

a year ago
Depends on: 1248361
(Assignee)

Updated

a year ago
Depends on: 1248673
(Assignee)

Updated

a year ago
Depends on: 1248686
(Assignee)

Comment 22

a year ago
Telemetry is done and pings are reaching infra (verified).

Comment 23

a year ago
Hi,
all bugs are closed. Are you close to release the plugin?
(Assignee)

Updated

a year ago
Depends on: 1255383
(Assignee)

Updated

a year ago
Depends on: 1260755
(Assignee)

Updated

a year ago
Depends on: 1265714
(Assignee)

Updated

a year ago
Depends on: 1275065
(Assignee)

Updated

a year ago
Depends on: 1275063

Updated

11 months ago
Depends on: 1281788
(Assignee)

Updated

10 months ago
Depends on: 1288910
(Assignee)

Updated

8 months ago
Depends on: 1304707
(Assignee)

Updated

5 months ago
Status: NEW → RESOLVED
Last Resolved: 5 months ago
Resolution: --- → WONTFIX
Depends on: 1347743
No longer depends on: 1347743
You need to log in before you can comment on or make changes to this bug.