Total Pageviews

Monday, 12 June 2023

可运行在Android上的FirefoxOS



Mozilla发布了一个b2gdroid的实验性项目,此项目可以让Firefox OS能运行在运行在Android平台上。项目软件由Gonk、Gecko和Gaia三部分组成,Gecko是系统的平台部分,包括渲染引擎;Gonk包括内核和驱动;Gaia是用户界面。b2gdroid是将Gaia用户界面移植运行在Android上,让Android用户能体验一下FirefoxOS。运行b2gdroid需要用户的设备允许运行第三方应用,只支持ARM架构不支持x86。软件大小为64.5MB(APK),安装之后点击Home可切换到Firefox OS。

------------------

Running b2g on android, because why not!  

b2gdroid

b2gdroid is an experiment that let you use Gaia (the user interface of FirefoxOS) on your Android device, as an alternative homescreen.

downloads

The current version is available at https://github.com/fabricedesre/b2gdroid/releases/download/0.11/b2gdroid-41.0a1.en-US.android-arm.apk

building

Building b2gdroid is done using:

  1. First, create a gaia profile using the b2gdroid distribution directory:

    #!/bin/bash
    export GAIA_DISTRIBUTION_DIR=distros/b2gdroid
    export PRODUCTION=1
    export NOFTU=1
    export MOZILLA_OFFICIAL=1
    rm -rf profile && make profile
    
  2. Create a suitable mozconfig file. The one I'm using is as follows:

    # Build Firefox for Android:
    ac_add_options --enable-application=mobile/android
    ac_add_options --target=arm-linux-androideabi
    
    # With the following Android SDK and NDK:
    ac_add_options --with-android-sdk="/home/fabrice/.mozbuild/android-sdk-linux/platforms/android-21"
    ac_add_options --with-android-ndk="/home/fabrice/.mozbuild/android-ndk-r8e"
    
    ac_add_options --enable-android-apz
    
    # ac_add_options --enable-debug
    ac_add_options --enable-debug-symbols
    
    ac_add_options --enable-updater
    
    mk_add_options MOZ_OBJDIR=/home/fabrice/dev/builds/obj-b2gdroid
    mk_add_options AUTOCLOBBER=1
    mk_add_options MOZ_MAKE_FLAGS="-j8 -s"
    
  3. Build b2gdroid. I use a helper script for that, the important part being to set GAIA_DIR properly and to point to the right mozconfig file:

    #!/bin/sh
    export GAIA_DIR=/home/fabrice/dev/gaia/profile
    export MOZCONFIG=/home/fabrice/dev/builds/mozconfig-b2gdroid
    make -C /home/fabrice/dev/gecko -f client.mk && make -C ./obj-b2gdroid/ package
    
  4. Push b2gdroid to your device. This can be done by running mach install from your MOZ_OBJDIR directory.

     from  https://github.com/fabricedesre/b2gdroid

No comments:

Post a Comment