Showing posts with label fennec. Show all posts
Showing posts with label fennec. Show all posts

Friday, November 18, 2011

My first mobile testing hours

I decided to spend few hours learning the process of submitting Fennec issues and documenting it. I would like to be doing this 30-45 minutes every day to help the project.

I documented my learning process in:
https://wiki.mozilla.org/User:Armenzg/Fennec_Native_UI_testing

For the record, I had to remove the multi fennec build from latest-birch as it was broken.

At the end of this post there are some easy to hit bugs which would save you the time to figure out if it is already filed.

I hope this can help you get started and see that is not hard to do it.

First steps

NOTE: Here's the list of bugs that I've filed or have CCed myself to.

Testing

  • If you hit a bug check the list of know bugs Fennec Native UI list.
    • I normally just use the integrated search (Ctrl + F) that comes with Firefox to search through the list
    • I keep open the list all the time
  • If you don't find it file it by typing the steps you followed plus your expected behavious.
Not tried yet:
  • blassey told me to use "adb am start " to tell from my laptop to my phone to open a URL
  • Note on taking screen shots:
You can take screenshots using the Android SDK; you don't have to root
the device.  The other way is to upgrade to ICS if that is an available option
for you.

The android sdk will install the ddms, in which you can select a device and
then take a screenshot

Issues found

These are issues that I have not yet filed or have not have had time to check if they are valid.
  • On first start up I go to the Firefox Nightly start page and it is crazy wide
  • "Reformat text on zoom" is not "on" by default

Easy to hit bugs

Last updated: Nov. 18th, 2011
  • bug 702633 - painting is broken for google.ca
  • bug 701380 - have a different start up page
  • bug 701594 - Should not be able to stay zoomed out further than the page width
  • bug 700940 - Favicon transparency results in purple background sometimes
  • bug 701797 - "save as PDF" is broken



Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Wednesday, November 25, 2009

Fennec's en-US single-locale binaries being uploaded to a different location

Up until now, Fennec's en-US deb file (566K) was being overwritten every time by the multi-locale's deb file (1.2MB) due to that the name of the files cannot be different. To avoid this we upload now the single-locale under an "en-US" sub-directory. under "latest" directories on ftp.

For more details:
* Bug 529140 - upload Fennec single-locale tar and deb files under "en-US" sub-directory




Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Friday, November 20, 2009

libconic package needed for Maemo builds has been deployed

Thanks to puppet we were once again able to fix this easily.

All that puppet told the slaves to do is to run this command:
 su - cltbld -c '/scratchbox/moz_scratchbox -p apt-get --yes --force-yes install libconic0-dev'
 

What I did to fix this was:
  1. Check that a staging slave does not have that package "pkg-config conic --libs"
  2. Check that the file "targets/CHINOOK-ARMEL-2007/usr/include/conic/conic.h" does not exist
  3. Install it using a similar command that was used in a previous bug
  4. Check that "pkg-config conic --libs" returns what is expected "-lconic -ldbus-1 -lgobject-2.0 -lglib-2.0"
  5. Check that the conic.h exists where expected
  6. At this point we have a clear command to run by puppet and a "creates" argument.
  7. Deploy the patch in the staging-puppet server
  8. Login to another staging slave as root and run "puppetd --test --server staging-puppet.build.mozilla.org"
  9. Do checks 4 and 5 to see that the puppet changes took place
  10. Ask for review
  11. Commit and deploy to production-puppet
  12. Check a production like in step 8 and 9
  13. Check an hour later if a random slave has the change as well
Thanks to mfinkle for having written such a good description of the bug.

If you want to read more details check out "Bug 529462 - Add libconic package to Maemo build slaves"



Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Monday, October 26, 2009

Fennec - Multi-locale build automation (patches are up for review)

This blog post is to describe the code changes that I have done in my posted patches on bug 519684 (this means that the following comments do not necessarily mean that they will be how the system will be).

If you don't want to read the whole post, all I propose is:

  1. create single-locale as usual
  2. continue with multi-locale build

For more details: we currently generate a single-locale build for Maemo devices (tar balls and deb files) which is composed of Fennec + XulRunner and as soon as we are done we trigger the localized builds for it. The process can be seen as:

  1. normal scheduler triggers the build
  2. check out code
  3. make -f client.mk
  4. repackage binaries, tests and deb files for Fennec and XulRunner
  5. upload tar balls and deb files
  6. trigger L10n parallelized jobs (the # of them is as many locales are defined in all-locales)

The changes I have made to the MaemoBuildFactory class to generate the multi-locale and the new MultyNightlyL10n can be seen like this (NOTE: The changes to the process are highlighted):

  1. The MultyNightlyL10n scheduler is triggered and passes as a property a list of locales based on the file maemo-locales (which currently contains 7 locales)
  2. check out code
  3. make -f client.mk build (we pass L10NBASEDIR variable)
  4. repackage binaries, tests and deb files for Fennec and XulRunner
  5. upload tar balls and deb files
  6. trigger L10n parallelized jobs (the # of them is as many locales are defined in all-locales)
  7. checkout compare-locales
  8. remove any tar balls or deb files
  9. for each locale defined:
    1. checkout the locale's code
    2. run compare-locale
    3. add the .jar files to the build (currently l10n-merged)
  10. repackage the Fennec tar ball and the deb file (NOTE: I pass the parameter AB_CD=multi instead of AB_CD=en-US)
  11. upload them

This means that beside the single-locale build we will upload the multi-locale build and we will still be able to generate the individual locale repackages based on the single en-US build.

Let me know if you have any questions or suggestions.

Armen




Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Friday, October 02, 2009

Fennec - Setup developers' environment to build Fennec on Maemo

Find in this blog post two different ways to setup the correct environment to develop for Fennec for Maemo.

If you want to have everything ready without too much trouble download the Centos VM from our ftp servers:
ftp://ftp.mozilla.org/pub/mozilla/VMs/CentOS5-ReferencePlatform.tar.bz2
and follow these instructions on how to bring the VM up-to-date: https://wiki.mozilla.org/ReferencePlatforms/Linux-CentOS-5.0#Fixup_Scratchbox_Install

If you want to do it the harder way but most rewarding, let me guide you through what was my experience.

NOTE: I followed the steps from the following page but finish reading the blog post before you do it yourself. https://wiki.mozilla.org/Mobile/Build/Maemo_Build_Instructions. Another note is that I am running Ubuntu 9.0.4 with VMWare

Brief summary
  1. Set up scratchbox with cs2007q3 toolchain
  2. Set up Maemo-scratchbox 4.0.1 from Maemo's repository
  3. Set up Maemo-SDK 4.0.1 from Nokia's tablet-dev web site
  4. Login to scratchbox and select our target which is CHINOOK_ARMEL (I think Chinook is the version of scratchbox and Armel is the CPU/architecture of the Nokia tablets)
  5. Get and configure exestack.armel from vladimir's page (These steps seem to wget and setup many packages)
Warnings
  • Not sure if the message ("# you may need to relog into your machine here") on the instructions means to close your terminal OR to actually restart to machine. I just closed and opened a new terminal as I have read in other Maemo instructions.
  • I hit a problem when I reached "bash maemo-sdk-install_4.0.1.sh" which is:
    E: Scratchbox login found but not executable by user.
    E: Please check that user is member of the group specified in scratchbox
    E: installation (default 'sbox').
    E: Also start a new login terminal after adding group membership.
    I fixed this by doing this: "newgrp sbox" which I read in here. From this other source this might just have been solved by restarting my machine without having to create the group.
  • The Maemo-SDK will ask you a lot of questions which I decided to choose the default ones. Check out this page for more detailed information: http://tablets-dev.nokia.com/chinook/INSTALL.txt
  • The Maemo-SDK takes a long time to install
  • Ubuntu offered me updates of scratchbox which I decided not to add since they are not mentioned in the instructions I followed
I hope this all you need to get going.

"Happy hacking!" as Nokia's SDKs finishes its installation with.



Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Installing Fennec nightly on N810

I will be helping this quarter to set up the L10n release infrastructure for mobile so I got a Nokia N810 to install localized versions when we actually have them.

In this blog post I will explain how to install a nightly deb file on your Nokia N810 (To install a nightly on Linux, Mac or Windows you can install the Fennec desktop builds - blog post to come)

The first two steps are to avoid you having to use XTerminal from your device. NOTE: You might be prompted to install
  1. Search on the Web app for "openssh maemo" or follow this link to go directly and install OpenSSH Client And Server v4.7p1-12.maemo2.
    1. You might be prompted to change the password of your "root" user. It didn't happen to me. I might have had openssh installed from before I loaned it.
  2. Search on the Web app for "homeip maemo" or follow this link to go directly and install HomeIP V0.9.1-2
    1. You have to add it to your N810's desktop by enabling it. On your desktop tap on "Home->Select applets...->HomeIP". You should now see your IP on your desktop. You are going to need this to connect to your device with SSH
  3. Make sure that your computer and your Nokia device are in the same wireless network and SSH to it by typing this:
    ssh root@
    and type the password for your root account. You should now be connected.
    1. If you don't know your password you can type "root" on your X Terminal and will grant you root privileges without a password. Read more in the "Root access" page by maemo.org
  4. Visit this link: http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mobile-1.9.2/?C=M;O=D (sorted by latest modified)
    1. You want to wget the latest deb files for XulRunner and Fennec (only en-US for now). For today's blog post are:
      • xulrunner_1.9.2b1pre-20091002010458_armel.deb
      • fennec_1.0b4_armel.deb
    2. Now install first Xulrunner and then Fennec by typing this:
      • dpkg -i xulrunner_1.9.2b1pre-20091002010458_armel.deb
      • dpkg -i fennec_1.0b4_armel.deb
  5. Now every time you want to open Fennec you can go to X Terminal and type: "fennec" which should do. You can check that it is there by typing "which fennec"
You will have to repeat this every morning after the nightly builds are generated (around 2 AM PDT)

I hope this helps you since I didn't get to find any instructions for doing this but through instructions on IRC



Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.